Using Siemens S65 LCD (LS020)

Back to LCD selection menu


S65 LCD Test Board

All examples of S65 LCD using on this page are for the following test board. I'm using this board to check my code. The board has an AVR (ATmega16) controller running at 16MHz, 3.3V voltage regulator to power an LCD, the resistive dividers to shift the voltage level from 5V to about 3.3V to interface with LCD via SPI, small LED to indicate 5V voltage, ISP-connector to program the controller, other parts. Maybe the board is not best solution, but it's enough to work with code. Also the board has a metal frame to snap an LCD. There is no need to solder the LCD with any wires. The metal frame was taken from a S65 phone's board and it's very useful thing.

You should know, there are three types of LCD for Siemens S65 phone. First of all this board is intended for testing LS020, but LPH88 may be used too. L2F50 will not work with this board, because it requires to connect pin 8 to VCC (I tested with 3.3V). LS020 is my favorite type, because this type of LCD does support 8-bit host mode, which is faster than 16-bit host mode. There is only one problem: there is no specification of LS020 (I mean commands), so something we will try to define experimentally. I should say that the basic info about the S65-displays at all was taken from Cristian Kranz's site (currently unavailable).

LS020 LCD pinout:

Note: the resistors R3 and R4 in the schematic have larger values because the RST-line is used only for initialization. Thus this solution decreases the common power consumption. This may be relevant for battery-powered devices. The pin 8 of the LCD (LS020) has really no effect. There's no need to connect it.


LS020 Testboard board (mirrored, for a printer) (4534 downloads)


List of internal control registers of the LS020:

Bank 90h
Register numberBit 7Bit 6Bit 5Bit 4Bit 3Bit 2Bit 1Bit 0Short description
R00hWTHBLKYMIRACT****Control Register
R01hYDIRXDIR*BGR****10h - B & R colors are swapped
R02h*****D2*D005h - Image OFF
R04h*******8COL01h - 8-color display mode
R05h*****ROT**04h - 90deg ROTATE
R06hD7D6D5D4D3D2D1D0Cursor position Y
R07hD7D6D5D4D3D2D1D0Cursor position X
R08hD7D6D5D4D3D2D1D0Y1 window corner (00h..83h)
R09hD7D6D5D4D3D2D1D0Y2 window corner (Y1..83h)
R0AhD7D6D5D4D3D2D1D0X1 window corner (00h..AFh)
R0BhD7D6D5D4D3D2D1D0X2 window corner (X1..AFh)
R0FhD7D6D5D4D3D2D1D0Start position (X) of scrolling area
R10hD7D6D5D4D3D2D1D0Width of scrolling area
R11hD7D6D5D4D3D2D1D0Scrolling value (up to value of R10h)
R13h*******COLInactive area color (00h=black, 01h=white)
R14hD7D6D5D4D3D2D1D0Active area #1 offset (X)
R15hD7D6D5D4D3D2D1D0Active area #2 offset (X)
R16hD7D6D5D4D3D2D1D0Active area #1 width
R17hD7D6D5D4D3D2D1D0Active area #2 width
R1Dh*****D2**XMirror + Shift ?
R22hD7D6D5D4D3D2D1D0Something occurs ?
R23hD7D6D5D4D3D2D1D0Image refresh frequency ?
R24hD7D6D5D4D3D2D1D0Image contrast ?
RE8h*BGRD5D4D3D2**Transfer mode (LCD host mode)
Bank B0h
Register numberBit 7Bit 6Bit 5Bit 4Bit 3Bit 2Bit 1Bit 0Short description
R49h??????1D0Negative/Positive Mode
Any Bank
Register numberBit 7Bit 6Bit 5Bit 4Bit 3Bit 2Bit 1Bit 0Short description
REFhD7D6D5D4D3D2D1D0Current Bank Register

Definitions: X-axis is the larger side of the display.

Note: The table may contain some mistakes or discrepancies.

There is still a lot of unknown registers with unclear behavior. The register RE8h allows to enable 8bit, 16bit or 24bit (yes, 24bit-mode is reality!) host mode with or without BGR-function. The BGR function means that B and R bits are swapped when the function is enabled. This is very interesting and useful register.

LCD Host modes
Register RE8h1st Databyte2nd Databyte3rd Databyte
0x10xxB5B4B3B2B1B0R3R2R1R0G5G4G3G2xxxxxxR5R4
0x50xxR5R4R3R2R1R0B3B2B1B0G5G4G3G2xxxxxxB5B4
0x20xxB5B4B3B2B1B0xxG5G4G3G2G1G0xxR5R4R3R2R1R0
0x60xxR5R4R3R2R1R0xxG5G4G3G2G1G0xxB5B4B3B2B1B0
0x70B5B4B3B2B1B0xxG5G4G3G2G1G0xxR5R4R3R2R1R0xx
0x30R5R4R3R2R1R0xxG5G4G3G2G1G0xxB5B4B3B2B1B0xx
0x08G2G1G0B5B4B3B2B1R5R4R3R2R1G5G4G3not required
0x48G2G1G0R5R4R3R2R1B5B4B3B2B1G5G4G3not required
0x0CR5R4R3R2R1G5G4G3G2G1G0B5B4B3B2B1not required
0x00RRRGGGBBnot requirednot required
0x40BBGGGRRRnot requirednot required

The table may contain inaccurate information. Use as a reference only.


Internal Resistors

How does a controller define which type of LCD is connected? Very simply - by means of internals resistors between the pins. But it's possible only when a host controller has direct connection without any buffers, voltage shifters etc. The following picture will explain the matter.

Internal Resistors

A host controller may check these interconnections before starting initialization and decide which driver to use.


LS020 8-bit Palette

LS020 8-bit mode Palette

Using examples

 

LS020 8-bit Palette:


8-color mode

Discuss S65 LCD at my forum



Ŭeb dyzajn, zdymki i malunki ad Juraś-Projects. Jurasieva amatarskaja staronka. Usie pravy abaronienyja. © 2006-2009-2014. Simple English version.