STM32
直播中

李文

7年用户 165经验值
私信 关注
[问答]

STM32待机模式唤醒后程序怎么运行?

STM32 待机模式  下程序运行问题
就是程序运行了一阵然后进入待机模式,当从待机模式唤醒后程序怎么运行?????
书中讲到:进入待机模式,SRAM 和寄存器内容丢失  怎么理解?????

回帖(6)

李娓仑

2020-3-9 08:44:55
待机模式唤醒,相当于一次复位.从头开始运行程序.
就是比如你有个u8 a;开始的时候为0.
然后用着用着,a=10;这个时候,你进入了待机模式.那么这个a的数据就丢了.
下次唤醒的时候,还是a=0;而不是a=10.
举报

李宇昂

2020-3-9 08:53:02
补充个问题:
待机模式下唤醒,相当于系统电源复位对吧?
那么中断服务程序什么时候执行呢?我看资料上说是初始化结束,这个初始化结束指的是哪个初始化呢?
举报

李朝

2020-3-9 09:07:54
是相当于系统复位.先复位后进入中断服务程序.
举报

李代三

2020-3-9 09:19:53
我在中断服务程序中点亮LED灯,并为一个全局变量赋值,
但是系统从待机模式回复之后,这个全局变量的值依然是零,
而且LED1并没有点亮。
在正常运行模式下现象正常~~
中断服务如下:
void EXTI0_IRQHandler(void)
{                  
EXTI->R=1<<0;  //清除LINE10上的中断标志位
if((GPIOA->IDR&(1<<0)))  //S3S3按下为高电平
{
LED1=!LED1;
flag = 1;
}
举报

更多回帖

发帖
×
20
完善资料,
赚取积分