Code:' $regfile "m8def.dat" 'Definiert den Atmega als Atmega8 $crystal = 1000000 'Gibt die Quarzfrequenz an in Herz $hwstack = 32 'Default use 32 Hardware reservierte Speicher $swstack = 10 'Default Software resvierung Speicher $baud = 2400 '---------------------- Config Display ---------------------------------------- ' Konfiguration fürs Display Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portc.3 , Db5 = Portc.2 , Db6 = Portc.1 , Db7 = Portc.0 , Rs = Portc.5 , E = Portc.4 '-------------------------Variable deklarieren ------------------------------- Dim Adresse As Byte ' Variable für Infrarot Adresse Dim Commando As Byte Dim Flag As Byte Dim Blink_aus As Byte Dim Blink_an As Byte '------------------------------- I / O ---------------------------------------- Ddrd = &B11100000 ' Portd.5-d6-d7 als Ausgang für Leds setzen Ddrb.2 = 1 ' BG2 als Ausgang für Display Beleuchtung setzen Portb.6 = 1 ' Pull Down setzen für Tastereingang '---------------- Konfiguration für 'IR Eingang ------------------------------- Portb.0 = 1 ' PullUp setzen für Eingangspin IR-Led Config Rc5 = Pinb.0 ' Pin für IR Abfrage setzen '---------------------------------- Interrupts --------------------------------- Enable Interrupts ' Interrups Global freigeben '------------------------------------------------------------------------------ Cls Flag = 1 Do '--------------------Ankommendes IR Signal auswerten -------------------------- Getrc5(adresse , Commando) If Flag = 1 Then Lcd "Warte auf IR Signal" Flag = 0 End If If Adresse <> 255 Then Reset Commando.7 Cls Flag = 1 End If '------------------------ If Commando = 1 Then Gosub 1 If Commando = 2 Then Gosub 2 If Commando = 3 Then Gosub 3 Cls Lcd " Taste=" ; Commando Waitms 200 Loop '---------------------- Sub Routinen fuer gedrückte Taste 1 ------------------- 1: Portd.5 = 1 Waitms 500 Portd.5 = 0 Return '---------------------- Sub Routinen fuer gedrückte Taste 2 ------------------ 2: Print 2 Portd.6 = 1 Waitms 50 Portd.6 = 0 Return '----------------------- Sub Routinen fuer gedrückte Taste 3 ------------------ 3: Print 3 Portd.7 = 1 Waitms 50 Portd.7 = 0 Return
Lesezeichen