第三章 MSP430基本外设-低功耗模式
- 格式:pptx
- 大小:641.28 KB
- 文档页数:29
对于嵌入式处理器系统来说,低功耗设计有3个基本原则:工作频率和功耗成反比关系。
工作电压和功耗成正比关系。
工作模块数量和功耗成正比关系。
MSP430系列MCU具有强大的低功耗模式设计。
在不同的低功耗模式下,配置不同的时钟信号来降低CPU及工作模块的工作频率;选择性的关闭暂时不使用模块和相关的时钟信号来降低工作模块的数量以达到降低整机功耗的目的。
MSP430的5xx系列和6xx还支持用户设置内核电压,通过降低内核工作电压来降低功耗。
低功耗模式是MSP430的特色功能,一般情况下,MSP430分为6种工作状态,分别是活动状态(AM)、低功耗模式0(LPM0)、低功耗模式1(LPM1)、低功耗模式2(LPM2)、低功耗模式3(LPM3)和低功耗模式4(LPM4)。
对于5xx系列的产品带实时时钟RTC的信号还具备低功耗模式3.5(LPM3.5)和低功耗模式4.5(LPM4.5)。
根据不同的应用合理地选用低功耗模式可以有效地降低MSP430功耗。
图3-8是MSP430F21x1工作在1MHz对应于AM模式和低功耗模式下的电流消耗。
从图中可以看到低功耗模式下,电流消耗要远小于AM 模式。
下面对各种工作模式做详细的介绍。
MSP430的低功耗模式是通过状态寄存器SR各位的配置来完成的,SR寄存器如表3-6所示。
与低功耗模式相关的是系统时钟控制位(SCG0)和(SCG1)、振荡器关闭/开启位(OSCOFF)和CPU关闭/开启位(CPUOFF)。
SCG0位用于关闭DCO的直流发生器,也就是关闭DCOCLK;SCG1位用于关闭SMCLK;OSCOFF位用于关闭MSP430的振荡器,包括LFXT1和XT2;CPUOFF 位用于关闭CPU。
表3-6 SR寄存器Bit15 Bit14 Bit13 Bit12 Bit11 Bit10 Bit9 Bit8Reserved VBit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0SCG1 SCG0 OSCOFF CPUOFF GIE N Z C5种低功耗模式可以使用表3-7区分,表中显示了5种低功耗模式下,MSP430的时钟信号MCLK(CPU)、SMCLK、ACLK和DCO振荡器的关断状态。
一张图理解msp430f4371的低功耗模式430有6中工作模式,在此不再累述,C程序中,使430单片机低功耗进入低功耗的语句非常简单,只需一句LPM0/LPM1/LPM2/LPM3/LPM4即可使其进入低功耗状态。
看了一天430的系统时钟模块和低功耗状态,发现最靠谱的东西还是官网数据手则,迷惑了一天,最终一张图片使思维稍微清晰。
图片如下:从上图得到自己的理解,虽然可能有误,但暂时不影响对430单片机的使用:LPM0:CPUoff置位------------------------>;CPU不能用,MCLK不能用,其他一切照旧活动;LPM1:CPUoff置位,SGC0置位----------->;CPU不能用,MCLK不能用,FLL+停止操作,而ACLK和SMCLK正常活动;LPM2:CPUoff置位,SCG1置位----------->;CPU不能用,MCLK、FLL+、DCOCLK不能用,但直流发生器、ACLK正常工作;LPM3:CPUoff置位,SCG1置位,SCG0置位---->;CPU不能用,MCLK,FLL+,DCOCLK,直流发生器不能用,但ACLK不能用;LPM4:CPUoff置位,SCG1置位,SCG0置位,OSCoff置位----->;LPM3的基础上使ACLK也不能用。
作者认为自己理解有误的地方,就是SCG1的控制范围,即其到底是控制直流发生器还是调制器还是控制FLL+的,由于找不到相关资料,只有勉强做如下理解:SCG1置位的时候,调制器不能工作,自然DCOCLK不能用了,同时FLL+也不能工作,但直流发生器是工作的,只有当SCG1和SCG0同时置位的时候直流发生器才停止工作,这个时候甭管FLL+还是DCOCLK都不能工作了,有可能SCG0对直流发生器也有部分控制作用,但不像对FLL+那样完全控制。
以上理解可能有误,但希望真正懂得高手路过此帖的时候请给予指正,在此谢过。
MSP430MSP430一、上电复位POR 和上电清除PUC二、低功耗控制但系统时钟发生器基本功能建立之后,CPU内的状态寄存器SR中的SCG1、SCG2、OscOff、CpuOff是低功耗的重要控制位;系统工作模式一共有6种,1种活动模式和5种低功耗模式;可以通过设置控制位使MSP430进入低功耗模式,由中断唤醒CPU,在执行完中断服务程序之后再回到低功耗模式,也可以在执行中断程序的时候间接访问堆栈修改状态寄存器的值,这样中断程序执行完之后就会进入另外一种低功耗模式或者处于活动模式。
三、时钟模块(一)、MSP430F149有三个时钟输入源:1、LFXT1CLK:如果LFXTCLK没有作用于SMCLK、MCLK信号,可以用OscOff置位以禁止LFXT1CLK工作;2、XT2CLK:若XT2CLK没有作用于SMCLK、MCLK信号,可以用控制位XT2OFF 关闭XT2;3、DCO振荡器:MSP430F149的两个外部振荡器产生的时钟信号都可以经过1、2、4、8分频后用作系统主时钟MCLK;当外部振荡器失效后,DCO 振荡器会自动被选作MCLK 的时钟源;(二)、MSP430F149提供3三种时钟信号:1、ACLK----辅助时钟,一般用于低速外设,由LFXT1CLK信号分频而得;2、MCLK----系统通过主时钟,一般用于CPU和系统,由以上三个时钟源任意一个分频而得;3、SMCLK---主要用于高速外设,由XT2CLK+XT2CLK 或LFXT1CLK+DCO分频而得。
(三)、如何控制MSP430的DCOCLK频率?——时钟模块的控制由5个寄存器来完成1、DCOCTL:定义8总频率之一2、BCSCTL1:控制XT2CLK的开启与关闭;控制LFXT1CLK的工作模式(低频或高频,高频下需要接高频时钟源);控制ACLK分频。
3、BCSCTL2选择MCLK时钟源;选择MCLK分频;选择SMCLK时钟源;选择SMCLK时钟源分频。
单片机MSP430的极低功耗系统设计<P <B 关键词:极低功耗系统MSP430 低功耗管理<P <B 1 影响系统功耗的主要因素对于一个数字系统而言,其功耗大致满足以下公式:P=CV2f,其中C为系统的负载电容,V为电源电压,f为系统工作频率。
由此可见,功耗与电源电压的平方成正比,因此电源电压对系统的功耗影响最大,其次是工作频率,再就是负载电容。
负载电容对设计人员而言,一般是不可控的,因此设计一个低功耗系统,应该考虑到不影响系统性能前提下,尽可能地降低电源的电压和使用低频率的时钟。
下面对TI公司新出MSP430来具体探讨这个问题。
2 基于MSP430极低功耗系统的设计MSP430具有工业级16位RISC,其I/O和CPU可以运行在不的时钟下。
CPU功耗可以通过开关状态寄存器的控制位来控制:正常运行时电流160μA,备用时为0.1μA,功耗低,为设计低功耗系统提供了有利的条件。
图1是我们设计的以MSP430为CPU的“精密温度测试仪”(下面简称测试仪)。
该产品使用电池供电,体积小巧,携带方便。
(1)电源电压在使用时应该尽可能地选择最低的电源电压。
对于MSP430而言,可用的最低电压是很低的,最低可达1.8V。
我们使用TI公司推荐使用的3V。
通常的电源只提供5V 电压,因此,需要将5V电压由一个3V的稳压管降压后给CPU供电,也可以直接锂电池供电。
3V不是标准的TTL电平,因此,在使用时需要用接口电路使CPU的非TTL标准电平能与TTL标准电平的器件连接。
这些接口电路应该也是低功耗的,否则会造成一方面使用低电压降低了功耗,另一个方面使用额外的接口电路又增加了系统的功耗。
或者直接使用支持3V电压的外围芯片。
(2)时钟频率从低功耗的角度看,需要较低的频率,但是在实时应用中为了快速响应外部事件又需要有比较快的系统时钟。
这就需要系统具有两个高低不同的频率,在需要的时候可以在两个频率之间进行切换。
1、将不用的I/O 引脚设置为高或者低状态,不要让其悬空。
2、在不需要运行时间严格要求的任务,如UART通信或精密脉冲时钟时序等,尽可能使用内部时钟,这通常是低功耗的首选。
3、关断所有不使用的外设:如PWM模块、AD转换器等等。
4、尽可能在程序代码中使用查找表,而不是让CPU去计算结果。
5、检查所有外部元器件功耗,减少驱动外设,如EEPROM或者外部模拟电路的I/O 数目。
6、尽可能采用低功耗的器件或电路设计。
比如,低功耗场合能不用LED尽可能不要用,声响的电路也是一样。
7、尽可能选择带有关闭功能的器件,比较运放、R232 电路、逻辑电路等等...在不必要的时候使其关闭。
8、在显示方便也要选择低功耗的显示方式,比如采用LCD片,而不要用LCD模块。
或采用LCD模块时将背光关掉。
9、一些常用开关晶体管由三极管改为MOSFET管。
10、有可能的话,不要选择小阻值分压;这样同样可减少功耗。
按键上接电阻同样可以选择大点。
对于模拟前端部分可能不太适合,因为当用高精度ADC时,电阻值越大热噪声就会越大。
所以这做法不适宜用在高精度ADC前端。
11、关于MSP430的IO 处理,我个人的理解是可以空着,并设置为输入。
因为设置为输入时IO 处理高阻态,IO 的漏电流只有50nA。
12、能不用LDO 尽可能不要用LDO,因为线性电源器件会带功耗上的增加。
确实没办法了可以选择CMOS型的LDO器件。
或采用高效的DC/DC电源管理电路,以提高效能利用。
13、要了解MSP430的4种不同模式下的时钟与模块使用情况,这样你才控制好整个设计的功耗管理。
14、若不是很需要很高精度的时钟的话尽可能不要外部晶振,尽可能使用内部的DCO作为MCLK。
当程序中需要在串口时,这时可以开启所需的时钟源以得到精度的波特率,不用时则要关闭掉时钟和串口模块。
如果不是高速响应处理任务的话尽可能不要用选择外部晶体时钟作为MCLK。
15、在进入低功耗模式前,尽可能将MCLK改为DCO模式。
MSP430低功耗模式:工作频率越低,工作电压越低,工作模块越少MCU功耗越少MCLK:系统主时钟一般为8MHz,供CPU和系统使用;SMCLK:子系统时钟32—768KHz,供外围模块使用;ACLK:辅助子时钟,由LFXT1CLK产生,提供外围模块使用DCO:整合的高速数控振荡器,用于CPU和高速外围设备的主时钟源状态寄存器SR的低功耗控制位:SCG1:系统时钟发生器控制位1(System clock generator 1)置1时关闭SMCLKSCG0:系统时钟发生器控制位0(System clock generator 0)置1时关闭DC发生器OSCOff:晶振控制位(Oscillator Off Bit)置1时关闭LFXT1振荡器CPUOff:CPU控制位(CPU Off Bit)置1时关闭MCLK,此时除了RAM内容、端口、寄存器保持外,CPU处于停止状态,由中断将CPU从此状态唤醒。
1.MSP430内部各模块运行是完全独立的:TA、TB、I/O端口、A/D、WDT等均可在CPU休眠的状态下独立运行,各个片内模块也可通过禁止相应寄存器中的控制位关闭。
2.只要改变了SR中的模式控制位,工作模式也立即改变;有关的模块也因为相应的时钟源禁止而被关闭。
3.改变模式不影响所有的I/O引脚及RAM/寄存器的值。
低功耗模式的进入与退出:在AM模式下。
按低功耗模式设定SR中的控制位,MSP430就进入设定的低功耗模式。
任意中断均可以唤醒处于低功耗模式的MSP430,即切换到AM活动模式。
低功耗退出过程:当处于低功耗模式下的MSP430,有N类型号的非屏蔽或可屏蔽中断源产生,满足响应条件,CPU由硬件完成下面的操作:1.入栈保护当前PC2.入栈保护当前SR3.清零SR(置GIE=0,屏蔽可屏蔽中断,并结束低功耗模式,切换到活动模式)4.从中断向量表取中断向量至PC5.转去执行中断服务程序同样的,中断程序执行完毕,执行到RETI返回指令时:1.出栈恢复SR和PC的值2.因为回复了SR的值,使MSP430回到原来的低功耗模式!如果希望改变MSP430返回的低功耗模式时,需要在中断响应程序中修改堆栈中的SR控制位的值,使MSP430进入活动模式或其它低功耗模式进入低功耗模式:汇编语言:BIS.W #LPMn,SRC语言:_BIS_SR(LPMn_bits); 或者LPMn。
[推荐]MSP430的低功耗设计MSP430低功耗设计现代的MCU一般使用CMOS技术,耗能包括2方面:? ?静态消耗主要是晶体管消耗能量;动态消耗公式=C×V2×f,其中C是CMOS的负载电容,V是供电电压,f是时钟频率;总电能消耗是静态消耗和动态消耗之和,即:IDD=f×IDynamicRun[uA/MHz]+IStatic[uA],因此电能消耗依赖于:? ? ? ?MCU供电电压降低电压可以成平方级别地降低电能消耗;时钟频率可以把时钟频率降低到刚好满足应用需要;外设数目使能的外设越多,耗能越大;运行模式合理选择工作模式可以大幅节能,如,全速工作极短时间后进入睡眠模式。
节能方法? 关闭不需要使用的外设;? 所有未使用的引脚必须连接到一个确定的逻辑电平; ? 当有外设必须保持激活时,使用Wait模式来获得低功耗; ? 使用合适的VDD值;? 尽可能地使用低功耗运行模式;? 如果不能使用低功耗模式,那就将主频降低到满足应用的最小值;?如果可能,使用动态控制I/O引脚的上拉功能。
经常有人询问,MSP430的低功耗是如何实现的,该如何设计,功耗能做到多少?其实这些问题都不是简单能够回答的,一个系统的的低功耗设计,不仅仅是依靠MCU就能实现的,当然MCU是非常重要的部分。
下面我就针对MCU的低功耗设计谈谈我的一些心得。
一般来讲MCU的功耗取决于三个方面,低功耗控制,低功耗工作模式选择,低功耗软件设计,本文将针对这三个方面进行阐述。
一、 MSP430的低功耗控制 1.1 低功耗的基本原则针对MCU而言,有几个基本的原则, ? 工作频率越低,MCU的功耗越小我们在看数据手册的时候,经常会看到一个参数就是每MHZ消耗的功耗。
例如:100uA/1MHz,m 1.8v。
通常情况MCU会有三个参数,分别是运行模式功耗,空闲模式功耗和掉电模式功耗。
从参数可以看出,MCU的功耗直接和你使用的工作频率有关,在进行低功耗设计的时候一定要选择合适的工作频率。
5种低功耗模式分别为LPM0~LPM4(LOW POWER MODE),CPU的活动状态称为AM(ACTVE MODE)模式。
其中AM耗电最大,LPM4耗电最省,仅为0.1uA。
另外工作电压对功耗的影响:电压越低功耗也越低。
系统PUC复位后,MSP430进入AM状态。
在AM状态,程序可以选择进入任何一种低功耗模式,然后在适当的条件下,由外围模块的中断使CPU退出低功耗模式,返回AM模式,再由AM模式选择进入相应的低功耗模式,如此类推。
工作模式的选择由状态寄存器SR中的SCG1、SCG0、OSCOFF、CPUOFF 位控制。
由于在CPU的头文件中对CPU内的各寄存器和模块的各种工作模式都作了详尽的定义,所以编程时尽可能的利用就是了。
如:要进入低功耗模式0,可在程序中直接写:LPM0; 。
进入低功耗模式4,可以写:LMP4;就可以了。
退出低功耗模式如下:LPM0_EXIT; //退出低功耗模式0LPM4_EXIT; //退出低功耗模式4MSP430的电压已经降到了3.3v,虽然不是最低的(arm的部分芯片内核工作电压降到了1.8v),但是这已经是比较低的了;MSP430比较出彩的地方一个是把一颗芯片分成了N个不同的模块部分,不用的部分功能模块可以关闭掉,电流近似为零;另一个出彩的地方是,可以有三个时钟源,并产生更多的内部可用工作频率,让内部各个模块工作在不同的频率,不用的时钟还可以关掉(具体参看上一节MSP430之系统时钟篇)。
后两种方法主要是通过软件的方式进行设置的,具体来讲,MSP430可以有6种不同的工作模式:设置其工作模式主要是设置寄存器SR的SCG0、SCG1、OscOff、CPUOff 位。
SCG0=1且DCOCLK没有用于MCLK和SMCLK时,直流发生器禁止;SCG1=1时,SMCLK禁止; CPUOff=1时,MCLK被禁止;只有CPUOff=1时,OscOff才可以=1,此时晶振被禁止。
MSP430低功耗运行模式原理及应用MSP430系列单片机因为其良好的低功耗表现和强大的数据处理能力,在许多领域具有广泛的应用,文章通过分析其低功耗模式的原理,介绍了MSP430及其衍生型号在相关领域的应用,对研究MSP430的低功耗模式及其实际应用具有一定的指导意义。
标签:MSP430;低功耗模式;应用MSP430系列单片机是美国德州仪器(TI)公司推出的集多种先进技术于一体的新一代单片机,该机最突出的特点是其低功耗模式,同时由于其具有强大的运算能力和仿真调试能力以及丰富的内外设,所以在全世界范围内获得了空前的成功[1],尤其在对功耗要求比较高的领域,得到了广泛的应用。
文章通过研究其低功耗的原理,介绍了MSP430系列单片机在相关领域的具体应用。
1 MSP430的低功耗运行模式研究MSP430系列单片机的内部结构框图如图1所示,MSP430系列单片机之所以能够有超低的功耗表现,主要有以下几个原因:1.1 工作电压低,低功耗模式多MSP430系列单片机的CPU的标准工作电压范围为1.8V-3.6,最低能在1.8V 的电压下工作,芯片最低的工作电流只有0.1μA,所以从基础结构的设计上就能保证低功耗的良好表现。
MSP430有1种活动模式(AM)和5种低功耗工作模式(LPM0、LPM1、LPM2、LPM3、LPM4),由于该型单片机主要用在工作时间短、休眠时间长的环境,所以多种低功耗模式的设计,可以使MSP430能够经常处于最经济的状态,有效降低了功耗。
1.2 中断响应速度快MSP430处于低功耗状态时,如果中断事件发生,MSP430可以在6μs内唤醒CPU进入工作状态,当事件处理完毕后,MSP430再次进入低功耗状态,由于其CPU强大的处理能力,一般能够很快地完成处理任务,所以MSP430大部分时间能够处于低功耗状态,这是MSP430非常省电的另一个重要原因。
1.3 灵活的时钟系统MSP430系列单片机中的两种不同的时钟系统(基本时钟系统和锁频环(FLL和FLL+)时钟系统或DCO数字振荡器时钟系统)可以根据实际需求产生三种不同频率的时钟信号,具体有:低频的辅助时钟(A-CLK),主要用于低频处理的场合,也可作为外设的信号源或时钟;高频的主系统时钟(MCLK),用于工作模式,也可作为高速外设的时钟;高频的子系统时钟(SMCLK),作为外设需要的备份。
MSP430教程3:MSP430单片机硬件知识MSP430单片机是TI公司1996年开始推向市场的超低功耗微处理器,另外他还集成了很多模块功能,从而使得用一片MSP430 芯片可以完成多片芯片才能完成的功能,大大缩小了产品的体积与成本。
如今,MSP4 30单片机已经用于各个领域,尤其是仪器仪表、监测、医疗器械以及汽车电子等领域。
下面来说一下它的主要特点:(1)低电源电压范围,1.8~3.6V。
(2)超低功耗,拥有5种低功耗模式(以后会详细介绍)。
(3)灵活的时钟使用模式。
(4)高速的运算能力,16位RISC架构,125ns 指令周期。
(5)丰富的功能模块,这些功能模块包括:A:多通道10-14位AD转换器;B:双路12位D A转换器;C:比较器;D:液晶驱动器;E:电源电压检测;F:串行口USART(UART/SPI);G:硬件乘法器;H:看门狗定时器,多个16位、8位定时器(可进行捕获,比较,PWM输出);I:DMA控制器。
(6)FLASH存储器,不需要额外的高电压就在运行种由程序控制写擦欧哦和段的擦除;(7)MSP430芯片上包括JTAG接口,仿真调试通过一个简单的JTAG接口转换器就可以方便的实现如设置断点、单步执行、读写寄存器等调试;(8)快速灵活的变成方式,可通过JTAG和BSL两种方式向CPU内装在程序。
关于他的内存器结构,在匠人的博客里已有详细的介绍,大家去看就是了。
在这里我主要说说MS P430单片机的复位吧。
MSP430的复位信号有2种:上电复位信号(POR)、上电清除信号(PUC)。
还有能够触发POR 和PUC的信号:5种来在看门狗,1种来自复位管脚,1种来自写FLASH键值出现错误所产生的信号。
POR信号只在2种情况下发生:(1)微处理上电;(2)RST/NMI管脚上产生低电平时系统复位。
PUC信号产生的条件:(1)POR信号产生;(2)看门狗有效时,看门狗定时器溢出;(3)写看门狗定时器安全键值出现错误;(4)写FLASH存储器安全键值出现错误。
MSP430单片机低功耗控制与系统工作模式详解2011-01-22 11:14CPU内状态寄存器SR中的SCG0、SCG1、OscOff和CPUOff位是重要的低功耗控制位。
只要任意中断被响应,PC和SR就被压入堆栈保存,在中断程序执行的过程中,SR 被清除(因为SR被清除,其GIE也被清除,所以中断嵌套被禁止,如果手动将GIE置位,将不论优先级的将该中断服务程序中断),CPU进入AM模式,中断处理之后,又可以恢复先前的工作方式(在中断处理子程序执行期间,通过间接访问堆栈数据,可以操作这些位;这样允许程序在中断返回(RETI)后,以另一种功耗方式继续运行)。
各控制位作用如下:SCG1:当SCG1复位时,使能SMCLK;SCG1置位则禁止SMCLK。
SCG0:当SCG0复位时,直流发生器被激活(相当于DCO被激活),只有SCG0被置位且DCOCLK信号没有用于MCLK或SMCLK,直流发生器才能被禁止。
OscOff:当OscOff复位时,LFXT晶体振荡器激活,只有当OscOff被置位且不用于MCLK 或SMCLK时,LFXT晶体振荡器才能被禁止。
CPUOff:当CPUOff复位时,用于CPU的时钟信号MCLK被激活,当CPUOff置位时,MCLK 停止。
控制位SCG1、SCG2、OscOff和CPUOff可由软件配置成6种不同的工作模式:1种活动模式和5种低功耗模式。
如下表所示:工作模式控制位CPU状态、振荡器及时钟活动模式(AM)SCG1=0SCG0=0OscOff=0CPUOff=0CPU处于活动状态MCLK活动SMCLK活动ACLK活动低功耗模式0 (LPM0)SCG1=0SCG0=0OscOff=0CPUOff=1CPU处于禁止状态MCLK被禁止SMCLK活动ACLK活动低功耗模式1 (LPM1)SCG1=0SCG0=1OscOff=0CPUOff=1CPU处于禁止状态如果DCO未用作MCLK或SMCKL,则直流发生器被禁止,否则仍保持活动MCLK被禁止SMCLK活动ACLK活动低功耗模式2 (LPM2)SCG1=1SCG0=0OscOff=0CPUOff=1CPU处于禁止状态如果DCO未用作MCLK或SMCKL,自动被禁止MCLK被禁止SMCLK被禁止ACLK活动低功耗模式3 (LPM3)SCG1=1SCG0=1OscOff=0CPU处于禁止状态DCO被禁止,直流发生器被禁止MCLK被禁止CPUOff=1 SMCLK被禁止ACLK活动低功耗模式4 (LPM4)SCG1=XSCG0=XOscOff=1CPUOff=1CPU处于禁止状态DCO被禁止,直流发生器被禁止所有振荡器停止工作MCLK被禁止SMCLK被禁止ACLK被禁止MSP430单片机低功耗控制与系统工作模式详解2011-01-22 11:14CPU内状态寄存器SR中的SCG0、SCG1、OscOff和CPUOff位是重要的低功耗控制位。
MSP430 低功耗运行模式原理分析及应用
MSP430 系列是一款具有精简指令集的16 位超低功耗混合型单片机。
它包含冯诺依曼结构寻址方式(MAB)和数据存储方式(MDB)的灵活时钟系统,由于含有一个标准的地址映射和数字模拟外围接口的CPU,MSP430 为混合信号应用需求提供了解决方案。
1、MSP430 优点
与熟知的采用复杂指令集的8 位51 系列单片机相比,16 位精简指令集的MSP430 系列单片机的功能更强,运行速度更快。
(1)灵活的时钟系统
时钟系统是为电池供电的应用而特别设计的。
一个低频率时钟直接由
32kHz 的晶振驱动(ACLK)。
整合的高速数控振荡器(DCO)作为用于CPU 和高速外围设备的主时钟源。
DOC 的建立保持时间小于6μs。
基于
MSP430 的高性能16 位RISC 处理器设计可以在很短的距离实现高效率的数据传输。
MSP430X5XX的时钟系统与低功耗模式引言:全新改版,关于MSP430x5xx 时钟系统与低功耗模式介绍。
用到低功耗的时候,不得不仔细的看文档,做比较实验,真繁琐。
430 系列单片机中有各种时钟信号,第一次接触免不了一头雾水。
而且如果想发挥430 低功耗的优势,就不得不对它的时钟系统(Unified Clock System)有所了解。
1. 时钟模块总览这是MSP430X5XX 的时钟系统框图。
乍一看很复杂,不过简化之后就清楚多了整个系统主要分为左右两大块,左边是时钟源模块,右边是时钟调整模块。
左边的模块XT1、内建时钟(DCO)、XT2 用来产生时钟源,也就是右边最终输出的时钟信号的基准信号。
而时钟调整模块负责将源时钟信号选通、分频输出成系统使用的三大时钟信号MCLK,ACLK 和SMCLK,分别是系统的主时钟(供CPU 使用),辅助时钟(可给外设模块使用,也可以从管脚引出),子系统时钟(外设模块时钟,可从管教引出)。
2. 调整模块调整模块的主要工作分为两步:选通、分频。
ACLK 调整模块如下图所示左端进线是源时钟信号。
红色标出来的是XT1CLK 信号。
由图易知,XT1CLK 要变成ACLK 信号,需要经过两次选通,一次分频,也就是我红色标出来的路径。
第一个选通器可通过设置SELA 来控制,分频器可以通过设置DIVA 来控制,正常工作的时候,最后一个选通器总是打开的,这里不讨论。
换言之,要想设置ACLK,我们只需要配置SELA 和DIVA。
例如,如果我们希望ACLK 是XT1CLK 的2 分频的话,需要设置SELA={0},DIVA={1}。
再给一个来自TI 的例子UCSCTL4 |= SELA_2; // Set ACLK = REFO 这句话将ACLK 的源设置为REFO。
SELA 具体的含义如下图所示:顺便说一句,TI 的这个例子没有设置DIVA,用了默认值。
3.REFO、VLO 和DCO 有了上述的理解,再参照slau208e,我相信不难写出我们想要的代码。