-         

Ergebnis 1 bis 6 von 6

Thema: RC5 - Empfang funktioniert nicht

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    09.10.2004
    Beiträge
    54

    RC5 - Empfang funktioniert nicht

    Anzeige

    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:

    Code:
    $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
    Angeschlossen habe ich den TSOP direkt an PinD.2
    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

  2. #2
    Gast
    Pullup Widerstand drin oder den internen eingeschaltet ???

  3. #3
    Benutzer Stammmitglied
    Registriert seit
    09.10.2004
    Beiträge
    54
    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

  4. #4
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    29.01.2004
    Beiträge
    2.441
    Leider bekomme ich im Terminalprogramm vom Computer immer nur angezeigt, dass die Adresse "127" ist und das Komando "255".
    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.
    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

  5. #5
    Benutzer Stammmitglied
    Registriert seit
    09.10.2004
    Beiträge
    54
    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

  6. #6
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    20.06.2004
    Beiträge
    1.941
    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

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •