ch579连接手机,无需手机发送MTU请求,能发送长包么? 如果能要怎么做呢?
发送长包,需要做如下处理:
建立连接后,手机端BLE调试助手右上角有一个修改MTU,参数修改为247即可。
那我不想手机发起MTU请求,和手机建立连接后直接可以发送长包,怎么处理呢
如果不想手机发起,那么就用从机发起,可以在我们从机例程中这么添加:
ok,可以了
ok,可以了
@TECH_Hy SIMPLEPROFILE_CHAR1_LEN~SIMPLEPROFILE_CHAR5_LEN都需要改成244吗?此时一次蓝牙最长可以发送的字节数就是244吗
@TECH_Hy还有GATT_InitClient是在哪里添加的,收到的ch57x_ble_uart工程中找不到GATT_InitClient上下文函数的调用
是的,交互mtu后将SIMPLEPROFILE_CHAR1_LEN~SIMPLEPROFILE_CHAR5修改改成244,那么一包最大就是244字节,GATT_InitClient一般都是在主机中调用,所以从机中是搜索不到的,是需要自己添加的,添加在从机外设初始化函数中,可看看下四楼截图位置。
找到后面的函数了,缺了2个任务,跟截图不一致,需要修改吗?
可以的,缺少任务是因为不同的例程,有着不同的流程,可以看看任务具体实现了什么功能,如从机peripheral中第一个任务,开启了一个定时任务,一秒从机给主机发送一条notify信息,而ble uart的逻辑是将串口收到的数据通过notify发送到主机,第三个任务是打印rssi的,有需要就开启就行了。
@TECH_Hy GATT_InitClient函数需要在哪里调用,ch57x_ble_uart例程没找到截图中的初始化函数
Peripheral_Init();就是,可以打开函数看看。