小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

串口的Hex/AscII發(fā)送與顯示

 cuibaofeng 2015-10-10

標(biāo)簽:問題   sp   數(shù)據(jù)   as   bs   一個(gè)   c   tr   程序   

都要大四了還搞不清這個(gè)概念也真是丟臉。

首先,底層的數(shù)據(jù)傳輸都是字節(jié)流,所以不管選擇什么方式,都會被分解為一個(gè)一個(gè)的字節(jié)。

1選擇Hex發(fā)送就代表你要發(fā)送的內(nèi)容是純數(shù)字,由程序完成String到Int再到Byte的轉(zhuǎn)化。所以你應(yīng)該保證每個(gè)你要發(fā)送的數(shù)都是兩位的,如果是7就應(yīng)該寫07,因?yàn)槌绦驎績晌幻績晌坏刈x。如果你選擇了Hex發(fā)送,而輸入的又是字符,比如你寫了ab,那么就會被程序讀為16進(jìn)制的AB。這就是不同的概念了,無論你選擇什么方式顯示都不能得到原來的ab了。

2選擇ASCII發(fā)送就代表你要發(fā)送的是字符串,這時(shí)候程序就會一位一位地讀,比如你寫了1234,在字節(jié)流中傳遞的就是123對應(yīng)的ASCII碼,31,32,33,34(十六進(jìn)制的)。比較而言,在Hex發(fā)送模式下,寫了1234,會被發(fā)送的就是12,34,如果是01020304那就是01,02,03,04。這個(gè)時(shí)候,你寫ab就會發(fā)送相應(yīng)的ASCII碼61,62,其他字符同理。

到這里,數(shù)據(jù)已經(jīng)發(fā)送出去了,接下來就是顯示的問題。是顯示模式,不是解析,不存在解析。

3選擇Hex顯示就是把字節(jié)轉(zhuǎn)化為16進(jìn)制整型,你收到的是12,34,就顯示為12,34,你收到31,32,33,34,也顯示為31,32,33,34,如果收到AB呢,那也是AB。

4選擇ASCII顯示呢,就會把你接收到的十六進(jìn)制轉(zhuǎn)化為對應(yīng)的字符,比如你收到了31,就會顯示為1。這種模式下可能會出現(xiàn)亂碼,原因就是ASCII碼只從0-7f。如果你在十六進(jìn)制發(fā)送模式下發(fā)送了字符,比如發(fā)送了ab,那你就會收到AB,這個(gè)并沒有ASCII碼對應(yīng)的字符。

所以在Hex模式下如果輸入字符,是無論如何接收不到正確的數(shù)據(jù)的,其他方式那就隨意了。重要的是,方式的選擇改變的不是數(shù)據(jù)本身,而是數(shù)據(jù)的表現(xiàn)形式。

 

串口的Hex/AscII發(fā)送與顯示

標(biāo)簽:問題   sp   數(shù)據(jù)   as   bs   一個(gè)   c   tr   程序   

    本站是提供個(gè)人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多