µC/GUI LCDMemc Driver
You are here : Micrium
: Products : µC/GUI :
LCDMemc Driver
This driver, like LCDMem, is designed for a system without an LCD controller. The difference is that LCDMemC supports color displays. For more information on using the CPU instead of an LCD controller, please see the previous section on the LCDMem driver.
Supported controllers
None.
Bits per pixel
Supported color depths are 3 and 6 bpp.
Interfaces
The driver supports 1/4/8-bit interfaces from the CPU to the LCD.
Display data RAM organization

This driver supports a 3 or 6 bpp memory area for color displays. The picture above shows the dependence between the memory area handled by the driver and the SEG and COM lines of the LCD.
6 bits per pixel, fixed palette mode 222
When using the 6 bpp mode, the display memory is divided into 2 panes. The lower bit for each color is stored in pane 0 and the higher bit is stored in pane 1. The advantage of this method is that the output of the display data can be executed very quickly.
3 bits per pixel, fixed palette mode 111
When using this mode, only one pane exists.
Additional RAM requirements of the driver
The driver only handles a memory area containing the display data. The required size of the display memory area may be calculated as follows:
6 bits per pixel, fixed palette mode 222
Size of RAM (in bytes) = (LCD_XSIZE + 7) / 8 * 3 * 2
3 bits per pixel, fixed palette mode 111
Size of RAM (in bytes) = (LCD_XSIZE + 7) / 8 * 3
Additional driver functions
None.
Hardware configuration
Normally, the hardware interface is an interrupt service routine (ISR) which updates the LCD. An output routine written in "C" code is shipped with µC/GUI. This routine should serve only as an example. To optimize the execution speed, it must be adapted in assembler code.
For detailed information on how to write the output routine, please take a look at the sample or contact us.
Additional configuration switches
| Macro |
Description |
| LCD_TIMERINIT0 |
Timing value used by ISR for displaying pane 0. |
| LCD_TIMERINIT1 |
Timing value used by ISR for displaying pane 1 (only used by 6 bpp mode). |
| LCD_ON |
Function replacement macro which switches the LCD on. |
| LCD_OFF |
Function replacement macro which switches the LCD off. |
|