CH582例程中Central连接BLE USB后,在central端如何发送数据让BLE USB透传给上位机

CH582例程中Central连接BLE USB后,在central端如何发送数据让BLE USB透传给上位机;

我用Central例程连接上BLE USB,在central的Central_ProcessEvent->START_READ_OR_WRITE_EVT发送数据给BLE USB,然而在BLE USB中进入了simpleProfileChangeCB;


现在我想在Central中发送数据给BLE USB进入ble_usb_ServiceEvt,USBSendData数据到上位机,请问怎么发?


谢谢!

解决这个问题有两个方法:

  1. 将我们主机枚举的服务中从机的接收接口加上usb发送的代码,

  2. 使用我们主机去枚举另一个服务。

第一种方法比较简单:

emobile_2022-09-23_09-43-55.png

第二种方法需要修改主机代码,最终实现wirte到从机的这个函数中:

emobile_2022-09-23_09-44-29.png




尝试了第一种方式,一个字节一个字节发没问题,但我central端改成发6个字节到simple peripheral后就超时断开连接了;

我在手机上通过下面的FFF2上报可以直接透传到上位机的串口的,应该属于第二种方式吧请问central端怎么实现实现wirte到从机

@TECH_Hy

284198362382001f135e758bd111834.jpg


方法一后面的问题就是peripheral修改write长度的问题,默认是一个字节,可以改长的。

方法二将主机连接后枚举从机服务中的uuid进行修改,找到write的handle就可以通信了。


请问下,方法2主机程序要怎么修改呢



通过枚举从机的服务查找到对应的handle值,然后进行读写。枚举的操作可以参考:

蓝牙BLE主机Central讲解三(服务枚举) - SweetTea_lllpc - 博客园 (cnblogs.com)


只有登录才能回复,可以选择微信账号登录