173 2438 5004
KEROS加密芯片——品牌直销 | 免费样品 | 技术支持
当前位置:网站首页 > 资讯中心 正文 资讯中心

stm32串口唤醒怎么进入stop模式

keros@mark 2023-03-18 资讯中心

stm32的停止模式怎么用串口唤醒

PWR_EnterSTOPMode(PWR_Regulator_ON, WR_STOPEntry_WFI);  //唤醒后时钟变为内置8MHz,需要重新配置RCC,才能正常运行,否则PLL关闭。

SystemInit();

n32进入stop2模式

n32进入stop2模式

检查STM32L476的参考手册RM0351,在STOP2 模式下的描述中,可以看到以下这一段话:

意思是说:所有在STOP2 模式下不能使用的外设,在进入STOP2模式之前,必须在其外设本身清除相应的使能位来进行禁用,或者通过设置相应的位将其恢复到复位状态。

于是,需要对代码进行修改:在进入STOP2 模式之前,将I2C 外设进行复位,复位后将SCL和SDA 两根线配置为输入上拉状态。为什么要配置为输入上拉呢?因为此I2C 在外部上没有上拉电阻连接,需要在STOP2模式下保持这两个I/O 上有确定的电平,以避免其易受电磁干扰和额外的电流消耗。而这两个口工作中又作为I2C接口,所以选择上拉电阻而不是下拉电阻。修正后,再进行测试,可测得在STOP2 模式下的电流为1.0uA,与数据手册相符。

结论

由于在进入STOP2 模式之前没有对I2C 进行复位及I/O 口处理,导致在STOP2 模式中产生了漏电流。

处理

在进入STOP2 模式下,请确保所有不相关的外设都已经被正确复位或禁用,并配置I/O口为相应的正确结构。此种情况还容易发生在使用操作系统的应用中,因为多个任务的调度很容易让使用者在进入STOP2模式时忘记对所有的外设进行检测。所以,在进入STOP2 模式前,请检查一下其他任务的工作情况,是否还有外设在传输数据还没传输完,是的话需要等待其结束,确保所有数据传输完成后,对外设进行复位或禁用,再进入STOP2模式。

求stm32l152 stop唤醒历程,外部中断、串口接收中断唤醒

任意外部中断都能唤醒,调试前确定中断正常使用,STOP没法调试程序。在PWR_EnterSTOPMode(PWR_Regulator_ON,PWR_STOPEntry_WFI);之后要加系统时钟初始化,不然有的时钟没法用

STM32L051低功耗STOP模式串口中断唤醒

STM32L051进入STOP模式后,除去通过RTC唤醒,还可通过外部中断唤醒,在stop without rtc模式下电流消耗能达到0.4uA。很多时候,我们需要使用STM32的串口进行唤醒,比如接收到串口命令后MCU唤醒进行相关操作。本文总结下STM32L051的STOP模式,通过外部中断「按键、串口」进行唤醒。

串口唤醒的思路就是在MCU进入STOP前将RX脚设为EXTI模式,并使能对应的中断,唤醒后重新初始化串口、配置时钟。实际上都是使用的外部中断唤醒。

目前测试到消耗电流与数据手册一致。

您好,STM32进入STANDBY之后可不可以自己设置自己的唤醒按键,不是PA0,我的是PA4,怎么设置让它唤醒呢?

如果是standby模式,只能用PA0或者RST引脚来唤醒,不可以定以外部事件唤醒,stop(停止模式)可以定义外部引脚中断事件来触发唤醒

本文标签:stm32串口唤醒怎么进入stop模式

产品列表
产品封装
友情链接