Skip to content

Commit ecfea68

Browse files
Merge pull request firmata#370 from sandeepmistry/mkrfox1200
Add support for Arduino MKRFox1200
2 parents de495a8 + d4a9ba9 commit ecfea68

File tree

1 file changed

+18
-2
lines changed

1 file changed

+18
-2
lines changed

Boards.h

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -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

Comments
 (0)