摘要:msp4 30是ti公司出品的一款功能强大的1 6位单片机,其显著特点是具有极低的功耗。本文对构造以msp430为基础的极低功耗系统作了有益的探讨,对于设计各种便携式设备都具有较高的参考价值。
关键词:极低功耗系统 msp430 低功耗管理
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.8 v。我们使用ti公司推荐使用的3 v。通常的电源只提供5 v电压,因此,需要将5 v电压由一个3 v的稳压管降压后给cpu供电,也可以直接锂电池供电。3 v不是标准的ttl电平,因此,在使用时需要用接口电路使cpu的非ttl标准电平能与ttl标准电平的器件连接。这些接口电路应该也是低功耗的,否则会造成一方面使用低电压降低了功耗,另一个方面使用额外的接口电路又增加了系统的功耗。或者直接使用支持3 v电压的外围芯片。
(2)时钟频率
从低功耗的角度看,需要较低的频率,但是在实时应用中为了快速响应外部事件又需要有比较快的系统时钟。这就需要系统具有两个高低不同的频率,在需要的时候可以在两个频率之间进行切换。为了保证切换迅速、时间延迟少,又要求低q值振荡器,同时切换时往往造成时钟频率的不稳定,这对于要求频率稳定的系统,如实时时钟rtc而言又是不适合的。设计一个完全达到以上要求的时钟系统是很困难的,msp430采用了一种折衷办法,即在cpu外使用一个较低的频率为32 768 hz的钟表晶体振荡器生成辅助时钟aclk,能够保证一些低频率应用场合的要求,对于一些低频工作的外设而言可以直接作为信号源或时钟,而无需增加额外的分频电路;同时,在cpu内部使用结合数字控制振荡器dco的fll技术,将aclk倍频升高,作为系统的主时钟mclk。它使得指令能够在较低晶振下获得高时钟时的运行速度,能够满足高速实时的要求。低、高频之间的切换只需6μs。对于149型号的芯片而言,更具有第三个频率smclk可供外设使用,它可外接二个晶振,当设置dcor=0时smclk使用dcoclk,当dcor=i时smclk使用第二个外接晶振x2。x2的频率一般比x1要高,这样便又可以满足高速外设的要求。
(3)低功耗软件控制
msp430的工作模式通过模块的智能化运行管理和cpu的状态组合以先进的方式支持超低功耗的各种要求。cpu内状态寄存器sr中的scgl、scg2、oscoff、cpuoff与功耗有关。可由软件组合成6种工作模式。
①活动模式--am
正常的工作模式,这时cpu消耗的电能最大。
②低功耗模式0--lpm0
cpuoff置位,cpu停止活动,但外围模块继续工作,aclk和mclk信号保持活动状态,mclk的锁频环控制正常工作。有关控制位设置为:
scgl=0,scg0=0,oscoff=0,cpuoff=1。