问答

汇集网友智慧,解决技术难题

21ic问答首页 - TAG
  • 请教iap串口升级问题,iap启动lvgl工程只有7帧,正常是14帧?

    我的一个lvgl工程从0x8000000启动,lvgl可以跑14帧,但我把lvgl工程写到0x800A000,用iap从0x800A000启动只有7帧? int main(void) { system_clock_config(); at32_board_init(); key_config();  if(gpio_input_data_bit_read(GPIOD, GPIO_PINS_12)==0 && gpio_input_data_bit_read(GPIOD, GPIO_PINS_13)==0){ flash_upgrade_flag(FALSE); } if(flash_upgrade_flag_read() == TRUE) { /* check app starting address whether 0x08xxxxxx */ if(((*(uint32_t*)(APP_START_ADDR + 4)) & 0xFF000000) == 0x08000000) app_load(APP_START_ADDR);//APP_START_ADDR=0x0800A000 }  while(1)  }; } 以上是iap启动简化代码 int main(void) { nvic_vector_table_set(NVIC_VECTTAB_FLASH, 0xA000);//0x0800A000 nvic_priority_group_config(NVIC_PRIORITY_GROUP_4); MainState main_state = MAIN_STATE_INIT_ML307; crm_clocks_freq_type get_rcc_clock; MqttSetData data; volatile uint32_t last_mqtt_inti_time = 0; volatile uint32_t last_mqtt_pub_time = 0; volatile uint32_t last_signal_check_time=0; int ret=0; int i=0; int dir=0; char buffer[128]; uint32_t cnt=0; system_clock_config(); delay_init(); uart_print_init(115200); tmr7_int_init(239, 999); usart2_config(); gn03s_init(); lcd_struct = &lcd_dev_struct; lcd_struct->lcd_init(); tp_dev.init(); lv_init(); lv_port_disp_init(); lv_port_indev_init(); setup_ui(&guider_ui); events_init(&guider_ui); ml307r_init(); ml307r_on(); pwm_tmr3_init(); adc_dma_init(); SystemParamInit(); key_config(); // 初始化上下文 mqtt_init_param(&mqtt_param); ml307_init_context(&ml307_ctx); mqtt_init_context(&mqtt_ctx, &ml307_ctx); http_init_context(&http_ctx, &ml307_ctx); while(1) { tp_dev.scan(0); lv_task_handler(); home_ui(&mqtt_ctx,key_ret); setups_ui(&mqtt_ctx,key_ret);  } } 以上是lvgl简化代码

    iap 串口升级 ST ni AD LVGL

    2930浏览量 1回复量 关注量