X-Git-Url: http://git.linex4red.de/pub/USBasp.git/blobdiff_plain/4d131de85b386b1ae948032e06831b0250e89070..d4684b29b9a3a4b45b6422d0f1cf6c79639c84c8:/LUFA/Drivers/Board/XMEGA/A3BU_XPLAINED/LEDs.h diff --git a/LUFA/Drivers/Board/XMEGA/A3BU_XPLAINED/LEDs.h b/LUFA/Drivers/Board/XMEGA/A3BU_XPLAINED/LEDs.h index fdc2a4141..b47199bbb 100644 --- a/LUFA/Drivers/Board/XMEGA/A3BU_XPLAINED/LEDs.h +++ b/LUFA/Drivers/Board/XMEGA/A3BU_XPLAINED/LEDs.h @@ -42,6 +42,12 @@ * * Board specific LED driver header for the Atmel XMEGA A3BU Xplained. * + * + * + * + * + *
NameColorInfoActive LevelPort Pin
LEDS_LED1YellowLED0 LEDLowPORTR.0
LEDS_LED2YellowLED1 LEDLowPORTR.1
+ * * @{ */ @@ -79,24 +85,30 @@ #if !defined(__DOXYGEN__) static inline void LEDs_Init(void) { - PORTR_DIRSET = LEDS_ALL_LEDS; - PORTR_OUTSET = LEDS_ALL_LEDS; + PORTR.DIRSET = LEDS_ALL_LEDS; + PORTR.OUTCLR = LEDS_ALL_LEDS; + + PORTCFG.MPCMASK = LEDS_ALL_LEDS; + PORTR.PIN0CTRL = PORT_INVEN_bm; } static inline void LEDs_Disable(void) { - PORTR_DIRCLR = LEDS_ALL_LEDS; - PORTR_OUTCLR = LEDS_ALL_LEDS; + PORTR.DIRCLR = LEDS_ALL_LEDS; + PORTR.OUTCLR = LEDS_ALL_LEDS; + + PORTCFG.MPCMASK = 0; + PORTR.PIN0CTRL = LEDS_ALL_LEDS; } static inline void LEDs_TurnOnLEDs(const uint8_t LEDMask) { - PORTR_OUTCLR = LEDMask; + PORTR_OUTSET = LEDMask; } static inline void LEDs_TurnOffLEDs(const uint8_t LEDMask) { - PORTR_OUTSET = LEDMask; + PORTR_OUTCLR = LEDMask; } static inline void LEDs_SetAllLEDs(const uint8_t LEDMask) @@ -117,7 +129,7 @@ static inline uint8_t LEDs_GetLEDs(void) ATTR_WARN_UNUSED_RESULT; static inline uint8_t LEDs_GetLEDs(void) { - return (~PORTR_OUT & LEDS_ALL_LEDS); + return (PORTR_OUT & LEDS_ALL_LEDS); } #endif