![]() |
LUFA Library
120219
|
Digital joystick board hardware driver. More...
Modules | |
BUMBLEB | |
Board specific joystick driver header for the Fletchtronics BUMBLEB. | |
EVK527 | |
Board specific joystick driver header for the Atmel EVK527. | |
STK525 | |
Board specific joystick driver header for the Atmel STK525. | |
STK526 | |
Board specific joystick driver header for the Atmel STK526. | |
USBKEY | |
Board specific joystick driver header for the Atmel USBKEY. | |
EVK1100 | |
Board specific joystick driver header for the Atmel EVK1100. | |
EVK1101 | |
Board specific joystick driver header for the Atmel EVK1101. | |
Functions | |
static void | Joystick_Init (void) |
static void | Joystick_Disable (void) |
static uint_reg_t | Joystick_GetStatus (void) ATTR_WARN_UNUSED_RESULT |
The following files must be built with any user project that uses this module:
Hardware Joystick driver. This module provides an easy to use interface to control the hardware digital Joystick located on many boards.
If the BOARD
value is set to BOARD_USER
, this will include the /Board/Joystick
.h file in the user project directory. Otherwise, it will include the appropriate built in board driver header file.
For possible BOARD
makefile values, see Board Types.
The following snippet is an example of how this module may be used within a typical application.
// Initialize the board Joystick driver before first use Joystick_Init(); printf("Waiting for joystick movement...\r\n"); // Loop until a the joystick has been moved uint8_t JoystickMovement; while (!(JoystickMovement = Joystick_GetStatus())) {}; // Display which direction the joystick was moved in printf("Joystick moved:\r\n"); if (JoystickMovement & (JOY_UP | JOY_DOWN)) printf("%s ", (JoystickMovement & JOY_UP) ? "Up" : "Down"); if (JoystickMovement & (JOY_LEFT | JOY_RIGHT)) printf("%s ", (JoystickMovement & JOY_LEFT) ? "Left" : "Right"); if (JoystickMovement & JOY_PRESS) printf("Pressed");
static void Joystick_Disable | ( | void | ) | [inline, static] |
Disables the joystick driver, releasing the I/O pins back to their default high-impedence input mode.
static uint_reg_t Joystick_GetStatus | ( | void | ) | [inline, static] |
Returns the current status of the joystick, as a mask indicating the direction the joystick is currently facing in (multiple bits can be set).
static void Joystick_Init | ( | void | ) | [inline, static] |
Initializes the joystick driver so that the joystick position can be read. This sets the appropriate I/O pins to inputs with their pull-ups enabled.