From 8f1e3fd70325c99a295cce6f7fb9075d9ee499f6 Mon Sep 17 00:00:00 2001 From: Cristian Maglie Date: Tue, 1 Oct 2013 18:15:31 +0200 Subject: [PATCH] Using NOT_AN_INTERRUPT defined constant --- hardware/arduino/avr/cores/arduino/Arduino.h | 2 ++ hardware/arduino/avr/variants/leonardo/pins_arduino.h | 2 +- hardware/arduino/avr/variants/mega/pins_arduino.h | 2 +- hardware/arduino/avr/variants/robot_control/pins_arduino.h | 2 +- hardware/arduino/avr/variants/robot_motor/pins_arduino.h | 2 +- hardware/arduino/avr/variants/standard/pins_arduino.h | 2 +- hardware/arduino/sam/cores/arduino/Arduino.h | 2 ++ 7 files changed, 9 insertions(+), 5 deletions(-) diff --git a/hardware/arduino/avr/cores/arduino/Arduino.h b/hardware/arduino/avr/cores/arduino/Arduino.h index 5596c1498..de1886d5d 100644 --- a/hardware/arduino/avr/cores/arduino/Arduino.h +++ b/hardware/arduino/avr/cores/arduino/Arduino.h @@ -151,6 +151,8 @@ extern const uint8_t PROGMEM digital_pin_to_timer_PGM[]; #define NOT_A_PIN 0 #define NOT_A_PORT 0 +#define NOT_AN_INTERRUPT -1 + #ifdef ARDUINO_MAIN #define PA 1 #define PB 2 diff --git a/hardware/arduino/avr/variants/leonardo/pins_arduino.h b/hardware/arduino/avr/variants/leonardo/pins_arduino.h index a0e159431..85fb06ec9 100644 --- a/hardware/arduino/avr/variants/leonardo/pins_arduino.h +++ b/hardware/arduino/avr/variants/leonardo/pins_arduino.h @@ -132,7 +132,7 @@ static const uint8_t A11 = 29; // D12 extern const uint8_t PROGMEM analog_pin_to_channel_PGM[]; #define analogPinToChannel(P) ( pgm_read_byte( analog_pin_to_channel_PGM + (P) ) ) -#define digitalPinToInterrupt(p) ((p) == 0 ? 2 : ((p) == 1 ? 3 : ((p) == 2 ? 1 : ((p) == 3 ? 0 : ((p) == 7 ? 4 : -1))))) +#define digitalPinToInterrupt(p) ((p) == 0 ? 2 : ((p) == 1 ? 3 : ((p) == 2 ? 1 : ((p) == 3 ? 0 : ((p) == 7 ? 4 : NOT_AN_INTERRUPT))))) #ifdef ARDUINO_MAIN diff --git a/hardware/arduino/avr/variants/mega/pins_arduino.h b/hardware/arduino/avr/variants/mega/pins_arduino.h index 47151d4d0..f12188945 100644 --- a/hardware/arduino/avr/variants/mega/pins_arduino.h +++ b/hardware/arduino/avr/variants/mega/pins_arduino.h @@ -83,7 +83,7 @@ static const uint8_t A15 = 69; ( (((p) >= 62) && ((p) <= 69)) ? ((p) - 62) : \ 0 ) ) ) ) ) ) -#define digitalPinToInterrupt(p) ((p) == 2 ? 0 : ((p) == 3 ? 1 : ((p) >= 18 && (p) <= 21 ? 23 - (p) : -1))) +#define digitalPinToInterrupt(p) ((p) == 2 ? 0 : ((p) == 3 ? 1 : ((p) >= 18 && (p) <= 21 ? 23 - (p) : NOT_AN_INTERRUPT))) #ifdef ARDUINO_MAIN diff --git a/hardware/arduino/avr/variants/robot_control/pins_arduino.h b/hardware/arduino/avr/variants/robot_control/pins_arduino.h index f167896f8..979f3ebfc 100644 --- a/hardware/arduino/avr/variants/robot_control/pins_arduino.h +++ b/hardware/arduino/avr/variants/robot_control/pins_arduino.h @@ -94,7 +94,7 @@ static const uint8_t LED1 = 17; // D17 - RX_Led extern const uint8_t PROGMEM analog_pin_to_channel_PGM[]; #define analogPinToChannel(P) ( pgm_read_byte( analog_pin_to_channel_PGM + (P) ) ) -#define digitalPinToInterrupt(p) ((p) == 0 ? 2 : ((p) == 1 ? 3 : ((p) == 2 ? 1 : ((p) == 3 ? 0 : ((p) == 7 ? 4 : -1))))) +#define digitalPinToInterrupt(p) ((p) == 0 ? 2 : ((p) == 1 ? 3 : ((p) == 2 ? 1 : ((p) == 3 ? 0 : ((p) == 7 ? 4 : NOT_AN_INTERRUPT))))) #ifdef ARDUINO_MAIN diff --git a/hardware/arduino/avr/variants/robot_motor/pins_arduino.h b/hardware/arduino/avr/variants/robot_motor/pins_arduino.h index cde2f3fc0..8179ac305 100644 --- a/hardware/arduino/avr/variants/robot_motor/pins_arduino.h +++ b/hardware/arduino/avr/variants/robot_motor/pins_arduino.h @@ -89,7 +89,7 @@ static const uint8_t TK4 = 12; // A11 extern const uint8_t PROGMEM analog_pin_to_channel_PGM[]; #define analogPinToChannel(P) ( pgm_read_byte( analog_pin_to_channel_PGM + (P) ) ) -#define digitalPinToInterrupt(p) ((p) == 0 ? 2 : ((p) == 1 ? 3 : ((p) == 2 ? 1 : ((p) == 3 ? 0 : ((p) == 7 ? 4 : -1))))) +#define digitalPinToInterrupt(p) ((p) == 0 ? 2 : ((p) == 1 ? 3 : ((p) == 2 ? 1 : ((p) == 3 ? 0 : ((p) == 7 ? 4 : NOT_AN_INTERRUPT))))) #ifdef ARDUINO_MAIN diff --git a/hardware/arduino/avr/variants/standard/pins_arduino.h b/hardware/arduino/avr/variants/standard/pins_arduino.h index 7923b0394..e7cfb08fc 100644 --- a/hardware/arduino/avr/variants/standard/pins_arduino.h +++ b/hardware/arduino/avr/variants/standard/pins_arduino.h @@ -60,7 +60,7 @@ static const uint8_t A7 = 21; #define digitalPinToPCMSK(p) (((p) <= 7) ? (&PCMSK2) : (((p) <= 13) ? (&PCMSK0) : (((p) <= 21) ? (&PCMSK1) : ((uint8_t *)0)))) #define digitalPinToPCMSKbit(p) (((p) <= 7) ? (p) : (((p) <= 13) ? ((p) - 8) : ((p) - 14))) -#define digitalPinToInterrupt(p) ((p) == 2 ? 0 : ((p) == 3 ? 1 : -1)) +#define digitalPinToInterrupt(p) ((p) == 2 ? 0 : ((p) == 3 ? 1 : NOT_AN_INTERRUPT)) #ifdef ARDUINO_MAIN diff --git a/hardware/arduino/sam/cores/arduino/Arduino.h b/hardware/arduino/sam/cores/arduino/Arduino.h index 12685a600..defd4c4f4 100644 --- a/hardware/arduino/sam/cores/arduino/Arduino.h +++ b/hardware/arduino/sam/cores/arduino/Arduino.h @@ -65,6 +65,8 @@ extern void loop( void ) ; //#define NOT_A_PIN 0 // defined in pio.h/EPioType #define NOT_A_PORT 0 +#define NOT_AN_INTERRUPT -1 + typedef enum _EExt_Interrupts { EXTERNAL_INT_0=0,