BLE使能以及BT名称修改在bt_config.h
//蓝牙名称注意事项:
//1.蓝牙名称支持中文,需要使用URL编码
//2.BLE的名称修改在ble广播数据中体现(ble_app_func.c)
//3.SDK蓝牙名称上电后从flash中读取,如需使用固定的名称,请移步到bt_app_func.c中LoadBtConfigurationParams函数内修改获取方式
BLE应用层相关API查看ble_api.h
增加notify改写 BLE
/*Ble_Notify(uint8_t *TxBuf,uint16_t Len)
* 通知数据到手机
* TxBuf为缓冲区地址
* Len为长度
* by steve 20211222
*/
int16_t Ble_Notify(uint8_t *TxBuf,uint16_t Len)
{
if(att_server_notify((uint16_t)ATT_CHARACTERISTIC_AB02_01_VALUE_HANDLE,(uint8_t*)TxBuf,(uint16_t)Len) == 0)
{
APP_DBG("OK1\n");
//return Len;
}
if(GattServerNotify((uint16_t)ATT_CHARACTERISTIC_AB03_01_VALUE_HANDLE,(uint8_t*)TxBuf,(uint16_t)Len) == 0)
{
//return Len;
APP_DBG("OK2\n");
}
APP_DBG("Fail\n");
return 0;
}
凡是BT通讯,当在回调函数中收到数据后,不要在这里面处理应答,做好标记,加到BT主任务或栈任务中去处理,即不能在Write中立刻就notify,而要以标志位的形式记录好,到蓝牙任务中回发notify即可。
蓝牙名称问题:
BT以及BLE均可以在此处修改成固定的。重新定义了BLE_NAME且屏蔽了从flash获取BLE名称