我通过串口助手,发送了 HEX 的'88 AA BB CC DD EE FF'
python接收到消息后,我通过如下代码,转化成十六进制显示,以方便我检验是否正确
n=ser.inWaiting()
if n:
data=str(binascii.b2a_hex(ser.read(n)))[2:-1]
print(data.upper())
time.sleep(1)
但结果位确显示'082A3B4C5D6E7F’
请问如何能正确显示呢?
Python读取串口助手的hex消息如何正确显示?
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- GPT_Pro 2023-02-25 10:39关注
该回答内容部分引用GPT,GPT_Pro更好的解决问题
Python读取串口助手的hex消息如何正确显示?要让Python正确显示串口助手发送的HEX消息,首先要确保发送的消息是正确的,即使用HEX格式发送的是正确的消息。
然后在python代码中,利用python自带的binascii库中提供的函数:b2a_hex()函数,将串口助手发送的HEX消息转换成16进制格式,这是code如下:
import binascii n = serinWaiting0) data=binascii.b2a_hex(serread(n)) print(data.upper()) time.sleep(1)
最后再将16进制格式转换成字符串格式进行显示,code如下:
import binascii n = serinWaiting0) data=binascii.b2a_hex(serread(n)) data_str=data.decode('utf-8') #将16进制转换成字符串格式 print(data_str.upper()) #大写显示 time.sleep(1)
以上就是如何让Python正确显示串口助手发送的HEX消息的方法。
如果回答有帮助,望采纳。本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 不是,这到底错哪儿了😭
- ¥15 2020长安杯与连接网探
- ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么
- ¥15 banner广告展示设置多少时间不怎么会消耗用户价值
- ¥16 mybatis的代理对象无法通过@Autowired装填
- ¥15 可见光定位matlab仿真
- ¥15 arduino 四自由度机械臂
- ¥15 wordpress 产品图片 GIF 没法显示
- ¥15 求三国群英传pl国战时间的修改方法
- ¥15 matlab代码代写,需写出详细代码,代价私