Bösenberg Aviation Modells

Empfängersignal auswerten

RC Empfängersignal auswerten

Für mein erstes Projekt, eine Beleuchtungsschaltung, musste ich das Empfängersignal eines Schaltkanals auslesen und so verwenden, dass ich mit dem Schalter an der Fernsteuerung den Schaltzustand der Beleuchtung ändern kann.

SKETCH:

/* Empängerkanal als Schalter

Dieser Sketch fragt ein Empfängersignal an einem Analogen Pin ab und schaltet bei Überschreitung eines definierten Wertes eine LED an, beziehungsweise bei unterschreitung des Wertes die LED wieder aus.
Ausserdem wird der Wert des Empfängersignals über die Serielle Schnittstelle ausgegeben.

Schaltung: - GND-->Kathode LED-->AnnodeLED-->220 Ohm Widerstand-->Pin 4
                  - Empfängersignal-->Pin 12
           
Erstellt von Lutz Bösenberg
am 17.10.2012
           
*/

int input = 12;                                          //Pin an welchem das Empfängersignal angeschlossen wird
int inputvalue = 0;                                    //Variable um den Wert des Empfängersignals zu speichern
int led = 4;                                               //Pin an welchem die zu schaltende LED angeschlossen wird



void setup()
{
  Serial.begin(9600);                              //beginnt die Serielle Kommunikation mit 9600 Bit/s
  pinMode(input, INPUT);                        //definiert den pin von "input" als Eingang
  pinMode(led, OUTPUT);                       //definiert den pin von "led" als Ausgang
}

void loop()
{
  inputvalue = pulseIn(input, HIGH);      //liest den pin "input" und speichert den wert in "inputvalue"
  Serial.println(inputvalue);                   //gibt den Wert von "inputvalue" über die Serielle Schnittstelle aus
  delay(1);                                            //Verzögerung bis zum nächsten Schritt

  if (inputvalue >= 1500)                       //Wenn der Wert von "inputvalue" größer/gleich 1500 ist...
  {
    digitalWrite (led, HIGH);                   //...dann schalte die LED an
  }
  else                                                   //Ansonsten...
  {
    digitalWrite (led, LOW);                  //...Schalte die LED aus.
  }
}