关于ascii和python包装

时间:2014-02-18 13:44:05

标签: python serial-port base64 pyserial

我确实遇到了python包装的一些问题,我猜想它的生成字节数组的范围是0x00到0xff,其中大部分都是ascii表示。

我想在串口发送数据,要记住的一些事情是串行协议使用的一些十六进制值如0x11和0x13用于内部流控制。我需要通过发送来避免它们。

我可以通过发送2个字节来避免这些,例如0x11被编码为0x7d,0x31。和 0x13编码为0x7d,0x33。 此选项在接收端复杂地维护一个临时字节数组并迭代检查2字符串的精度并将其转换回一个字符串。 - 复杂

使用base64编码 - 简单但只将数据增加到25%以上..我正在使用RADIO链接..它真的很难我不知道该怎么做..帮帮我..!

1 个答案:

答案 0 :(得分:0)

以下是在python中编码和解码字节的方法:

>>> '\x41'
'A'

如果要使用函数执行此操作,请使用chr(int()):

chr(65)
'A'

解码已知字符串:

ord('A')
65

Hex to int:

int('0x41', 16)
65

Int to hex:

hex(65)
'0x41'