|
The following table lists the available drivers and
which LCD controllers are supported by each:
| LCDColorOnMono |
444 |
Passive color display connected to an LCD controller with linear
memory operating in monochrome mode.
Example: Cirrus Logic EP7312
|
12 |
| LCDFujitsu |
8720
8721 |
Fujitsu MB87J2020 (Jasmine)
Fujitsu MB87J2120 (Lavender) |
1, 2, 4, 8, 16 |
| LCDLin |
1300
1301
1304
1352
1353
1354
1356
1374
1375
1376
1386
3200
32168
|
Any LCD-Controller with linear video memory in 1,
2, 4, 8 and 16 bits/pixel mode, built- in
LCD controllers such as:
Sharp 79531.
Epson S1D13700 (direct interface)
Solomon SSD1905
Fujitsu MB86276 (Lime) Fujitsu MB86290A
(Cremson) Fujitsu MB86291 (Scarlet)
Fujitsu MB86292 (Orchid) Fujitsu
MB86293 (Coral Q) Fujitsu MB86294
(Coral B) Fujitsu MB86295 (Coral
P)
Toshiba Capricorn 2
Epson S1D13A03, S1D13A04, S1D13A05 Epson
SED1352, S1D13502 Epson SED1353, S1D13503 Epson SED1354,
S1D13504 Epson SED1356, S1D13506
Epson SED1374, S1D13704 Epson
SED1375, S1D13705 Epson SED1376,
S1D13706 Epson SED1386, S1D13806
Any display controller with linear video memory (ARM or MIPS CPUs
such asLH754xx,
LH795x, LH7A40x, Motorola Dragonball or NEC VR4181A) which should
be accessed only in 32 bit mode.
Any display controller with linear video mem-
ory which should be accessed in 8, 16 or 32
bit mode in dependence of the required oper-
ation. |
1, 2, 4, 8, 16 |
| LCDMem |
0 |
No controller, writes into main memory
Requires ISR or special hardware to refresh LCD
(monochrome displays) |
1, 2 |
| LCDMemC |
0 |
No controller, writes into main memory
Requires ISR or special hardware to refresh LCD
(color displays) |
3, 6 |
| LCDNoritake |
9000 |
Noritake display GU256X128C-3900 |
1 |
| LCDPage1bpp |
1501
1501
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1510
1510
1510
1511
1512
1520
1560
1565
1565
1565
1565
1565
1565
1566
1567
1568
1569
1575 |
Samsung KS0713, S6B0713
Samsung KS0724, S6B0724
UltraChip UC1601, UC1606
Samsung KS0108B, S6B0108B
Hitachi HD61202
Philips PCF8810, PCF8811
Philips PCF8535
New Japan Radio Company NJU6679
Philips PCD8544
Epson S1D15710
Solomon SSD1303 OLED controller
Samsung S6B0719
Sitronix ST7522
Solomon SSD1805
UltraChip UC1608
Epson S1D15721
Epson S1D15E05, S1D15E06
Epson SED1520
Epson SED1560
Epson SED1565, S1D10605
Novatek NT7502
Samsung S6B1713
Solomon SSD1815
Sitronix ST7565
Sunplus SPLC501C
Epson SED1566
Epson SED1567
Epson SED1568
Epson SED1569
Epson SED1575, S1D15705 |
1 |
| LCDPage4bpp |
7528 |
Sitronix ST7528 |
4 |
| LCDSLin |
6901
6901
6901
6901
6902
6963 |
Epson SED1330
Epson SED1335
Epson S1D13700 (indirect interface)
RAIO 8835
RAIO 8822/8803
Toshiba T6963 |
1 |
| LCDVesa |
8600 |
Any VESA compatible hardware |
8,16 |
| LCDXylon |
9101 |
FPGA based display controller from Xylon |
8 |
| LCD0323 |
323 |
Solomon SSD0323 OLED controller |
4 |
| LCD07X1 |
701
701
702
711
741
741
741 |
Solomon SSD1854
Novatek NT7506
STMicroelectronics STE2010
Samsung KS0711, S6B0711
Samsung KS0741, S6B0741
Sitronix ST7541
Tomato TL0350A
|
2 |
| LCD1200 |
1200
1201 |
Toppoly C0C0
Toppoly C0E0 |
16 |
| LCD13700 |
13700
13702
13703 |
Epson S1D13700
UltraChip UC1617
Solomon SSD1848 |
2 |
| LCD13701 |
13800 |
Epson S1D13701 OLED controller |
9,12 |
| LCD13748 |
13900 |
Epson S1D13748 Controller |
16 |
| LCD159A |
1601
1601 |
Epson SED159A
Sitronix ST7632 |
8 |
| LCD1611 |
1701 1702 1800 1801 |
Epson S1D15E05, S1D15E06
Epson S1D15719 UltraChip UC1611 UltraChip UC1610 |
2 2 4 2 |
| LCD161620 |
180 |
NEC µPD161620 |
12 |
| LCD1781 |
1781
1781 |
Solomon SSD1781
Solomon SSD1783 |
16 |
| LCD501 |
501 |
Leadis LDS501 |
8 |
| LCD6331 |
6331 |
Samsung S6B33B0X, Samsung S6B33B1X, Samsung S6B33B2X |
16 |
| LCD6642X |
66420
66421 |
Hitachi HD66420
Hitachi HD66421 |
2 |
| LCD667XX |
66700
66701
66701
66702
66703
66704
66705
66706
66707
66708
66708
66709
66709
66710
66766
66766
66766
66772
66772
66772
66772
66772
66789 |
Sharp LR38825
Renesas R63401
Renesas R61509
Solomon SSD1289
Toshiba JBT6K71
Sharp LCY-A06003
Samsung S6D0129
MagnaChip D54E4PA7551
Himax HX8312
Ilitec ILI09320
OriseTech SPFD5408
Novatek NT39122
Sitronix ST7628
Novatek NT7573
Hitachi HD66766
Samsung S6D0110A
Ilitec ILI9161
Hitachi HD66772
Samsung S6D0117
Sitronix ST7712
Himax HX8301
Ilitec ILI9220
Hitachi HD66789
|
16 |
| LCD66750 |
66800
66801 |
Hitachi HD66750 Hitachi HD66753 |
2 |
| LCD7529 |
7529 |
Sitronix ST7529 |
5 |
| LCD7920 |
7920 |
Sitronix ST7920 |
1 |
| LCD8822 |
8822 |
Raio RA8822 |
2 |
CPU / Display controller interface
Different display controllers have different CPU interfaces.
The most common ones are the following:
- Full bus interface
- Simple bus interface
- 4 pin SPI interface
- 3 pin SPI interface
- I2C bus interface
Full bus interface
Some LCD controllers (especially those for displays
with higher resolution) require a full-address bus, which means they are
connected to at least 14 address bits. In a full bus interface configuration,
video memory is directly accessible by the CPU; the full-address bus is
connected to the LCD controller. The only knowledge required when configuring
a full bus interface is information about the address range (which will
generate a CHIP-SELECT signal for the LCD controller) and whether 8- or
16-bit accesses should be used (bus-width to the LCD controller). In other
words, you need to know the following:
- Base address for video memory access
- Base address for register access
- Distance between adjacent video memory locations (usually 1/2/4-byte)
- Distance between adjacent register locations (usually 1/2/4-byte)
- Type of access (8/16/32-bit) for video memory
- Type of access (8/16/32-bit) for registers
Typical block diagram for LCD controllers with full
bus interface
Macros used by a full bus interface
The following table shows the used hardware access macros:
| F |
LCD_READ_MEM |
Reads the video memory of the LCD controller. |
| F |
LCD_WRITE_MEM |
Writes data to the video memory of the LCD controller. |
| F |
LCD_READ_REG |
Reads the register of the LCD controller. |
| F |
LCD_WRITE_REG |
Writes data to a specified register of the LCD controller. |
Simple bus interface
Most LCD controllers for smaller displays (usually up
to 240*128 or 320*240) use a simple bus interface to connect to the CPU.
With a simple bus, only one address bit (usually A0) is connected to the
LCD controller. Some of these controllers are very slow, so that the hardware
designer may decide to connect it to input/output (I/O) pins instead of
the address bus.
Typical block diagram for LCD controllers with simple
bus interface
8 (16) data bits, one address bit and 2 or 3 control
lines are used to connect the CPU and one LCD controller. Four macros
inform the LCD driver how to access each controller used. If the LCD controller(s)
is connected directly to the address bus of the CPU, configuration is
simple and usually consists of no more than one line per macro. If the
LCD controller(s) is connected to I/O pins, the bus interface must be
simulated, which takes about 5-10 lines of program per macro (or a function
call to a rou- tine which simulates the bus interface). The signal A0
is also called C/D (Command/ Data), D/I (Data/Instruction) or RS (Register
select), depending on the display controller.
The following table shows the used hardware access
macros:
| F |
LCD_READ_A0 |
Reads a byte from LCD controller with A0 - line low. |
| F |
LCD_READ_A1 |
Reads a byte from LCD controller with A0 - line high. |
| F |
LCD_WRITE_A0 |
Writes a byte to LCD controller with A0 - line low. |
| F |
LCD_WRITE_A1 |
Writes a byte to LCD controller with A0 - line high. |
| F |
LCD_WRITEM_A1 |
Writes several bytes to the LCD controller with A0 - line high. |
4 pin SPI interface
Using a 4 pin SPI interface is very similar to a simple
bus interface. To connect a LCD display using 4 pin SPI interface the
lines A0, CLK, DATA, and CS must be connected to the CPU.
Typical block diagram for LCD controllers with 4
pin SPI interface
Macros used by a 4 pin SPI interface
The following table shows the used hardware access macros:
| F |
LCD_WRITE_A0 |
Writes a byte to LCD controller with A0 (C/D) - line low. |
| F |
LCD_WRITE_A1 |
Writes a byte to LCD controller with A0 (C/D) - line high. |
| F |
LCD_WRITEM_A1 |
Writes several bytes to the LCD controller with A0 (C/D) - line
high. |
3 pin SPI interface
Typical block diagram for LCD controllers with 3
pin SPI interface
Macros used by a 3 pin SPI interface
The following table shows the used hardware access macros:
| F |
LCD_WRITE |
Writes a byte to LCD controller. |
| F |
LCD_WRITEM |
Writes several bytes to the LCD controller. |
I2C bus interface
Typical block diagram for LCD controllers with I2C
bus interface
Macros used by a 3 pin SPI interface
| F |
LCD_READ_A0 |
Reads a status byte from LCD controller. |
| F |
LCD_READ_A1 |
Reads a data byte from LCD controller. |
| F |
LCD_WRITE_A0 |
Writes a instruction byte to LCD controller. |
| F |
LCD_WRITE_A1 |
Writes a data byte to LCD controller. |
| F |
LCD_WRITEM_A1 |
Writes several data bytes to the LCD controller. |

Copyright SEGGER Microcontroller GmbH & Co.KG. All
rights reserved.
For more information, please visit our web site
www.segger.com or contact us at info@segger.com
Last update:
January 8, 2008
|