Description
static lv_color_t buf_3_1[MY_DISP_HOR_RES * MY_DISP_VER_RES]
attribute((section(“.bss.ARM.__at_0XC00BB800”)));
static lv_color_t buf_3_2[MY_DISP_HOR_RES * MY_DISP_VER_RES] attribute((section(“.bss.ARM.__at_0XC013B000”)));
lv_display_set_buffers(disp, buf_3_1, buf_3_2, sizeof(buf_3_1), LV_DISPLAY_RENDER_MODE_DIRECT);
If I set it to LV_DISPLAY_RENDER_MODE_DIRECT, the screen will become blurred, while setting it to LV_DISPLAY_RENDER_MODE_PARTIAL or LV_DISPLAY_RENDER_MODE_FULL will display normally. Does anyone know where the problem lies
What MCU/Processor/Board and compiler are you using?
STM32H743IIT6
Keil AC6
Code to reproduce
Add the relevant code snippets here.
The code block(s) should be between ```c
and ```
tags:
/*-------------------------
* Initialize your display
* -----------------------*/
disp_init();
/*------------------------------------
* Create a display and set a flush_cb
* -----------------------------------*/
lv_display_t * disp = lv_display_create(MY_DISP_HOR_RES, MY_DISP_VER_RES);
lv_display_set_flush_cb(disp, disp_flush);
lv_tick_set_cb(xTaskGetTickCount);
/* Example 3
* Two buffers screen sized buffer for double buffering.
* Both LV_DISPLAY_RENDER_MODE_DIRECT and LV_DISPLAY_RENDER_MODE_FULL works, see their comments*/
static lv_color_t buf_3_1[MY_DISP_HOR_RES * MY_DISP_VER_RES] __attribute__((section(".bss.ARM.__at_0XC00BB800")));
static lv_color_t buf_3_2[MY_DISP_HOR_RES * MY_DISP_VER_RES] __attribute__((section(".bss.ARM.__at_0XC013B000")));
lv_display_set_buffers(disp, buf_3_1, buf_3_2, sizeof(buf_3_1), LV_DISPLAY_RENDER_MODE_PARTIAL);