alps lsu7s1011a

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.

attention

a typo in serdisplib versions 1.97.5 - 1.97.7 renders the driver for this display unusable.
this bug has been fixed in version 1.97.8.

quick fix

in the source file serdisp_specific_sed153x.c simply replace in array-definition serdisp_sed153x_wiresignals[]:
  ,{SDCT_PP, "DC",         0,   'D',    17 }
through
  ,{SDCT_PP, "DC",         0,   'D',    16 }
thanks to daniel badberg for helping me find this bug

alps lsu7s1011a:

description

alps lsu7s1011a is a nice display driven by a build-in controller sed 1530. i bought two displays (together with display module kits) at pollin. the following instruction assumes that the display is controlled using that module kit ('ALPS LC-Display Module-Kit').
specifications
resolution 96x32
colours monochrome
controller SED1530
backlight no
adjustable contrast yes, programmable
dimensions module: 70 x 30 mm, display area: 61.8 x 23 mm
comments row 0 to row 15 are swapped (row 0 in sed1530 modifies display row 15 and so forth). row 16 to row 31 are addressed as expected in a painful way ...
name in serdisplib "LSU7S1011A"    or    "ALPS"       (example: serdisp_init(sdcd, "LSU7S1011A", ""); )

some images

[alps] [alps]
alps lsu7s1011a and lc-display module kit alps lsu7s1011a and lc-display module kit, display visible
[alps]
test image generated by testserdisp
[alps]
output generated by graphlcd
top ^

connecting an alps lsu7s1011a to the parallel port:

intro

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

addressing

[addressing]

anomaly of alps lsu7s1011a

sed1530 supports a max. resolution of 132x65, but alps lsu7s1011a only uses 96x32. unlike one might expect, the first column is not 0, but 18. so every column address has to be shifted by 18. another anomaly to take care of: row 0 to row 15 are swapped.

pages vs. rows:

another item to take care of: 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 pages are transferred (using an optimising algorithm) to the display. the display buffer is also responsible for the translation of 'real' x/y-addresses to corresponding display addresses.
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, "LSU7S1011A", "INVERT=YES");
      serdisp_init(sdcd, "ALPS", "ROTATE=90");
    

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
     
0
CONTRAST set display contrast5
BACKLIGHTBGswitch background light on or off0
WIRINGWIREpre-defined or customisable wiring1

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
Optrex0PAROriginal Optrex 323 wiring, w/ backlight
Alps1PARALPS LC-Display Modul-Kit wiring, the same as optrex wiring, but without backlight

display signals

identifierdescriptionmandatory
SIserial data input*
SCLserial clock*
DCdata or command*
CSchip select input 1*
ICSchip select input 2, active low*
RESETreset signal, active low; optional if wired to a hardware reset circuit*
BACKLIGHTbacklight, optional 

annotations

top ^

links:

Alps LSU7S1011A
datasheet specifications for alps display (english) SpecSheet_LSU7S1011A.pdf
controller SED 1530
technical reference for SED1530 local copy of SED1530 technical reference (english) sed1530.pdf
top ^

history:

2008-04-06 added attention-note (typo in versions 1.97.5-1.97.7)
2005-05-08 adapted page for new css
added section 'passing options'
2004-07-25 first release
top ^

design by wolfgang astleitner, (C) 1998 - 2005