Baui
25.04.2005, 14:55
Hallo,
habe folgenden Aufbau:
Ich möchte meine MEga8 bei einem High Pegel auf INT1 in die Routine Interrupt springen lassen. In dieser Routine soll er dann auf 5 Bytes vom Uart warten (mit weiterem Interrupt) dabei soll er jedoch bei einer Zeitüberschreitung aus der Routine wieder herausspringen
on int1 interrupt
on urxc serialin
interrupt:
var=1
count=0
do
waitms 2
count=count+1
if count=20 then return 'wenn eine Zeit überschritten wird dann routine verlassen
loop until var=5
return
serialin:
inputbin(var)
count=0
var=var+1
return
Wie kann ich das bewerkstelligen? WEil der Mega sperrt innerhalb einer Interruptroutine ja sämtliche andere Interrupts.
Es geht übrigens nicht, dass ich das von Anfang an gleich ohne den INT! mache. Der muss zu allererst aufgerufen werden.
Bin über jede Hilfe dankbar
Gruß
Baui
habe folgenden Aufbau:
Ich möchte meine MEga8 bei einem High Pegel auf INT1 in die Routine Interrupt springen lassen. In dieser Routine soll er dann auf 5 Bytes vom Uart warten (mit weiterem Interrupt) dabei soll er jedoch bei einer Zeitüberschreitung aus der Routine wieder herausspringen
on int1 interrupt
on urxc serialin
interrupt:
var=1
count=0
do
waitms 2
count=count+1
if count=20 then return 'wenn eine Zeit überschritten wird dann routine verlassen
loop until var=5
return
serialin:
inputbin(var)
count=0
var=var+1
return
Wie kann ich das bewerkstelligen? WEil der Mega sperrt innerhalb einer Interruptroutine ja sämtliche andere Interrupts.
Es geht übrigens nicht, dass ich das von Anfang an gleich ohne den INT! mache. Der muss zu allererst aufgerufen werden.
Bin über jede Hilfe dankbar
Gruß
Baui