2 /* Lettura di un canale servo della RX
4 Lettura tramite i pin change interrupts
5 Utilizzabile su tutti i PINS
7 - http://playground.arduino.cc/Main/PinChangeInterrupt
14 // Variabili per interrupt 0
15 unsigned int chValue = 1500; // Valore computato
16 unsigned int chStart = 1500; // Inizio rilevamento
18 // Variabili per autocalibrazione
19 const byte chPin = 2; // PIN per la calibrazione
23 pinMode(13,OUTPUT); // LED
24 // Funzione relativa a calibrazione con pulsein:
25 mid_point = calibraTrim(chPin) ; // Calibrazione del TRIM attivo sul canale
27 Serial.begin(9600); // Warning: interrupts e serial potrebbero dare problemi
31 Serial.print(chValue);
33 Serial.println(mid_point);
38 // Install Pin change interrupt for a pin, can be called multiple times
39 void pciSetup(byte pin)
41 *digitalPinToPCMSK(pin) |= bit (digitalPinToPCMSKbit(pin)); // enable pin
42 PCIFR |= bit (digitalPinToPCICRbit(pin)); // clear any outstanding interrupt
43 PCICR |= bit (digitalPinToPCICRbit(pin)); // enable interrupt for the group
46 ISR (PCINT0_vect) // handle pin change interrupt for D8 to D13 here
48 digitalWrite(13,digitalRead(8) and digitalRead(9));