Hallo, Ich habe ein LCD an einen µC angeschlossen, leider werden die Zeichen total durcheinander dargestell, manchmal tauchen falsche Zeichen auf und manchmal nur noch Pixelbrei. :( Die Kabellänge zum µC baeträgt ca. 2,5m, ich habe ein abgeschirmtes ehemaliges parallel-Port Kabel verwendet, LCD ist im 8-Bit Modus. Prozessor SAB80C537, 16 MHz -> lag gerade so rum LCD Datenblatt: http://www.mark-products.com/pdf/c16x2/84_019/84_019%20spec.pdf Mit im Kabel sind noch weitere sieben Adern, die ein Tastenfeld abfragen. Ich vermute, dass das Kabel zu lang ist. Welche Maßnahmen könnte man dagegen unternehmen? Nach jedem Byte, das übertragen wird ein paar ms Verzögerung? Was für möglichkeiten gibt es hardwareseitig (bringen Kondensatoren von den Datenleitungen nach Masse eine Verbesserung?)
Gerhard wrote: > Welche Maßnahmen könnte man dagegen unternehmen? Kürzeres Kabel, Bustreiber/Empfänger (am besten differentiell), die Leitungen richtig terminieren usw. > Nach jedem Byte, das übertragen wird ein paar ms Verzögerung? Bringt nicht viel, da die Anstiegszeit und somit die Überschwinger usw. davon nicht weggehen.
@ Benedikt K. (benedikt) >Kürzeres Kabel, Bustreiber/Empfänger (am besten differentiell), die >Leitungen richtig terminieren usw. Wie war das doch gleich mit den Kanonen und Spatzen? Fürs erste sollte man das Timing prüfen und mal testhalber gaaaaanz laaaangsam machen. Das ist oft die Ursache. Ein 16 MHz Prozessor ist nämlich flink. Wenn das WIRKLICH nicht hilft, dann mal einen Schmitt-Trigger vor das Enable Signal am LCD stetzen. Die restlichen Signale sind unkritisch. >> Nach jedem Byte, das übertragen wird ein paar ms Verzögerung? >Bringt nicht viel, da die Anstiegszeit und somit die Überschwinger usw. >davon nicht weggehen. Ja, aber noch weis keiner o das die Ursache ist. MfG Falk
Also als erstes nimmst du jetzt mal ein kurzes Kabel und testest damit :-)
Also bei den ersten Tests ging alles wunderbar, da habe ich statt einem Kabel 12 einzeldräte genommen (ca. 20cm). Jetzt habe ich das Kabel auf einen halben meter verküzt: Alle Zeichen werden jetzt richtig dargestell, sie sind aber manchmal an der falschen Stelle! Die Widerstände kommmen auf die Display-Seite nehme ich an, oder? >Wenn das WIRKLICH nicht hilft, dann mal einen Schmitt-Trigger vor >das Enable Signal am LCD stetzen. Die restlichen Signale sind >unkritisch. Wiso ist eigentlich das Enable Signal so kritisch? Ich dachte ganz am Anfang, dass es eher die Datenleitungen sein müssten, denn es kamen ja zeichen am Display an, nur halt sehr seltsame.
Gerhard wrote: > Die Widerstände kommmen auf die Display-Seite nehme ich an, oder? Es gibt mehrere Möglichkeiten: http://www.mikrocontroller.net/articles/Wellenwiderstand > Wiso ist eigentlich das Enable Signal so kritisch? Das Enable Signal gibt an, wann die Daten gültig sind. Nur wenn Enable anliegt, werden die Signale auf den restlichen Leitungen überhaupt beachtet. Das Enable Signal muss also sauber sein, keine Überschwinger usw. Also Serienwiderstand am µC, und am besten einen Schmittrigger direkt vor das Display.
Weil, wenn E "zuschlaegt", die Datenleitungen bereits stabil sind, bzw. sein sollten.
Also ich habe jetzt in in jede Datenleitung auf der µC-Seite 100 Ohm in Serie geschaltet -> ES FUNKTIONIERT!!! Danke für die Hilfe!
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.