Skip to content

Commit 6e7e917

Browse files
Bekken, Kristian_saxrudWalberg, Irun
authored andcommitted
Added define NUMBER_OF_PORTS 6 and used this for sanity check in portToPortStruct()
1 parent d4981d8 commit 6e7e917

File tree

1 file changed

+2
-1
lines changed

1 file changed

+2
-1
lines changed

cores/arduino/Arduino.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,7 @@ extern const uint8_t PROGMEM digital_pin_to_interrupt[];
9292
#define analogPinToBitMask(pin) ( (pin < NUM_ANALOG_INPUTS) ? (1 << analogPinToBitPosition(pin)) : NOT_A_PIN )
9393
#define digitalPinToTimer(pin) ( (pin < NUM_TOTAL_PINS) ? pgm_read_byte(digital_pin_to_timer + pin) : NOT_ON_TIMER )
9494

95-
#define portToPortStruct(port) ( (port < NOT_A_PORT) ? ((PORT_t *)&PORTA + port) : NULL)
95+
#define portToPortStruct(port) ( (port < NUMBER_OF_PORTS) ? ((PORT_t *)&PORTA + port) : NULL)
9696
#define digitalPinToPortStruct(pin) ( (pin < NUM_TOTAL_PINS) ? ((PORT_t *)&PORTA + digitalPinToPort(pin)) : NULL)
9797
#define getPINnCTRLregister(port, bit_pos) ( ((port != NULL) && (bit_pos < NOT_A_PIN)) ? ((uint8_t *)&(port->PIN0CTRL) + bit_pos) : NULL )
9898

@@ -109,6 +109,7 @@ extern const uint8_t PROGMEM digital_pin_to_interrupt[];
109109
#define PD 3
110110
#define PE 4
111111
#define PF 5
112+
#define NUMBER_OF_PORTS 6
112113

113114
#define NOT_ON_TIMER 0
114115
#define TIMERA0 1

0 commit comments

Comments
 (0)