@@ -141,6 +141,13 @@ writePort(port, value, bitmask): Write an 8 bit port.
141
141
#define digitalPinHasPWM (p ) IS_PIN_DIGITAL(p)
142
142
#endif
143
143
144
+ #undef IS_PIN_INTERRUPT
145
+ #if defined(digitalPinToInterrupt ) && defined(NOT_AN_INTERRUPT )
146
+ #define IS_PIN_INTERRUPT (p ) (digitalPinToInterrupt(p) > NOT_AN_INTERRUPT)
147
+ #else
148
+ #define IS_PIN_INTERRUPT (p ) (0)
149
+ #endif
150
+
144
151
// Arduino Duemilanove, Diecimila, and NG
145
152
#if defined(__AVR_ATmega168__ ) || defined(__AVR_ATmega328P__ ) || defined(__AVR_ATmega328__ )
146
153
#if defined(NUM_ANALOG_INPUTS ) && NUM_ANALOG_INPUTS == 6
@@ -447,6 +454,30 @@ writePort(port, value, bitmask): Write an 8 bit port.
447
454
#define PIN_TO_PWM (p ) PIN_TO_DIGITAL(p)
448
455
#define PIN_TO_SERVO (p ) (p) // deprecated since v2.4
449
456
457
+ // Arduino UNO R4 Minima and Wifi
458
+ // The pinout is the same as for the classical UNO R3
459
+ #elif defined(ARDUINO_UNOR4_MINIMA ) || defined(ARDUINO_UNOR4_WIFI )
460
+ #if defined(NUM_ANALOG_INPUTS ) && NUM_ANALOG_INPUTS == 6
461
+ #define TOTAL_ANALOG_PINS 6
462
+ #define TOTAL_PINS 20 // 14 digital + 6 analog
463
+ #else
464
+ #define TOTAL_ANALOG_PINS 8
465
+ #define TOTAL_PINS 22 // 14 digital + 8 analog
466
+ #endif
467
+ // These have conflicting(?) definitions in the core for this CPU
468
+ #undef IS_PIN_PWM
469
+ #undef IS_PIN_ANALOG
470
+ #define VERSION_BLINK_PIN 13
471
+ #define IS_PIN_DIGITAL (p ) ((p) >= 2 && (p) <= 19)
472
+ #define IS_PIN_ANALOG (p ) ((p) >= 14 && (p) < 14 + TOTAL_ANALOG_PINS)
473
+ #define IS_PIN_PWM (p ) digitalPinHasPWM(p)
474
+ #define IS_PIN_SERVO (p ) (IS_PIN_DIGITAL(p) && (p) - 2 < MAX_SERVOS)
475
+ #define IS_PIN_I2C (p ) ((p) == 18 || (p) == 19)
476
+ #define IS_PIN_SPI (p ) ((p) == SS || (p) == MOSI || (p) == MISO || (p) == SCK)
477
+ #define PIN_TO_DIGITAL (p ) (p)
478
+ #define PIN_TO_ANALOG (p ) ((p) - 14)
479
+ #define PIN_TO_PWM (p ) PIN_TO_DIGITAL(p)
480
+ #define PIN_TO_SERVO (p ) ((p) - 2)
450
481
451
482
// Teensy 1.0
452
483
#elif defined(__AVR_AT90USB162__ )
0 commit comments