|
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Using Siemens S65 LCD (LS020)S65 LCD Test BoardAll 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. ![]() Test Board schematic diagram: ![]() Enlarge image 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. ![]() S65 LCD Test Board: ![]() S65 LCD Test Board, Initialization of LS020: ![]()
List of internal control registers of the LS020:
Definitions: X-axis is the larger side of the display. Note: The table may contain some mistakes or discrepancies. There are still more many unknown registers, which something do, but the logic of action is not clear yet. These registers will be listed later. To be continued. Register RE8h can set 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. See detailed info about the host-modes here. I will be describing bits of this register later. This is very interesting and useful register, which can set at least six different modes of the LS020 LCD. Internal ResistorsHow 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.
A host controller may check these interconnections before starting initialization and decide which driver to use. LS020 8-bit Palette
Using examplesLS020 8-bit Palette:8-color mode | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||