Hallo, ich möchte einen Mikrocontroller mit einer Fernbedienung steuern. Zum einen gibt es die Möglichkeit die IR Signal mit einem TSOP17xx an einem (Interrupt)Port Pin zu detektieren. Weiterhin gibt es aber auch Empfänger ICs, die mit der UART kommunizieren können. Mir gefällt die 2 Variante ganz gut. Kann jrmand sagen, welche ICs dafür verwendet werden können? MfG
Sowas habe ich noch nicht gesehen. Weisst du welches protokoll die Fernbedienung benutzt?
In einem Chip gibts sowas nicht. Das ist ein TSOP mit nachgeschaltetem MC, der dann über die UART oder USB den PC fernbedient. Peter
RC5 ist ein sehr weit verbreitetes Protokoll, hierzu gibts massig Infos bei Google - inkl. fertiger Programme. In der hiesigen Codesammlung sollte auch etwas zu finden sein.
Die ICs mit UART sind für IrDA gedacht. IrDA ist aber nicht so geeignet für Fernbedienungen, deswegen gibts nur sehr wenige Fernbedienungen, die dieses Protokoll benutzen. RC5 ist zwar ein sehr bekanntes Protokoll, aber es scheint nicht so wirklich verbreitet zu sein. Insbesondere wird es von den asiatischen Herstellern kaum verwendet. Markus
Genau die ICs für IrDA habe ich auch gefunden: http://www.microchip.com/ParamChartSearch/chart.aspx?branchID=11032&mid=11&lang=en&pageId=79 Mit denen kann ich also nix anfangen, bei normalen Fernbedienungen?!? Andere ICs, die z.B. RC5 vertsehen, gibt es nicht?
IrDA ist viel komplizierter und damit auch teurer als die üblichen FB-Protokolle. Insbesondere ist die Kommunikation bei IrDA immer zweiseitig, d.h. der Empfänger muss unbedingt auch senden können. ICs die z.B. RC5 umwandeln gibt es meines wissens nicht, weil das der Mikrocontroller ja auch einfach noch nebenher selber machen kann. Das braucht nicht viel Code. Früher gab es ICs, die die IR-Signale ausgewertet haben und direkt auf ihre I/O-Pins gegeben haben. Ich weiß aber nicht, ob es die noch gibt, denn sowas kann man mit einem Mikrocontroller flexibler und billiger machen.
Wenn du einen µC damit steuern willst, warum machst du das ganze dann nicht gleich auch mit einem µC oder sonst halt mit einem externen µC? In einer alten Ausgabe von Elrad gab es glaube ich einmal eine SChaltung mit standartbauteilen, wo ein RC5-Decoder realisiert wurde... aber ich glaube ein kleine µC kommt dir da billiger ;-)
Der letzte Absatz war vielleicht etwas undeutlich formuliert. Was ich meinte: Man drückt an der FB die Taste 1 und dann schaltet der Chip I/O-Pin 1 an. Mit der Taste 2 den Pin 2 usw.
bei http://www.sprut.de ist ne komplette Fernbedienung mit nem PIC beschrieben, inklusive diverser Hintergrundinformationen. bye Frank
Der Grund warum ich die Dekodierung des IR Signals über die UART machen wollte, ist die kritische Laufzeit meines Programms. Da die Signalzeiten von z.B. RC5 codierten Signalen relativ lang ist, vermute ich, dass der normale Programmablauf stocken könnte. Über die UART könnte das Signal gepuffert werden und nur bei Bedarf abgeholt werden.
quatsch, du benutzt interrupts, die müssen für RC5 nicht so super lang sein, du kannst den empfangsteil mit ein paar instruktionen im interrupt realisieren und dann wenn du in deinem programm mal ein bischen zeit hast kannst du die auswertung vor nehmen
Ich würde dir zu einem AT89C2051er raten. Der ist zwar ein 8051er aber er hat timerinterrupts, externen Interrupt und UART.. und kostet bei Reichelt sage und schreibe 95Cent. Dazu noch ein paar Widerstände, Kondensatoren und ein Quarz und du kommst vl auf 2Euro. Billiger wirds wohl nicht gehen. Falls du kein pasendens Programmiergerät hast, kannst du ihn ja jemanden schicken zum programmieren... oder du baust den BlowIt (oder wie der auch heissen mag) nach. mfg Schoasch
Naja, welcher uC ist im Prinzip mal egal. Auch mit einem AtTiny würde das wohl nur ein paar Cent teurer werden. @PICer: Wenn du mal in die Codesammlung schaust, findest du dort eine RC5-Implementierung für den ATMega, wo du siehst, dass ein einfacher Timerinterrupt ausreicht und keine langen Interruptroutinen notwendig sind, um das zu realisieren. Ich würde sagen, mit einem ATTiny mit internem RAM und den RC%-Routinen aus der Codesammlung hast du das in kürzester Zeit realisiert. Auf andere Controller zu portieren ist sicher auch keine Hexerei, aber einfach etwas zusätzliche Arbeit.
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.