完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我将RTC实时时钟和待机唤醒实验直接拼在一起,然后出现这种情况,按三秒wkup开机,能正常显示实时时钟,按三秒wkup,进入待机状态,在唤醒就白屏了,再待机 ,唤醒就正常。简单说就是待机唤醒重复操作,一次正常一次白屏,请问是为啥?
int main(void) { u8 t=0; STM32_Clock_Init(9);//系统时钟设置 delay_init(72); //延时初始化 uart_init(72,9600); //串口1初始化 LED_Init(); WKUP_Init(); LCD_Init(); RTC_Init(); //RTC_Set(2004,12,31,23,59,55); //设置时间 OINT_COLOR=RED;//设置字体为红色 LCD_ShowString(100,50,"Mini STM32"); LCD_ShowString(100,70,"RTC TEST"); LCD_ShowString(100,90,"@DONGSHI624"); LCD_ShowString(100,110,"2012/3/13"); //显示时间 OINT_COLOR=BLUE;//设置字体为蓝色 LCD_ShowString(100,130," - - "); LCD_ShowString(100,167," : : "); while(1) { if(t!=timer.sec) { t=timer.sec; LCD_ShowNum(100,130,timer.w_year,4,16); LCD_ShowNum(140,130,timer.w_month,2,16); LCD_ShowNum(164,130,timer.w_date,2,16); switch(timer.week) { case 0: LCD_ShowString(100,148,"Sunday "); break; case 1: LCD_ShowString(100,148,"Monday "); break; case 2: LCD_ShowString(100,148,"Tuesday "); break; case 3: LCD_ShowString(100,148,"Wednesday"); break; case 4: LCD_ShowString(100,148,"Thursday "); break; case 5: LCD_ShowString(100,148,"Friday "); break; case 6: LCD_ShowString(100,148,"Saturday "); break; } LCD_ShowNum(100,167,timer.hour,2,16); LCD_ShowNum(124,167,timer.min,2,16); LCD_ShowNum(148,167,timer.sec,2,16); LED0=!LED0; } delay_ms(10); }; } |
|
相关推荐
10个回答
|
|
因为没有复位引脚给LCD复位.
|
|
|
|
因为没有复位引脚给LCD复位.
--------------------------------- 那为什么待机唤醒重复操作中是一次白屏一次正常交替着,同样是没有复位啊? |
|
|
|
这个我也不太清楚,这么有规律的,呵呵.应该是哪个地方让LCD复位了.
|
|
|
|
嗯,谢谢原子老师指点
|
|
|
|
若 LCD_Init() 调用偶数次则白屏,调用奇数次则可以显示,啥原因呢?
|
|
|
|
不要重复调用!因为复位信号并没有多次给(复位信号和stm32的复位共用了)
|
|
|
|
经过看手册和实验,发现在B505初始化代码的LCD_WriteReg(0x0012,0x0000);后面加入一定的延时即可,delay_ms(50);
这句是关闭LCD电源供给的,在关闭电源供给顺序的图例Figure 68中,在写PSON=0和PON=0后,需要5 frames or more的延时,才进入POWER OFF状态,按照前边的设置,帧频率fFLM = 600kHz/(26 clocks x 1/1 x (320 + 2 + 2) (lines) ≒ 71Hz ,既每帧需要14ms,5帧需要约70ms,在上电时,LCD是处于POWER OFF状态,而STM32被唤醒时,LCD处于POWER ON状态,进入POWER OFF需要一段延时,这时再次设置PSON=1和PON=1才会有效。由于设置PSON=0和PON=0后到再次设置PSON=1和PON=1之间本身已经有2个delay_ms(20),所以只需要再加入适当的延时就可以了,经过测试延时50ms效果可以.不知道这样理解是否正确,请赐教。 |
|
|
|
|
|
|
|
在待机唤醒实验里,如果要用到显示屏显示内容的话,在唤醒后就会出现楼主的情况,实际上就是显示屏在POWER ON的状态下又一次被初始化了一次。
|
|
|
|
那个确实有这个问题。
|
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1804 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1629 浏览 1 评论
1097 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
736 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1686 浏览 2 评论
1944浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
747浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
580浏览 3评论
602浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
565浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-28 12:35 , Processed in 1.012240 second(s), Total 93, Slave 77 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号