I have a hardware with STM32F407 and SSD1963 to drive a 4.3 inch TFT display. The SSD1963 is connected to ARM with 8 data pins. It works well by FSMC peripheral and I can write or clear the TFT correctly.
Now I want add emWin to my project.
As I know, emWin added "GUIDRV_FLEXCOLOR_M24C0B8" to use with SSD1963 (GUIDRV_FLEXCOLOR_F66720) in 8bit mode.
The problem is when I use "GUIDRV_FLEXCOLOR_M24C0B8" in LCDConf_FlexColor.c the program goes to hard fault in GUI_init function. I see the same result when I use any other kinds of 8-bit modes (i.e. GUIDRV_FLEXCOLOR_M24C0B8).
About .lib file I use STemWin540_CM4_Keil.lib.
The attached picture shows the data format of SSD1963.
I want to know how can I use emWin?
Any guidance can be helpful.
Thank you for spending time to this thread.
It's hard to say what is going wrong.
You have to set some function to write data to LCD controller.
Do you get into them?
Within GUI_Init() emWin fills the LCD with black, this would mean you get to a specific point without hardfault.
You are using a non cache version of the driver, did you set read functions?
This is required when using a driver without cache.
How much memory did you spend emWin?
Try to increase the memory passed to GUI_ALLOC_AssignMemory().
Do you have enough stack?
Hi again and sorry for my late reply.
Thank you for guidance.
I'd used SSD1963 in 8 bit mode with "M24C0B8". In this mode we should use "PortAPI.pbWite8...", but I'd used "PortAPI.pbWrite16..." in "LCDConf_FlexColor.c" file.
The problem was that and I hope I explained it correctly.
It is solved now.
Thanks a lot.