PcVirus
20.03.2007, 16:51
Hi,
ich will eine IR-Led auf ein 38Khz trägersignal bringen und benutze dazu den Timer0. Sobald ich den Code dafür einsetze, wird das "Wait 1" zu ca "Wait 3".
Ist der Timer-Code aber draußen, geht alles normal.
$regfile "m8def.dat"
$crystal = 3686400
$baud = 2400
Config Lcdpin = Pin , Db4 = Portd.7 , Db5 = Portb.0 , Db6 = Portb.5 , Db7 = Portb.4 , E = Portd.6 , Rs = Portd.5
Config Lcd = 16 * 2
Initlcd
Display On
Cursor Off
Cls
Locate 1 , 1
Lcd "Willkommen"
Locate 2 , 1
Lcd "AVR->IR->RCX"
Config Portd.4 = Output
Ir Alias Portd.4
Dim X As Word
Config Timer0 = Timer, Prescale = 1
'Hier wird das Unterprogramm festgelegt, das
'in dem von ihnen eingestellten Intervall aufgerufen wird
On Timer0 Timer_irq
'Diese Vorgabe wurde berechnet um die genaue Intervallfrequenz zu erreichen
Const Timervorgabe = 159
'Hier werden die Timer aktiviert
Enable Timer0
Enable Interrupts
Do
Locate 1 , 1
Lcd X
X = X + 1
Wait 1
Loop
Timer_irq:
Timer0 = Timervorgabe
Toggle Ir
Return
Sobald ich "enable interrupts" auskommentiere geht alles wieder aber mein timerinterrupt ja nicht.
Was kann ich dagegen tun?
MFG PcVirus
ich will eine IR-Led auf ein 38Khz trägersignal bringen und benutze dazu den Timer0. Sobald ich den Code dafür einsetze, wird das "Wait 1" zu ca "Wait 3".
Ist der Timer-Code aber draußen, geht alles normal.
$regfile "m8def.dat"
$crystal = 3686400
$baud = 2400
Config Lcdpin = Pin , Db4 = Portd.7 , Db5 = Portb.0 , Db6 = Portb.5 , Db7 = Portb.4 , E = Portd.6 , Rs = Portd.5
Config Lcd = 16 * 2
Initlcd
Display On
Cursor Off
Cls
Locate 1 , 1
Lcd "Willkommen"
Locate 2 , 1
Lcd "AVR->IR->RCX"
Config Portd.4 = Output
Ir Alias Portd.4
Dim X As Word
Config Timer0 = Timer, Prescale = 1
'Hier wird das Unterprogramm festgelegt, das
'in dem von ihnen eingestellten Intervall aufgerufen wird
On Timer0 Timer_irq
'Diese Vorgabe wurde berechnet um die genaue Intervallfrequenz zu erreichen
Const Timervorgabe = 159
'Hier werden die Timer aktiviert
Enable Timer0
Enable Interrupts
Do
Locate 1 , 1
Lcd X
X = X + 1
Wait 1
Loop
Timer_irq:
Timer0 = Timervorgabe
Toggle Ir
Return
Sobald ich "enable interrupts" auskommentiere geht alles wieder aber mein timerinterrupt ja nicht.
Was kann ich dagegen tun?
MFG PcVirus