IRMP: Unterschied zwischen den Versionen
(Die Seite wurde neu angelegt: IRMP ist eine Portierung des [http://www.mikrocontroller.net/articles/IRMP Infrarot-Multiprotokoll-Decoders] nach Ethersex. == Anschluss == == Konfiguration == ...) |
(→Anschluss) |
||
Zeile 4: | Zeile 4: | ||
== Anschluss == | == Anschluss == | ||
+ | Der Empfang der IR-Signale erfolgt durch einen Empfänger vom Typ TSOP1736 (oder ähnlich). Dieser kann an einen beliebigen Pin angeschlossen werden. Die Abfrage des Pins und die Dekodierung des IR-Protokolls erfolgt in einer ISR, die einen 8-Bit-Timer des ATMEGAs belegt. | ||
+ | |||
+ | Beim Senden wird das Signal mit der Trägerfrequenz des jeweiligen IR-Protokolls über [[PWM]] mnoduliert. Dazu wird ein weiterer 8-Bit Timer ATMEGAs (OC0/OC2) belegt. | ||
+ | |||
+ | Beispiel für m32 aus: ''pinning/hardware/pollin_evalboard.m4'' | ||
+ | |||
+ | ifdef(`conf_IRMP', `dnl | ||
+ | pin(IRMP_RX, PD2) | ||
+ | #define IRMP_USE_TIMER0 | ||
+ | #define IRMP_RX_LOW_ACTIVE | ||
+ | #undef IRMP_RX_LED_LOW_ACTIVE | ||
+ | pin(IRMP_TX, PD7) dnl OC2 | ||
+ | ') | ||
+ | |||
+ | Bedeutung: | ||
+ | |||
+ | * IRMP_RX - Pin an dem der IR-Empfänger angeschlossen ist | ||
+ | * IRMP_USE_TIMER0 - benutzer Timer0 für den Empfang, Timer2 für das Senden (undef = umgekehrt) | ||
+ | * IRMP_RX_LOW_ACTIVE - der IR-Empfänger ist Low-Akriv (undef = High-aktiv) | ||
+ | * IRMP_RX_LED_LOW_ACTIVE - die Kontroll-LED des Empfängers ist gegen USS geschaltet (undef = gegen GND geschaltet) | ||
+ | * IRMP_TX - Pin an dem der IR-Sender angschlossen is (=Ausgang des Timer0 oder Timer2, vgl. IRMP_USE_TIMER0) | ||
== Konfiguration == | == Konfiguration == |
Version vom 16. Oktober 2010, 15:03 Uhr
IRMP ist eine Portierung des Infrarot-Multiprotokoll-Decoders nach Ethersex.
Inhaltsverzeichnis
Anschluss
Der Empfang der IR-Signale erfolgt durch einen Empfänger vom Typ TSOP1736 (oder ähnlich). Dieser kann an einen beliebigen Pin angeschlossen werden. Die Abfrage des Pins und die Dekodierung des IR-Protokolls erfolgt in einer ISR, die einen 8-Bit-Timer des ATMEGAs belegt.
Beim Senden wird das Signal mit der Trägerfrequenz des jeweiligen IR-Protokolls über PWM mnoduliert. Dazu wird ein weiterer 8-Bit Timer ATMEGAs (OC0/OC2) belegt.
Beispiel für m32 aus: pinning/hardware/pollin_evalboard.m4
ifdef(`conf_IRMP', `dnl pin(IRMP_RX, PD2) #define IRMP_USE_TIMER0 #define IRMP_RX_LOW_ACTIVE #undef IRMP_RX_LED_LOW_ACTIVE pin(IRMP_TX, PD7) dnl OC2 ')
Bedeutung:
- IRMP_RX - Pin an dem der IR-Empfänger angeschlossen ist
- IRMP_USE_TIMER0 - benutzer Timer0 für den Empfang, Timer2 für das Senden (undef = umgekehrt)
- IRMP_RX_LOW_ACTIVE - der IR-Empfänger ist Low-Akriv (undef = High-aktiv)
- IRMP_RX_LED_LOW_ACTIVE - die Kontroll-LED des Empfängers ist gegen USS geschaltet (undef = gegen GND geschaltet)
- IRMP_TX - Pin an dem der IR-Sender angschlossen is (=Ausgang des Timer0 oder Timer2, vgl. IRMP_USE_TIMER0)