Hallo, möchte mit einer herkömmlichen Funkfernbedienung einen Ausgang meines µC setzen. Hab dazu einen XD-RF-5V Empfänger. Die Codierung der Fernbedienung ist mir bereits bekannt. Nun wäre meine Frage wie ich am besten das Signal decodiere. Schon einmal Danke im voraus.
Jakob R. schrieb: > Die Codierung der Fernbedienung ist mir bereits bekannt. Und welche ist es? Offenbar kommen da einige Sync-Pulse und dann das Datenpaket. Anhand der Sync-Pulse wirde die Bitdauer ausgemessen. Letztlich läuft es darauf raus, dass du an den Flanken des Signals Zeitstempel nimmst und die dann auswertest.
Danke für die rasche Antwort Bin ziemlich neu beim Programmieren und da wär jetzt meine Frage wie ich die "Zeitstempel" programmiere? Mit Timer und Interrupt?
Timer laufen lassen, Capture bei Signalwechsel auf den Timer ansetzen und gleichzeitig einen Interrupt auslösen, der dann den Capturewert in eine Liste abspeichert (oder besser gleich das Delta seit dem letzten Capture...). Jakob R. schrieb: > meines µC Welchen? Kamn der DMA auf ein Capture-Ereignis?
Jakob R. schrieb: > Die Codierung der Fernbedienung ist mir bereits bekannt. Um welche Codierung handelt es sich denn?
Codierung ist etwas gut gesagt. Ich hab die kurzen Impulse, also die wie am Anfang als "1" angenommen und denn langen Impuls mit dem kurzen Impuls nach als "0". Welche Art von Codierung das ist weis ich nicht.
Jakob R. schrieb: > Welche Art von Codierung das ist weis ich nicht. Aha. Und um welche Fernbedienung handelt es sich?... gähn... Wie breit sind die Pulse jeweils in etwa in deinem Bild?
Jakob R. schrieb: > Nun wäre meine Frage wie ich am besten das Signal decodiere. Bevor du das Signal dekodierst, musst du erstmal ein Digitalsignal draus machen und den Anfang sicher identifizieren. Das Sync-Signal gibt dem Empfänger zunächst Gelegenheit, sich auf den Pegel des Empfangssignales einzuregeln. Vorher wird nur Rauschen rauskommen. Dann muss der Anfang der Daten bestimmt werden, also wahrscheinlich etwa bei Puls 20 die lange Pause. Wenn dann die folgenden Bits eingesammelt sind, kann es ans Dekodieren gehen.
Also, da ist vermutlich folgendes IC drin verbaut: SC5272s-l4 http://pdf1.alldatasheet.com/datasheet-pdf/view/98196/ETC/SC5272S-L4.html Es werden 4 verschiedene Signalmuster verwendet. "0", "1", "F" und "Sync" (siehe Anhang). Dein aufgenommenes Muster kann man demzufolge vermutlich als "000000000F0F" interpretieren. Mehr Infos hierzu: http://www.fhemwiki.de/wiki/Intertechno_Code_Berechnung#Original_Intertechno_System Nachtrag: Hab mich im Datenblatt des SC5272 vertan. Anbei nochmal das Timing für RF. Das andere war für IR. Die Muster sehen aber gleich aus. Und das Sync-Bit kommt tatsächlich immer am Ende der Übertragung.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.