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.
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 wrote: > hat jemand schon mal versucht ein LCD (HD44780) ohne die delay()-Fkt. > anzusteuern??? Beitrag "Formatierte Zahlenausgabe in C" Peter
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.
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
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.