Pullup Widerstand drin oder den internen eingeschaltet ???
Hallo,
ich bin gerade dabei meinen µC mit einem IR-Empfänger (TSOP1736) aufzurüsten. Leider bekomme ich im Terminalprogramm vom Computer immer nur angezeigt, dass die Adresse "127" ist und das Komando "255".
Hier mein Programmcode:
Angeschlossen habe ich den TSOP direkt an PinD.2Code:$regfile = "2313def.dat" $crystal = 3686400 $baud = 9600 $lib "mcsbyte.lbx" Config Rc5 = Pind.2 Enable Interrupts Dim Address As Byte , Command As Byte Do Getrc5(address , Command) Command = Command And &B01111111 Print "Adresse: " ; Address ; "Komando: " ; Command Loop End
Das einzige was mir aufgefallen ist, ist dass wenn ich eine Taste auf der Fernbedienung drücke die Schleife schneller abläuft. Das erkenne ich daran, dass auch die Zeilen im Terminalprogramm schneller aufgebaut werden.
Für Hilfe wäre ich sehr dankbar.
Grüße
Enrico
Pullup Widerstand drin oder den internen eingeschaltet ???
habe den internen jetzt eingeschalten:
$regfile = "2313def.dat"
$crystal = 3686400
$baud = 9600
$lib "mcsbyte.lbx"
Ddrd.2 = 0
Portd.2 = 1
Config Rc5 = Pind.2
Enable Interrupts
Dim Address As Byte , Command As Byte
Do
Getrc5(address , Command)
Command = Command And &B01111111
Print "Adresse: " ; Address ; "Komando: " ; Command
Loop
End
Leider genau das selbe Ergebnis.
Stimmt der Code denn überhaupt, oder liegt da schon ein Fehler?
Grüße und danke
Enrico
Dein Quelltext zeigt bei meinen Schaltungen auch immer dieselbe Adresse und dasselbe Kommando an, ohne dass ich überhaupt eine Taste auf der Fernbedienung drücke.Leider bekomme ich im Terminalprogramm vom Computer immer nur angezeigt, dass die Adresse "127" ist und das Komando "255".
Wenn ich eine Taste drücke, wird zwar die richtige Adresse und das richtige Kommando angezeigt, huscht aber so schnell über den Bildschirm, dass man es zwischen den anderen Werten kaum sieht.
Filter doch mal alle command=255 oder Adress = 127 raus.
Ich habe unten mal den Quelltext leicht abgeändert. So werden bei mir die korrekten Ausgaben angezeigt.
Die ersten 5 Zeilen musst du natürlich auf deine Konfiguration anpassen.
Code:$crystal = 10000000 $regfile = "M16def.dat" $baud = 19200 $lib "mcsbyte.lbx" Config Rc5 = Pina.0 Enable Interrupts Dim Address As Byte , Command As Byte Dim Zaehler As Byte Zaehler = 0 Print "Waiting for RC5..." Do Getrc5(address , Command) If Address < 255 Then Incr Zaehler Print Address ; " " ; Command ; " ---------- " ; Zaehler End If Loop End
Hallo,
danke für die Hilfe. Der Empfang funktioniert jetzt. Wobei ich mich eigentlich nicht vorstellen kann, dass ich die Zahlen im Terminalprogramm übersehen haben soll...naja hauptsache es geht.
Grüße und danke nochmal
Enrico
die "lbx" wird nicht gebraucht, ist luxus. der befehl wird nur von Bascom alleien ausgeführt. die pullups interessieren auch nicht, kannste auch rausnehmen.
mfg pebisoft
Lesezeichen