Thread 中讨论的其他器件: BLE-STACK
我想在充当中央设备的移动设备和使用带有 CC2540芯片的软件狗作为外设的 PC 之间传输一些数据。
PC 端的实现语言是 C#。 按照 可用的 HCI 文档、我设法获取 PC 广告、并且可以在移动设备上发现 PC。 但是、当我连接到 PC 时、我在应用程序中看不到任何传入请求、但移动端没有错误、设备报告为已连接。
我用于进行 PC 广播的步骤如下:
- GAP_DeviceInit (具有 ProfileRole Central、即0x08)
- GAP_SetAdvToken (具有类型0x09 (完整本地名称)、扫描时可在移动设备上成功读取)
- GAP_UpdateAdvTokens
- GAP_MakeDiscoverable
所有这些都是成功返回的结果、并且可以从我的移动设备检测到 PC。 但是、我的移动设备的连接不会触发 PC 端的任何事件。 很显然、我缺少一些步骤。
此外、当我尝试使用 GATT_AddService 添加服务时、我获取0x01 (失败)。 我已经阅读了有关 GATT DB 片外的内容。 遗憾的是、这是不可选的、因为我们尝试构建的解决方案应能与开箱即用的芯片配合使用、无需固件编译。
我的问题是: 是否可以使用 PC 作为中央设备以及默认服务和特征(我在 某个位置找到了 chracteristic UUID 0000ffe1-0000-1000-8000-00805f9b34fb)传输数据、或者我是否在错误的路径上、如果不使用适当的预处理器标志编译固件、这一点根本不可能实现?
此致、
弗兰克