复位后,程序不能正常运行

2019-07-21 06:25发布

最近想自己编点程序,就把第12和第14两个实验柔和到一起,
u16 adcx; float temp;    Stm32_Clock_Init(9);//系统时钟设置 delay_init(72); //延时初始化 uart_init(72,9600); //串口1初始化 LED_Init(); WKUP_Init();   
LCD_Init();   Adc_Init();
也就是多加了一条复位的初始化,但是,程序运行后第一次复位可以正常运行,待机再唤醒,就只有屏幕量,没有显示,
再待机后后唤醒,程序又正常了,也就是奇数次唤醒程序正常,偶数次唤醒,程序不正常,请问这是怎么一回事?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
22条回答
dmfy
1楼-- · 2019-07-21 11:49
合肥-文盲 发表于 2014-5-23 10:25
回复【14楼】正点原子:
---------------------------------
就mini板,解决了,原来没有串口初始化就会出现 ...

解决了,太给力了,我的这个问题也是没有串口初始化产生的,看了你的答案我试着在主函数里面加了一个串口初始化,但是下载之后还是不行。 接着我把串口初始化函数放到LCD初始化函数的前面,就完美解决了。只想说非常感谢
正点原子
2楼-- · 2019-07-21 12:56
可能是LCD复位的问题.
因为我们的LCD复位是RST直接和STM32的RST连接的,你软件唤醒,并不会导致RST产生低电平,也就是不会去复位LCD.这样导致LCD无显示,至于奇偶次的问题,则比较奇怪了,你用示波器看看RST上的信号再说.
十八铜人
3楼-- · 2019-07-21 15:07
试过了,待机和唤醒时,复位的电平都不会改变,原子哥,你能在你那边试一下吗。这个现象比较奇怪啊!
十八铜人
4楼-- · 2019-07-21 19:35
 精彩回答 2  元偷偷看……
正点原子
5楼-- · 2019-07-21 22:52
你加入复位试试.
不过貌似不好加....
你试试无LCD的代码,好使不.
十八铜人
6楼-- · 2019-07-21 23:28
lcd的代码的代码单独使用没问题,可不可能是是复位唤醒后从新向寄存器写值将寄存器复位了,所以导致偶数次不好用?

一周热门 更多>