RN-MEGA2560 RC Empfang geht nicht andere Register ?
Hallo
ich habe gerade versucht den code aus der Bascom Hilfe für den RC5 Empfang auf einem ATMEGA2560 zum laufen zu bekommen.
Leider meckert Bascom diese Zeile an :
Code:
Gifr = Gifr Or &H80 'clear Flag Int1
Die Fehlermeldung lautet : Error invalid datatyp ?!
Heißt das Register anders beim ATMEGA2560 ?
kann man das irgendwie umbauen oder hat jemand funktionierenden Code für den ATMEGA2560 ?
Hier der gesamte Code :
Code:
'Diese Anweisung setzt die Fusebits automatisch korrekt (Syntax $PROG LB, FB , FBH , FBX )
$prog , 255 , &B11011001 , 'Quarz an / Teiler aus / Jtag aus
$regfile = "m2560def.dat"
$hwstack = 82 '80
$framesize = 68 ' 64
$swstack = 68 '44
$crystal = 16000000 'Quarzfrequenz
Config Pine.5 = Input
Usb Alias Pine.5 'Ist 1 wenn USB angeschlossen
Config Com4 = 38400 , Synchrone = 0 , Parity = None , Stopbits = 1 , Databits = 8 , Clockpol = 0
Open "com4:" For Binary As #4
'RC5 benötigt Timer0 Interrupt !
Config Rc5 = Pind.3
On Int1 Int1_int 'Nosave würde 52 Takte = 6,5uS sparen
Enable Int1
Config Int1 = Falling
Enable Interrupts
'Rückgabewerte der ISR
Dim Address_rc5 As Byte , Command_rc5 As Byte , Rc5_flag As Bit
'RC5 ENDE
Do
'RC5 Anfang Power off Taste
If Rc5_flag = 1 Then
Reset Rc5_flag
Print "toggle:" ; Command_rc5.7;
'clear the toggle bit
Command_rc5 = Command_rc5 And &B01111111
Print " Adresse:" ; Address_rc5 ; " Code:" ; Command_rc5
If Command_rc5 = 12 Then
Sound Portl.4 , 400 , 350 'BEEP
End If
'RC5 Anfang Ton Stumm Taste
If Command_rc5 = 13 Then ' Taste Stumm ist Code 13
Sound Portl.4 , 400 , 350 'BEEP
End If
End If
'RC5 ENDE Power off Taste
Loop
'RC5 Anfang
'Lesen der RC5 Codes
Int1_int: 'Interrupt Handler For Int1
Disable Int1
Enable Interrupts 'für Timer0 Overflow GetRC5
Getrc5(address_rc5 , Command_rc5)
Set Rc5_flag 'Flag für RC5 Daten
Gifr = Gifr Or &H80 'clear Flag Int1
Enable Int1
Return
'RC5 ENDE
Danke und Gruß
Steffen[/code]