Description
MyFlush function always is called with constanst parameter, who is wrong
I’am USING the newest library from github → master
What MCU/Processor/Board and compiler are you using?
STM32F407G, STM32CubeIDE
What do you want to achieve?
Draw Rectangle!
What have you tried so far?
I have my own working rectangle function, but lvgl calling the flush function with wrong parameters.
So my LL driver works well!
Code to reproduce
Here Is the Repository where i trying run it.
[!] GitHub - trteodor/LVGL_Porting_TO_ILI9341_STM32F407
From debugger:
The Display driver is in ILI9341 folder
Main function in Core->Src->main.c
I’am rly new with LVGL, And I know about my english is low so sorry
The Code isn’t also blocking my heart bit diode still blinking
Edit:
Okey LVGL cleaning on white my screen correctly now after initialization. But Still the example “lv_example_get_started_1” don’t drawing anything on my screen
I suppose, error is here:
void ILI9341_flush(lv_disp_drv_t * drv, const lv_area_t * area, lv_color_t * color_map)
{
LastDriver=drv;
ILI9341_SetAddrWindow((uint16_t)area->x1, (uint16_t)area->y1, (uint16_t)area->x2, (uint16_t)area->y2);
// ILI9341_SetAddrWindow(10, 10,10,10);
ILI9341_SendCommand(ILI9341_RAMWR); //Ta komenda przed zapisem!!!
uint32_t size = (area->x2 - area->x1 + 1) * (area->y2 - area->y1 + 1);
Send_DMA_Data16(&color_map->full, size);
}
void DMA_ILI9341_SPI_TransmitComplete_Callback()
{
lv_disp_flush_ready(LastDriver);
}
I take the color correctly?
Edit2:
Send_DMA_Data16(&color_map->full, size); so yes ← here was error
Send_DMA_Data16( (uint16_t *)color_map, size); Thats correctly, and DMA should be increment mode I lost 3 hours but i found solution finally!