frank-wob
01.09.2006, 13:26
Hallo,
ich habe eine kleine Schaltung mit einem Mega8 gebaut, die aus einem Medizinischen Gerät Daten auslesen soll. Funktioniert auch alles ganz gut, nur leider bricht die Verbindung in Regelmäßigen Abständen ab, und der Mega8 führt eine Art Reset durch. Nach langem suchen, bin ich darauf gekommen, das es an folgendem Code liegt. Das ist ein Beispielcode auf den ich den Fehler zurückführen konnte. Es scheint so, als ob es etwas mit dem Stack zu tun hat, aber ich bin nicht Crack genug um genau zu wissen warum es passiert und vor allem was ich dagegen tun kann.
$regfile = "m8def.dat"
$crystal = 16000000
$baud = 38400
$hwstack = 32
$swstack = 8
$framesize = 16
Dim I As Integer
Declare Sub Test_a
Declare Sub Test_b
I = 0
Print "Start"
Test_a
Sub Test_a
Incr I
Print I
Waitms 50
Test_b
End Sub
Sub Test_b
Waitms 50
Test_a
End Sub
Dieser Code ist nur ein Beispiel, das das gleiche Verhalten aufweist wie mein Original Code. Hat jemand eine Idee wie ich das Resetten des Mega8 verhindern kann.
Danke schon mal für alle Tips und Ideen
Gruß Frank
ich habe eine kleine Schaltung mit einem Mega8 gebaut, die aus einem Medizinischen Gerät Daten auslesen soll. Funktioniert auch alles ganz gut, nur leider bricht die Verbindung in Regelmäßigen Abständen ab, und der Mega8 führt eine Art Reset durch. Nach langem suchen, bin ich darauf gekommen, das es an folgendem Code liegt. Das ist ein Beispielcode auf den ich den Fehler zurückführen konnte. Es scheint so, als ob es etwas mit dem Stack zu tun hat, aber ich bin nicht Crack genug um genau zu wissen warum es passiert und vor allem was ich dagegen tun kann.
$regfile = "m8def.dat"
$crystal = 16000000
$baud = 38400
$hwstack = 32
$swstack = 8
$framesize = 16
Dim I As Integer
Declare Sub Test_a
Declare Sub Test_b
I = 0
Print "Start"
Test_a
Sub Test_a
Incr I
Print I
Waitms 50
Test_b
End Sub
Sub Test_b
Waitms 50
Test_a
End Sub
Dieser Code ist nur ein Beispiel, das das gleiche Verhalten aufweist wie mein Original Code. Hat jemand eine Idee wie ich das Resetten des Mega8 verhindern kann.
Danke schon mal für alle Tips und Ideen
Gruß Frank