G1226

From Noisebridge Wiki
Jump to navigation Jump to search

Seiko LCD Module 128 x 64

Monochrome graphics display with backlight and built-in RAM.

Size: 93.0 x 70.0 x 11.4 mm Viewing Area: 70.7 x 38.8 mm Dot size: 0.44 x 0.44 mm Dot pitch: 0.48 x 0.48 mm

Voltage: 5.0v DC Current: <5 mA

LED Backlight voltage: 4.1 DC LED Backlight current: <125 mA

** NEGATIVE LCD VOLTAGE ** LCD Bias -8v DC (+/-1v'ish)

This module is fairly straightforward, and works fantastically with the openGLCD library. There's a set of chips on the back that handle the LCD control, one for the common driver and two for the segments which each handle half of the screen.

The major gotcha for getting this going is that it requires a fairly high negative voltage to drive the LCD bias. This breaks down to about -8v, the spec says -8.3v, I've found -7.0v is extremely light and up to 9.0v is required for really dark contrast. So you really need at least a -9v supply voltage and a potentiometer for adjusting the contrast, which will vary with temperature. This only seems to draw 1mA at 8.3v, so it doesn't need to be vary hefty. There is an IC for this job, a MAX736, however that costs more than the display, and would be useful if you were trying to run more than a dozen of these displays at once. The simplest way I've found to get this to work is to take a second 9v+ power source, connecting the positive to the ground along with one side of a potentiometer, then connect the other side of the potentiometer to the negative of the 9v power supply giving you a -9v referenced to ground. Then connect teh tap of the potentiometer to the Vlc pin and use the potentiometer to adjust the ideal contrast.

Alternatively I've found that you can build a charge pump with a couple of diodes and a PWM signal (http://www.hantronix.com/files/down/neg-invr.pdf) and you can use a PWM'd IO pin to generate this signal and thus negative voltage. While this works, driving it off of a 5v IO pin results in less than -4v, which won't get so much of a ghost to appear on the display. So using a 555 timer chip I was able to construct an oscillator to generate the PWM and power the chip with a +12v power supply and then run that thru a charge pump created with 2 diodes, two caps, and a potentiometer creating an adjustable negative voltage of nearly -10v! Hook that to the Vlc and you are good to go. If your project already has a 12v supply this makes for a pretty minimal fix. However, if you only have the 5v supply to start with a boost converter would be really nice, not sure if this can be hacked with some discrete components to generate the 1mA easily.

Library for getting it working with Arduino:

Available at Anchor Electronics for $5.95: http://anchor-electronics.com/product/128-x-64-lcd-module/

Part No: G1226B1J000S

Data Sheet: http://pdf.datasheetcatalog.com/datasheets2/95/951116_1.pdf

On the back of the module are two 64 channel LCD segment drivers (KS0108B) and a 64 common driver (KS0107).

Data Sheet:


Pinout:

1. Vcc (+5v)
2. Ground
3. Vlc (~-8v, LCD negative bias)
4. D0 (data bus)
5. D1    " "
6. D2    " "
7. D3    " "
8. D4    " "
9. D5    " "
10. D6   " "
11. D7   " "
12. CS1 (chip select)
13. CS2     " "
14. Reset
15. R/W
16. RS
17. E
18. Chassis ground
19. LED + Backlight (Internally? limited to 75mA @5v)
20. LED - Backlight

XX. Vop + (Not connected)
XX. Vop -      " "

* All pinouts verified by continuity check with KS0108B and LED Backlight terminals