第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

如何在 java 中解析 BluetoothGattCharacteristic 值

如何在 java 中解析 BluetoothGattCharacteristic 值

FFIVE 2022-11-30 16:45:48
我目前在嘗試弄清楚如何將數(shù)據(jù)從我的 ESP32 微控制器傳輸?shù)?Android 手機(jī)時(shí)有點(diǎn)迷茫。我已經(jīng)設(shè)法發(fā)送和讀取特征值,但不知道如何解析它?,F(xiàn)在,我發(fā)送簡單的整數(shù)值 = 15。我發(fā)現(xiàn)數(shù)據(jù)是使用字節(jié)數(shù)組發(fā)送的,因此我將其轉(zhuǎn)換為十六進(jìn)制字符串,結(jié)果沒有意義31-35-2E-30-30。檢查了nRF connect應(yīng)用程序,它也顯示相同的十六進(jìn)制字符串結(jié)果,但另外它已將值解析為15.00.這是 Arduino 代碼:...char txString[8];int someNumber = 15;dtostrf(someNumber, 1, 2, txString);_pCharacteristicNotify -> setValue(txString);_pCharacteristicNotify -> notify();...安卓工作室public void onCharacteristicChanged(BluetoothGatt gatt, BluetoothGattCharacteristic characteristic) {    _handler.handleMessage(Message.obtain(null, ..., characteristic));}private Handler _handler = new Handler() {    public void handleMessage(Message msg) {        // ------- The problem is here ----------------        BluetoothGattCharacteristic characteristic;        characteristic = (BluetoothGattCharacteristic) msg.obj;        String value = Utils.parseBLECharacteristicValue(characteristic);        // the value is "31-35-2E-30-30"        // HOW TO GET THE NUMBER 15 ??    }};我正在使用的解析方法來自這里示例 1有人可以解釋一下如何解析給定值嗎?如果提供的值是字符串"abcd123"而不是整數(shù),邏輯將如何改變?
查看完整描述

1 回答

?
慕慕森

TA貢獻(xiàn)1856條經(jīng)驗(yàn) 獲得超17個(gè)贊

31-35-2E-30-30是字符串的 ASCII 表示15.00

根據(jù)dtostrf() 文檔

轉(zhuǎn)換以格式“[-]d.ddd”完成。

這解釋了字符串 15.00 由于調(diào)用的第三個(gè)參數(shù)是兩個(gè)十進(jìn)制值2。

嘗試使用 Arduino 的String 構(gòu)造函數(shù)進(jìn)行整數(shù)到字符串的轉(zhuǎn)換。之后,您可以使用 Android 中的 Integer 類將字符串轉(zhuǎn)換回整數(shù),如本答案中所述。


查看完整回答
反對 回復(fù) 2022-11-30
  • 1 回答
  • 0 關(guān)注
  • 136 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號