2025-01-04 09:05 PM
I am working on a project that needs to integrate a 240x240-round display. The display uses a GC9A01A driver, and the host communicates with the driver through an 8-bit 8080 parallel interface. The display vendor provided this interface for communication, so I went with it. For the host, I am using an STM32F413ZHT6 microcontroller. Based on the display timings, I have configured the FSMC bus.
There was an example for the discovery board which uses 8080 16-bit to interface with the LCD in the discovery board. I used that example to make some changes such as display setting initialization, data write and such.
For the display configuration, I saw some example codes for the GC9A01A. I took those initialization commands and configured it in my code base. I was able to up the display.
The problem I am facing is that, the display did not get updated completely leaving garbage values in the screen. i slowed down the display update and checked, It seemed like during the update some rows is getting skipped causing the skipped rows to retain the garbage value.
I am not sure where the issue is. it would be great if you can point me in the right direction. Thanks.