我每次都从ble设备接收到具有62个字节的扫描结果。
使用下面的回调代码获取扫描结果,我可以获取RSSI但不能获取CRC。
要么
获得一帧CRC的逻辑是什么?
来自诸如封包头,广告数据,CRC,RSSI之类的设备的数据格式。
如何从数据或android ble模块获取CRC。
public void onScanResult(int callbackType, ScanResult result) {
byte[] data = result.getScanRecord().getBytes();
//get 62 byte array
}
如何从扫描结果中获取CRC?
最佳答案
为什么要CRC?蓝牙控制器将丢弃CRC与数据包内容不匹配的数据包。
蓝牙控制器不会将CRC转发到主CPU,因此您无法获取它。
另外,这62个字节是两个数据包的串联:广告数据和扫描响应数据。