簡體   English   中英

python 3和pyserial 2.7

[英]python 3 and pyserial 2.7

我正在嘗試與Python中的串行設備通信,該設備需要一個同步字節,在這種情況下為255,然后更改其他字節,正如所說的“變化”,我的代碼具有此功能並且運行良好

serial.write(b '255')
serial.write(b '55')
serial.write(b '69')

這很好用,但是我似乎無法用變量的最后兩個數字代替

serial.write(b '255')
serial.write(b varA)
serial.write(b varB)

似乎此選項不可用。

請幫幫我

b'255'實際上是ASCII字符串“ 255”的二進制表示。 如果您想精確傳遞字節255,則只需編寫serial.write(255) 並且在這種情況下,必須為變量分配字節(在0到255之間的整數范圍內)。

serial.write(255)
serial.write(55)
serial.write(69)

varA = 55
varB = 69
serial.write(255)
serial.write(varA)
serial.write(varB)

如果它實際上需要ascii字符串的二進制表示形式(為什么?),而varA \\ varB是一個字符串,則可以將其轉換為字節數組。 varA = '255'; varA.encode('ascii') varA = '255'; varA.encode('ascii')b'255'相同。

暫無
暫無

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

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