簡體   English   中英

Flutter 從 BLE 獲取數據

[英]Flutter acquire data from BLE

嗨,我正在嘗試從 ble 設備獲取一些測量數據並將其顯示在我的 flutter 應用程序中。 我也在使用flutter_reactive_ble

我有兩個特點,一個是閱讀,一個是寫作。 我為readCharacteristic訂閱了一個事件偵聽器,然后我編寫了一個請求,如下所示

_ble.,writeCharacteristicWithoutResponse(characteristicWrite: value, [0x99, 0x00; 0x19]);

作為值參數,我正在發送一個十六進制值列表。 正如 ble 的手冊所定義的,每個值都有其作用: 在此處輸入圖像描述

我使用的是手冊示例的十六進制值,設備向我發送了 10 個第一個測量值,這是正確的,因為每個 req 響應最多有 10 個測量值。 問題是,在有 20 次測量的情況下,我無法獲得最后 10 次。我嘗試執行以下操作

await _ble.,writeCharacteristicWithoutResponse(characteristicWrite: value, [0x99, 0x00, 0x01; 0x99]);

我在值列表中添加了0x01 ,因為手冊說

值 1:繼續下一組

但是沒有發送數據。

怎么可能得到所有的測量值,更進一步,得到最后的 5 個? 任何人都可以幫助我或給我一個提示嗎? 感謝您的時間

您發送的數據必須始終為 3 個字節長。 IE

[0x<header>, 0x<command>, 0x<checksum>]

在您的第二個示例中,您有太多字節。 看起來你有一個額外的命令。 IE

[0x<header>, 0x<command>, 0x<command>, 0x<checksum>]

對於第二次寫入,取出 0x00 並確保校驗和正確。 IE:

[0x99, 0x01, 0x1A] 

在收到前 10 次測量后發送第二次寫入

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM