第三章 MSP430基本外设1(时钟系统)课件

上传人:我*** 文档编号:138914899 上传时间:2020-07-18 格式:PPT 页数:32 大小:1.07MB
返回 下载 相关 举报
第三章 MSP430基本外设1(时钟系统)课件_第1页
第1页 / 共32页
第三章 MSP430基本外设1(时钟系统)课件_第2页
第2页 / 共32页
第三章 MSP430基本外设1(时钟系统)课件_第3页
第3页 / 共32页
第三章 MSP430基本外设1(时钟系统)课件_第4页
第4页 / 共32页
第三章 MSP430基本外设1(时钟系统)课件_第5页
第5页 / 共32页
点击查看更多>>
资源描述

《第三章 MSP430基本外设1(时钟系统)课件》由会员分享,可在线阅读,更多相关《第三章 MSP430基本外设1(时钟系统)课件(32页珍藏版)》请在金锄头文库上搜索。

1、第3章 MSP 基本外设,2,Copyright 2009 Texas Instruments All Rights Reserved www.msp430.ubi.pt,MSP430系列微控制器的片内资源非常丰富,外设模块通过数据总线、控制总线和地址总线与CPU相连。 系统时钟 低功耗模式 通用输入输出端口 定时器 DMA控制器 比较器A 模数转换器(ADC) 数模转换模块(DAC) LCD液晶驱动模块 硬件乘法器 Flash编程,基本外设,本章主要内容,MSP430系列单片机片内基本外设的结构 原理及功能 外围设备的使用,3.1 系统时钟 (UCS)Unified Clock System

2、,本节内容,时钟系统模块设计要求 MSP430X5XX / 6XX系列时钟系统模块 五个时钟输入源振荡器模块 DCO模块操作 外设模块请求时钟系统(低功耗运行模式下) 模块振荡器(MODOSC) 故障安全逻辑操作 时钟模块应用举例(MSP430F5XX / 6XX) 时钟模块库函数,时钟系统模块的概述,单片机各部件能有条不紊自动工作,实际上是在其系统时钟作用下,控制器指挥芯片内各个部件自动协调工作,使内部逻辑硬件产生各种操作所需的脉冲信号而实现的。 MSP430 所有器件都有时钟模块,都能实现超低功耗应用。振荡器和系统时钟发生器的主要涉及目标是廉价和廉价,外接器件减缩到只有一个普通晶振。 MS

3、P430系列单片机的时钟模块由低频振荡器、高频振荡器、控制逻辑、数字控制振荡器(DCO)、锁频环(FLL)等模块构成。 虽然不同系列器件包含的时钟模块可能不同,但各系列的基础时钟模块都输出3种时钟:辅助时钟(ACLK)、主系统时钟(MCLK)和子系统时钟(ZMCLK),分别送给不同需求的模块。,时钟系统模块设计要求,为适应系统和具体应用需求,单片机的系统时钟必须满足以下不同要求: 高频率。用于对系统硬件需求和外部事件快速反应; 低频率。用于降低电流消耗; 稳定的频率。以满足定时应用,如实时时钟RTC; 低Q值振荡器。用于保证开始及停止操作最小时间延迟。,MSP430X5XX / 6XX系列时钟

4、系统模块(1/3),右图为MSP430X5XX / 6XX系列单片机时钟模块结构:,MSP430X5XX / 6XX系列时钟系统模块(2/3),从上图可以看出,MSP430F5XX / 6XX时钟模块有 5 个时钟输入源: XT1CLK 低频或高频时钟源:可以使用标准晶振,振荡器或者外部时钟源输入4MHz32MHz。XT1CLK可以作为内部FLL模块的参考时钟。 XT2CLK 高频时钟源:可以使用标准晶振,振荡器或者外部时钟源输入4MHz32MHz。 VLOCLK 低功耗低频内部时钟源:典型值为10KHZ; REFOCLK 低频修整内部参考时钟源:典型值为32768Hz,作为FLL基准时钟源;

5、 DCOCLK 片内数字控制时钟源:通过FLL模块来稳定。,MSP430X5XX / 6XX系列时钟系统模块(3/3),基础时钟模块可提供3种时钟信号: ACLK 辅助时钟:ACLK可由软件选择来自XT1CLK、REFOCLK、VLOCLK、DCOCLK、DCOCLKDIV、XT2CLK(由具体器件决定)这几个时钟源之一。然后经1、2、4、8、16、32分频得到。ACLK可由软件选作各个外设模块的时钟信号,一般用于低速外设模块。 MCLK 系统主时钟: MCLK可由软件选择来自上述5种时钟源,同样可经过分频得到。MCLK主要用于CPU和系统。 SMCLK 子系统时钟:可由软件选择来自上述5种时

6、钟源,同样可经过分频得到。 SMCLK可由软件选作各个外设模块的时钟信号,主要用于高速外设模块。,五个时钟输入源振荡器模块(1/6),五个时钟输入源振荡器模块,包括: XT1 振荡器 XT2 振荡器 低功耗低频内部振荡器(VLO) 低频修整内部参考振荡器(REFO) 片内数字控制振荡器(DCO),五个时钟输入源振荡器模块(2/6),一、XT1 振荡器 XT1工作在低频(LF)模式时(XTS=0),提供支持32768HZ时钟的超低功耗模式。晶振只需经过XIN和XOUT两个引脚连接,不需要其他外部器件,所有保证工作稳定的元件和移相电容都集成在芯片中。 在一些设备中当XT1选择高频(HF)模式时(X

7、TS=1)也支持高频晶振或者振荡器。高频晶振或谐振器连接到XIN和XOUT引脚,需要在两个端口配置电容。,五个时钟输入源振荡器模块(3/6),二、XT2 振荡器 一般称之为第二振荡器XT2,它产生时钟信号XT2CLK,它的工作特性与XTl振荡器工作在高频模式时类似。 系统频率和系统的工作电压密切相关,某些应用需要较高的工作电压,所以也需要系统提供相应较高的频率。系统频率和系统工作电压之间的关系下图所示:,五个时钟输入源振荡器模块(4/6),频率 (MHz),频率和工作电压的关系,在阴影中的数字表示所支持PMMCOREVx配置。,电压(V),五个时钟输入源振荡器模块(5/6),三、低功耗低频内部

8、振荡器(VLO) 低频低功耗内部振荡器 (VLO)能够提供典型10kHz的振荡频率(具体参数见数据手册),而不需要外接任何晶振。 VLO可以对时钟精确要求不高的的应用提供低成本和超低功耗的时钟源。,五个时钟输入源振荡器模块(6/6),四、低频修整内部参考振荡器(REFO) REFO可以产生一个比较稳定的频率,其典型值为32768Hz,它可以用作FLLREFCLK。 低频修整内部参考振荡器(REFO)可以在没有外部晶振,对成本又比较敏感的场合得到很好的应用。,五、片内数字控制振荡器(DCO) DCO振荡器是一个可数字控制的RC振荡器,它的频率随供电电压、环境温度变化而具有一定的不稳定性。 DCO

9、频率可以通过选择FLL的频率(FLLRENCLK/n)来增强振荡频率的稳定性。,DCO模块操作(1/5),DCOCLK频率调整过程: 设置DCORSELx这3位可以从8个DCO额定频率中选择一个频率。 5位的DCO用来在DCORSEL的32个频率级别中选择,相邻两个的频率相差约8%。 5位的MOD用于控制在DCO中的32个频率中选择切换两种频率。如果DCO=31,表示DCO已经选择最高频率,此时不能利用MOD进行频率调整。(如下图所示) 其中,在锁频环工作的时候,这些DCO位和MOD位的值由硬件自动调节。,DCO模块操作(2/5),DCO频率的调节,DCO模块操作(3/5),锁频环(FLL)

10、DCOCLK可用作ACLK、MCLK、SMCLK,但它的频率随供电电压、环境温度变化而具有一定的不稳定性,FLL通过频率积分器和调制器的自动调节使DCOCLK的频率趋于稳定。 FLL通过在两个最相近的邻居频率之间进行切换,产生两个频率的加权频率,最终获得我们所需的频率。(如下图所示),DCO模块操作(4/5),DCO调制 在32个时钟周期中,DCO调制器通过配置MOD位混合两个DCO频率,在fDCO和fDCO+1之间产生一个有效的混合频率,以克服周期累加的变化,并提高时钟驱动能力,减少电磁干扰。当MOD=0时,调制器关闭。 当FLL模块使能时,调制器的设置和DCO由FLL硬件自动控制;如果FL

11、L关闭,调制器的设置和DCO由软件配置。,DCO模块操作(5/5),外设模块请求时钟系统(1/2),外设模块可以控制3个时钟请求信号中的一个来获得时钟ACLK_REQ、MCLK_REQ、SMCLK_REQ。 不管在任何模式下,外设模块的正常操作都可以从标准时钟系统(UCS)请求时钟信号。 例如:如果定时器选择了ACLK作为时钟源,只要定时器允许,ACLK_REQ信号就一直有效并向UCS申请时钟,而UCS则不管当前是在什么LPM低功耗模式都会输出ACLK信号。 如下图所示,为外设模块请求时钟系统。,外设模块请求时钟系统(2/2),外设模块请求时钟系统。,模块振荡器(MODOSC)(1/1),UC

12、S模块还有一个内部的振荡器(MODOSC)。它主要给FLASH模块控制器或其他任意需要的模块提供时钟。 MODOSC产生时钟信号MODCLK。 例:ADC12_A可以选择使用MODOSC作为转换时钟源,用户选择ADC12OSC作为转换时钟源时,ADC12OSC就来自MODOSC。,故障安全逻辑操作(1/2),时钟系统模块包含有晶振故障保护的功能。这个功能可以检测XT1、XT2、DCO的振荡器故障。 当晶体振荡器启用后,没有正常工作时,则相应的故障位XT1LFOFFG、XT1HFOFFG、XT2OFFG将被置位。 如下图所示,可检测的故障有: XT1的LF模式下低频晶振故障(XT1LFOFFG)

13、 XT1的HF模式下高频晶振故障(XT1HFOFFG) XT2高频晶振故障(XT2OFFG) DCO故障标志(DCOFFG),故障安全逻辑操作(2/2),晶振故障逻辑,时钟模块应用举例(MSP430F5XX / 6XX)(1/2),P1.0,MSP430F6638,P3.4,SMCLK,ACLK,例1,MSP430 x66xx演示例程:设ACLK = XT1 = 32768Hz,令SMCLK = XT2CLK,MCLK = DCO(默认) = 32 x ACLK = 1048576Hz,ACLK和SMCLK分别通过P1.0和P3.4输出。 程序代码如下: #include void main(

14、void) WDTCTL = WDTPW + WDTHOLD; / 关闭看门狗 P1DIR |= BIT0; / ACLK 通过 P1.0输出 P1SEL |= BIT0; P3DIR |= BIT4; / SMCLK分别通过 P3.4输出。 P3SEL |= BIT4; while(BAKCTL / 选择端口功能为 XT2,UCSCTL6 / 循环等待 ,时钟模块应用举例(MSP430F5XX / 6XX)(2/2), 时钟系统(UCS)常用配置和初始化的API函数 UCS_clockSignalInit() UCS_initFLLSettle() UCS_enableClockReques

15、t() UCS_disableClockRequest() UCS_SMCLKOff() UCS_SMCLKOn(),时钟模块库函数(1/4),时钟系统(UCS)的API被分成三组函数: 时钟系统(UCS)常用配置和初始化的API函数 外部晶振特定的配置和初始化的API函数 对状态和配置进行设置和询问的API函数,API是应用程序编程接口,是一些预先定义的函数,用户不需要了解具体内部寄存器的操作,只需要了解该API函数实现的功能,用户只需调用该API函数即可。,时钟模块库函数(2/4), 外部晶振特定的配置和初始化的API函数 UCS_setExternalClockSource() UCS_

16、LFXT1Start() UCS_HFXT1Start() UCS_bypassXT1() UCS_LFXT1StartWithTimeout() UCS_HFXT1StartWithTimeout() UCS_bypassXT1WithTimeout() UCS_XT1Off() UCS_XT2Start() UCS_XT2Off() UCS_bypassXT2() UCS_XT2StartWithTimeout() UCS_bypassXT2WithTimeout() UCS_clearAllOscFlagsWithTimeout(),时钟模块库函数(3/4),对状态和配置进行设置和询问的API函数 UCS_faultFlagStatus() UCS_clearFaultFlag() UCS_getACLK() UCS_getSMCLK() UCS_getMCLK(),时钟模块库函数(4/4),库函数编程示例(伪代码) / 设置 DCO FLL 参考基准 = REFO UCS_clockSignalI

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号