Skip to content

Commit 13b3eb3

Browse files
committed
Fix warnings about volatile being discarded
1 parent e0197ca commit 13b3eb3

File tree

2 files changed

+4
-4
lines changed

2 files changed

+4
-4
lines changed

cores/arduino/WInterrupts.c

+2-2
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ void attachInterrupt(uint8_t pin, void (*userFunc)(void), PinStatus mode) {
7474

7575
/* Get pointer to correct pin control register */
7676
PORT_t *port = digitalPinToPortStruct(pin);
77-
uint8_t* pin_ctrl_reg = getPINnCTRLregister(port, bit_pos);
77+
volatile uint8_t* pin_ctrl_reg = getPINnCTRLregister(port, bit_pos);
7878

7979
/* Clear any previous setting */
8080
*pin_ctrl_reg &= ~(PORT_ISC_gm);
@@ -97,7 +97,7 @@ void detachInterrupt(uint8_t pin) {
9797

9898
/* Get pointer to correct pin control register */
9999
PORT_t *port = digitalPinToPortStruct(pin);
100-
uint8_t* pin_ctrl_reg = getPINnCTRLregister(port, bit_pos);
100+
volatile uint8_t* pin_ctrl_reg = getPINnCTRLregister(port, bit_pos);
101101

102102
/* Clear ISC setting */
103103
*pin_ctrl_reg &= ~(PORT_ISC_gm);

cores/arduino/wiring_digital.c

+2-2
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ void pinMode(uint8_t pin, PinMode mode)
4848

4949
uint8_t bit_pos = digitalPinToBitPosition(pin);
5050
/* Calculate where pin control register is */
51-
uint8_t* pin_ctrl_reg = getPINnCTRLregister(port, bit_pos);
51+
volatile uint8_t* pin_ctrl_reg = getPINnCTRLregister(port, bit_pos);
5252

5353
/* Save state */
5454
uint8_t status = SREG;
@@ -170,7 +170,7 @@ void digitalWrite(uint8_t pin, PinStatus val)
170170
uint8_t bit_pos = digitalPinToBitPosition(pin);
171171

172172
/* Calculate where pin control register is */
173-
uint8_t* pin_ctrl_reg = getPINnCTRLregister(port, bit_pos);
173+
volatile uint8_t* pin_ctrl_reg = getPINnCTRLregister(port, bit_pos);
174174

175175
/* Save system status and disable interrupts */
176176
uint8_t status = SREG;

0 commit comments

Comments
 (0)