PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Anfängerfrage/interrupts



grillmann
13.12.2006, 19:08
Hallo!

Kann mir jemand sagen, wohin das Programm springt, wenn es aus der ISR kommt? An den Anfang, oder dorthin wo es vom Timer "gestört" worden ist?
Ich such jetzt schon 2 Tage und blicks irgendwie trotzdem nicht. Sobald ich einen Timer aktiviere, krieg ich bei den Berechnungen selten, aber regelmäßig Mist heraus.
Ich wär sehr froh über eine Antwort ....

franzl
13.12.2006, 20:08
hallo,
also nach der isr springt dass programm wieder dahin zurück wo es hergekommen ist. die stelle wird auf dem stack abgelegt und danach wieder zurückgeholt. das mit deinen berechnungen kann sein wenn deine variablen mehr als 8bit breit sind, dazu solltest du vielleicht während der berechnung die interrups ausschalten und danach wieder aktivieren. ich hoffe es hilft dir weiter.
mfg franzl

grillmann
14.12.2006, 04:29
Danke für die schnelle Antwort, die Variablen sind alle länger. Ich probiers mal mit Ausschalten, wenns nicht geht, häng ich einen externen Takt an einen Eingang und frag den in der Main ab. Nicht sehr elegant, aber was solls ...