首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用pyusb实现与usb设备的通信

使用pyusb实现与usb设备的通信
EN

Stack Overflow用户
提问于 2011-06-16 00:45:15
回答 1查看 7.8K关注 0票数 1

我正在使用一个名为pyUSB v1.6的模块,并尝试与传感器通信。

我已经建立了连接,可以从传感器上的ROM中读取。连接后的传感器具有主/从关系,因此我需要向传感器发送消息以接收所需的数据。

现在,write函数只能接受字符串或只读缓冲区。我需要向USB设备发送十六进制字节0xFE0x040x000x030x000x010xD50xC5

我不确定如何将其编码为字符串或只读缓冲区。

下面是调用write方法的方法。这是他们提供的示例代码。

代码语言:javascript
复制
# write bytes (serial mode)

print h.write('Hello world!\r\n")

如何传输十六进制字节?

EN

回答 1

Stack Overflow用户

发布于 2011-06-16 01:47:43

代码语言:javascript
复制
byte_ints = [0xFE, 0x04, 0x00, 0x03, 0x00, 0x01, 0xD5, 0xC5] # Python recognises these as hex.
byte_str = "".join(chr(n) for n in byte_ints)

或者,您可以只将\x放在字符串中每对十六进制数字的前面:

代码语言:javascript
复制
'\xfe\x04\x00\x03\x00\x01\xd5\xc5'

在Python 3中,这需要是:

代码语言:javascript
复制
b'\xfe\x04\x00\x03\x00\x01\xd5\xc5'

(即字节串,而不是unicode)

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6361261

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档