STM8L低功耗调试总结

STM8L低功耗调试

  • 资料准备
    • 功耗数据目标
    • 实现低功耗

资料准备

在调试STM单片机相关功能时,习惯性的进入到STM官方论坛进行资料下载。调试STM8功耗也不例外,找到STM8L的应用笔记,选择最热,先看看官方提供的STM8入门文档,入门资料可以选择中文或者英文(STM8L和STM8AL入门)。
STM8L低功耗调试总结_第1张图片
资料里面有一段话,对功耗调试相当重要:
6.6 不使用的 I/O 和特性
微控制器都是为多种应用设计的,通常一个应用不会使用 100 % 的微控制器资源。
为了避免不必要的功率消耗 (对电池供电应用特别重要),同时提高 EMC 性能,闲置时
钟、计数器或 I/O 都不应浮空。 I/O 应该外部强制 (上拉或者下拉到闲置 I/O 引脚),并且不
使用的功能应被 “ 冻结 ” 或禁用。
或者,不用的 I/O 可以编程为推挽 “ 低 ”,以使它们保持在一个指定的电平,而且不使用外部
元件。但是在这种情况下,上电期间直到 I/O 完成配置前, I/O 都没有驱动。这将导致少量
额外的功耗,同时可能不适用于在对功耗非常敏感的应用中。

功耗数据目标

查看数据手册的低功耗特性(Low power features)可以了解到,STM8有5种功耗模式,如果让MCU待机,最低功耗可以达到350nA,这是相当的小!
5 low power modes: Wait, Low power run
(5.1 µA), Low power wait (3 µA), Active-halt
with RTC (1.3 µA), Halt (350 nA)

文档继续往下看,翻到Electrical parameters页,可以看到对运行功耗的描述,比如CPU运行1MHZ的速率,功耗大约470uA。
The run from RAM consumption can be approximated with the linear formula:
IDD(run_from_RAM) = Freq * 90 µA/MHz + 380 µA

目标确定,运行时可以低至470uA,待机可低至350nA。

实现低功耗

实现低功耗其实就是进入Halt模式,三个步骤(超级简单哦)。
1.配置好IO口,还不知道的,看上文中不使用的 I/O 和特性的描述。
2.PWR_UltraLowPowerCmd(ENABLE); //使能电源的低功耗模式
3.halt();//进入Halt模式
睡眠过后,外部中断可唤醒(The wakeup is triggered by an external interrupt or
reset)

你可能感兴趣的:(各类单片机)