Discuz! Board

标题: p_ias->evt_handler(p_ias, &evt)的函数处理。 [打印本页]

作者: flyaway_peak    时间: 2016-1-13 11:03
标题: p_ias->evt_handler(p_ias, &evt)的函数处理。
on_write 函数中处理GATT数据处理
static void on_write(ble_ias_t * p_ias, ble_evt_t * p_ble_evt)
{
    ble_gatts_evt_write_t * p_evt_write = &p_ble_evt->evt.gatts_evt.params.write;

    if ((p_evt_write->handle == p_ias->alert_level_handles.value_handle) && (p_evt_write->len == 1))
    {
        // Alert level written, call application event handler
        ble_ias_evt_t evt;

        evt.evt_type           = BLE_IAS_EVT_ALERT_LEVEL_UPDATED;
        evt.params.alert_level = p_evt_write->data[0];

        p_ias->evt_handler(p_ias, &evt);
    }
}

p_evt_write->data[0] 为接收到的数据
  p_ias->evt_handler(p_ias, &evt) 这个应该是处理函数了, 但找不到后续是如何处理接收到的数据了?

ble_ias_evt_handler_t     evt_handler;  
typedef void (*ble_ias_evt_handler_t) (ble_ias_t * p_ias, ble_ias_evt_t * p_evt);
evt-handler 没有转到什么处理函数中去啊?
斑竹能否指点下, 这个函数的处理过程。
谢谢。




作者: max    时间: 2016-1-14 11:34
这个你看看入参ble_ias_t * p_ias,它肯定已经初始化好了,它所指向的evt_handler这个变量被赋为什么,处理方法就是什么。




欢迎光临 Discuz! Board (http://qfv8.com/) Powered by Discuz! X3