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);    
}

 

 

  

posted on 2020-08-13 11:19  漂流的博客  阅读(817)  评论(0)    收藏  举报

导航