[問題] ser.read Hex和 ascii 亂碼

作者: balaid (芭樂ID)   2018-01-24 10:36:56
最近自學在玩 MCU 連接 Python 3.6
利用 Tkiner 來做一個介面
做介面部分都很順手 但是遇到資料處理時 就卡死
我是從 MCU 利用 ser.readline() 讀取 RS232 轉 USB 的資料
讀到的資料是
b'\x01\x03\x15\x02\x06(\xb1\x00\x03-6\x01\x08\x01\xc5X\00\xb6'
理論上要是 01-03-15-02...... 的格式
不會出現 "(" "5" "X" 這樣的碼
爬文後試過利用 struct decode 型態轉換都出現不同型態的資料
甚至一直出現錯誤
也嘗試用 list 處理 還是錯誤的讀取值
了解後是Python 自動編碼成 ascii
想詢問一下高手 還有甚麼方向可以處理這樣的情形
或是說 我能夠讓 PYTHON 不要幫我編碼
能夠直接讀取資料
再麻煩鄉民給我一個方向
作者: mikapauli (桜花)   2018-01-24 11:04:00
bytes本身就是你說那樣,看到的亂碼只是representation要好看的話tuple(b'...')或list(b'...')都可以
作者: ckc1ark (偽物)   2018-01-24 11:09:00
b'...' 不是ascii 就是純粹的bytes

Links booklink

Contact Us: admin [ a t ] ucptt.com