传递数组时,Python串行到字节失败

Posted

技术标签:

【中文标题】传递数组时,Python串行到字节失败【英文标题】:Python serial to bytes fails when passing array 【发布时间】:2021-10-03 15:38:48 【问题描述】:

首先,我是初学者……我的代码是:

data = bytearray(b'\x01\x04\x00\x16\x00\x02\x00\xf9')

# 1 - does not work as expected:
ser.write(serial.to_bytes(data))
    
# 2 - works as expected:
ser.write(serial.to_bytes([0x01,0x04,0x00,0x16,0x00,0x02,0x90,0x0f]))

那么,我错过了什么?我需要获得与 2 中相同的结果,但需要从 bytearray 加载数据。

【问题讨论】:

虽然我已经修复了bytearray,但是还是不行。所以问题仍然存在...... 【参考方案1】:

阅读我自己的帖子,我找到了答案:最后两个字节被翻转了。

【讨论】:

以上是关于传递数组时,Python串行到字节失败的主要内容,如果未能解决你的问题,请参考以下文章

将字符串的python列表转换为字节数组

当我们尝试在 Python 中使用 pysftp 从 SFTP 串行下载 50 多个文件时,下载失败并显示“身份验证失败”?

从串行数据数组中解码和重新格式化值

正确类型转换字节以写入 C++ 中的串行句柄

串行python到arduino

使用 Python 串行库处理从串口读取的原始数据?