Ich habe mir vor kurzem einen RP5 zugelegt und bin sehr happy damit.
Jetzt habe ich ein kleines Problem mit der IR Kommunikation. Ich habe ein paar Fernbedienungen ausprobiert und eine davon (SEG TV) scheint auch zu funktionieren – jedenfalls reagiert das Testprogramm (DISPLAY_IR_CODE.bas), wenn ich eine Taste drücke.
Nun war mir das Zählen etwas zu langweilig und ich habe das Programm so verändert, dass HBYTE und LBYTE als Binärzahl dargestellt werden.
Zuerst werden jeweils die Bits 7-4 dargestellt, dann folgt eine Pause und die Bits 3-0 werden dargestellt. Wenn alle 4 Werte angezeigt wurden, startet das Programm wieder von vorne. Jetzt ist es so, dass das Programm manchmal zweimal durchläuft, bevor es wieder auf ein IR-Signal wartet. Hat jemand ähnliche Erfahrungen gemacht? Kann das an der Fernbedienung liegen, oder kann ich da im Programm was verbessern?
Ich hab schon nach einer Antwort gesucht, habe aber leider Nix gefunden.
Hier mein Programm:
Vielen Dank & GrüßeCode:... define ADR byte[6] ' IR Adresse define CMD byte[7] ' IR Wert define OUTPUT byte[8] define VAR byte[9] ... #LOOP pause 5 sys COMNAV_STATUS if IR_F = off then goto LOOP gosub GET_IRDATA if LBYTE and HBYTE = &HFF then goto LOOP ADR=HBYTE:CMD=LBYTE beep 100,5,10:beep 100,5,10:beep 100,5,10 ' HByte Bits 7, 6, 5, 4 OUTPUT = (ADR AND &HF0) SHR 4 if OUTPUT > 0 then gosub show else gosub null ' HByte Bits 3, 2, 1, 0 OUTPUT = ADR AND &H0F if OUTPUT > 0 then gosub show else gosub null ' HByte Bits 7, 6, 5, 4 OUTPUT = (CMD AND &HF0) SHR 4 if OUTPUT > 0 then gosub show else gosub null ' HByte Bits 3, 2, 1, 0 OUTPUT = CMD AND &H0F if OUTPUT > 0 then gosub show else gosub null beep 100,5,10:beep 100,5,10:beep 100,5,10 goto LOOP '------------------------------------------- ' Funktionen '------------------------------------------- #show ' IN: OUTPUT VAR = OUTPUT AND 8 if VAR = 8 then gosub LED1ON pause 5 VAR = OUTPUT AND 4 if VAR = 4 then gosub LED2ON pause 5 VAR = OUTPUT AND 2 if VAR = 2 then gosub LED3ON pause 5 VAR = OUTPUT AND 1 if VAR = 1 then gosub LED4ON pause 200 beep 100,10,100 gosub LEDSOFF return #null gosub LED1ON:pause 5:gosub LED1OFF gosub LED2ON:pause 5:gosub LED2OFF gosub LED3ON:pause 5:gosub LED3OFF gosub LED4ON:pause 5:gosub LED4OFF pause 200:beep 100,10,100 return ...







Zitieren

Lesezeichen