Hallo, im Beitrag Beitrag "Informationen zu LCD-Display HB24209 (HYLCD) gesucht" habe ich versucht Informationen (Datenblatt/Übertragungsprotokoll) zum Display HB24208 (HB24209) der Fa. HYLCD zu bekommen. Leider hatte ich hier, wie auch bei der Suche im Internet, bislang keinen Erfolg. Weiterhin besteht meinerseits der Wunsch diese Displays am GPIO eines AVR32 (z.B. NGW100) einzusetzen und einen Linux-Treiber dafür zu bauen. Sicher könnte ich auch auf die DOG-M LCD-Module (3,3 V) ausweichen und diese via SPI am NGW100 betreiben. Von den HB24208 habe ich aber einige Module liegen und möchte sie gerne bevorzugt für diesen Zweck einsetzen. Gestern hat mich nun der sportliche Ergeiz gepackt und ich habe mal fix mittels einem CPLD (XC9572XL), einem SRAM (128Kbyte) und einem ATmega162 einen 4-bit Logikanalysator aufgebaut. Die Ausmaße sind im angehängten Foto erkennbar. Hier die dadurch gewonnenen Erkenntnisse: Das Display wird mit 4 Leitungen angesteuert. DISPLAY_SELECT (Eingang) - Chip Select - Low-aktiv DISPLAY_CLOCK (Eingang) - Takt für die serielle Übertragung - maximale Frequenz 1 MHz (500ns/500ns) DISPLAY_DATA1 (Eingang, evtl. bidirektional) - Displaydaten - gültig bei steigender Taktflanke - Übertragung erfolgt wortweise (16-bit) - LSB (D0) wird zuerst und MSB (D15) wird zuletzt übertragen - sichtbare Displayinformationen können aus diesen Daten zurückgewonnen werden DISPLAY_DATA2 (Richtung noch unklar) - wahrscheinlich wie DISPLAY_DATA1 - bei der Übertragung von sichtbaren Displayinformationen immer 0xFFFF Die weiteren Anschlüsse des Displays sind alle bekannt (GND, +3.3V, VLCD), aber für die Betrachtung des Übertragungsprotokolls nicht interessant. In den nächsten Tagen werde ich versuchen, die Initialisierung des Displays nach Power-On 'einzufangen'. Vielleicht entdecke ich (oder Ihr) dann ein paar Gemeinsamkeiten zu bekannten LCD-Controllern. Die folgenden beiden Beiträge beinhalten zunächst die aktuellen Ausgabedateien meines Miniatur-Logikanalysators. Kennt jemand von Euch ein solches Übertragungsprotokoll? Wie kann ich möglichst einfach und sicher die genauen Übertragungsrichtungen der beiden Datenleitungen ermitteln? Vielen Dank für Eure Unterstützung! Gruß Jens
Ausgabedatei Nr.1 des Logikanalysators Darstellung der Übertragung eines Datenblocks - unkomprimierte Daten (sampling rate 8 MHz / 125 ns) - komprimiert, Pausen > 2,5 µs (20 Samples) entfernt - decodiert, DISPLAY_DATA1 & DISPLAY_DATA2, je 32x16 Bit (Bitte idealerweise mit PN2 o.ä. öffnen, Notepad wegen der Zeilenumbrüche nicht geeignet)
Ausgabedatei Nr.2 des Logikanalysators Darstellung mehrerer aufeinander folgender Datenblöcke - decodiert, DISPLAY_DATA1 & DISPLAY_DATA2, je 32 x 16 Bit - Übertragung alle 0,5 Sekunden (Auffrischung Uhrzeit / Datum)
Hallo, hat niemand von Euch eine Idee? In der Zwischenzeit ist es mir gelungen die Initialisierung nach den Einschalten der Versorgungsspannung 'mitzuscheiden'. (siehe Anhang) In den Datenblöcken sind scheinbar folgende Informationen enthalten: 0x00 Initalisierung des Displays 0x01 Übertragung der benutzerdefinierten Zeichen 'Ä' und 'Ö' (CG-RAM) 0x02 Übertragung der benutzerdefinierten Zeichen 'Ü' und '|' (CG-RAM) 0x03 Übertragung der benutzerdefinierten Zeichen 'ä' und 'ö' (CG-RAM) 0x04 Übertragung der benutzerdefinierten Zeichen 'ü' und 'ß' (CG-RAM) 0x05 ??? 0x06 ??? 0x07 Displayinhalt (1. Zeile) 0x08 Displayinhalt (2. Zeile) 0x09 Displayinhalt (1. Zeile), nach 500 ms 0x0A Displayinhalt (1. Zeile), nach 1000 ms 0x0B Displayinhalt (1. Zeile), nach 1500 ms 0x0C Displayinhalt (1. Zeile), nach 2000 ms Unklar ist mir weiterhin der Inhalt des Headers jedes einzelnen Datenblocks. Außer im Block 0x00 schein im 7. Wort (0x06) eine Adressangabe enthalten zu sein. Problematisch ist für mich auch, herauszufinden in welcher Übertragungsrichtung die Datenleitungen (DISPLAY_DATA1 & DISPLAY_DATA2) betrieben werden. Momentan lese ich nur den Datenverkehr auf beiden Leitungen mit. Hat Ihr Ideen wie ich nun am sinnvollsten weitermachen könnte? Gruß Jens
Hallo zusammen, ich experimentiere ebenfalls mit dem Display HB24208 / HB24209 was baugleich zum VLG1021#2 / VLGEM1021-03 ist. Gibt es mittlerweile etwas neues hierzu? Ein Datenblatt habe ich nämlich auch nicht. Allerdings kann ich mittlerweile etwas an das Display senden, auch wenn nur undefinierte Zeichen auf dem Display erscheinen... Scheinbar scheint die Initialisierung teilweise zu funktionieren, aber eben nur teilweise (ich habe den Datenstrom zwischen Optipoint500 und Display mit dem Oszi aufgezeichnet und versuche ihn nun über SPI meines µControllers nachzubilden). Kann mir jemand weiterhelfen, bin auch gern bereit noch paar Daten preiszugeben..??!! Folgende Daten sende ich an das Display (diese habe ich mit einem Oszi aufgezeichnet). Leider konnte ich beim Aufzeichnen der Daten nur begrenzt informationen gewinnen, da ich keine Dect Anlage habe und das Telefon im Sekundentakt neu booted. Zwar wird das Display kurz initialisiert, allerdings wir hierbei ein Pixeltest durchgeführt und alle Pixel eingeschaltet. Es ist nur ein Teil der Daten.. den ich also aufgezeichnet habe.. leider weiß ich nicht wo die Initialisierung aufhört! Nach dieser Initialisierung habe ich versucht einge Zeichen ans Display zu senden.. das Display zeigt wilde Schriftzeiche die nix mit dem zu tun haben was ich hinsende.. DISPLAY_CSB = 0; LCDWriteByte(0x07); LCDWriteByte(0x17); Delay1ms(50); LCDWriteByte(0x07); LCDWriteByte(0x17); Delay1ms(10); LCDWriteByte(0xFC); LCDWriteByte(0x00); Delay100us(1); LCDWriteByte(0xFC); LCDWriteByte(0xF8); Delay100us(1); LCDWriteByte(0x10); LCDWriteByte(0xC0); Delay100us(1); LCDWriteByte(0x30); LCDWriteByte(0x00); Delay100us(1); LCDWriteByte(0x80); LCDWriteByte(0x00); Delay100us(1); LCDWriteByte(0xFC); LCDWriteByte(0x00); Delay100us(1); LCDWriteByte(0xFC); LCDWriteByte(0x00); Delay100us(1); LCDWriteByte(0xFC); LCDWriteByte(0x00); Delay100us(1); LCDWriteByte(0xFC); LCDWriteByte(0x00); Delay100us(1); LCDWriteByte(0xFC); LCDWriteByte(0x00); Delay100us(1); LCDWriteByte(0xFC); LCDWriteByte(0xF8); Delay100us(1); LCDWriteByte(0x30); LCDWriteByte(0x00); Delay100us(1); LCDWriteByte(0xFC); LCDWriteByte(0xF8); Delay100us(1); LCDWriteByte(0x90); LCDWriteByte(0x90); Delay100us(1); LCDWriteByte(0xFC); LCDWriteByte(0xFA); Delay100us(1); LCDWriteByte(0x50); LCDWriteByte(0x50); Delay100us(1); LCDWriteByte(0xFC); LCDWriteByte(0x00); Delay100us(1); LCDWriteByte(0xFC); LCDWriteByte(0xF8); Delay100us(1); LCDWriteByte(0x60); LCDWriteByte(0x60); Delay100us(1); LCDWriteByte(0xFE); LCDWriteByte(0x00); Delay100us(1); LCDWriteByte(0xFC); LCDWriteByte(0x00); Delay100us(1); LCDWriteByte(0xFC); LCDWriteByte(0xF8); Delay100us(1); LCDWriteByte(0x00); LCDWriteByte(0x20); Delay100us(1); LCDWriteByte(0xFC); LCDWriteByte(0xFA); Delay100us(1); LCDWriteByte(0x80); LCDWriteByte(0x80); Delay100us(1); Danach Schriftzeichen... ----------------------------------------------------- Pinbelegung des Displays (von hinten links an gesehen): 1: ungenutzt 2: ungenutzt 3: SPI_MOSI (Daten ans Display senden) 4: GND 5: SPI_CLK 6: GND 7: SPI MISO (Daten vom Display empfangen, habe ich nicht genutzt) 8: 3,3V Versorgungsspannung 9: SPI_CSB (Chip Select, muß bei Datentransfer low sein) 10: Kontrast (hier muß man ca. 2V anlegen) Ich habe mit 500kHz ans Display gesendet, es verträgt wohl bis zu 1MHz So, wer etwas herausbekommt, bitte umgehend bei mir melden!!!
Hallo zusammen, die Daten aus euren Postings haben mir sehr geholfen das Ding zum laufen zu kriegen - klappt wunderbar. Nun will ich mal zur Aufklärung der Sache beitragen. Das Display besitzt meiner Meinung nach einen Kontroller vom Typ KS0074. Zumindest konnte ich das mir vorliegende Display mittels der im Datenblatt beschriebenen seriellen Kommandos zum Anzeigen von Klartext etc. überreden. Man muss auch die Auftrennung jedes Bytes in zwei 'Halbbytes' bei der Übertragung beachten...aus 0xAB wird 0x0A + 0x0B (steht auch im Datenblatt) Ich habe übrigens das BusyFlag abgefragt anstatt die vorgegebenen Zeiten abzuwarten - das ist meines Erachtens deutlich schneller als 'Delay'.
Hallo zusammen, erstmal danke an den Koch für diesen wertvollen Hinweis! Habe zwar noch nicht viel Zeit in die Begutachtung des Datenblatts gesteckt, bin aber auch überzeugt davon das der KS0074 ganz oben auf der Liste der 'Verdächtigen' steht. Das Geheimnis offenbart sich auf den Seiten 45 bis 47 im Datasheet. Nun ist mir auch klar, warum ich nichts mit den Daten vom Display anfangen konnte. Die haben einfach eine andere Struktur als die Daten zum Display. Weiterhin ist interessant das jede Übertragung mit einem Starting-Byte zu beginnen hat. Danach können mehrere Bytes geballt (continuous) folgen. Gruß Jens
sale HB24208 / HB24209 contact tel:0086-13068707230
Ich habe in letzter Zeit einen Menge Mails bekommen von Firmen die solche LCD suchen. Die sind für Siemens Optipoint Telefone. Anscheinend wurde die Produktion eingestellt. (Modell ist HB24208/HB24209) Wir produzierten die LCM Alternativen, braucht einen Freund, kontaktieren Sie mich bitte. e-mail:qinyan723@163.com TEL: 0086 - 13068707230 0086 - 0755 29161161 ext 813 Address: 3F Building A ,Yicheng Industry Area, Xixiang Street , Baoan District ,Shenzhen , Guangdong Province , China http://www.szjunxian.com/en/index.asp
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.