disclaimer / info:
DISCLAIMER:
THIS IS EXPERIMENTAL SOFTWARE AND HARDWARE. USE AT YOUR OWN RISK. THE MAINTAINER(S) OF THESE PAGES AND THE DEVELOPER(S) OF SOFTWARE AND HARDWARE PRESENTED ON THESE PAGES CAN NOT BE HELD LIABLE UNDER ANY CIRCUMSTANCES FOR DAMAGE TO HARDWARE OR SOFTWARE, LOST DATA, OR OTHER DIRECT OR INDIRECT DAMAGE RESULTING FROM THE USE OF THIS SOFTWARE OR HARDWARE. IF YOU DO NOT AGREE TO THESE CONDITIONS, YOU ARE NOT PERMITTED TO USE OR FURTHER DISTRIBUTE THIS SOFTWARE OR TO USE ANY TEMPLATES FOR BUILDING HARDWARE PRESENTED HERE.
- this page deals with connecting a DG-16080 display to the parallel port and drive it using
serdisplib
- i'm not responsible for the content of external web pages
- external web pages will generally open in separate browser windows or tabs
- english is not my native language. please keep that in mind (corrections of english grammar and formulations are very welcome!)
- email: mrwastl at users.sourceforge.net
DG-16080 family:
description
DG-16080 displays are offered with different characteristics:
|
|
quick and dirty setup on a breading board |
specifications | |
---|---|
resolution | 180x60 |
colours | monochrome |
controller | Sanyo LC7981 |
adjustable contrast | no |
backlight | yes (EL-foil or LED) |
dimensions | generic: module size: 100.0 x 54.0 mm; display area: 72.3 x 37.8 mm (datasheet) DG-16080-11: display area: 67 x 48.5 mm (measured) |
supported since | serdisplib 1.97.9 |
name in serdisplib |
default: "DG16080 (example: serdisp_open(sdcd, "DG16080", ""); )special case for DG-16080-11: " DG1608011 " (non-square pixels) |
some images
test with testserdisp | test with graphlcd 0.2.x |
top ^
connecting a DG-16080 display to the parallel port:
pinout
lcd pin # label description ------------------------------------------------------- 1 VSS Ground 2 VDD Power supply for logic circuit (5V) 3 V0 Power supply for LCD (contrast voltage) 4 RS High: Instruction, Low: Data 5 R/W High: Data Read, Low: Data Write 6 E High: Enable 7 DB0 Data bus line 0 8 DB1 Data bus line 1 9 DB2 Data bus line 2 10 DB3 Data bus line 3 11 DB4 Data bus line 4 12 DB5 Data bus line 5 13 DB6 Data bus line 6 14 DB7 Data bus line 7 15 /CS Chip select (active low) 16 /RES Reset (active low) 17 VEE Negative voltage output (-10V, needed for V0) 18 Disp or NC Display on or not connected (leave unconnected) 19 +LED or EL Background light (LED: +V, EL-foil: high voltage) 20 -LED or EL Background light (LED: GND, EL-foil: high voltage)
wiring
notes
- LCD pin 18 should be left unconnected.
- different backlight types:
- only displays with EL-foils and inverters with input voltage 5V could be tested.
- if a display with LED-backlight is connected follow the instructions and limits that are given in the data sheet (you might need to add a buffer resistor or you might even need an extra voltage source that is higher than 5V)
circuits:
simple wiring with hardware reset ('Simple')
- default wiring
- this wiring only requires two extra signal lines
- reset line is controlled using a hardware circuit
- backlight cannot be controlled by software
part list: ---------- Part# Type Value Annotation --------------------------------------------------------------------------------------- R1-R10 Resistor 1 kOhm R11 Var.Resistor eg. 220 kOhm some value around 220k worked best for me R12 Resistor 10 kOhm C1 Capacitor 10 uF
simple wiring with software reset ('SimpleSWRes')
- three signal lines required
- reset line controlled by software
- backlight cannot be controlled by software
part list: ---------- same as in wiring 'Simple' with the following changes: * R12 is 1 kOhm * C1 not required
standard wiring with hardware reset ('Standard')
- the same as in 'Simple' but with two additional signals:
- R/W is wired to pin 14 / /AUTO via a buffer resistor (1 kOhm)
- /CS is wired to pin 17 / /SELIN via a buffer resistor (1 kOhm)
standard wiring with software reset ('StandardSWRes')
- the same as in 'SimpleSWRes' but with one additional signal:
- R/W is wired to pin 14 / /AUTO via a buffer resistor (1 kOhm)
simple wiring with hardware reset ('Simple')
- three signal lines required
- reset line is controlled using a hardware circuit
- backlight can be controlled by software
part list: ---------- Part# Type Value Annotation --------------------------------------------------------------------------------------- R1-R10 Resistor 1 kOhm R11 Var.Resistor eg. 220 kOhm some value around 220k worked best for me R12 Resistor 10 kOhm R13 Resistor 1 kOhm C1 Capacitor 10 uF T1 Transistor eg. BC547 D1 Diode eg. 1N4148
wiring with backlight and software reset ('BacklightSWRes')
- four signal lines required
- reset line controlled by software
- backlight can be controlled by software
part list: ---------- same as in wiring 'Backlight' with the following changes: * R12 is 1 kOhm * C1 not required
top ^
passing options through serdisp_init():
intro
using the third parameter of
common information about passing options and customisable wiring can be found in a separate document.
serdisp_init()
, driver specific options and custom wiring can be set.common information about passing options and customisable wiring can be found in a separate document.
examples: serdisp_init(sdcd, "DG16080", "INVERT=YES;ROTATE=90"); serdisp_init(sdcd, "DG1608011", "ROTATE=YES");
options
identifier | short | remark | default |
---|---|---|---|
ROTATE | ROT | rotate display (1 == 180 degrees) | 0 |
INVERT | INV | invert display | 0 |
DELAY | delay after each write/read operation.0 .. no delay 1 .. one call of gettimeofday() >1 .. delay at least x nanoseconds | 0 | |
BACKLIGHT | BG | switch background light on or off | 1 |
BRIGHTNESS | only supported if switchable backlight is supported by given wiring: BRIGHTNESS = 0: backlight is switched off (regardless of current status of BACKLIGHT) BRIGHTNESS > 0: backlight is set according to the current status of BACKLIGHT | 100 |
ranges, aliases
identifier | range | aliases |
---|---|---|
ROTATE | 0, 1, 90, 180, 270 | YES=180, NO=0, TRUE=180, FALSE=0 |
INVERT | 0, 1 | YES=1, NO=0, TRUE=1, FALSE=0 |
DELAY | >= 0 | NONE=0 |
BACKLIGHT | 0, 1 | YES=1, NO=0, TRUE=1, FALSE=0, ON=1, OFF=0 |
BRIGHTNESS | 0 - 100 |
pre-defined wiring definitions
identifier | numeric id | protocol | description |
---|---|---|---|
Simple | 0 | PAR | Simple wiring |
SimpleSWRes | 1 | PAR | Simple wiring w/ software reset |
Standard | 2 | PAR | Standard wiring (with RW and CS) |
StandardSWRES | 3 | PAR | Standard wiring w/ software reset |
Backlight | 4 | PAR | Backlight support |
BacklightSWRES | 5 | PAR | Backlight support w/ software reset |
display signals
identifier | description | mandatory |
---|---|---|
D0 - D7 | 8 bit wide data bus | * |
RS | data (low) or command (high) | * |
E | enable (high) | * |
CS | chip select input, active low | |
RW | data read (hight), data write (low) | |
RESET | reset signal, active low; optional if wired to a hardware reset circuit | |
BACKLIGHT | backlight, optional |
top ^
links:
data sheets, technical references | |||
---|---|---|---|
display datasheet | local copy of DG-16080 display datasheet | (english) | DG-16080.pdf |
technical reference | local copy of LC7981 controller technical reference | (english) | lc7981.pdf |
top ^
history:
2010-02-21 | merging SVN documentation to main documentation |
2009-10-25 | (SVN:) wiring section added |
2009-09-13 | (SVN:) added support for switchable backlight (+ option BRIGHTNESS) |
2009-08-22 | (SVN:) first release of documentation |
top ^