Sample API functions for using push-buttons.
|
void
|
halInternalInitButton
(void)
|
|
Initializes the buttons. This function is automatically called by
halInit()
.
|
|
uint8_t
|
halButtonState
(uint8_t button)
|
|
Returns the current state (pressed or released) of a button.
|
|
uint8_t
|
halButtonPinState
(uint8_t button)
|
|
Returns the current state (pressed or released) of the pin associated with a button.
|
|
void
|
halButtonIsr
(uint8_t button, uint8_t state)
|
|
A callback called in interrupt context whenever a button changes its state.
|
|
A set of numerical definitions for use with the button APIs indicating the state of a button.
|
#define
|
BUTTON_PRESSED
1
|
|
Button state is pressed.
|
|
#define
|
BUTTON_RELEASED
0
|
|
Button state is released.
|
See
button.h
for source code.
#define BUTTON_RELEASED 0
|
void halButtonIsr
|
(
|
uint8_t
|
button,
|
|
|
uint8_t
|
state
|
|
)
|
|
|
Must be implemented by the application. This function should contain the functionality to be executed in response to changes of state in each of the buttons, or callbacks to the appropriate functionality.
-
Parameters
-
button
|
The button which has changed state, either BUTTON0 or BUTTON1 as defined in the appropriate BOARD_HEADER.
|
state
|
The new state of the button referenced by the button parameter, either
BUTTON_PRESSED
if the button has been pressed or
BUTTON_RELEASED
if the button has been released.
|
uint8_t halButtonPinState
|
(
|
uint8_t
|
button
|
)
|
|
This reads the actual state of the pin and can be used on startup to determine the initial position of the buttons.
-
Parameters
-
button
|
The button being queried, either BUTTON0 or BUTTON1 as defined in the appropriate BOARD_HEADER.
|
-
Returns
-
BUTTON_PRESSED
if the button is pressed or
BUTTON_RELEASED
if the button is not pressed.
uint8_t halButtonState
|
(
|
uint8_t
|
button
|
)
|
|
-
Note
-
This function is correlated with
halButtonIsr()
and so returns the shadow state rather than reading the actual state of the pin.
-
Parameters
-
button
|
The button being queried, either BUTTON0 or BUTTON1 as defined in the appropriate BOARD_HEADER.
|
-
Returns
-
BUTTON_PRESSED
if the button is pressed or
BUTTON_RELEASED
if the button is not pressed.
void halInternalInitButton
|
(
|
void
|
|
)
|
|