PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : rc5send: command auch größer als 63?



Grillmeister Markus
04.04.2007, 15:25
Hallo,
ich habe hier eine TV-Fernbedienung, die beim drücken auf eine bestimmte Taste den RC5-Command "107" ausgibt (empfangen durch TSOP 1736). Jetzt möchte ich mit dem Befehl rc5send auch den command 107 senden können, was aber nicht geht. In der Bascom-Hilfe steht ja, dass die Command-Sequenz nur 6 Bits lang ist, also 0-63.
Schreibe ich "rc5send 0 , 0 , 107", so bekomme ich als Command 43 zurück, er fängt also nach 63 wieder bei 0 an, woraus dann 43 resultiert.
Meine Frage: Wie sendet die Fernbedienung Commands > 63 und wie kann ich das mit Bascom auch machen?

mfg Markus

linux_80
04.04.2007, 19:40
Hallo,

es würde da noch RC5SENDEXT geben.
In der Hilfe steht wie es gehen soll.

Grillmeister Markus
05.04.2007, 16:19
In der Hilfe finde ich nichts über RC5SENDEXT. Das einzige, was etwas damit zu tun haben könnte steht beim Befehl getrc5 mit drin:

For extended RC5 code, the extended bit is bit 6 of the command.
The toggle bit is stored in bit 7 of the command.

Das hilft mir aber nicht wirklich weiter :-s

Dirk
05.04.2007, 17:09
Hallo Grillmeister Markus,

im RC5-Code hat der Command nur 6 Bit, also Bereich 0..63.

... habe hier eine TV-Fernbedienung, die beim drücken auf eine bestimmte Taste den RC5-Command "107" ausgibt (empfangen durch TSOP 1736).
Wie hast du denn die 107 empfangen? Mit Getrc5? Code? Der reine Command kann das nicht gewesen sein.

Gruß Dirk

linux_80
05.04.2007, 19:38
Hallo,

Online gibts das hier:
http://avrhelp.mcselec.com/RC5SENDEXT.html
Ab wann das Bascom kann, weiss ich aber nicht.

Und im Wiki steht wie das mit dem 7. Bit von Command geht:
https://www.roboternetz.de/wissen/index.php/RC5-Code

Grillmeister Markus
05.04.2007, 20:45
@Dirk:
Die 107 hab ich mit diesem code empfangen, also quasi dem beispiel aus der Bascom-Hilfe:


$regfile = "2313def.dat"
$crystal = 3686400
$baud = 9600

Config Rc5 = Pind.6

Enable Interrupts

Dim Address As Byte , Command As Byte

Do
Getrc5(address , Command)
If Address < 255 Then
Command = Command And &B01111111
Print Address ; " " ; Command
End If
Loop

@linux_80
Danke, werd mich jetzt mal weiter in dieser Richtung umschaun.

Dirk
05.04.2007, 20:51
Hallo Grillmeister Markus,

Die 107 hab ich mit diesem code empfangen, also quasi dem beispiel aus der Bascom-Hilfe

Dieser Code hat bei mir noch nie Werte über 63 empfangen.

Gruß Dirk