Discuz! Board

标题: 关于蓝牙串口主机透传的问题 [打印本页]

作者: LYFMCU    时间: 2019-9-29 12:23
标题: 关于蓝牙串口主机透传的问题
本帖最后由 LYFMCU 于 2019-9-29 12:30 编辑

我根据官网例子进行修改,串口从机透传是私有服务 服务ID 是 0A  特征值分别是 0B 0C 用手机连接没有问题可以正常发送和接收数据
主机透传的程序  现在遇到问题就是连接上从机以后总是重启(有可能是断开) 通过调试发现程序执行到 on_characteristic_discovery_rsp 这个函数里的
LOG中箭头有指示。清风大哥给看看。提供个调试的思路。

作者: LYFMCU    时间: 2019-9-29 12:30
[图片]
作者: admin    时间: 2019-9-29 14:26
LYFMCU 发表于 2019-9-29 12:30
[图片]

主机串口的UUID改成一致,服务特性值也要改成一致
作者: LYFMCU    时间: 2019-9-29 16:49
admin 发表于 2019-9-29 14:26
主机串口的UUID改成一致,服务特性值也要改成一致

是一样的呀  这个是主机的
#define NUS_BASE_UUID                   {{0x9E, 0xCA, 0xDC, 0x24, 0x0E, 0xE5, 0xA9, 0xE0, 0x93, 0xF3, 0xA3, 0xB5, 0x00, 0x00, 0x40, 0x6E}} /**< Used vendor specific UUID. */

#define BLE_UUID_NUS_SERVICE            0x0001                      /**< The UUID of the Nordic UART Service. */
#define BLE_UUID_NUS_RX_CHARACTERISTIC  0x0002                      /**< The UUID of the RX Characteristic. */
#define BLE_UUID_NUS_TX_CHARACTERISTIC  0x0003                      /**< The UUID of the TX Characteristic. */

这个是从机的   //定义串口透传服务128位UUID基数
#define UARTS_BASE_UUID      {{0x40, 0xE3, 0x4A, 0x1D, 0xC2, 0x5F, 0xB0, 0x9C, 0xB7, 0x47, 0xE6, 0x43, 0x00, 0x00, 0x53, 0x86}}
//定义服务和特征的16位UUID
#define BLE_UUID_UARTS_SERVICE 0x000A              //串口透传服务16位UUID
#define BLE_UUID_UARTS_TX_CHARACTERISTIC 0x000B    //TX特征16位UUID           
#define BLE_UUID_UARTS_RX_CHARACTERISTIC 0x000C    //RX特征16位UUID


是一样的啊

作者: admin    时间: 2019-10-8 17:56
LYFMCU 发表于 2019-9-29 16:49
是一样的呀  这个是主机的
#define NUS_BASE_UUID                   {{0x9E, 0xCA, 0xDC, 0x24, 0x0E, ...

你这两个基础服务UUID怎么就是一样的????明明都不同
作者: LYFMCU    时间: 2019-10-23 16:34
admin 发表于 2019-10-8 17:56
你这两个基础服务UUID怎么就是一样的????明明都不同

嘿嘿是一样的,我发错了。找到原因了,16位的UUID我写错了,谢谢老大




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