![]() |
MCUXpresso SDK API Reference Manual
Rev. 0
NXP Semiconductors
|
Data Structures | |
struct | button_gpio_config_t |
The button gpio config structure. More... | |
struct | button_config_t |
The button config structure. More... | |
Macros | |
#define | BUTTON_HANDLE_SIZE (16U + 24U) |
Definition of button handle size as HAL_GPIO_HANDLE_SIZE + button dedicated size. More... | |
#define | BUTTON_TIMER_INTERVAL (25U) |
Definition of button timer interval,unit is ms. More... | |
#define | BUTTON_SHORT_PRESS_THRESHOLD (200U) |
Definition of button short press threshold,unit is ms. More... | |
#define | BUTTON_LONG_PRESS_THRESHOLD (500U) |
Definition of button long press threshold,unit is ms. More... | |
#define | BUTTON_DOUBLE_CLICK_THRESHOLD (200U) |
Definition of button double click threshold,unit is ms. More... | |
#define | BUTTON_USE_COMMON_TASK (1U) |
Definition to determine whether use common task. More... | |
#define | BUTTON_TASK_PRIORITY (2U) |
Definition of button task priority. More... | |
#define | BUTTON_TASK_STACK_SIZE (1000U) |
Definition of button task stack size. More... | |
#define | BUTTON_EVENT_BUTTON (1U) |
Definition of button event. More... | |
Typedefs | |
typedef void * | button_handle_t |
The handle of button. | |
typedef button_status_t(* | button_callback_t )(void *buttonHandle, button_callback_message_t *message, void *callbackParam) |
The callback function of button. | |
Enumerations | |
enum | button_status_t { kStatus_BUTTON_Success = kStatus_Success, kStatus_BUTTON_Error = MAKE_STATUS(kStatusGroup_BUTTON, 1), kStatus_BUTTON_LackSource = MAKE_STATUS(kStatusGroup_BUTTON, 2) } |
The status type of button. More... | |
enum | button_event_t { kBUTTON_EventOneClick = 0x01U, kBUTTON_EventDoubleClick, kBUTTON_EventShortPress, kBUTTON_EventLongPress, kBUTTON_EventError } |
The event type of button. More... | |
Functions | |
button_status_t | BUTTON_Deinit (button_handle_t buttonHandle) |
Deinitializes a button instance. More... | |
button_status_t | BUTTON_WakeUpSetting (button_handle_t buttonHandle, uint8_t enable) |
Enables or disables the button wake-up feature. More... | |
button_status_t | BUTTON_EnterLowpower (button_handle_t buttonHandle) |
Prepares to enter low power consumption. More... | |
button_status_t | BUTTON_ExitLowpower (button_handle_t buttonHandle) |
Restores from low power consumption. More... | |
Initialization | |
button_status_t | BUTTON_Init (button_handle_t buttonHandle, button_config_t *buttonConfig) |
Initializes a button with the button handle and the user configuration structure. More... | |
Install callback | |
button_status_t | BUTTON_InstallCallback (button_handle_t buttonHandle, button_callback_t callback, void *callbackParam) |
Installs a callback and callback parameter. More... | |
struct button_callback_message_t |
struct button_gpio_config_t |
Data Fields | |
uint8_t | port |
GPIO Port. | |
uint8_t | pin |
GPIO Pin. | |
uint8_t | pinStateDefault |
GPIO Pin voltage when button is not pressed (0 - low level, 1 - high level) | |
struct button_config_t |
#define BUTTON_HANDLE_SIZE (16U + 24U) |
#define BUTTON_TIMER_INTERVAL (25U) |
#define BUTTON_SHORT_PRESS_THRESHOLD (200U) |
#define BUTTON_LONG_PRESS_THRESHOLD (500U) |
#define BUTTON_DOUBLE_CLICK_THRESHOLD (200U) |
#define BUTTON_USE_COMMON_TASK (1U) |
#define BUTTON_TASK_PRIORITY (2U) |
#define BUTTON_TASK_STACK_SIZE (1000U) |
#define BUTTON_EVENT_BUTTON (1U) |
enum button_status_t |
enum button_event_t |
Enumerator | |
---|---|
kBUTTON_EventOneClick |
One click with short time, the duration of key down and key up is less than BUTTON_SHORT_PRESS_THRESHOLD. |
kBUTTON_EventDoubleClick |
Double click with short time, the duration of key down and key up is less than BUTTON_SHORT_PRESS_THRESHOLD. And the duration of the two button actions does not exceed BUTTON_DOUBLE_CLICK_THRESHOLD. |
kBUTTON_EventShortPress |
Press with short time, the duration of key down and key up is no less than BUTTON_SHORT_PRESS_THRESHOLD and less than BUTTON_LONG_PRESS_THRESHOLD. |
kBUTTON_EventLongPress |
Press with long time, the duration of key down and key up is no less than BUTTON_LONG_PRESS_THRESHOLD. |
kBUTTON_EventError |
Error event if the button actions cannot be identified. |
button_status_t BUTTON_Init | ( | button_handle_t | buttonHandle, |
button_config_t * | buttonConfig | ||
) |
This function configures the button with user-defined settings. The user can configure the configuration structure. The parameter buttonHandle is a pointer to point to a memory space of size BUTTON_HANDLE_SIZE allocated by the caller.
Example below shows how to use this API to configure the button.
buttonHandle | Pointer to point to a memory space of size BUTTON_HANDLE_SIZE allocated by the caller. |
buttonConfig | Pointer to user-defined configuration structure. |
kStatus_BUTTON_Error | An error occurred. |
kStatus_BUTTON_Success | Button initialization succeed. |
button_status_t BUTTON_InstallCallback | ( | button_handle_t | buttonHandle, |
button_callback_t | callback, | ||
void * | callbackParam | ||
) |
This function is used to install the callback and callback parameter for button module. Once the button is pressed, the button driver will identify the behavior and notify the upper layer with the button event by the installed callback function. Currently, the Button supports the three types of event, click, double click and long press. Detail information refer to button_event_t.
buttonHandle | Button handle pointer. |
callback | The callback function. |
callbackParam | The parameter of the callback function. |
kStatus_BUTTON_Success | Successfully install the callback. |
button_status_t BUTTON_Deinit | ( | button_handle_t | buttonHandle | ) |
This function deinitializes the button instance.
buttonHandle | button handle pointer. |
kStatus_BUTTON_Success | button de-initialization succeed. |
button_status_t BUTTON_WakeUpSetting | ( | button_handle_t | buttonHandle, |
uint8_t | enable | ||
) |
This function enables or disables the button wake-up feature.
buttonHandle | button handle pointer. |
enable | enable or disable (0 - disable, 1 - enable). |
kStatus_BUTTON_Error | An error occurred. |
kStatus_BUTTON_Success | Set successfully. |
button_status_t BUTTON_EnterLowpower | ( | button_handle_t | buttonHandle | ) |
This function is used to prepare to enter low power consumption.
buttonHandle | button handle pointer. |
kStatus_BUTTON_Success | Successful operation. |
button_status_t BUTTON_ExitLowpower | ( | button_handle_t | buttonHandle | ) |
This function is used to restore from low power consumption.
buttonHandle | button handle pointer. |
kStatus_BUTTON_Success | Successful operation. |