新手上路 一直在這個問題點上無法突破
試過我能想到的方法 但是一直在一個輪迴裡面 無法突破
個人專題需要和別的系統溝通
也就是我傳 \x04\x05\xaf.... 這樣的資料格式
透過系統回傳給我的 \x32\x85\xaa..... 來做確認資料有沒有更新
主要我是透過 ser.readline() 將一整個資料讀進來
判斷最後三筆是否為 \0x60\0x00\x86 86為 CRC 驗證碼
在偶然間我發現一個錯誤常發生 也就是 readline()時
回傳的資料裡 \xb4\x83\n 中間出現了 \n 因此
(回傳資料 \x00\x03\xef\x98Pb\x10'\xb4\x83\n)
後面再透過 readline 一次又可以讀到後面的漏掉的資料
(漏掉的資料 \x00\x00\x60\x00\xa2)
因為是偶然發生沒有收到完整的資料狀況
我有點想不透該如何去處理
我個人寫法是
Rx = ser.readline()
Rx2 = binascii.b2a_hex(Rx)
Rx3 = str(Rx2)
Rx4 = hex(Rx3)
check = Rx4[-7:-3:1]
if check = "6000"
print("OK")
至於為什麼這樣寫 一直在轉換型態 是因為每次出現什麼 Error code
我就硬查資料把它轉到不會出現 Error 的狀態
我已經查了也試了不少方法 但是已經搞到我自己都不知道在幹嘛了
希望高手能給我一條繩子一個方向 讓我爬出這個奇怪的坑洞
麻煩高手指點