hyundai hp12542r

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.

hyundai hp12542r display module kit:

attention

i do not own such a display. i've never seen this display physically. photos, ... are contribuations. the software support was done in cooperation with people from vdrportal forum. so i'm NOT able to respond to display specific questions or things like that. thanks to NoTape (from vdrportal) i'm now proud owner of that display!

description

hyundai hp12542r display modules are controlled using an on-board controller sed1565.
specifications
resolution 132x64
colours monochrome
controller sed1565
backlight yes
adjustable contrast yes, programmable
dimensions module: 64.1 x 52.2 mm, display area: 54 x 27 mm (pollin manual)
name in serdisplib "HP12542R"       (example: serdisp_init(sdcd, "HP12542R", ""); )

some images

[hp12542r test image] [hp12542r graphlcd output]
hp12542r showing a test image output generated by graphlcd
top ^

connecting a hyundai hp12542r display module to the parallel port:

intro

hp12542r was connected using pollin's 'lc-display module-kit'. so the wiring was 'pre-defined'.

addressing

annotations

sed1565 supports a max. resolution of 132x65, but hp12542r display modules only use 132 x 64.

pages vs. rows

the display is organised in colums and pages: 8 pixel-rows are combined to a so called page.
as only whole bytes can be transferred to the display, a single pixel cannot be changed without knowing its 7 'neighbour' pixels.
so a display buffer was introduced in the library. pixel changes are all done in this buffer and in a separate step only changed 'page bytes' are transferred (using an optimising algorithm) to the display.
top ^

passing options through serdisp_init():

intro

using the third parameter of 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, "HP12542R", "ROTATE=90;INVERT=YES");
    

options

identifiershortremarkdefault
ROTATEROTrotate display (1 == 180 degrees)0
INVERTINVinvert display0
DELAY delay after each write/read operation.
  0 .. no delay
  1 .. one call of gettimeofday()
 >1 .. delay at least x nanoseconds
     
2
CONTRAST set display contrast5
BACKLIGHTBGswitch background light on or off0
WIRINGWIREpre-defined or customisable wiring3

ranges, aliases

identifierrangealiases
ROTATE0, 1, 90, 180, 270YES=180, NO=0, TRUE=180, FALSE=0
INVERT0, 1YES=1, NO=0, TRUE=1, FALSE=0
DELAY>= 0NONE=0
CONTRAST[0, 10] 
BACKLIGHT0, 1YES=1, NO=0, TRUE=1, FALSE=0, ON=1, OFF=0

pre-defined wiring definitions

identifiernumeric idprotocoldescription
ParDTHyundai3PARPollin Wiring for Hyundai HP12542R display module kit, parallel data transfer

display signals

identifierdescriptionmandatory
D0 - D78 bit wide data bus*
A0data or command*
CSchip select input, active low*
RWread/write signal (read: high, write: low)*
RESETreset signal, active low; optional if wired to a hardware reset circuit 

annotations

top ^

links:

data sheets
sed1565 controller data sheet for SED 1565 (english) sed1565.pdf
hyundai hp12542r display module data sheet for Hyundai HP12542R display module (german) HP12542R-DYO.pdf
top ^

thanks:

special thanks go to
donating a display + module NoTape
photos, testing ronnykornexl
top ^

history:

2006-02-19 donation notes
2005-10-30 first release
top ^

design by wolfgang astleitner, (C) 1998 - 2005