Basic und AVR und Timer0

Gast #312914
Lesenswert?
• ▲
▼
Hallo Leute,

hab ein Grafikdisplay mit T6963C am Mega 16
über BASCOM AVR am Laufen.
Es bringt die Zeichen auf die Fläche.

Nun wollte ich eine "Zeit" mit einsetzen,
aber..

Hab Timer0 mit Interrupt verwendet.

Wenn nun das Display beschrieben wird, dann entstehen unerwünschte
Linien.

Wenn ich den interupt ausschalte (wärend des Schreibens ans Display)
dann sind keine Störungen vorhanden.

Kommen sich da die Treiber ins Gehege, oder ist es ein Timingproblem
mit dem Display?


Kurt
Gast #312915
Lesenswert?
• ▲
▼
Wenn Dein Hauptprogramm nicht so Zeitkritisch ist - aktualisiere doch
das Display in der Interrupt-Routine und bereite die anzuzeigenden
Werte im Hauptprogramm vor..

Oder Du verwendest den Timer ohne Interrupt (z.B. Timer1, der zählt
weiter) und schreibst in Deiner Hauptprogramm-Schleife IF Timer1 > XXX
THEN display aktualisieren, timer auf null stellen.

Außerdem kann man probieren, den gesamten Quelltext der ISR erstmal zu
kommentieren - evtl. verändert die Routine einige Register fürs LCD

Schließlich - was Du schon gemacht hast - vorher DISABLE INTERRUPTS,
nach dem Display schreiben ENABLE INTERRUPTS

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren