LCD-Ansteuerung ohne delay()

Gast #1122705
Hi,
hat jemand schon mal versucht ein LCD (HD44780) ohne die delay()-Fkt. 
anzusteuern???
Meine Vorstellung war die Pausen über einen Timer-Interrupt zu 
steuern...

Falls jemand dazu eine Idee oder schon Erfahrung damit hat, freue ich 
über die Beiträge und schon mal 'Danke' im voraus...
Hab ich mal per RTOS-Timer gemacht. Hat den Vorteil, dass es haargenau 
so aussieht wie mit Delays, d.h. die Version unterscheidet sich von der 
Delay-Version nur durch die Art, wie die Delays implementiert sind, ist 
ansonsten der gleiche modifizierte Fleury-Code.
Gast
Beim Start braucht man immer eine Zeitverzögerung. Ob man
diese mit delay, nem Timer oder schleife realisiert ist egal.

Danach kann man das Busyflaf des Displays benutzen. Man benötigt
dann jedoch den RW-Pin des Displays.
Sinnvoller als nach einem Schreibvorgang dann das Busy abzufragen
(Befehle können dauern!) ist es vor dem Schreiben zu
schauen, ob das Display bereit ist.
Durch diese Rückmeldung ist es auch moglich in gewissem Masse
zu testen, ob das Display richtig reagiert (Wartezeit beschränken
z.B. Watchdog).

gruß hans
Gast
Hallo!
Ich habe die Displayansteuerung mal im Timerinterrupt gemacht.
So alle zwei ms ein neues Zeichen ausgeben wenn in einem Pufferbereich 
was neues verfügbar ist. Braucht wenig Zeit, nur Schreibzugriffe 
erforderlich, Busy muss nicht abgefragt werden. Man kann sogar ein 
"scrollen" ermöglichen, wenn das gesamte Display als "Bildspeicher" im 
internen RAM gespiegelt wird. Alle Ausgaben an das Display sind dann nur 
Speicherzugriffe auf die entsprechenden RAM-Zellen.
Wichtig: bei der Initialisierung müssen die Zeiten immer eingehalten 
werden. Also erst die übliche INIT-Sequenz und dann erst Interrupt 
freigeben.
Gast
Hallo und danke für die schnellen Antworten!

Ich bin im Augenblick soweit, dass die Zeichen in den Bytestrom 
umgewandelt werden und zwischen gespeichert werden. Dieser wird dann 
Timergesteuert übertragen.
Jetzt bleiben 'nur' noch die sinnvollen Ausgaben zu organisieren...

Viele Grüße Sven

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 17 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.