在BLE协议栈站,关于数据传输可以范围下面两个方面,一是主机(Central)向从机(Peripheral)发送数据,二是从机(Peripheral)向主机(Central)发送数据。
1、主机(Central)向从机(Peripheral)发送数据
发送调用的是GATT_WriteCharValue 函数实现,该函数具体实现的是 打开发射机、调整发送功率等,最后将数据通过天线发射出去,其具体实现是通过协议栈来完成的。我们需要操作的是把需要发送的数据填充到value中,并计算发送的数据长度并填充到len当中,具体实现如图所示。
2、从机(Peripheral)向主机(Central)发送数据
而从机向主机发送数据,则是通过GATT_Notification函数来实现的,其具体操作跟上面类似,如图所示: