Python:在ISO 8859-1中写入COM

时间:2017-08-28 07:21:44

标签: python serial-port pyserial iso non-ascii-characters

我需要使用HART协议写入COM端口。 我需要在端口中写的字是ISO 8859-1格式。 我尝试使用pyvisa,但是我得到一个错误(对于这样的字符:ÿÿÿÿÿ)...我认为因为它们不是标准的ASCII。 我现在能做什么?我应该去另一个包写COM端口吗?

有什么建议吗?

1 个答案:

答案 0 :(得分:1)

如果使用pyserial,则可以使用“Latin1”编码而不是标准的“UTF-8”。 RX看起来像:

df[df['ConfigredValue'].str.title() !=df['ReferenceValue'].str.title()]
TX看起来像:

inpchar = comXX.read().decode("Latin1",'ignore')

这适用于pyserial 3.x,不确定2.x. (更新)我刚刚在我的构建机器上运行它,在python 3.4上打印失败,但在python 3.6.2上运行。 read()解码似乎工作正常,但打印失败...我修改了python 3.4并放入3.6.2,并且新的pyserial下载,工作正常。新安装的3.6.2和pyserial 3.4可以正常工作。