CSR 蓝牙读写
来源:互联网 发布:linux cpu 超过100 编辑:程序博客网 时间:2024/05/16 06:47
#region read write private byte[] _readBytes; public async Task<byte[]> BleClientReadChar(BleGattCharacteristic character) { return await Task.Run(() => { if (!character.Service.GattDevice.Connected) { Error("[CSR]:BleClientReadChar when device is not connect!"); return null; } if (CsrBleDll.CsrBleClientReadCharByHandle(character.Service.GattDevice.Handle, character.Handle)) { if (_readEvent.WaitOne(5000)) { Debug("[CSR]:BleClientReadChar Success!"); return _readBytes; } } Debug("[CSR]:BleClientReadChar Fail!"); return null; }); } public async Task<bool> BleClientWriteChar(BleGattCharacteristic character, byte[] data) { return await Task.Run(() => { if (!character.Service.GattDevice.Connected) { Error("[CSR]:BleClientWriteChar when device is not connect!"); return false; } var value = Marshal.AllocHGlobal(data.Length); Marshal.Copy(data, 0, value, data.Length); if (CsrBleDll.CsrBleClientWriteCharByHandle( character.Service.GattDevice.Handle, false, character.Handle, (ushort)data.Length, value)) { if (_writeEvent.WaitOne(5000)) { Marshal.FreeHGlobal(value); Debug("[CSR]:BleClientWriteChar Success!"); return true; } } Marshal.FreeHGlobal(value); Debug("[CSR]:BleClientWriteChar Fail!"); return false; }); } public void BleClientWriteConfig(BleGattCharacteristic character, byte config) { if (!character.Service.GattDevice.Connected) { Error("[CSR]:BleClientWriteConfig when device is not connect!"); return; } if (!CsrBleDll.CsrBleClientWriteConfiguration(character.Service.GattDevice.Handle, character.DescriptorHandle, character.Handle, config)) { Error("[CSR]:BleClientWriteConfig Fail!"); } }
阅读全文
0 0
- CSR 蓝牙读写
- csr 蓝牙
- csr 蓝牙
- csr 蓝牙
- CSR蓝牙开发手记
- CSR蓝牙开发平台
- CSR蓝牙芯片开发
- CSR蓝牙初始化流程
- CSR蓝牙的开发
- CSR蓝牙开发资源
- CSR蓝牙测试仪 项目
- 求中文版csr蓝牙资料
- 单芯片蓝牙 CSR BC5
- CSR蓝牙开发调试经验
- USB更新CSR蓝牙程序
- CSR蓝牙芯片配置备忘
- CSR蓝牙烧录电压
- CSR蓝牙芯片进测试模式方法
- 面向对象编程基础
- 数据结构实验之图论二:图的深度遍历
- 对象和实例,对象的创建
- Redmine之RestApi集成方式
- hdu5446(数论)
- CSR 蓝牙读写
- UI5开发 – 发布到Fiori LaunchPad以及调试
- 单向循环链表的实现
- js中创建元素createElement\createTextNode\appendChild
- MATLAB中生成随机数方法总结
- shiro-03shiro的filterChainDefinitions
- UI5开发 – 解决Fiori LaunchPad不能加载Google API问题
- 打印_battery_status.scale
- 进程控制编程