-
求助,gd32h7在sdram+tli刷屏时,出现seggerRTT输出异常现象 sos
RT,当gd32h7在启用exmc驱动sdram、启用tli刷屏时,比如刷屏1024*600@rgb565,如果在启动tli之前,通过seggerRTT输出过任何内容,比如调试信息、启动信息、系统状态之类,哪怕只是无意义数据。在启动tli之后,哪怕是再也不调用任何seggerRTT相关代码,也能在seggerRTT的rtt-viewer中看到之前发送的内容被自动、重复、偶发性、周期不定、长度不定地反复发送。这个过程没有任何代码执行seggerRTT相关函数,是seggerRTT自发地。 在关掉tli后,问题消失;在出现问题后,用一个定时器比如10s后关闭tli,问题在10s后再也不出现;裸机、rtthread-nano、freeRTOS三种环境都能看到这个现象:只要启动tli开始刷屏,那么seggerRTT输出就会非常混乱。 比如,裸机代码: “ int main(void) { sys_cache_enable(); /* 使能CPU cache */ SEGGER_RTT_printf(0, "RTT TEST 0000: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\r\n"); SEGGER_RTT_printf(0, "RTT TEST 0001: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\r\n"); SEGGER_RTT_printf(0, "RTT TEST 0002: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\r\n"); SEGGER_RTT_printf(0, "RTT TEST 0003: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\r\n"); SEGGER_RTT_printf(0, "RTT TEST 0004: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\r\n"); SEGGER_RTT_printf(0, "RTT TEST 0005: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\r\n"); SEGGER_RTT_printf(0, "RTT TEST 0006: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\r\n"); SEGGER_RTT_printf(0, "RTT TEST 0007: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\r\n"); SEGGER_RTT_printf(0, "RTT TEST 0008: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\r\n"); SEGGER_RTT_printf(0, "RTT TEST 0009: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\r\n"); SEGGER_RTT_printf(0, "RTT TEST 0010: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\r\n"); SEGGER_RTT_printf(0, "RTT TEST 0011: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\r\n"); SEGGER_RTT_printf(0, "RTT TEST 0012: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\r\n"); SEGGER_RTT_printf(0, "RTT TEST 0013: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\r\n"); SEGGER_RTT_printf(0, "RTT TEST 0014: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\r\n"); SEGGER_RTT_printf(0, "RTT TEST 0015: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\r\n"); SEGGER_RTT_printf(0, "RTT TEST 0016: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\r\n"); SEGGER_RTT_printf(0, "RTT TEST 0017: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\r\n"); SEGGER_RTT_printf(0, "RTT TEST 0018: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\r\n"); SEGGER_RTT_printf(0, "RTT TEST 0019: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\r\n"); delay_init(600); /* 延时初始化 */ usart_init(115200); /* 初始化串口 */ usmart_init(300); /* 初始化USMART */ led_init(); /* 初始化LED */ mpu_memory_protection(); /* 保护相关存储区域 */ sdram_init(EXMC_SDRAM_DEVICE0); /* 初始化SDRAM */ lcd_init(); /* 初始化LCD */ key_init(); /* 初始化按键 */ tp_dev.init(); /* 触摸屏初始化 */ timerx_int_init(10 - 1, 30000 - 1); /* 300 000 000 / 30000 = 10KHz 10KHz的计数频率,计数10次为1ms */ my_mem_init(SRAMIN); /* 初始化内部SRAM内存池 */ my_mem_init(SRAMEX); /* 初始化外部SDRAM内存池 */ my_mem_init(SRAMDTCM); /* 初始化内部DTCM内存池 */ my_mem_init(SRAMITCM); /* 初始化内部ITCM内存池 */ delay_ms(1000); lv_init(); /* lvgl系统初始化 */ lv_port_disp_init(); /* lvgl显示接口初始化,放在lv_init()的后面 */ lv_port_indev_init(); /* lvgl输入接口初始化,放在lv_init()的后面 */ lv_demo_benchmark(); /* lvgl例程 */ // while (1) { // tp_dev.scan(0); /* 触摸扫描 */ lv_task_handler(); /* lvgl的事务处理 */ delay_ms(1); } } ” rtt-viewer输出内容: “ RTT TEST 0000: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0001: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0002: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0003: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0004: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0005: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0006: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0007: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0008: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0009: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0010: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0011: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0012: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0013: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0014: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0015: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0016: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0017: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0018: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0019: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0000: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0001: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0002: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0003: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0004: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0005: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0006: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0007: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0008: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0009: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0010: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0011: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0012: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0013: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0014: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0015: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0016: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0017: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0018: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0019: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz mnopqrstuvwxyz RTT TEST 0004: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0005: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0006: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0007: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0008: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0009: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0010: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0011: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0012: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0013: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0014: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0015: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0016: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0017: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0018: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0019: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0000: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0001: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0002: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0003: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0004: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0005: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0006: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0007: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0008: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0009: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0010: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0011: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0012: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0013: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0014: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0015: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0016: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0017: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0018: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz RTT TEST 0019: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz ” 这个全过程,mcu只启动了1次,且没有中途重启,因为它一直在跑lvgl的testbench,没有重新开始。但输出内容就是重复了多次。
606浏览量 0回复量 关注量 -
请教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简化代码
3318浏览量 1回复量 关注量 -
SWM341官方的例程LVGL V8.3.1 disp3为什么不能旋转 sos
[i=s] 本帖最后由 liyan123456 于 2025-4-24 19:28 编辑 [/i] 官方的例程LVGL V8.3.1 disp3 软件修改旋转无效果这是为什么呢,
1714浏览量 0回复量 关注量 -
有没有GD32H7 的 RGB 接口LVGL 例子,更新屏幕太折腾
前端时间在调试 GD32H7 ,可是发现使用TLI 时 还是存在问题,调了很久最后放弃了 由于H7 的架构 有多种内存块, 使用不当就存在问题 开始使用外部RAM存放显存, 一直没成功, 后来没办法使用内部RAM 单显存测试,还是不行,屏幕显示经常有马赛克, 感觉这个TLI 配置起来太麻烦了 有TLI 有2个图层 , 使用的时候 即使用一个图层 ,2个图层还是必须要都要配置,不配置还不行 因为2个图层后面有个混合 更新输出的时候 也比较扯。 在使用LVGL 时,使用单格全屏显示缓存,我配置了TLI 的2个图层,仅使用1个图层输出, 然后再输出时使用 [color=#dadada][backcolor=#1e1e1e][font=Consolas,][color=#dcdcaa]tli_reload_config[/color][color=#b4b4b4]([/color][color=#dadada]TLI_FRAME_BLANK_RELOAD_EN[/color][color=#b4b4b4]);[/color] [/font][/backcolor][/color] 来触发TLI更新输出,但是有问题,无法显示, 这就很扯,首先也不知道什么时候更新完成?然后调用这个没有效果 有没有H7 的LGVL的例子学习一下?
4176浏览量 15回复量 关注量 -
GD32F450使用FreeRTOS配置LVGL心跳,屏幕白了
void vApplicationTickHook(){ lv_tick_inc(1); } void test(void *pvParameters) { lv_ex_spinner_2(); while (1) { lv_task_handler(); } } 裸机运行正常,看一上午free的操作还是不懂,请教大神如何修改 下载视频
9170浏览量 3回复量 关注量 -
在GD32上使用LVGL的刷新问题
[i=s] 本帖最后由 qwe4122 于 2021-8-18 15:50 编辑 [/i] [size=4]使用进度等动态控件,在屏幕顶端出现花码刷新;[/size][size=4]求大神解答[/size]
4414浏览量 2回复量 关注量

问答