aboutsummaryrefslogtreecommitdiffstats
path: root/LUFA/Drivers/Board/XMEGA/C3_XPLAINED/LEDs.h
diff options
context:
space:
mode:
Diffstat (limited to 'LUFA/Drivers/Board/XMEGA/C3_XPLAINED/LEDs.h')
-rw-r--r--LUFA/Drivers/Board/XMEGA/C3_XPLAINED/LEDs.h17
1 files changed, 12 insertions, 5 deletions
diff --git a/LUFA/Drivers/Board/XMEGA/C3_XPLAINED/LEDs.h b/LUFA/Drivers/Board/XMEGA/C3_XPLAINED/LEDs.h
index d3488537d..348eedf15 100644
--- a/LUFA/Drivers/Board/XMEGA/C3_XPLAINED/LEDs.h
+++ b/LUFA/Drivers/Board/XMEGA/C3_XPLAINED/LEDs.h
@@ -140,14 +140,21 @@
static inline void LEDs_SetAllLEDs(const uint8_t LEDMask)
{
- PORTR_OUT = ((PORTR.OUT & ~LEDS_PORTR_LEDS) | (LEDMask & LEDS_PORTR_LEDS));
- PORTD_OUT = ((PORTD.OUT & ~LEDS_PORTD_LEDS) | (LEDMask & LEDS_PORTD_LEDS));
+ PORTR_OUTCLR = LEDS_PORTR_LEDS;
+ PORTD_OUTCLR = LEDS_PORTD_LEDS;
+
+ PORTR_OUTSET = (LEDMask & LEDS_PORTR_LEDS);
+ PORTD_OUTSET = (LEDMask & LEDS_PORTD_LEDS);
}
- static inline void LEDs_ChangeLEDs(const uint8_t LEDMask, const uint8_t ActiveMask)
+ static inline void LEDs_ChangeLEDs(const uint8_t LEDMask,
+ const uint8_t ActiveMask)
{
- PORTR_OUT = (PORTR.OUT & ~(LEDMask & LEDS_PORTR_LEDS)) | (Active & LEDS_PORTR_LEDS);
- PORTD_OUT = (PORTD.OUT & ~(LEDMask & LEDS_PORTD_LEDS)) | (Active & LEDS_PORTD_LEDS);
+ PORTR_OUTCLR = (LEDMask & LEDS_PORTR_LEDS);
+ PORTD_OUTCLR = (LEDMask & LEDS_PORTD_LEDS);
+
+ PORTR_OUTSET = (ActiveMask & LEDS_PORTR_LEDS);
+ PORTD_OUTSET = (ActiveMask & LEDS_PORTD_LEDS);
}
static inline void LEDs_ToggleLEDs(const uint8_t LEDMask)