1、写数据:
蓝牙的读数据跟写数据都是通过向服务特征写入数据来完成。
[_currentPeripheral writeValue:data forCharacteristic:_currentCharacteristic type:CBCharacteristicWriteWithoutResponse];
2、读数据:
监听 LL_CentralManagerDelegate 的回调 - (void) receiveValue:(NSData*)value ,获取写数据结果及获取数据结果。
3、编解码:
蓝牙数据传输采用帧结构,可以通过蓝牙框架BlueTooth里面的TGBProtocol数据结构转换,传输协议指令中数据类型较多,通常编码解码都用C语言进行数据的二进制处理。
4、注意事项:
1)、确保每个指令的帧结构数据的完整性,尤其是写入指令,需要将所有数据写入,未修改的字段也要写入;
2)、编解码过程中,注意函数参数的含义,数字参数可表示多种含义,可能是数据位数、可能是数据进制数,也可能是数据本身,容易造成混淆;
3)、如果写入后读取发现乱码,注意检查下写入指令的长度、位置。