X-Git-Url: http://git.linex4red.de/pub/USBasp.git/blobdiff_plain/2c806f6ceee42db9094eb11f3f32524b98440726..3c1b28cf5ff16fede61f2abf37d5616f3e661036:/LUFA/Drivers/Board/XMEGA/A3BU_XPLAINED/Buttons.h diff --git a/LUFA/Drivers/Board/XMEGA/A3BU_XPLAINED/Buttons.h b/LUFA/Drivers/Board/XMEGA/A3BU_XPLAINED/Buttons.h index aa08354e2..8146ee36b 100644 --- a/LUFA/Drivers/Board/XMEGA/A3BU_XPLAINED/Buttons.h +++ b/LUFA/Drivers/Board/XMEGA/A3BU_XPLAINED/Buttons.h @@ -7,7 +7,7 @@ */ /* - Copyright 2011 Dean Camera (dean [at] fourwalledcubicle [dot] com) + Copyright 2012 Dean Camera (dean [at] fourwalledcubicle [dot] com) Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted @@ -42,6 +42,13 @@ * * Board specific Buttons driver header for the Atmel XMEGA A3BU Xplained. * + * + * + * + * + * + *
NameInfoActive LevelPort Pin
BUTTONS_BUTTON1SW0 ButtonLowPORTE.5
BUTTONS_BUTTON2SW1 ButtonLowPORTF.1
BUTTONS_BUTTON3SW2 ButtonLowPORTF.2
+ * * @{ */ @@ -76,28 +83,28 @@ #if !defined(__DOXYGEN__) static inline void Buttons_Init(void) { - PORTE_OUTCLR = BUTTONS_BUTTON1; - PORTF_OUTCLR = (BUTTONS_BUTTON2 | BUTTONS_BUTTON3); + PORTE.OUTCLR = BUTTONS_BUTTON1; + PORTE.PIN5CTRL = (PORT_OPC_PULLUP_gc | PORT_INVEN_bm); - PORTE_PIN5CTRL = PORT_OPC_PULLUP_gc; - PORTF_PIN1CTRL = PORT_OPC_PULLUP_gc; - PORTF_PIN2CTRL = PORT_OPC_PULLUP_gc; + PORTF.OUTCLR = (BUTTONS_BUTTON2 | BUTTONS_BUTTON3); + PORTF.PIN1CTRL = (PORT_OPC_PULLUP_gc | PORT_INVEN_bm); + PORTF.PIN2CTRL = (PORT_OPC_PULLUP_gc | PORT_INVEN_bm); } static inline void Buttons_Disable(void) { - PORTE_OUTCLR = BUTTONS_BUTTON1; - PORTF_OUTCLR = (BUTTONS_BUTTON2 | BUTTONS_BUTTON3); - - PORTE_PIN5CTRL = 0; - PORTF_PIN1CTRL = 0; - PORTF_PIN2CTRL = 0; + PORTE.OUTCLR = BUTTONS_BUTTON1; + PORTE.PIN5CTRL = 0; + + PORTF.OUTCLR = (BUTTONS_BUTTON2 | BUTTONS_BUTTON3); + PORTF.PIN1CTRL = 0; + PORTF.PIN2CTRL = 0; } static inline uint8_t Buttons_GetStatus(void) ATTR_WARN_UNUSED_RESULT; static inline uint8_t Buttons_GetStatus(void) { - return ((~PORTE_IN & BUTTONS_BUTTON1) | (~PORTF_IN & (BUTTONS_BUTTON2 | BUTTONS_BUTTON3))); + return ((PORTE_IN & BUTTONS_BUTTON1) | (PORTF_IN & (BUTTONS_BUTTON2 | BUTTONS_BUTTON3))); } #endif