// GPIOTE 驱动初始化:
err_code = nrf_drv_gpiote_init();
APP_ERROR_CHECK(err_code);
// 配置设置GPIOTE输出参数,从低电平到高电平
nrf_drv_gpiote_out_config_t out_config = GPIOTE_CONFIG_OUT_SIMPLE(0);
// GPIOTE输出初始化:
err_code = nrf_drv_gpiote_out_init(LED_1, &out_config);
APP_ERROR_CHECK(err_code);
//配置设置GPIOTE输入参数,从低电平到高电平
nrf_drv_gpiote_out_config_t in_config = GPIOTE_CONFIG_IN_SENSE_TOGGLE(true);
// GPIOTE输入初始化,设置触发中断
err_code = nrf_drv_gpiote_in_init(BUTTON_1, &in_config, in_pin_handler);
APP_ERROR_CHECK(err_code);
// 设置GPIOE输入事件使能
nrf_drv_gpiote_in_event_enable(BUTTON_1, true);
// 中断函数设计,发生中断后LED翻转
void in_pin_handler(nrf_drv_gpiote_pin_t pin, nrf_gpiote_polarity_t action)
{
nrf_drv_gpiote_out_toggle(LED_1);
}
nRF 外部中断(GPIOTE)
最新推荐文章于 2024-03-08 16:32:06 发布