Zitat Zitat von sauerbruch Beitrag anzeigen
o-kay - durch diesen code werde ich so schnell nicht durchsteigen....
hatte ich schon fast geahnt. Deshalb war auch der code nicht im ersten beitrag. Ich will von niemandem verlangen, sich den code zu verinnerlichen. Ich musste auch ein paar kommentare löschen, damit es in den beitrag passt. Ich bin guter dinge, dass wir weiterhin nach dem ausschlussverfahren der sache auf dem grund kommen.


Zitat Zitat von sauerbruch Beitrag anzeigen
Um zu verifizieren ob es tatsächlich der timer1-interrupt ist, könntest du ja mal das enable interrupts stehen lassen, und stattdessen "enable timer1" aus dem code löschen. Wenn der fehler sich dann genauso verhält, kann es eigentlich nur mit dem timer1-interrupt zu tun haben.
das hatte keinen Erfolg

Zitat Zitat von sauerbruch Beitrag anzeigen
Du könntest dann mal versuchen, den hardware- und software-stack zu vergrößern. Wenn nichts anderes definiert wird, legt Bascom sie beim mega8 m.w. Mit je 32 bytes an. Probier doch mal z.b. 40:

$hwstack = 40
$swstack = 40
Ich hab's auch noch mal verdoppelt (ob auch immer das Sinn macht) es tat sich nichts.

Ich hatte auch mal statt Timer1 den Timer0 verwendet. es war das gleiche Spiel.

Es scheint als ob es etwas mit den Interrupts zu tun hat. Wenn ich nur die Interrups einschalte um sie im Timer zu verwenden muss ich doch nicht die Interrupts ausschalten die sonst durch PINs ausgelöst werden, oder? Es ist doch auch egal, ob solche PINs Ein- oder Ausgänge sind, oder?


Eine Sache die ich beobachte habe und die vielleicht wichtig sein könnte:
Wenn ich die Reset-Taste betätige (PIN1) und unmittelbar hinterher die anderen Tasten, dann funktioniert das Programm für eine Sekunde für 1 bis drei Schritte und bleibt dann erst stehen.
Das Compiliern zeigt mir 67% Speicheauslastung (weis nicht ob diese Info gebraucht wird).

Behri