@@ -247,7 +247,7 @@ writePort(port, value, bitmask): Write an 8 bit port.
247247#elif defined(ARDUINO_SAMD_MKR1000 )
248248#define TOTAL_ANALOG_PINS 7
249249#define TOTAL_PINS 22 // 8 digital + 3 spi + 2 i2c + 2 uart + 7 analog
250- #define IS_PIN_DIGITAL (p ) ((( p) >= 0 && (p) <= 21) && !IS_PIN_SERIAL(p) )
250+ #define IS_PIN_DIGITAL (p ) ((p) >= 0 && (p) <= 21)
251251#define IS_PIN_ANALOG (p ) ((p) >= 15 && (p) < 15 + TOTAL_ANALOG_PINS)
252252#define IS_PIN_PWM (p ) digitalPinHasPWM(p)
253253#define IS_PIN_SERVO (p ) (IS_PIN_DIGITAL(p) && (p) < MAX_SERVOS) // deprecated since v2.4
@@ -264,7 +264,7 @@ writePort(port, value, bitmask): Write an 8 bit port.
264264#elif defined(ARDUINO_SAMD_MKRZERO )
265265#define TOTAL_ANALOG_PINS 7
266266#define TOTAL_PINS 34 // 8 digital + 3 spi + 2 i2c + 2 uart + 7 analog + 3 usb + 1 aref + 5 sd + 1 bottom pad + 1 led + 1 battery adc
267- #define IS_PIN_DIGITAL (p ) (((( p) >= 0 && (p) <= 21) || (p) == 32) && !IS_PIN_SERIAL(p) )
267+ #define IS_PIN_DIGITAL (p ) (((p) >= 0 && (p) <= 21) || (p) == 32)
268268#define IS_PIN_ANALOG (p ) (((p) >= 15 && (p) < 15 + TOTAL_ANALOG_PINS) || (p) == 33)
269269#define IS_PIN_PWM (p ) digitalPinHasPWM(p)
270270#define IS_PIN_SERVO (p ) (IS_PIN_DIGITAL(p) && (p) < MAX_SERVOS) // deprecated since v2.4
@@ -276,6 +276,22 @@ writePort(port, value, bitmask): Write an 8 bit port.
276276#define PIN_TO_PWM (p ) PIN_TO_DIGITAL(p)
277277#define PIN_TO_SERVO (p ) (p) // deprecated since v2.4
278278
279+ // Arduino MKRFox1200
280+ #elif defined(ARDUINO_SAMD_MKRFox1200 )
281+ #define TOTAL_ANALOG_PINS 7
282+ #define TOTAL_PINS 33 // 8 digital + 3 spi + 2 i2c + 2 uart + 7 analog + 3 usb + 1 aref + 5 sd + 1 bottom pad + 1 battery adc
283+ #define IS_PIN_DIGITAL (p ) (((p) >= 0 && (p) <= 21))
284+ #define IS_PIN_ANALOG (p ) (((p) >= 15 && (p) < 15 + TOTAL_ANALOG_PINS) || (p) == 32)
285+ #define IS_PIN_PWM (p ) digitalPinHasPWM(p)
286+ #define IS_PIN_SERVO (p ) (IS_PIN_DIGITAL(p) && (p) < MAX_SERVOS) // deprecated since v2.4
287+ #define IS_PIN_I2C (p ) ((p) == 11 || (p) == 12) // SDA = 11, SCL = 12
288+ #define IS_PIN_SPI (p ) ((p) == SS || (p) == MOSI || (p) == MISO || (p) == SCK)
289+ #define IS_PIN_SERIAL (p ) ((p) == PIN_SERIAL1_RX || (p) == PIN_SERIAL1_TX) //defined in variant.h RX = 13, TX = 14
290+ #define PIN_TO_DIGITAL (p ) (p)
291+ #define PIN_TO_ANALOG (p ) ((p) - 15)
292+ #define PIN_TO_PWM (p ) PIN_TO_DIGITAL(p)
293+ #define PIN_TO_SERVO (p ) (p) // deprecated since v2.4
294+
279295
280296// Arduino Zero
281297// Note this will work with an Arduino Zero Pro, but not with an Arduino M0 Pro
0 commit comments