串行傳輸服務(wù)允許用戶通過 BLE 簡單快速地傳輸串行數(shù)據(jù)。
服務(wù) UUID 是 7369666c-695f-7364-0000-0000000000000。 它有兩個(gè)特點(diǎn):
- 串口傳輸配置:UUID 7369666c-695f-7364-0001-0000000000000(須通知)。
- 串口傳輸數(shù)據(jù):UUID 7369666c-695f-7364-0002-0000000000000(可讀可寫可通知)
尚未使用配置特性。
數(shù)據(jù)特性用于傳輸串行數(shù)據(jù)。 其數(shù)據(jù)格式為:
- CateID, is categoryID for differernt users.
- Flag, is for fragmentation.
- 0x00: Completed packet.
- 0x01: First packet.
- 0x02: Continue packet.
- 0x03: Last packet.
- Length Packet length, is only available when flag equal 0x00;
- Data, is serial data.
實(shí)現(xiàn)傳輸串行數(shù)據(jù)
用戶只需與客戶端協(xié)商確認(rèn) categoryID 并確保該 ID 與設(shè)備中的其他用戶不同。 然后就可以傳輸數(shù)據(jù)了。
有關(guān)串行傳輸 API 的詳細(xì)信息,請參閱 Serial transmission service 。
這是示例代碼:
#define APP_BLE_SERIAL_ID 0x1F
{
int ret;
uint8_t test_data[] = {0x01, 0x02, 0x03, 0x04};
LOG_I(
"cateID(%d), data(%d) %s\r\n",
data->cateID,
data->len,
data->data);
send_data.cateID = APP_BLE_SERIAL_ID;
send_data.
len =
sizeof(test_data);
send_data.
data = test_data;
LOG_I("result %d",ret);
}