Hi,
sehr komisch.
Ich habe jetzt als letztes in den Quellcode
reingeschrieben. Jetzt ist das Flackern weg und das Ding funktioniert einwandfrei.
Eine "entflackernde" Endlosschleife
ich glaube ich kann dir das Flackern erklären
Du hast dir mit dem "Do Loop"
endlich eine Hauptschleife programmiert. Ein µC ist kein normaler PC ! Wenn
er dein Programm abgearbeitet hat dann geht er nicht auf Winddows oder DOS
zurück sondern läuft weiter. Also hat er am Ende deines Programms den freien
Flash-Speicher "ausgeführt" und dann am Ende des Flash einen Überlauf des
Programmzählers gehabt und bei Adresse 0x0000 wieder neu angefangen
Und am 0x0000 steht wieder die initialisierung des Displays
Immer rund
rum durch das Flash gearbeitet.
Also hast du vorher sozusagen deine "Main"-Routine vergessen gehabt. Dein
Programm bestand vorher nur aus einer "Linearen" Routine mit Anfang und
Ende. Bei µCs braucht man aber nach der Initialisierung IMMER eine endlose
Schleife in der sich die CPU austoben kann. Die kann man aber auch noch
mit sinnvollen Dingen füllen
Also immer ...
0x0000 ---Initialisierung--->
DO ----Sinnvoller Kram------->
LOOP | Subroutine | Subroutine | ...
Gruß
Dino