好吧,不过今天没空了,我要出去一次
@zhao.zhao 程序上传了,有空帮我看下
zhao.zhao 发表于 2017-7-18 12:07
好吧,不过今天没空了,我要出去一次
程序我上传了,有空帮我看下吧
DeviceAwakeProcess();
醒来后没有对UART1的引脚初始化 USART1_Init();
伤花怒放2003 发表于 2017-7-18 13:12
程序我上传了,有空帮我看下吧
我的例程,不过用到了stmCubeMX.
例程中,TIM6开机后或者醒来后计数,计数计到30秒后,执行进入睡眠的操作。
1分钟后RTC唤醒,恢复系统时钟,恢复引脚配置
zhao.zhao 发表于 2017-7-18 20:47
DeviceAwakeProcess();
醒来后没有对UART1的引脚初始化 USART1_Init();
有初始化的,就是那个Terminal_Init(),屏蔽掉了。给你的程序是休眠前没把UART1引脚配成模拟输入,所以后面唤醒的处理就没有把UART1初始化。之前把UART1相关引脚在休眠前配为模拟输入,即使唤醒后重新配置UART1也不行,程序好像就死掉了。
zhao.zhao 发表于 2017-7-18 20:47
DeviceAwakeProcess();
醒来后没有对UART1的引脚初始化 USART1_Init();
你可以看下DeviceSleepProcess这个函数,这是对休眠前IO的一些处理。
IO怎么设置都可以,条件是睡眠后不能有电流泄露。
还有串口1发送数据换个函数吧和串口2、3的一样的,不要使用printf;试试看;
调试程序一点一点往里加,一个任务完成了,再做下一个。
zhao.zhao 发表于 2017-7-19 09:23
IO怎么设置都可以,条件是睡眠后不能有电流泄露。
还有串口1发送数据换个函数吧和串口2、3的一样的,不要使 ...
你有唤醒后恢复UART的例程吗?