diff options
Diffstat (limited to 'variants')
-rw-r--r-- | variants/ethernet/pins_arduino.h | 2 | ||||
-rw-r--r-- | variants/gemma/pins_arduino.h | 6 | ||||
-rw-r--r-- | variants/leonardo/pins_arduino.h | 16 |
3 files changed, 21 insertions, 3 deletions
diff --git a/variants/ethernet/pins_arduino.h b/variants/ethernet/pins_arduino.h index f6773a0..a11ecfc 100644 --- a/variants/ethernet/pins_arduino.h +++ b/variants/ethernet/pins_arduino.h @@ -58,6 +58,8 @@ 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 : NOT_AN_INTERRUPT)) + #ifdef ARDUINO_MAIN // On the Arduino board, digital pins are also used diff --git a/variants/gemma/pins_arduino.h b/variants/gemma/pins_arduino.h index 1d367a7..b6aed39 100644 --- a/variants/gemma/pins_arduino.h +++ b/variants/gemma/pins_arduino.h @@ -42,6 +42,10 @@ // GND 4| |5 PB0 (D 0) pwm0 // +----+ +#define NUM_DIGITAL_PINS 3 +#define NUM_ANALOG_INPUTS 1 +#define LED_BUILTIN 1 + static const uint8_t A0 = 6; static const uint8_t A1 = 7; static const uint8_t A2 = 8; @@ -52,6 +56,8 @@ static const uint8_t A3 = 9; #define digitalPinToPCMSK(p) ( ((p) <= 4) ? (&PCMSK) : ((uint8_t *)0) ) #define digitalPinToPCMSKbit(p) ( (p) ) +#define digitalPinToInterrupt(p) ((p) == 2 ? 0 : NOT_AN_INTERRUPT) + #define analogPinToChannel(p) ( (p) < 6 ? (p) : (p) - 6 ) #define TCCR1A GTCCR diff --git a/variants/leonardo/pins_arduino.h b/variants/leonardo/pins_arduino.h index 89b8806..6027223 100644 --- a/variants/leonardo/pins_arduino.h +++ b/variants/leonardo/pins_arduino.h @@ -88,7 +88,7 @@ #undef OCR2_6 #undef OCR2_7 -#define NUM_DIGITAL_PINS 30 +#define NUM_DIGITAL_PINS 31 #define NUM_ANALOG_INPUTS 12 #define TX_RX_LED_INIT DDRD |= (1<<5), DDRB |= (1<<0) @@ -100,6 +100,8 @@ static const uint8_t SDA = 2; static const uint8_t SCL = 3; #define LED_BUILTIN 13 +#define LED_BUILTIN_RX 17 +#define LED_BUILTIN_TX 30 // Map SPI port to 'new' pins D14..D17 static const uint8_t SS = 17; @@ -131,6 +133,8 @@ 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 digitalPinHasPWM(p) ((p) == 3 || (p) == 5 || (p) == 6 || (p) == 9 || (p) == 10 || (p) == 11 || (p) == 13) + #define digitalPinToInterrupt(p) ((p) == 0 ? 2 : ((p) == 1 ? 3 : ((p) == 2 ? 1 : ((p) == 3 ? 0 : ((p) == 7 ? 4 : NOT_AN_INTERRUPT))))) #ifdef ARDUINO_MAIN @@ -171,8 +175,8 @@ extern const uint8_t PROGMEM analog_pin_to_channel_PGM[]; // MOSI D16 PB2 MOSI,PCINT2 // SS D17 PB0 RXLED,SS/PCINT0 // -// TXLED PD5 -// RXLED PB0 +// TXLED D30 PD5 XCK1 +// RXLED D17 PB0 // HWB PE2 HWB // these arrays map port names (e.g. port B) to the @@ -243,6 +247,7 @@ const uint8_t PROGMEM digital_pin_to_port_PGM[] = { PB, // D27 / D9 - A9 - PB5 PB, // D28 / D10 - A10 - PB6 PD, // D29 / D12 - A11 - PD6 + PD, // D30 / TX Led - PD5 }; const uint8_t PROGMEM digital_pin_to_bit_mask_PGM[] = { @@ -280,6 +285,7 @@ const uint8_t PROGMEM digital_pin_to_bit_mask_PGM[] = { _BV(5), // D27 / D9 - A9 - PB5 _BV(6), // D28 / D10 - A10 - PB6 _BV(6), // D29 / D12 - A11 - PD6 + _BV(5), // D30 / TX Led - PD5 }; const uint8_t PROGMEM digital_pin_to_timer_PGM[] = { @@ -317,6 +323,7 @@ const uint8_t PROGMEM digital_pin_to_timer_PGM[] = { NOT_ON_TIMER, NOT_ON_TIMER, NOT_ON_TIMER, + NOT_ON_TIMER, }; const uint8_t PROGMEM analog_pin_to_channel_PGM[] = { @@ -356,4 +363,7 @@ const uint8_t PROGMEM analog_pin_to_channel_PGM[] = { #define SERIAL_PORT_HARDWARE Serial1 #define SERIAL_PORT_HARDWARE_OPEN Serial1 +// Alias SerialUSB to Serial +#define SerialUSB SERIAL_PORT_USBVIRTUAL + #endif /* Pins_Arduino_h */ |