fix pin change interrupts

This commit is contained in:
Erik Tylek Kettenburg 2014-12-23 00:53:09 -08:00
parent 9d7d91d80b
commit 9d3fff43c0

View File

@ -107,10 +107,14 @@ static const uint8_t A13 = NUM_DIGITAL_PINS+10;
#define digitalPinToPCICR(p) (&PCIFR) #define digitalPinToPCICR(p) (&PCICR)
#define digitalPinToPCICRbit(p) (((p) >= 6 && (p) <= 13) ? PCIE0 : PCIE1) #define digitalPinToPCICRbit(p) ( ((p) >= 5 && (p) <= 12) ? PCIE0 : PCIE1 )
#define digitalPinToPCMSK(p) (((p) >= 6 && (p) <= 13) ? (&PCMSK0) : (&PCMSK1)) #define digitalPinToPCMSK(p) ( ((p) >= 5 && (p) <= 12) ? (&PCMSK0) : (&PCMSK1) )
#define digitalPinToPCMSKbit(p) (((p) >= 6 && (p) <= 13) ? ((p) - 6) : (((p) >= 0 && (p) <= 3) ? (p) : ((p) + 2))) #define digitalPinToPCMSKbit(p) ( (((p) >= 0) && ((p) <= 2)) ? (p) : \
( (((p) >= 6) && ((p) <= 13)) ? ((p) - 6) : \
( ((p) == 3) ? 6 : \
( ((p) == 4) ? 3 : \
( 7) ) ) ) ) /* pin 5 */
#ifdef ARDUINO_MAIN #ifdef ARDUINO_MAIN