A2 STM32 重新上电后显示屏无显示 初始化延时
1 BOOT1 BOOT0都已经接10K接地,晶振波形正常
2 在主程序最开始运行的地方加入5秒的延时,程序不会丢失。原因可能为单片机其它外设没有准备好
int main(void) { delay_init(); delay_ms(5000);
//---------------------------------------------------------------20200923更新---------------------------------------------------------//
1 延时放在后面情况,重新上电后屏幕没有显示
//-------------------------------初始化------------------------------------------/ void Init_all() { delay_init(); //初始化延时函数 //delay_ms(1000); //初始化时间,让外设做好准备,不可以省略(会导致重新上电程序丢失) SW_Init(); //初始化开关 LCD_Init(); //初始化屏幕 Adc_Init(); //初始化ADC KEY_Init(); //初始化按键 TIM3_PWM_Init(899,0);//初始化PWM,不分频。PWM频率=72000/(899+1)=80Khz,为了精确换成1799,72000/1800=40HZ TIM4_PWM_Init(899,0); delay_ms(4000); //初始化时间,让外设做好准备,不可以省略(会导致重新上电程序丢失) }

2 将延时代码提前,显示正常

//-------------------------------初始化------------------------------------------/ void Init_all() { delay_init(); //初始化延时函数 delay_ms(1000); //初始化时间,让外设做好准备,不可以省略(会导致重新上电程序丢失) SW_Init(); //初始化开关 LCD_Init(); //初始化屏幕 Adc_Init(); //初始化ADC KEY_Init(); //初始化按键 TIM3_PWM_Init(899,0);//初始化PWM,不分频。PWM频率=72000/(899+1)=80Khz,为了精确换成1799,72000/1800=40HZ TIM4_PWM_Init(899,0); }
浙公网安备 33010602011771号