SDK15 蓝牙5.0笔记10:(蓝牙工程搭建篇) 蓝牙协议栈下按键的使用.pdf
文本预览下载声明
青风带你玩蓝牙nRF52832 V1.0 淘宝地址:/
青风带你玩蓝牙nRF52832 系列教程2
作者:青风2
作者: 青风3
出品论坛:3
淘宝店:3
QQ 技术群:3465183703
硬件平台:青云QY-nRF52832 开发板3
2 蓝牙协议栈下按键的使用3
1:按键下控制触发LED 灯3
1.1协议栈下按键初始化调用函数:3
1.2 应用与调试8
2:按键下的长按和短按8
Copyright©2016-2022 青风电子社区 ALLrightsreserved 1
青风带你玩蓝牙nRF52832 V1.0 淘宝地址:/
青风带你玩蓝牙nRF52832 系列教程
作者:青风
出品论坛: 青风电子社区
Copyright©2016-2022 青风电子社区 ALLrightsreserved 2
青风带你玩蓝牙nRF52832 V1.0 淘宝地址:/
作者: 青风
出品论坛:
淘宝店:
QQ技术群:346518370
硬件平台:青云QY-nRF52832 开发板
2 蓝牙协议栈下按键的使用
本节我们讲主要探讨一下蓝牙协议栈下按键模块的使用,在第一讲样例提到过按键
初始化这个部分,这里面我详细的分析一下按键模块的注册和按键事件发生后会如何回
调自己注册的回调。
同时这里我们通过一个简单的例子:蓝牙蓝牙样例,来进行一个简单的思路验
证如何使用按键。注意本例在蓝牙样例的基础上进行修改。
1:按键下控制触发LED灯
1.1协议栈下按键初始化调用函数:
按键和LED 的初始化函数如下所示,协议栈下实现了一个BSP(板级支持包)的,
主要是整合了按键模块的功能和一些“板级指令”以及与ble事件的交互。而实现这个
功能的主要就是下面红色标注的两个函数bsp_init和bsp_btn_ble_init:
static void buttons_leds_init(bool * p_erase_bonds)
{
bsp_event_t startup_event;
uint32_t err_code bsp_init(BSP_INIT_LED |BSP_INIT_BUTTONS,
APP_TIMER_TICKS(1000,APP_TIMER_PRESCALER),
bsp_event_handler);//初始化外部设备
APP_ERROR_CHECK(err_code);
err_code bsp_btn_ble_init(NULL, startup_event);//初始化按键触
Copyright©2016-2022 青风电子社区 ALLrightsreserved 3
青风带你玩蓝牙nRF52832 V1.0 淘宝地址:/
发模式
APP_ERROR_CHECK(err_code);
*p_erase_bonds (startup_event BSP_EVENT_CLEAR_BONDING_DATA);
}
bsp_init函数就为按键和LED外设的初始化,同时触发对应的板级任务。函数可以直
接查找对应函数解释:
uint32_t bsp_init ( uint32_t
显示全部