Hallo,
ich habe ein Uhrzeit Programm in Bascom geschrieben und habe leider
einige Problme die ich mir nicht erklären kann.
Ich möchte die Uhrzeit über Taster einstellen, also eigentlich recht
simpel, bei Taster1 sollen die Sekunden hochzählen, bei Taster2 die
Minuten.
Dies Funktioniert auch sporadisch.
Meine Probleme sind folgende:
1.)
Displayausgabe zeigt nach ein Paar min nur noch Hyroglyphen (für kurze
Zeit ca. 3 Min.) an, dannach ist es leer und nach wiederum ein paar
Minuten wird die Zeit wieder korrekt angezeigt.
Ich habe keine Ahnung an was das liegt zumal das LCD bisher bei allen
Programmen zuverlässig funktioniert. Die Schaltung ist die gleiche da
alles auf einem Pollin-Testboard läuft
2.)
Sporadisch, nach einigen Tastendrücken um die Uhrzeit einzustellen
startet das Programm neu.
3.)
Um besser Debuggen zu können gebe ich über die RS232 Schnittstelle die
Programmposition aus, in der sich das Prog. befindet.
Nach betätigen der Tasten findet der Atmega32 nicht mehr aus der ISR den
Weg zurück in die Hauptschleife. Dieses Problem tritt auch sporadisch
auf.
Kann das ein Problem mit dem Stackpointer sein?
Hier ein Terminal-Abschnitt bei dem das Problem sichtbar aufgetreten
ist.
Nach einigen Minuten findet er den Weg wieder in die Hauptschleife.
Unten sieht man wie er nur noch jede Sekunde die ISR abarbeitet.
1 | Hauptschleife
|
2 | Hauptschleife
|
3 | Hauptschleife
|
4 | Hauptschleife
|
5 | Hauptschleife
|
6 | Hauptschleife
|
7 | ISR
|
8 | Taster2, Minuten 15:4:11
|
9 | Taster2, Minuten 15:5:11
|
10 | Taster2, Minuten 15:6:11
|
11 | Taster2, Minuten 15:7:11
|
12 | Taster2, Minuten 15:8:11
|
13 | Taster2, Minuten 15:9:11
|
14 | Taster2, Minuten 15:10:11
|
15 | Taster2, Minuten 15:11:11
|
16 | Taster2, Minuten 15:12:11
|
17 | ISR
|
18 | Hauptschleife
|
19 | Hauptschleife
|
20 | Hauptschleife
|
21 | Hauptschleife
|
22 | Hauptschleife
|
23 | Hauptschleife
|
24 | ISR
|
25 | Taster1 15:13:13
|
26 | Taster1 15:13:14
|
27 | Taster1 15:13:15
|
28 | Taster1 15:13:16
|
29 | Taster1 15:13:17
|
30 | Taster1 15:13:18
|
31 | Taster1 15:13:19
|
32 | ISR
|
33 | ISR
|
34 | ISR
|
35 | ISR
|
36 | ISR
|
37 | ISR
|
Mein Uhrzeit-Programm habe ich in den Anhang als *.txt Datei getan.
Vielen Dank & Grüße
Joe