ImageVerifierCode 换一换
格式:PPT , 页数:29 ,大小:703.50KB ,
文档编号:2688473      下载积分:22 文币
快捷下载
登录下载
邮箱/手机:
温馨提示:
系统将以此处填写的邮箱或者手机号生成账号和密码,方便再次下载。 如填写123,账号和密码都是123。
支付方式: 支付宝    微信支付   
验证码:   换一换

优惠套餐
 

温馨提示:若手机下载失败,请复制以下地址【https://www.163wenku.com/d-2688473.html】到电脑浏览器->登陆(账号密码均为手机号或邮箱;不要扫码登陆)->重新下载(不再收费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录  
下载须知

1: 试题类文档的标题没说有答案,则无答案;主观题也可能无答案。PPT的音视频可能无法播放。 请谨慎下单,一旦售出,概不退换。
2: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
3: 本文为用户(三亚风情)主动上传,所有收益归该用户。163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

1,本文(MSP430课件3.1系统时钟.ppt)为本站会员(三亚风情)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!

MSP430课件3.1系统时钟.ppt

1、第三部分 MSP430基本外设2 Copyright 2009 Texas Instruments All Rights Reservedwww.msp430.ubi.ptnMSP430系列微控制器的片内资源非常丰富,系列微控制器的片内资源非常丰富,外设模块外设模块通过数据总线、控制总线和地址总线与通过数据总线、控制总线和地址总线与CPU相连相连。q3.1 系统时钟q3.2 低功耗模式q3.3 通用输入输出端口q3.4 定时器q3.5 DMA控制器q3.6 比较器Aq3.7 模数转换器(ADC)q3.8 数模转换模块(DAC) q3.9 LCD液晶驱动模块q3.10 硬件乘法器q3.11 Fl

2、ash编程3.1 系统时钟 (UCS)Unified Clock System 本节内容n时钟系统模块设计要求时钟系统模块设计要求nMSP430X5XX / 6XX系列时钟系统模块系列时钟系统模块n五个时钟输入源振荡器模块五个时钟输入源振荡器模块nDCO模块操作模块操作n外设模块请求时钟系统(低功耗运行模式下)外设模块请求时钟系统(低功耗运行模式下)n模块振荡器(模块振荡器(MODOSC)n故障安全逻辑操作故障安全逻辑操作n时钟模块应用举例(时钟模块应用举例(MSP430F5XX / 6XX)n时钟模块库函数时钟模块库函数时钟系统模块设计要求(1/1) 单片机各部件能有条不紊自动工作,实际上是

3、在其系统时钟作用下,控制器指挥芯片内各个部件自动协调工作,使内部逻辑硬件产生各种操作所需的脉冲信号而实现的。 为适应系统和具体应用需求,单片机的系统时钟必须满足以下不同要求:高频率。高频率。用于对系统硬件需求和外部事件快速反应;低频率。低频率。用于降低电流消耗;稳定的频率。稳定的频率。以满足定时应用,如实时时钟RTC;低低Q Q值振荡器。值振荡器。用于保证开始及停止操作最小时间延迟。MSP430X5XX / 6XX系列时钟系统模块(1/3)右图为MSP430X5XX / 6XX系列单片机时钟模块结构:MSP430X5XX / 6XX系列时钟系统模块(2/3) 从上图可以看出,MSP430F5X

4、X / 6XX时钟模块有 5 个时钟输入源:XT1CLK 低频或高频时钟源:可以使用标准晶振,振荡器或者外部时钟源输入4MHz32MHz。XT1CLK可以作为内部FLL模块的参考时钟。XT2CLK 高频时钟源:可以使用标准晶振,振荡器或者外部时钟源输入4MHz32MHz。VLOCLK 低功耗低频内部时钟源:典型值为10KHZ;REFOCLK 低频修整内部参考时钟源:典型值为32768Hz,作为FLL基准时钟源;DCOCLK 片内数字控制时钟源:通过FLL模块来稳定。MSP430X5XX / 6XX系列时钟系统模块(3/3)基础时钟模块可提供3种时钟信号:ACLK 辅助时钟:ACLK可由软件选择

5、来自XT1CLK、REFOCLK、VLOCLK、DCOCLK、DCOCLKDIV、XT2CLK(由具体器件决定)这几个时钟源之一。然后经1、2、4、8、16、32分频得到。ACLK可由软件选作各个外设模块的时钟信号,一般用于低速外设模块。MCLK 系统主时钟: MCLK可由软件选择来自上述5种时钟源,同样可经过分频得到。MCLK主要用于CPU和系统。SMCLK 子系统时钟:可由软件选择来自上述5种时钟源,同样可经过分频得到。 SMCLK可由软件选作各个外设模块的时钟信号,主要用于高速外设模块。五个时钟输入源振荡器模块(1/6)五个时钟输入源振荡器模块,包括:XT1 振荡器XT2 振荡器低功耗低

6、频内部振荡器(VLO)低频修整内部参考振荡器(REFO)片内数字控制振荡器(DCO)五个时钟输入源振荡器模块(2/6)一、一、XT1 振荡器振荡器XT1工作在低频(LF)模式时(XTS=0),提供支持32768HZ时钟的超低功耗模式。晶振只需经过XIN和XOUT两个引脚连接,不需要其他外部器件,所有保证工作稳定的元件和移相电容都集成在芯片中。在一些设备中当XT1选择高频(HF)模式时(XTS=1)也支持高频晶振或者振荡器。高频晶振或谐振器连接到XIN和XOUT引脚,需要在两个端口配置电容。五个时钟输入源振荡器模块(3/6)二、二、XT2 振荡器振荡器一般称之为第二振荡器XT2,它产生时钟信号X

7、T2CLK,它的工作特性与XTl振荡器工作在高频模式时类似。系统频率和系统的工作电压密切相关,某些应用需要较高的工作电压,所以也需要系统提供相应较高的频率。系统频率和系统工作电压之间的关系下图所示:五个时钟输入源振荡器模块(4/6) 频率(MHz)频率和工作电压的关系在阴影中的数字表示所支持PMMCOREVx配置。电压(V)五个时钟输入源振荡器模块(5/6)三、低功耗低频内部振荡器(三、低功耗低频内部振荡器(VLO)低频低功耗内部振荡器 (VLO)能够提供典型10kHz的振荡频率(具体参数见数据手册),而不需要外接任何晶振。VLO可以对时钟精确要求不高的的应用提供低成本和超低功耗的时钟源。五个

8、时钟输入源振荡器模块(6/6)四、低频修整内部参考振荡器(四、低频修整内部参考振荡器(REFO)REFO可以产生一个比较稳定的频率,其典型值为32768Hz,它可以用作FLLREFCLK。低频修整内部参考振荡器(REFO)可以在没有外部晶振,对成本又比较敏感的场合得到很好的应用。五、片内数字控制振荡器(五、片内数字控制振荡器(DCO)DCO振荡器是一个可数字控制的RC振荡器,它的频率随供电电压、环境温度变化而具有一定的不稳定性。DCO频率可以通过选择FLL的频率(FLLRENCLK/n)来增强振荡频率的稳定性。DCO模块操作(1/4)DCOCLK频率调整过程:频率调整过程:设置DCORSELx

9、这3位可以从8个DCO额定频率中选择一个频率。5位的DCO用来在DCORSEL的32个频率级别中选择,相邻两个的频率相差约8%。5位的MOD用于控制在DCO中的32个频率中选择切换两种频率。如果DCO=31,表示DCO已经选择最高频率,此时不能利用MOD进行频率调整。(如下图所示)其中,在锁频环工作的时候,这些DCO位和MOD位的值由硬件自动调节。DCO模块操作(2/4)DCO频率的调节DCO模块操作(3/4)锁频环锁频环(FLL)DCOCLK可用作ACLK、MCLK、SMCLK,但它的频率随供电电压、环境温度变化而具有一定的不稳定性,FLL通过频率积分器和调制器的自动调节使DCOCLK的频率

10、趋于稳定。FLL通过在两个最相近的邻居频率之间进行切换,产生两个频率的加权频率,最终获得我们所需的频率。(如下图所示)DCO模块操作(4/4)外设模块请求时钟系统(1/2)外设模块可以控制3个时钟请求信号中的一个来获得时钟ACLK_REQ、MCLK_REQ、SMCLK_REQ。不管在任何模式下,外设模块的正常操作都可以从标准时钟系统(UCS)请求时钟信号。 例如:如果定时器选择了ACLK作为时钟源,只要定时器允许,ACLK_REQ信号就一直有效并向UCS申请时钟,而UCS则不管当前是在什么LPM低功耗模式都会输出ACLK信号。 如下图所示,为外设模块请求时钟系统。外设模块请求时钟系统(2/2)

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

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

13、TCTL = WDTPW + WDTHOLD; / 关闭看门狗关闭看门狗 P1DIR |= BIT0; / ACLK 通过通过 P1.0输出输出 P1SEL |= BIT0; P3DIR |= BIT4; / SMCLK分别通过分别通过 P3.4输出。输出。 P3SEL |= BIT4; while(BAKCTL & LOCKIO) / 解锁解锁XT1引脚引脚 BAKCTL &= (LOCKIO); P7SEL |= BIT2+BIT3; / 选择端口功能为选择端口功能为 XT2 UCSCTL6 &= XT2OFF; / 使能使能 XT2 UCSCTL6 &= (XT1OFF); / 使能使能

14、 XT1 UCSCTL6 |= XCAP_3; / 配置内接电容值,配置内接电容值, / 若使输出为若使输出为32.768KHz,则需要选择,则需要选择XCAP_3 do UCSCTL7 &= (XT2OFFG + XT1LFOFFG + DCOFFG); / 清零清零XT1、XT2、DCO故障标志位故障标志位 SFRIFG1 &= OFIFG; / 清零清零SFR中的故障标志位中的故障标志位 while (SFRIFG1&OFIFG); / 检测振荡器故障标志位检测振荡器故障标志位 UCSCTL6 &= XT2DRIVE0; / 根据预期的频率,减小根据预期的频率,减小XT2的驱动的驱动 U

15、CSCTL4 |= SELA_0 + SELS_5; / 选择选择 SMCLK和和ACLK的时钟源的时钟源 while(1); / 循环等待循环等待 时钟模块应用举例(MSP430F5XX / 6XX)(2/2) 时钟系统时钟系统(UCS)常用配置和初始化的常用配置和初始化的API函数函数UCS_clockSignalInit()UCS_initFLLSettle()UCS_enableClockRequest()UCS_disableClockRequest()UCS_SMCLKOff()UCS_SMCLKOn()时钟模块库函数(1/4) 时钟系统时钟系统(UCS)的的API被分成三组函数:

16、被分成三组函数:时钟系统(UCS)常用配置和初始化的API函数外部晶振特定的配置和初始化的API函数对状态和配置进行设置和询问的API函数时钟模块库函数(2/4) 外部晶振特定的配置和初始化的外部晶振特定的配置和初始化的API函数函数UCS_setExternalClockSource()UCS_LFXT1Start()UCS_HFXT1Start()UCS_bypassXT1()UCS_LFXT1StartWithTimeout()UCS_HFXT1StartWithTimeout()UCS_bypassXT1WithTimeout()UCS_XT1Off()UCS_XT2Start()UC

17、S_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 参考基准 = RE

18、FO UCS_clockSignalInit(_MSP430_BASEADDRESS_UCS , UCS_FLLREF, UCS_REFOCLK_SELECT, UCS_CLOCK_DIVIDER_1 ); / 令 ACLK = REFOUCS_clockSignalInit(_MSP430_BASEADDRESS_UCS_, UCS_ACLK, UCS_REFOCLK_SELECT, UCS_CLOCK_DIVIDER_1 );/设置比例和所需的MCLK频率,初始化DCO UCS_initFLLSettle(_MSP430_BASEADDRESS_UCS_, UCS_MCLK_DESIRED_FREQUENCY_IN_KHZ, UCS_MCLK_FLLREF_RATIO );/ 验证时钟设置是否跟希望的配置一样 clockValue = UCS_getSMCLK (_MSP430_BASEADDRESS_UCS_ );

侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|