在STM32L0和STM32L4系列微控制器中使用LPUART使功耗最小 / a9 U, I9 |1 e! ` 前言 STM32L0 和 STM32L4 系列微控制器具有复用的 UART 接口,这一设计令 MCU 仅需最小功耗即可工作。 1 }; U$ m* W2 u9 _; O5 X 7 H% ?5 d, ^5 D0 d 本文的目的是解释怎样充分利用低功耗 UART (LPUART)的优势,扩展上述产品的电池寿命。 它显示了在实际示例中,等待通信设备的极低功耗。软件包 X-CUBE-LPUART 提供了在第 6.1 节和第 6.2 节中所述的用于执行测量的代码,可从 www.st.com 下载。 ) [/ a- v b: ]# A7 W$ b 下列文件 (也可在 www.st.com 获取)可作为参考: 4 i9 ?# c+ v" A; ^: r + S& j* s: U& N3 ? • 应用笔记 AN4445:“STM32L0xx 超低功耗特性概述 ” - a7 M5 o: w, Q+ s • 应用笔记 AN4621:“STM32L4xx 超低功耗特性概述 ” • 应用笔记 AN4746:“ 优化 STM32L4xx 的功耗和性能 ” • 参考手册 RM0351:“STM32L4x6 高级的基于 ARM® 的 32 位 MCU” • 参考手册 RM0376:“ 超低功耗 STM32L0x2 高级的基于 ARM® 的 32 位 MCU”。: e9 e E! D- w X- s$ u) T x8 g 1 定义 2 H& [6 D& e* y8 }1 j; g0 ?: S 2 特性总结 ! e' ]6 S6 q- |- b c2 U- _. t2.1 L0 和 L4 系列比较 虽然 STM32L4 和 STM32L0 系列上的 LPUART 外设实际上相同,但这两种产品有很大区别。除了 ARM® Cortex® 内核不同,还有其它区别影响了 LPUART 的效率。 . [( o. z [5 w! U4 R- N1 D2 R2.1.1 时钟子系统 9 f5 g4 N' D& ySTM32L4xx MCU 可支持更高的时钟速度,这有效地降低了高要求任务的处理时间。 MSI 内部时钟源也因此调整以达到更高时钟速度。这一 MSI 的加速降低了低速的选择范围,STM32L4 MSI 的最低可能频率为 100 kHz,而 STM32L0xx MCU 为 65 kHz。 1 MHz 以下的可选速度是不同的,因此难以直接比较两种 MCU 的效率。另外,在STM32L4 系列中,MSI 可在其 PLL 模式中使用 LSE 硬件自动校准。这使得 MSI 更加精确,而 STM32L0 产品无此选项。 6 K" V# [3 O8 \9 a2 _STM32L0 系列对于 HSI 时钟源具有一个简单的时钟因子 4 分频器,这使得 HSI 成为 16 或 4MHz 的有效源。 STM32L4 MCU 在 HSI16 时钟上没有直接的分频器。因此,在一些 UART速度需要高于 9600 Bd 的应用中, STM32L0 可能会高效很多。对于 STM32L4,若 16 MHz不够有效,解决方案为使用第二时钟源做系统时钟。 LSI 时钟频率也有不同,但这与我们的情况无关。 2.1.2 电源管理 ; C! i6 F. H$ X8 ]: w% ] NSTM32L4 系列的主调压器仅有两个范围,而 STM32L0xx MCU 有三个。此外,由于有更强的 MCU 支持,这两个范围被移到了更高频率。 ' O7 i# m/ `4 }+ `( n非常有用的低功耗运行模式弥补了这一不足。 STM32L0xx MCU 在从 Sleep 或 Stop 低功耗模式唤醒后,无法直接返回至低功耗运行模式,而 STM32L4 系列不存在这一限制。 STM32L4xx 上的低功耗运行也不限于 MSI 范围 1,还能工作于高达 2 MHz 的系统时钟速度。即使在低功耗运行中, HSI16 仍可被用作外设时钟。 3 j( P+ R$ A& T1 v2.2 与 USART 外设的比较 % H2 `1 s3 v/ O. X# e4 U1 K, }* l4 ~LPUART 比 USART 特性更少,但可用更低功耗工作,并可更有效地使用 LSE 时钟。两种外设的主要特性总结于表 2 中。 |
收藏 |
收藏 |
基于STM32L4R9 的QuadSPI Flash 通讯速率不理想经验分享
基于STM32L051使用CubeMX生成工程文件ST系列芯片通用经验分享
基于STM32L051开始添加需要的代码经验分享
STM32L051测试I2C协议设备的添加经验分享
基于STM32L051测试Flash和EEPROM的读写
基于STM32L051串口测试与Enocean模块通讯问题
基于STM32L0的EEPROM读写经验分享
基于STM32L0 ADC使用HAL库关于校准问题经验分享
STM32L4超低功耗功能概述
基于STM32L431RC Standby和RTC中断唤醒经验分享