簡體   English   中英

我收到從RS232到藍牙的亂碼消息

[英]I get garbled message from RS232 to bluetooth

設備信息:“'14/08/06”

bytes = mmInStream.read(buffer);
char c = 0;
for(int i=0;i<buffer.length;i++)
{
   int value = buffer[i];   
   Log.e(tag,"WORD="+value);                    
   c= (char)value; 


}

最后有些單詞會出現亂碼(變成負數),有些單詞會顯示遵循ASCII

WORD=34
WORD=39
**WORD=-79
WORD=-76
WORD=-81**
WORD=48
......etc

變成=>'ᄆ ᄡ ᆵ 0 ᄌ ᆵ 0 ᄋ“ ᆲ” ᄆ 6 ...

輸出不亂碼,是帶符號的字節。

一個byte在Java是一種符號字節; Byte.MAX_VALUE = 127, Byte.MIN_VALUE = -128。

WORD=-79 + 128 = 49 in ASCII 1
WORD=-76 + 128 = 52 in ASCII 4
WORD=-81 + 128 = 47 in ASCII /

暫無
暫無

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

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