我正在尝试实现BLE112板和BlueGiga的BLE112 智能加密狗之间的通信。
这两个支持 AT 命令集。
我已经设法通过 BLEGUI 工具在这两者之间进行配对,如下面的屏幕截图所示。
对于读取操作,控制台显示如下:
ble_cmd_attclient_read_by_handle connection: 0 chrhandle: 3
TX: 00030404000300
ble_rsp_attclient_read_by_handle connection: 0 result: 0 ['No Error']
RX: 00030404000000
ble_evt_attclient_attribute_value connection: 0 atthandle: 3 type: 0 value:426c75656769676120554152542044656d6f
RX: 801704050003000012426c75656769676120554152542044656d6f
上面的行意味着客户端(BLED112 USB Dongle)能够读取存储在服务器(BLE112板)中的第三个属性值。自从我收到它以来,这个价值就在那里。
现在下面的部分显示我试图读取设备上不存在的第 7 个属性,但我打算创建。由于 followinf 读取命令是我直接写到 BLEGUI 的控制台上的,它的显示方式与通过 BLEGUI 上的按钮发送的方式不同。
ble_cmd_attclient_read_by_handle 0 7
TX: 00030404000700
ble_rsp_attclient_read_by_handle connection: 0 result: 0 ['No Error']
RX: 00030404000700
ble_evt_attclient_procedure_completed connection: 0 result: 401 ['The attribute handle given was not valid on this server']chrhandle: 7
RX: 800504010001040700
我有以下问题:
- 我可以在设备上创建新的(用户定义的)属性吗?
- 我可以写入/更改设备上的现有属性吗?
- 如果我打算将任何数据存储到设备上,该怎么做?