emWin driver GUIDRV_6331

Supported hardware

Controllers

This driver has been tested with the Samsung S6B33B1X display controller.

Bits per pixel

Supported color depth is 16 bpp.

Interfaces

The driver supports the indirect interface (8 bit) of the display controller. Parallel or 4-pin SPI bus can be used.

Driver selection

To select GUIDRV_6331 as the driver to be used by your application, you should use the following command:

GUI_DEVICE_CreateAndLink(GUIDRV_6331, GUICC_565, 0, 0);

Display data RAM organization

The picture above shows the relation between the display memory and the SEG and
COM lines of the LCD.

Additional RAM requirements

This display driver can be used with or without a display data cache, containing a complete copy of the LCD
data RAM. The amount of memory used by the cache is:

LCD_XSIZE x LCD_YSIZE x 2 bytes

Hardware configuration

This driver accesses the hardware with the indirect interface. The following table lists the macros which must be
defined for hardware access:

Macro Explanation
LCD_WRITE_A0 Write a byte to display controller with A-line low.
LCD_WRITE_A1 Write a byte to display controller with A-line high.
LCD_WRITEM_A1 Write multiple bytes to display controller with A-line high.
LCD_DRIVER_OUTPUT_MODE_DLN ’Display Line Number’ (DLN) selection bits of the ’Driver Output Mode Set’
instruction. For details please refer to the display controller documentation.
LCD_DRIVER_ENTRY_MODE_16B Data bus width selection bit of the ’Entry Mode Set’ instruction.
For details please refer to the display controller documentation.

The driver initializes the ’Driver Output Mode’ and ’Entry Mode’ itself. The user does not need to initialize this registers
in LCD_X_InitController().

Additional configuration switches

The following table shows optional configuration switches available for this driver:

Macro Explanation
LCD_CACHE When set to 0, no display data cache is used, which slows down the speed of the driver.
Default is 1 (cache activated).

Special requirements

The driver needs to work in the fixed palette mode 565. The driver does not work with other palettes or fixed palette
modes. Further the driver needs to swap the red and the blue part of the color index. You should use the following
macro definitions in the configuration file LCDConf.h:

#define LCD_FIXEDPALETTE 565
#define LCD_SWAP_RB        1