Hallo Winne,
was für eine Hardware?
Gruß Dirk
Hallo,
ich möchte die IRDemo.c mit einer Fernbedienung steuern.
Leider verwende ich eine andere Fernbedienung als der Autor damals verwendet hat. Wie kann ich das Programm anpassen, dass die Hex-Werte von meiner Fernbedienung im Hyperterminal angezeigt werden? Im Hyperterminal kommen nur Sonderzeichen an und der Code scheint länger als 4 Zeichen zu sein.
Gruß Winne
Hallo Winne,
was für eine Hardware?
Gruß Dirk
Was meinst Du mit Hardware? Wenn Du die Fernbedienung meinst ich habe verschiedene z.B. eine ONE FOR ALL URC-7530.
Hallo Winne,
Naja, dieses Forum-Brett (Roboterbausätze und Modelle) ist ja - wie der Name schon sagt - für viele Bausätze und Modelle (d.h. Hardware) da.Was meinst Du mit Hardware?
Ich weiß also nicht, ob du den Asuro, RP5 oder irgendwas anderes hast.
Da nützt mir dann auch der Typ der Fernbedienung wenig.
Gruß Dirk
OK, ich habe verstanden! Ich habe den Asuro Roboterbausatz.
Hallo winne,
ich glaube was du da vor hast, geht so nicht.
Die IR Schnittstelle und der IR Transceiver des ASURO fahren ein UART Protokoll (1Start-, 8Daten-, 1Stop-Bit).
Eine IR Fernbedienung normalerweise RC5 Protokoll (2Start-, 1Toggle-, 5Adress-, 6Command-Bits).
Hyperterminal versteht ebenfalls nur UART und kein RC5 Protokoll.
Arexx-Henk hat mal ein Programm geschrieben, womit man den ASURO mit einer Fernbedienung steuern kann:
https://www.roboternetz.de/phpBB2/ze...rag.php?t=5749
Ein weiterer Thread zu dem Thema ist hier:
https://www.roboternetz.de/phpBB2/ze...rag.php?t=9239
Zum Anzeigen von RC5 Daten unter Windows gibt es das Programm WinLIRC.
http://winlirc.sourceforge.net/
Ich weiß allerdings nicht, ob dieses Programm mit dem IR/RS232 Transceiver funktioniert.
Gruß m.a.r.v.i.n
Danke Leute,
Der Asuro gibt die Hex Werte an Hyperterminal aus und ich konnte den Code anpassen. Die IRDemo und Linienverfolgung funktionieren jetzt.
--> Nächste Projekt Hinderniss umfahren.
Wie hast Du das nun hin bekommen? (Ausgabe der Hexwerte vom Asuro)
Um den Wert auf den Hyperterminal zu übertragen braucht man Zeit!!!
Eine Lücke, wo nix empfangen wird. Die Switch-Anweisung bekommt einen default Möglichkeit.
Durch die For-Schleife wird einen Pause von 1 Sekunde gemacht.Code:switch (cmd) { //hier steht er andere quatsch default: wert = (int) cmd; itoa(wert,code,16); for(int xxx = 0; xxx < 1000; xxx++) Sleep(72); SerWrite(code,strlen(code)); SerWrite("\n\r",2); break; }
Auf der Fernbedienung mehrmal drücken, um den HEX Wert zu erkennen.
Ok, das wars auch schon
Hi Winne,
danke für den Tipp/Code. Habe es gerade mal getestet. Leider habe ich ständig unterschiedliche Werte, obwohl ich immer die gleiche Taste (auch mehrmals) drücke.
Einen Code habe ich gefunden, links rum fahren klappt. Aber der rest ist schwierig, wenn ich öfter andere Werte bekomme.
Wie kann das sein? Sind das Reflexionen?
Lesezeichen