打印
[STM32F1]

停机模式怎样进入

[复制链接]
578|24
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
yszong|  楼主 | 2022-3-1 23:24 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
stm32l051怎样进入停机模式

使用特权

评论回复
沙发
chuxh| | 2022-3-1 23:24 | 只看该作者
还有什么现象?能再详细描述下吗?

使用特权

评论回复
板凳
lizye| | 2022-3-1 23:26 | 只看该作者
还有什么现象?能再详细描述下吗?

使用特权

评论回复
地板
yszong|  楼主 | 2022-3-1 23:28 | 只看该作者
我用HAL_PWR_EnterSTOPMode(PWR_LOWPOWERREGULATOR_ON, PWR_STOPENTRY_WFI);
发现程序还在运行
就试了下HAL_PWR_EnterSTANDBYMode();
发现单片机给玩坏了

使用特权

评论回复
5
spark周| | 2022-3-1 23:30 | 只看该作者
拉高nrst程序

使用特权

评论回复
6
yszong|  楼主 | 2022-3-1 23:35 | 只看该作者
拉高nrst程序还是不运行,程序也下不进去

使用特权

评论回复
7
yszong|  楼主 | 2022-3-1 23:37 | 只看该作者

while(1)
{
   LedOff();
   HAL_PWR_EnterSTOPMode(PWR_LOWPOWERREGULATOR_ON, PWR_STOPENTRY_WFI);
   SystemClock_Config();
   LedOn();
}
灯一直亮

使用特权

评论回复
8
yszong|  楼主 | 2022-3-1 23:39 | 只看该作者
HAL_Delay(1000);
                LedOff();
        //        HAL_NVIC_DisableIRQ(SysTick_IRQn);
                HAL_SuspendTick();
                HAL_PWR_EnterSTOPMode(PWR_LOWPOWERREGULATOR_ON, PWR_STOPENTRY_WFI);
                HAL_ResumeTick();
                SystemClock_Config();
                LedOn();
现在可以进入stop模式但醒不来了,用的是外部中断

使用特权

评论回复
9
huangchui| | 2022-3-1 23:41 | 只看该作者
F0的固件库里有从STOP模式唤醒的例程的吧

使用特权

评论回复
10
zhaoxqi| | 2022-3-1 23:43 | 只看该作者
//定义IO初始化结构体
GPIO_InitTypeDef GPIO_InitStructure;
   
//设置zigbee模块进入低功耗模式
inf_zigbee_sleep();
   
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_GPIOB |
                       RCC_APB2Periph_GPIOC | RCC_APB2Periph_GPIOD ,ENABLE);
   
//管脚初始化  
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_All;
//选择GPIO响应速度
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;   
//设置为输出           
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AIN;
//初始化                           
GPIO_Init(GPIOA, &GPIO_InitStructure);  
GPIO_Init(GPIOB, &GPIO_InitStructure);
GPIO_Init(GPIOC, &GPIO_InitStructure);
GPIO_Init(GPIOD, &GPIO_InitStructure);
   
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_GPIOB |
                           RCC_APB2Periph_GPIOC | RCC_APB2Periph_GPIOD ,DISABLE);
   
ADC_Cmd(ADC1,DISABLE);
//进入低功耗模式
PWR_EnterSTOPMode(PWR_Regulator_LowPower, PWR_STOPEntry_WFI);

使用特权

评论回复
11
wyjie| | 2022-3-1 23:46 | 只看该作者
注意:
1.将IO置为模拟输入
2.关闭ADC
理论功耗:14ua
实测功耗:12ua

使用特权

评论回复
12
yszong|  楼主 | 2022-3-1 23:48 | 只看该作者
发现了我中断里用了延时函数,但 HAL_ResumeTick();还没恢复所以造成我以为一直没唤醒

使用特权

评论回复
13
dengdc| | 2022-3-1 23:50 | 只看该作者
拉高nrst试试

使用特权

评论回复
14
zhanghqi| | 2022-3-1 23:51 | 只看该作者
停机模式是什么模式  ?睡眠模式吗

使用特权

评论回复
15
wuhany| | 2022-3-1 23:54 | 只看该作者
好像有一个函数就能进去吧

使用特权

评论回复
16
chenjunt| | 2022-3-1 23:56 | 只看该作者
停机模式下还有哪些还在运行呀

使用特权

评论回复
17
xxmmi| | 2022-3-1 23:58 | 只看该作者
我只进入过睡眠模式  

使用特权

评论回复
18
chenjun89| | 2022-3-2 08:06 | 只看该作者
调用库函数接口啊

使用特权

评论回复
19
yszong|  楼主 | 2022-3-2 20:29 | 只看该作者
好的,我明天去单位试一下,多谢各位大侠了哈   

使用特权

评论回复
20
tpgf| | 2022-4-1 19:36 | 只看该作者
引脚模式的选择很重要

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

830

主题

11379

帖子

4

粉丝