static uint8_t discover_funcstruct bt_conn conn const struct bt_gatt_attr attr struct bt_gatt_discover_params params int err; if !attr printkDiscover completen; voidmemsetparams 0 siz
根据代码的逻辑,discover_params.start_handle的值取决于attr的类型。当attr的UUID为BT_UUID_HRS时,说明当前发现的属性是心率服务的属性,所以将discover_params.start_handle设置为attr->handle + 1,以便继续发现该服务下的特征。当attr的UUID为BT_UUID_HRS_MEASUREMENT时,说明当前发现的属性是心率测量特征的属性,所以将discover_params.start_handle设置为attr->handle + 2,以便继续发现该特征下的描述符。而其他情况下,subscribe_params用于订阅通知,所以没有必要再继续发现,返回BT_GATT_ITER_STOP表示停止发现。
原文地址: https://www.cveoy.top/t/topic/hFPU 著作权归作者所有。请勿转载和采集!