hi ihr
ich würde gerne mit dem mikrocontroller so eine art
universal-fernbedienung bauen, aber erstmal wäre ich schon mal froh wenn
ich die signale von meinem eigenen fernseher verstehen könnte. das ist
nämlich ein modell von der firma SAMSUNG und wie mir scheint verwenden
die kein RC5 protokoll. hab auch schon fleißig gesucht, aber vielleicht
hat jemand von euch mehr glück gehabt ?
und apropos auf meinem mikrocontorller
(http://www.mikrocontroller.com-platine) funktioniert die 2. LED nicht,
einmal hab ich se so ganz dumpf leuchten gesehn, was macht man da ?
ausserdem verwende ich den avr-gcc unter linux und würde gern mein 8x2
lcd ansprechen. muss ich das selber umsetzen oder hat das von euch schon
jemand gemacht ?
ciao
Hi Josef,
elektor hatte Ende letzten Jahres eine Auflistung aller IR-Protokolle
(November/Dezember?)
Zur LED: Was ist denn mit den anderen LEDs? Hast Du mal die Spannung
über dieser LED gemessen? Vielleicht schaltest Du sie ja auch per
Software nur schnell an und wieder aus?
Gruss,
Holger
Hallo
Habe vor einigen Wochen was ähnliches gemacht.
3 verschiedene Geräte mit einen µC gesteuert.
Ich habe auch im Internet nach Standards gesucht nur anscheinend gibt es
die nicht wirklich.
Jeder Hersteller kocht da so seine eigene Suppe.
Schließlich habe ich dann auch entschlossen das Protokoll der
Fernbedienung mit einem Digitaloszi aufzunehmen und dann im µC
nachprogrammiert.
Und noch ein paar Protokollbeschreibungen und das Ding lief.
Ich hoffe der Anhang hilft dir etwas weiter.
(Elektor Artikel und NEC Protokollbeschreibung)
... viel spass
mmm, ein bisschen verständnisprobleme was das abtasten von nem signal
betrifft hab ich allerdings noch. also ich hab jetz erstmal versucht das
RC5-IR-Protokoll zu verstehen, weil ich dazu von
http://www.mikrocontroller.com ja den source zum dekodieren habe. - was
ich bei dem source allerdings nicht so ganz verstanden habe ist warum
die timer-frequenz auf 31250hz gestellt wird und was der satz
"entspricht 1,5 fache bit länge" bedeutet.
also jetz mal ganz langsam: RC5 ist manchester-codiert, und ein bit ist
genau 1778us lang. deswegen hätte ich halt folgendermassen gedacht:
abtastfreqzenz mit 1/1778us und des noch mal 256, sodass der
mikrocontroller beim überlauf des 8-bit counters den interrupt genau
auslöst. naja vielleicht kann mir da jemand einfach die rechnung sagen
wie man 31250hz kommt, den rest find ich dann schon raus
danke & tschüss
Ein einfacher Ansatz zum Probieren wäre, einfach das Signal immer nach
einem Viertel der Bit-Länge abzutasten und je nach dem ob HIGH oder LOW
anliegt, Daten einlesen. So hab ich das beim ersten Mal gemacht,
funktionierte auf Anhieb einwandfrei.
naja das Samsung IR signal liefert zuerst 4,5ms high und dann 4,5 ms
low, und ich triggere auf eine steigende flanke warte 1/2*0.56ms und
dann immer 0.56ms und diese werte schreib ich in den speicher und geb
sie später nach der messung aus.
es kommen auch 8 x '1' zum vorschein, bloss danach kommt nur eine 0 für
die 4,5ms low.... weiß ned so recht was ich davon halten soll! also ich
hab da keine erfahrung deswegen kann ich da so ziemlich alles falsch
gemacht haben.
mmm, mit "je nach dem ob HIGH oder low anliegt, daten einlesen"...
meintest du dass du halt so das eine signal von den andern (wie zum
beispiel so ner dummen lampe ...gr* ) unterscheidest
SIGNAL(SIG_INTERRUPT0){
unsigned char werte[64];
unsigned char temp, i,c;
semi_delay_1p125ms();
for(i=0;i<sizeof(werte);i++){
werte[i] = bit_is_set(PIND,2) ? '1' : '0';
delay_1p125ms();
}
led_mask(LEDMASK_ALL);
for(c=0;c<sizeof(werte)/16;c++){
lcd_clear();
for(i=0;i<16;i++) lcd_putchar(werte[c*16+i]);
delay_1s(10);
}
led_mask(LEDMASK_NONE);
}
im elektor beitrag wird auf das samsung protokoll garnicht so gross
eingegangen, aber es ist ein hinweis auf einen mikrocontroller der von
samsung fernsteuerungen verwendet wird, und in den datenblättern steht
das protokoll genauso erklärt !
Hallo FrankL
Ich würde nicht sagen das der Elektorartikel schlecht ist, sondern es
sind nicht alle Protokolle beschrieben.
Dieser Artikel wäre sonst ein ganzer Band geworden.
Leider macht sich hier jeder Hersteller seinen eigenen Standard.
Ich denke dieser Artikel ist wenigstens etwas. Nur mit dem Digitaloszi
in den Protokollen schnüffeln ist sehr mühsam.
Und oft sind verschiedene Protokolle ähnlich.
Hatte z.B.: so einen Fall mit einem Hirschmann Receiver er verwendet den
NEC-Code und hängt hinten dran noch ein Bit.
Also wars gut eine Beschreibung des NEC-Codes zu haben....
Anfrage an FrankL
Du sagtest ja das einige Protokolle falsch beschrieben sind.
Hast du Unterlagen wie sie richtig sind.
Wäre dir sehr dankbar wenn du mir die zukommen lässt.
Man findet sehr weinig Infomaterial im Netz darüber.
Vielleicht bist ja grad du eine Quelle wo man vieeeele IR-Protokolle
bekommt.
Hallo Meiserl
Ausprobieren mit der Fernbedienung mit der Du senden willst. Scope oder
Soundeditor (input auf 1V gegrenzen).
Wenn man dann seine Programm danach schreibt, ist es ein leichtes die
Funktionen und die Systemnummern mit Led's sichtbar zu machen. Wenn man
als IR Code Anfänger sich auf eine Fachzeitung verlässt und es praktisch
ganz anders aussieht, dann war es vielleicht eine kleine Hilfe.
Wer die Elektor über Jahre liest, kennt ja die Nachlese.
Ich habe gerade so meine Erfahrungen mit einer Sony IR Fernbedienung
gemacht. Die gesendeten Funktionen mit der Systemnummer sind teilweise
doppelt vergeben (Systemnummer CD und VTR gleich). Je nach angewähltem
System sind Tasten belegt/nicht belegt.
Bei einer Grundig IR Fernbedienung sind zwar eine Menge Tasten aber
einige werden nicht dekodiert.
Hi FrankL
komischerweise haben bei mir die SonyCodes für VTR und Fernseher genau
gestimmt.
Allerdings waren im Elektor nicht ALLE Tasten und Codes.
Aber wie gesagt besser als nichts.
Hab auch so ähnliche Erfahrungen wie du gemacht wie z.B.: gibts beim VTR
einen Recordknopf und beim Fernseher nicht :-)))))) wenn man nachdenkt
ist es ja logisch.
mmm, als ehrlichgesagt probier ich an dem samsung protokoll jetz schon 4
tage rum, aber ich glaub ehrlichgesagt nicht, dass es irgendwie an einer
falschen beschreibung von elektor liegt sonder vielmehr an meinem
unvermögen :-)
wenn jemand grad zeit und lust hat meinen code anzuschauen wär das
natürlich toll, ich kann jetz heute nimmer. ist bestimmt irgendeine
blöde kleinigkeit.
tschüss
den fehler hab ich nun gefunden. - ich hab mich wohl einfach zu schnell
von datenblatt des empfängers erschrecken lassen. - der empfänger gibt
das optische signal kurze zeit verzögert eben INVERS wieder raus. - zwar
ist das signal nicht 100% einwandfrei (- zuviele bits und nicht ganz
optimal) aber das start-bit stimmt und mit ein bisschen
mehrfachabtastung klappt des dann hoffentlich schon.
Also check http://www.ustr.net for Nec, Sony, JVC, Hitachi, RC5, and
other infrared remote control specifications and some hints to decode
them using any microcontroler...
Wagner.