IRMP: Unterschied zwischen den Versionen

Aus Ethersex_Wiki
Wechseln zu: Navigation, Suche
(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, 16:03 Uhr

IRMP ist eine Portierung des Infrarot-Multiprotokoll-Decoders nach Ethersex.


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

ECMD

Control6