欢迎访问我的网站
企业新闻 行业资讯 媒体报道

单片机低功耗设计

2022-04-15 15:06:04 3336

单片机低功耗设计

单片机系统低功耗设计的总体原则及其设计策略

随着电子科学技术的发展,在人们的生产生活领域,基于单片机系统设计的电子产品被广泛应用,同时对单片机系统的能耗功率设计提出了更高的要求,单片机低功耗设计越来越受到人们关注,单片机低功耗设计符合社会节能要求,可以大幅度提高电子产品的使用寿命,大大提高产品竞争力。由此看出,单片机的低功耗设计不但具有很好的经济效益,而且具有较大的社会效益。

一、单片机系统低功耗设计原则

(1)CPU内核简单为宜原则:在单片机系统设计中,CPU的选择不能一味的追求性能。8位机就够用,一定要遵循够用就好的原则。随着科技的发展,当前的单片机运行速度越来越快,但是性能的不断提升一定会带来能量的消耗。相对复杂的CPU集成度也一定高,由于片内晶体管多,总漏电流会加大,所以当设备处于stop状态的时候,也会产生漏电现象,所以CPU的选择,简单实用就好,不但可以降低功耗而且可以降低成本。

(2)电压系统“够用就好”原则:降低单片机供电电压能够很好的降低使用功率,目前,单片机的供电电压已经从原来的5V降至1.8V。低电压供电可以有效的降低系统工作电流,但是由于晶体管的尺寸在不断减小,这也是降低功耗非常不利的一方面。所以选择低电压系统时一定要慎重。系统中的其他电子元件在低电压的情况下要确保正常工作。通过这种途径可以很大程度上解决系统的低功耗问题。

(3)选择低功耗电路原则:单片机低功耗系统的设计,要选择在低功耗的情况下,保持高效率的电路,目前低功耗系统使用的大多是HCMOS集成电路,可以将很多集成电路共同联结在一个封装内。这样可以减少总线电容,从而容纳更多的信号。除此之外,降低晶振频率也能有效的降低整机电流,但是晶振频率降低有时会影响系统的运行速度,会受到外部电路时序、计数器测量频率、串行通讯频率等的限制,所以在晶振频率值选择时,一定要考虑到系统信息处理的工作速度。

二、单片机低功耗设计的主要依据

2.1降低单片机应用系统功耗

在单片机低功耗系统设计中,要合理的运用掉电、睡眠以及中断,进一步实现电子产品的低功耗运行,睡眠模式与掉电模式可以通过CPU与系统的关断来达到降低功耗的目的。集中功率消耗较大的任务,降低功耗时间,采用快速进入掉电或睡眠状态,避免系统无谓的等待。在确保系统正常运行的前提下降低采集速度、总线速度。

2.2单片机本质低功率设计

对于单片机本质低功耗设计主要体现在对元器件的选择和电路设计两个方面。元器件的选择要遵循频率宜慢不宜快、系统宜静不宜动、电压宜低不宜高的原则,实现硬件系统的节能化。关于元器件节能控制的主要方法为:控制电源电压、时钟控制以及静态控制。在电路的设计过程中,要采用低功耗的唤醒电路设计,选择集成度高的电子芯片来替代单一功能集成度低的电子芯片,在降低供电电压的同时要加强电路的屏蔽与抗干扰能力设计。

三、单片机系统低功耗设计方案

3.1单片机低功耗系统硬件设计

(1)选择适当的振荡方式:目前比较常用的振荡器有晶体震荡器、谐振器与RC振荡器,3种振荡器的唤醒时间各不相同,该设计选用晶体振荡器,晶体振荡器的唤醒时间在8.5ms左右,单片机在工作的过程中,如果唤醒的时间过长,就会形成一个预工作阶段,这时处理器就会消耗电能,但是程序还没有运行,所以导致电能消耗损失。为了进一步节约能耗,在晶体振荡器的回路中串上一个小电阻RS。

(2)处理I/O管脚:在单片机低功耗系统的设计中,I/O管脚的处理尤为重要。设置为输出的管脚可以驱动20-25mA的电流,所以要对每一个输出管脚进行优化,为了达到节能的效果,可以禁止内部上拉,使外部较大的电阻做上位,这种做法可以做到在休眠状态下节约能量,在受干扰的环境下,会由于内部锁存器的频繁翻转,而增加电流的消耗。所以,没有用的管脚,都可以设置为输出,不能只是简单的不接,一旦外界出现干扰信号就极易成为反复振荡的输入信号,造成不必要的功耗。

(3)选择合适的MCU以及待机模式:低功耗的MCU对于降低单片机的功耗具有十分重要的作用,一定要根据单片机系统被应用的具体场合,从多种待机工作模式中选取最恰当的模式,最大可能的使MCU处于低功耗状态。MCU的工作频率不同时,工作耗电的差异也会很大,另外,低电压供电可以使系统的供电电流大大下降,降低单片机的供电电压可以有效降低功耗。所以选择合适的MCU以及系统电压,对于降低功耗具有积极意义。

3.2单片机低功耗系统软件设计

(1)采取“中断”方式降低功耗:系统在运行的过程中,程序的中断方式不同,对于应用系统功耗的大小有很大区别,在“中断”的形式下,系统处理器可以处于空闲状态,而如果在查询的形式下,CPU对于I/O寄存器就会不停的访问,产生额外的功耗。

(2)间歇式运行I/O模块:I/O模块在间歇式运行时一定要注意关闭电源,目前单片机应用系统所采用的驱动一般功率较大,所以要通过一个I/O引脚来进行掌控,当系统无需通信时,及时的关闭驱动。对于简单封装或没有引出的单片机,要注意I/O引脚的初始化。

(3)降低CPU的运算量:在实际操作中,关于减少CPU的运算量的方法有很多,可以将运行算好的结果提前植入到Flash当中,在使用时可以通过查询的方式来替代运算,从而减少CPU运算量。许多单片机已经具备快速寻址方式与查表指令,对一些难以避免的计算非常有效。增加分数运算或减少浮点数运算的使用,尽可能使用一些短的数据类型。

(4)选择低功耗模式系统:低功耗模式主要指系统的等待或停止模式。这种模式下单片机的功率会远小于运行时功率,在等待模式下,CPU会停止工作,但是单片机的外围I/O模块不会停止工作,系统的功耗降低也有限,如图2所示。

图 2 HCS08 单片机系统功能

以Freescale的HCS08单片机为例,给出不同运行模式下的系统功耗。HCS08是8位单片机,有多个系列,各系列I/O模块数目有所不同,但低功耗模式下的电流消耗大致相同。

因此在让系统进入深度停止状态前,要将重要系统参数保存在非易失性存储器中,如EEPROM中。深度停止模式关掉了所有的I/O,可能的唤醒方式也很有限,一般只能是复位或IRQ中断等。保留的I/O模块越多,系统允许的唤醒中断源也就越多。单片机的功耗将根据保留唤醒方式的不同,降至1μA至几十μA之间。

总结

在当今社会的发展中,低功耗的单片机应用已经成为单片机系统设计的主要发展方向,加强与推广单片机低功耗设计的研究具有重要的现实意义。在以后的研究与设计中,通过对硬件系统及软件系统的设计与创新,单片机应用系统在不远的将来将会创造出更大的经济效益与社会效益。


TAG:单片机