]> git.piffa.net Git - aerei/blob - esempi/base_th/base_th.ino
Clean Up
[aerei] / esempi / base_th / base_th.ino
1 /* Esempio
2
3    Esempio base:
4    2 LED / Strisce laterali che lampeggiano alternativamente
5    1 LED / Striscia sotto in FADE
6
7    Lettura del canale Throttle (3) con la funzione Pulsein
8 */
9
10 #include <common.h>
11
12 // LED disponibili
13 Lampeggiatore left = 12;
14 Lampeggiatore right = 11;
15 Pwm sotto = 9;
16
17 // Variabili
18 const byte thrPin = 3; // PIN collegato al CH3
19 byte thr ; // Valore a 8bit per il throttle
20 int thrIn ; // Valore rilevato del 3 Ch della RX 
21 const int thMin = 983; // In genere il valore minimo del TH resta costante,
22 // per calcolarlo si puo' usare la funzione di calibrazione nel setup
23
24
25 void setup() {
26     // I PINs vengono impostati dal constructor al momento
27     // della dichiarazione dell'ogetto.
28
29     right.Invert() ;  // Opzionale: inverte l'ordine del lampeggio da
30     // HI -> LOW --> LOW -> HI
31     // per avere 2 LED che lampeggiano alternativamente
32 }
33
34 void loop() {
35 // Lettura CH3
36     thrIn = pulseIn(thrPin, HIGH, 25000);
37     if (thrIn >= thMin && thrIn < 2000)  { // clean up
38         thr = map(thrIn, thMin, 2000, 0, 255); // mappato su 8bit per PWM
39     };
40
41 // Attivazione LEDs
42         left.Blink(100 + thr);
43         right.Blink(100 + thr);
44         sotto.lSet(thr);   // Luminosita' proporzionale al throttle
45     }