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 Pictiva 256x64x4 OLED display to a 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
Pictiva 256x64x4:
description
Osram Pictiva 256x64x4 is an OLED display with 16 yellow or green-levels. its screen diagonal is 3.2".
specifications | |
---|---|
resolution | 256x64 |
colours | 16 greyscale levels |
controller | STV8105 |
backlight | not needed (OLED -> self emitting) |
adjustable contrast | yes |
dimensions | module size: 91.04 x 55.44 mm; display area: 79.33 x 19.81 mm (datasheet) |
name in serdisplib |
"OLED25664X4" (example: serdisp_init(sdcd, "OLED256X64X4", ""); ) |
some images
output generated by testserdisp |
output generated by graphlcd |
test pattern with numbers | floyd steinberg dithered image generated by multidisplay |
top ^
configuration notes
configuration notes for graphlcd
the default colour in graphlcd is set to black. current versions of graphlcd only draw information (when background and foreground colour are set to default) when using the foreground colour.
when using OLEDs (and depth > 1) the problem now is that information is only visible if the drawing colour is NOT black (because the background of the whole display is black). because of this the foreground colour has to be set to something else (usually white (
when using OLEDs (and depth > 1) the problem now is that information is only visible if the drawing colour is NOT black (because the background of the whole display is black). because of this the foreground colour has to be set to something else (usually white (
0xFFFFFF
)).
example configuration in graphlcd[serdisp] Driver=serdisp Device=/dev/parport0 Controller=OLED256X64X4 FGColour=0xFFFFFF
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, "OLED256X64X4", "CONTRAST=5"); serdisp_init(sdcd, "OLED256X64X4", "INVERT=YES;INTERFACE=6800");
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 | ||||||||||||||||||||||
CONTRAST | set display contrast | 5 | ||||||||||||||||||||||
INTERFACE | MODE | interface mode (0 .. Parallel (8080), 1 .. SPI) | 0 | |||||||||||||||||||||
OPTION |
the value for OPTION needs to be set according to the voltages used for VPP, VCOL, and VROW. cd/m2 means candela per square metre. | 1 | ||||||||||||||||||||||
DEPTH | COLS, COLOURS | grey level depth | 4 | |||||||||||||||||||||
WIRING | WIRE | pre-defined or customisable wiring | 0 |
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 |
CONTRAST | [0, 10] | |
INTERFACE | 0, 1 | PAR=0,PARALLEL=0,SERIAL=1,SPI=1 |
OPTION | [1, 2] | |
DEPTH | 1, 2, 4 | MONOCHROME=1,MONO=1 |
pre-defined wiring definitions
identifier | numeric id | protocol | description |
---|---|---|---|
Original | 0 | PAR | Original wiring |
OriginalSWRes | 1 | PAR | Original wiring w/ software reset |
SPI | 2 | PAR | simple SPI wiring |
|
display signals
identifier | description | mandatory |
---|---|---|
parallel mode (8080) | ||
D0 - D7 | 8 bit wide data bus | * |
CS | chip select input, active low | * |
DC | data or command | * |
WR | write signal, active low | * |
RD | read signal, active low | |
RESET | reset signal, active low; optional if wired to a hardware reset circuit | |
serial mode (SPI) | ||
SDA | serial data | * |
SCLK | serial clock | * |
CS | chip select input, active low | * |
DC | data or command | * |
RESET | reset signal, active low; optional |
top ^
links:
data sheets, technical informations | |||
---|---|---|---|
display datasheet | local copy of Pictiva 256x64x4 display datasheet | (english) | OLED_256X64_Gelb.pdf |
technical reference | local copy of STV8105 controller technical reference | (english) | STV8105.pdf |
Application notes | local copy of application notes for the OLED module | (english) | AN016_Rio_OLED_Module_Application_Instruction.pdf |
top ^