
我需要实现的功能:干电池提供电源持续使用5年以上。外部接口只有3个,2个GPIO和1个USART。2个GPIO用于外部中断,USART用于和上位机通信。项目使用STM32CubeMX生成代码,模板选择的LL,干电池电压为3V,容量为1000mAh。STM32L010K8T6上电初始化,重要代码如下:
初始化完成立即进入STOP模式,代码如下:
请问上述代码是存在寄存器设置错误?如何让USART2在产生RXNE中断信号时唤醒MCU?谢谢! |
STM32H7使用HAL库如何控制外置USB HS PHY进入低功耗
《年中视频学习心得》+我在年中学习STM32心得
touchgfx handletickevent 执行的频率 是由什么决定的
touchgfx4.25 颜色错误?
ubuntu 编译stm32cubmax 生成的cmake工程,在最后链接阶段报错,can don't find-lc_none
STM32CubeMX居然卡死了
STM32G474VET6如何配置HRTIM的中心对齐模式
用STM32的時候是直接用MDK方便還是在vscode用keil插件方便一些
用cubemx配置好串口后,再配置一个adc输入就会卡在HardFault_Handler里不动了。
单片机板跟上位机进行串口发收数据时,每次上位机下发指令,出现问题都是在第一条指令后,有时在单片机回发完数据后偷发0x00,怎么解?
K8T6这款32PIN,没有引出LPUSART1引脚。
我刚才看的参考手册还不是针对32L010的,STM32L010对应的参考手册是 RM0451.
刚看了下,STM32L010x8的 UART2 是 支持STOP唤醒的。
你现在使用LL库组织的代码,此刻没法一眼看出问题出在哪里。
可能要找相应的开发板做些调试验证后才知道。
你看看是否少了类似这样的函数:
void LL_EXTI_EnableEvent_0_31(uint32_t ExtiLine); 这里UART 事件映射的中断线为26.
先基于手册做好确认,然后自己慢慢调试。
嗯,补充下。
我刚才看的参考手册还不是针对32L010的,STM32L010对应的参考手册是 RM0451.
刚看了下,STM32L010x8的 UART2 是 支持STOP唤醒的。
你现在使用LL库组织的代码,此刻没法一眼看出问题出在哪里。
可能要找相应的开发板做些调试验证后才知道。
你看看是否少了类似这样的函数:
void LL_EXTI_EnableEvent_0_31(uint32_t ExtiLine); 这里UART 事件映射的中断线为26.
先基于手册做好确认,然后自己慢慢调试。
可以先测试一下,不进入低功耗,看看串口2能否工作。然后再缩小范围检查。
补充一下,要实现低功耗下UART2的唤醒,需要配置UART2的时钟为HSI或者LSE。系统默认的PCLK1的时钟是实现不了。建议使用LSE为UART2 详细说明请参考手册中相关章节 21.5.17 Wakeup from Stop mode using USART