Moin zusammen!
Ich habe folgendes Problem:
Wenn ich über meinen IR-Sender ein Rc5 Signal an meinen IR-Empfänger (Schaltpläne siehe Anhang) schicken, erkennt der Empfänger dieses Signal nur sehr selten und auch mit keiner Regelmäßigkeit. Das Bedeutet: der Empfänger zeigt mit verschiedenen LEDs an, ob er auf ein Rc5 Signal wartet, eins empfangen hat, das "richtige" Signal empfangen hat oder kein Signal empfangen hat. Mit dem Sender möchte ich später insgesamt mindestens 4 verschiedene Signale senden und mit dem Empfänger diese Signal eben auswerten/empfangen und etwas steuern.
Hier jetzt die Schaltpläne und Programme zum Sender/Empfänger:
IR-Sender:
IR-Empfänger:Code:Config Portd.0 = Output 'Konfiguration der Config Pinc.0 = Input 'Out- und Config Pinc.1 = Input 'der Inputports Config Pinc.2 = Input 'Dito Config Pinc.3 = Input 'Dito Portd.0 = 0 'PortD.0 Ausschalten Portc.0 = 1 'Pullups Einschalten Portc.1 = 1 'Dito Portc.2 = 1 'Dito Portc.3 = 1 'Dito Dim Togbit1 As Byte 'Dimensioniern der Dim Togbit2 As Byte 'Variablen Dim Command As Byte 'Dito Dim Address As Byte 'Dito Dim I As Long 'dito I = 0 'Setzen der Variblen Command = 16 'Dito Togbit1 = 0 'Dito Togbit2 = 32 'Dito Address = 17 'dito Main: 'Hauptprogramm Do If Pinc.0 = 0 Then Portd = 1 Waitms 50 For I = 1 To 10 'Sende den Code I-mal Rc5send Togbit1 , Address , Command 'Senden des Rc5send Togbit2 , Address , Command 'Rc5-Codes Waitus 100 Next I Portd = 0 Else Portd = 0 End If Loop End
Code:Config Rc5 = Pinb.1 'Rc5 konfigurieren Enable Interrupts 'Interrupts erlauben Config Portd = Output 'Konfiguration der Config Pinc.0 = Input 'Out- und Config Pinc.1 = Input 'der Inputports Config Pinc.2 = Input 'Dito Config Pinc.3 = Input 'Dito Config Pinc.4 = Input 'Dito Config Pinc.5 = Input 'Dito Portd = 0 'Ausschalten von 'PortD Dim Address As Byte 'Variablen Dim Command As Byte 'dimensionieren Dim I As Long 'Dito I = 0 'Variablen setzen Address = 0 'Dito Command = 0 'Dito Main: 'Hauptprogramm Do Portd = 1 For I = 1 To 100 Getrc5(address , Command) 'Auf Rc5 Signal warten Next I If Address < 255 Then Command = Command And &B10111111 'Lösche Toggle-Bit Portd = 2 Waitms 100 If Address = 17 And Command = 16 Then Portd = 4 Waitms 100 Else Portd = 2 Waitms 100 End If 'Waitms 10 Else Portd = 8 Waitms 100 End If Loop End
Vielen Dank schon jetzt für eure Hilfe!
LG
Jonas







Zitieren

Lesezeichen