www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik LC-Display ansteuern - Mal gehts, mal nicht


Autor: Tounsi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

Ich habe ein 4x27 Zeichen LCD mit zwei separaten Controllern. Ich habe
quasi zwei 2x27 Zeichen Displays. Jetzt habe ich das Tutorial
durchgelesen und auf meinen Chip gespielt. Jedoch zeigt mein Display
(Wie im Tut) kein "Test" an. Manchmal gehts und manchmal nicht. Das
heißt, ich muss das ganze System ca. 15 mal an- und ausschalten bis
dann einmal "Test" erscheint. Dann beginnt das Spiel wieder von vorn.
Kann mir jemand sagen woran das liegt? Ich versteh das einfach nicht.
Das Display ist heile und funktioniert einwandfrei. Habe es schon mit
dem PC getestet.

Bin dankbar für jede Hilfe.

mfg

Autor: Tounsi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Seit neustem steht auf dem LCD, wenn es denn mal was anzeigt, nur
"Tst" anstatt "Test"

Was ist da los?

Autor: Ingo Henze (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hmmm, das sieht nach Timingproblemen aus, besonders der Effekt, das
Buchstaben fehlen (war bei mir auch so).
Hast Du denn die Warteschleifen (Delay) auf die Taktfrequenz Deines
Mikrocontrollers angepaßt?

Autor: Thomas K (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hast du die sofware auf deine Taktrate umgestellt?

Autor: Tounsi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke Leute! Das war nämlich mein Problem. Das Tut verwendet einen 4 MHz
Oszi und ich benutze einen 10 MHz Oszi.

Vielen Dank!

Autor: jmoney (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
eleganter und noch sicherer wäre es, das busy-signal von controller
abzufragen..

Autor: Tom (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das Busy-Signal nutzt gar nix, wenn die Steuersignale zu kurz sind...

Autor: jmoney (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
genau dafür ist das busy-signal doch da. du schickst dem
display-controller ein byte zum speichern und dann fragst du das
busy-signal ab. das ist so lange gesetzt, bis das byte verarbeitet ist
und der display-controller einen neuen befehl empfangen kann.

Autor: Tom (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Falsch. Wenn beispielsweise der E-Puls zu kurz ist, versteht der
Display-Controller die Kommandos gar nicht. Das Busy-Signal dient nur
der Signalisierung der Bereitschaft.

Autor: jmoney (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich hab mal kurz im Datanblatt des Controllers nachgeblättert. Da sind
220ns für einen E-Puls vorgesehen. Das macht nach Adam Riese ~4,5MHZ.
Der MC zieht nicht ideal hoch und runter aber das kann man bei einem
reinen Signal denke ich fast vernachlässigen. Im angesprochenen Projekt
sind 3 nop-Zyklen vorgesehen, also:
an, nop, nop, nop, aus
__/-------------------\___

Pro Zyklus 100ns bei 10 MHz komme ich auf 400ns. Die Möglichkeit muss
man natürlich in Betracht ziehen, klar, aber dafür baut man eigentlich
eh immer zur Sicherheit ein, zwei nops ein..

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.