是什么偷走了MCU的功耗?


许多工程师在设计MCU低功耗的时候都会遇见这样的情况,使用原厂的开发板、原厂的例程,测得的功耗会非常低,几乎就是数据手册上写的那个数据。可是偏偏自己编写工程的时候,MCU的功耗仅仅是象征性的降一下,根本达不到理论的数据。到底是什么偷走了MCU的功耗呢?
低功耗是MCU的一项非常重要的指标,比如某些可穿戴的设备,其携带的电量有限,如果整个电路消耗的电量特别大的话,就会经常出现电量不足的情况,影响用户体验;
平时我们在做产品的时候,基本的功能实现很简单,但只要涉及低功耗的问题就比较棘手了,比如某些可以低到微安级的MCU,而自己设计的低功耗怎么测都是毫安级的,电流竟然能够高出标准几百到上千倍,遇到这种情况千万不要怕,只要认真你就赢了。下边咱们仔细分析一下这其中的原因。
第一条:掐断外设命脉——关闭外设时钟
先说最直观的,也是工程师都比较注意的方面,就是关闭MCU的外设时钟,对于现在市面上出现的大多数的MCU,其外设模块都对应着一个时钟开关。只需要打开这个外设的时钟,就可以正常的使用这个外设了,当然,此外设也就会产生相应的功耗;反之,如果想要让这个外设不产生功耗,只需关闭它的时钟即可。
第二条:让工作节奏慢下来——时钟不要倍频