MPLAB® Harmony Graphics Suite
|
The library provides interfaces to support
Before the driver can be used, it needs to be initialized. In ILI9488_ContextInitialize, the top-level driver registers itself to the MPLAB Harmony Graphics HAL, so that its initialization routine is automatically called when the graphics library initializes.
The initialization process involves allocating the pixel buffer and opening the interface to the ILI9488 Display Controller module. The top-level driver calls ILI9488_Intf_Open to open the peripheral interface, issues a hardware reset and sends the setup commands to the ILI9488. initCmdParm contains a list of the basic commands needed to set up the ILI9488 and these commands are sent through the interface driver using the ILI9488_Intf_WriteCmd API.
The top-level driver can be configured to write pixel data to the ILI9488 GRAM per pixel or per line. Per frame writes is also supported, but only in 16-bit DBI-B parallel mode. Per frame writes provides the fastest update rate, but requires more memory to allocate a full frame buffer. Writing per line has less memory space requirements, but requires an overhead to read the current pixel line data before it is updated and written back. This is done because the graphics library may update individual pixels only and not the whole line, therefore the rest of the pixel buffer data must contain valid data before it is written back to the ILI9488 GRAM. Otherwise, the pixel buffer will contain pixel data from other lines and cause display artifacts.
To read and write pixel data, the top-level driver calls ILI9488_Intf_ReadPixels and ILI9488_Intf_WritePixels, respectively.
MPLAB® Harmony Graphics Suite
|