Hi,
danke für das Auswerte Programm mit der Analyse der RC6 Codes. Ich werde dein Programm mal am Wochenende testen.
Einen Algorithmus für RC6 habe ich schon hier rumliegen. Der ist allerdings noch nicht an den Asuro angepaßt.
Nach dem Zusammenbau meines Asuro stellten sich Schwierigkeiten mit der Nutzung der RC5-Library-Unterstützung ein.
Die Routine zum Einlesen erkannte einfach keine IR-Kommandos - wie sich später herausstellen sollte, eine unglückliche
Verkettung von "leeren Akkus"und falschen Gerätecodes auf der Unsiversal-Fernbedienung. Um die genaue Ursache
zu finden wurde daraufhin ein Programm zur Aufzeichnung der IR-Signale geschrieben. Nach Fertigstellung des
Programms konnten die vorgenannten Probleme dann auch behoben werden.
Das Programm wurde nochmal etwas modifiziert, um jetzt auch RC6-Signale aufzuzeichnen.
Somit wäre hiermit m.E. eine gute Ausgangsbasis für eine RC6-Implementierung geschaffen.
Fragen an dieser Stelle:
- Hat jemand bereits einen Algorithmus für RC6 implementiert?
- Hätte jemand Interesse an einer RC6-Implementierung?
Nachfolgend noch einige Infos zum IR-Signalaufzeichnungsprogramm (finden sich aber alle auch im Programm).
Insgesamt werden 6144 Signale aufgezeichnet.
Wichtig ist zunächst das Eintragen der eigenen (zusätzlichen) Interrupt-Service-Routine (ISR) in "asuro.c":
SIGNAL (SIG_OVERFLOW2)
{
...
/* %8 = 222.2us; %4 = 111.1 us */
if (!(count36kHz % 4))
IsrRCTest();
}
Je nach Teiler kann man jetzt RC5- oder RC6-Signalcodes aufzeichnen:
- 222.2us [!(count36kHz % 8 ) für RC5]
- 111.1us [!(count36kHz % 4 ) für RC6]
Bei jedem Aufruf der ISR wird der Flankenwert gespeichert:
- Datenspeicher = 768 Byte
- Flankenwert = 0 oder 1
- Anzahl Aufrufe bzw. Flankenwerte = 768 * 8 = 6144 Bit
- 6144 * 222.2us = 1365196.8us = 1365.2ms = 1.36s
oder
- 6144 * 111.1us = 682598.4us = 682.6ms = 0.68s
Speicherung der Flankenwerte in fd[] (Beispiele):
- Der erste Flankenwert wird in Bit 7 von fd[0] gespeichert.
- Der zehnte Flankenwert wird in Bit 6 von fd[1] gespeichert.
Zu benutzen ist das Ganze dann wie folgt:
- Fernbedienung direkt ueber den IR-Empfaenger des Asuro halten
- z.B. Taste "7" dauerhaft druecken
- Asuro einschalten
- Ergebnis mit Terminalprogramm empfangen
Einen aufgezeichneten (und analysierten) RC6-Code findet sich im Kommentar des Programmes. Ebenso viele Informationen zum Aufbau von RC5 und RC6.
M.E. wäre dies eine gute Basis für eine algorithmischen RC6-Dekodier-Routine.
Hi,
danke für das Auswerte Programm mit der Analyse der RC6 Codes. Ich werde dein Programm mal am Wochenende testen.
Einen Algorithmus für RC6 habe ich schon hier rumliegen. Der ist allerdings noch nicht an den Asuro angepaßt.
Sorry das das Theam so alt is aber ich find das es sich fuer so ne kleine Frage nicht lohnt n neues aufzumachen .
Wie weit is das ganze schon? Hatt jemand einen "fertigen" RC6 code rumliegen oder soll ich ihn mir selber basteln (auch kein prob^^) ?
mfG
Lesezeichen