电子技术应用|技术阅读
登录|注册

您现在的位置是:电子技术应用 > 技术阅读 > 单片机实现低功耗的几种方法和注意事项

单片机实现低功耗的几种方法和注意事项


关注+星标公众号,不错过精彩内容

作者 | strongerHuang

微信公众号 | 嵌入式专栏


对于使用电池供电的产品,特别是有些要求用一节(颗电池工作1年,甚至几年的产品这种产品平均电流要求很低,基本在uA或nA级别。


我在之前公司做过很多用电池供电的产品,这些产品有一个共同的特性:待机时电流非常低。


下面我就结合自己工作经验以及市面上相关产品,描述关于低功耗设计注意事项,以及实现低功耗的方法。


嵌入式专栏

1

待机产品及情况

低功耗产品通常是要求待机功耗低,有的产品待机时0功耗,有的产品待机时多个外设模块交替,或者同时工作。


1.待机0功耗

待机时0功耗的产品,只要保证在工作时的功耗即可。如果工作的时间也很短,那么这种产品在低功耗方面需要投入的研发其实相对不多。


比如电视机按键)遥控板:

这种产品待机时0功耗,通过按键唤醒,唤醒之后工作几毫秒(不同型号时间有差异)又进入待机状态。


实现原理:

通过按键上电,启动MCU,执行工作,执行完任务,通过MCU控制总电源断电。


也就是:通过外部开启电源,通过内部控制断电的机制实现。


2.间歇待机有些产品是间歇性待机,比如:工作1ms,待机499ms。


比如IC卡设备:
IC卡设备如果一直处于寻卡工作状态,电流其实相对较大,而很多时候都没有IC来感应。

实现原理:这种产品,可以间隔0.25s,或者0.5s来感应(寻卡)一次,同时不会给人带来“卡顿”的感觉。(寻卡工作的时间其实很短)(图片来自网络)
同理,类似的产品还有很多,比如无线遥控天然气、水表等。
这种做法目的是为了让产品功耗更低,但人看起来产品一直在工作。
3.长期待机有些产品的MCU是通过外围设备唤醒,比如通过触摸按键唤醒产品。
这种产品相对上面两种难度更大,要同时保证MCU内部资源,以及外部资源在工作和待机时功耗都要尽量低。

嵌入式专栏

2

实现低功耗的方法

结合上面产品的描述可以总结几点实现低功耗的方法。


1.控制电源开关通过控制系统总电源、(高功耗)外围模块电源的开关,特别是使用频率低、功耗大的外围模块,在需要时才开启。

2.控制MCU内部外设有些MCU产品的外设在上电时默认开启的(比如STM8S,不用的外设一定要关闭,在需要时才开启。


3.控制时钟频率这里说的控制时钟频率不单纯是降频,是根据实际工作情况(工作模式、时长等)调整频率。

有些产品它在执行任务A时,要求快速处理(不如跑一段算法),则需要调整到更高的频率;
而在执行任务B时,处理简单事情(比如控制LED亮灭),则需要将时钟调整到很低状态。
同时,还需要结合工作时长,比如上面任务A,如果时间很长,这个频率也需要综合考虑。
4.控制IO状态现在MCU基本都有多种状态:
  • 模拟输入
  • 浮空输入
  • 下拉输入
  • 上拉输入
  • 开漏输出
  • 推挽输出
  • 复用开漏输出
  • 复用推挽输出

在低功耗状态、工作过程都需要设置成合理状态。比如通常在待机时,将不用的引脚设置成模拟输入。
5.检查硬件检查是否存在漏电流,比如不合格电容、电阻等器件。
还有虚焊或板卡上存在残留焊锡等情况,都会导致功耗增加。
(这里面的坑比较多,来留言说说你遇到过的坑)
------------ END ------------


后台回复『单片机』『嵌入式软件设计与开发』阅读更多相关文章。


欢迎关注我的公众号回复“加群”按规则加入技术交流群,回复“1024”查看更多内容。
欢迎关注我的视频号:


点击“阅读原文”查看更多分享,欢迎点分享、收藏、点赞、在看。