|
//串口透传服务BLE事件监视者的事件回调函数
void ble_uarts_on_ble_evt(ble_evt_t const * p_ble_evt, void * p_context)
{
//检查参数是否有效
if ((p_context == NULL) || (p_ble_evt == NULL))
{
return;
}
//定义一个串口透传结构体指针并指向串口透传结构体
ble_uarts_t * p_uarts = (ble_uarts_t *)p_context;
//判断事件类型
switch (p_ble_evt->header.evt_id)
{
case BLE_GAP_EVT_CONNECTED://连接建立事件
on_connect(p_uarts, p_ble_evt);
break;
case BLE_GATTS_EVT_WRITE://写事件
//处理写事件
on_write(p_uarts, p_ble_evt);
break;
case BLE_GATTS_EVT_HVN_TX_COMPLETE://TX就绪事件
//处理TX就绪事件
//NRF_LOG_INFO("count:%d\n",p_ble_evt->evt.gatts_evt.params.hvn_tx_complete.count);
on_hvx_tx_complete(p_uarts, p_ble_evt);
break;
default:
break;
}
}
|
|