开发板默认的有4个button,实际使用中,有可能只设置一个button,button的行为定义为:短按休眠和唤醒,长按关机。对应的nRF5283 SDK中的 BSP_EVENT_SLEEP和BSP_EVENT_SYSOFF。
1. 修改BUTTONS_NUMBER及pin脚
#define BUTTONS_NUMBER 1
#define BUTTON_START 23
#define BUTTON_1 23
#define BUTTON_STOP 23
#define BUTTON_PULL NRF_GPIO_PIN_PULLUP
2. 应用中注释掉默认的bsp_btn_ble_init
默认的buttons_leds_init中注释掉bsp_btn_ble_init,该模块注册了过多的event事件,或者修改自己所需要的,比如按键断开链接等。
static void buttons_leds_init(bool * p_erase_bonds)
{
bsp_event_t startup_event;
uint32_t err_code = bsp_init(BSP_INIT_LEDS | BSP_INIT_BUTTONS, bsp_event_handler);
APP_ERROR_CHECK(err_code);
// err_code = bsp_btn_ble_init(NULL, &startup_event);
// APP_ERROR_CHECK(err_code);
*p_erase_bonds = (startup_event == BSP_EVENT_CLEAR_BONDING_DATA);
}