Topic

FAQ
Login Register
帮忙看一下这是语法错误吗?
zsp
Apr 28, 2023 11:15

/

A

/A

SDK 3.4.2.1   BLE single connection

b85m_module例子中的自定义,attribute里边的W回调函数


int module_onReceiveFile(void *para) {

rf_packet_att_write_t *p = (rf_packet_att_write_t*)para;

u8 len = p->l2capLen - 3;

u8 result = 0; if(len > 0) {

spp_event_t *pEvt = (spp_event_t *)p; pEvt->token = 0xFF;

pEvt->paramLen = p->l2capLen + 2; //l2cap_len + 2 byte (eventId)

pEvt->eventId = 0x07a0; //data received event

memcpy(pEvt->param, &p->opcode, len + 3);

spp_send_data(HCI_FLAG_EVENT_TLK_MODULE, pEvt);

blc_gatt_pushHandleValueNotify(BLS_CONN_HANDLE, UserTest_DATA_DP_H, (u8 *)&result, 1);

}

return 0;

}



问题:

spp_send_data(HCI_FLAG_EVENT_TLK_MODULE, pEvt);

blc_gatt_pushHandleValueNotify(BLS_CONN_HANDLE, UserTest_DATA_DP_H, (u8 *)&result, 1);

这两行代码都存在的时候,烧录程序后,其他设备就搜不到这个开发板的BLE,但是随便注释掉一行(注意是随便注释一行),再烧录,就又可以了


可能是什么原因?


1 replies
TL_Soyo Apr 28, 2023 13:33
0
/A

你好,

  可以尝试右键工程,清除之后重新编译试试,看起来没有问题,或者将发送放到后面的串口发送回调函数中。