不要小看STM8这种小巧的8位单片机,它在各种领域有着广泛的应用,特别是在许多小型电子产品中应用非常普遍。其中,有一部分产品是依靠电池供电的。
对于电池供电的产品来说,低功耗是一个重要的考虑因素。为了解决这个问题,我今天将分享一些关于STM8S系列低功耗相关的内容。
1STM8S功耗来源
STM8S功耗分静态功耗和动态功耗。
静态功耗:主要由晶体管的偏置电流和漏电流产生。
动态功耗:取决于电源电压和工作时钟频率。
在CMOS逻辑电路以一定时钟频率运行时,静态功耗与动态功耗相比是可以忽略的。但在一些低功耗模式下,时钟不再运行,此时静态功耗是主要的功耗源。
**
**
因此,功耗主要取决于:
1.微控制器单元(MCU)的芯片面积:所采用的工艺,晶体管的数量,片上集成和使用的模拟功能/外设。
2.MCU电源电压: CMOS逻辑电路中消耗的电流与电源电压的平方成正比。因此,可以通过降低供电电压来降低功耗。
3.时钟频率:在不要求进行高速处理的应用中,降低时钟频率可以降低功耗。
4.激活的外设数目或使用的MCU功能数目:激活的外设数目越多,或使用的MCU功能数目越多,则功耗越大。
5.工作模式:功耗会随着应用所处的不同功耗模式而改变(CPU开启/关闭,晶振开启/关闭等)。
2STM8时钟
以下4种时钟源可用做STM8主时钟:
-
1-24MHz高速外部晶体振荡器(HSE) -
最大24MHz高速外部时钟信号(HSE user-ext) -
16MHz高速内部RC振荡器(HSI) -
128KHz低速内部RC(LSI)
各个时钟源可单独打开或关闭,从而优化功耗。
时钟源比较:
复位以后,默认的时钟为HSI / 8,随后用户可以把时钟切换到不同时钟源和不同频率:
降低功耗方法:
1.关闭不用外设时钟;
2.降低CPU的时钟频率;
提示:STM8S外设时钟默认是开启的。每个外设都可以在不使用的时候,单独地打开或者关闭它的时钟来优化系统功耗。
3低功耗模式
STM8S有3种低功耗模式:
1.等待(Wait)模式:CPU停止,外设保持工作。
2.活跃停机(Active HALT)模式:分快速和慢速模式。CPU停止,如果使能AWU(自动唤醒)和IWDG(独立看门狗),则它们保持工作,其余外设停止。
3.停机(HALT)模式:一切工作停止。
STM8S除了以上三种低功耗模式,就是处于运行模式。下面对比一下这几种模式:
4低功耗测量数据
下面来看一下官方测量的理论数据。
1.等待模式:
这种模式的功耗在低功耗模式中相对较高。频率越高,功耗越高;同时,电压越高,功耗也越高。
2.活跃停机模式:
这种模式和上面模式规律一样:频率越高,功耗越高;同时,电压越高,功耗也越高。
3.停机模式:
大家会发现,停机模式的功耗还是比较低,但这都是理论值,实际值应该会比这些值大。
比如:停机9us模式,而你实际测量有12us,这个应该属于正常范围内容。
但是,如果你实际值远大于这些理论值,那么就需要检查你硬件,或者软件了。
结尾:
**1.**STM8S芯片价格相对便宜,硬件上肯定比不上STM8L或STM32L系列芯片。
**2.**想要在STM8S上面做好低功耗,必须对其电源模块深入掌握,软件和硬件都需要考虑到位。可以参看《STM8S参考手册》。
以上就是良许教程网为各位朋友分享的Linu系统相关内容。想要了解更多Linux相关知识记得关注公众号“良许Linux”,或扫描下方二维码进行关注,更多干货等着你 !