0

我正在使用 python 3.9.6 来管理一个隐藏的继电器板在此处输入图像描述

我可以使用 enumerate 命令读取主板的供应商 ID 1305 和产品 ID 8216,然后我尝试了一些命令:

>>> device = hid.Device(1305,8216)
>>> device.manufacturer
'Ucreatefun.com'
>>> device.product
'HIDRelay'
>>> device.serial
'A0001'

现在我想使用“device.write”管理板上的继电器,我该怎么做?从继电器板手册:

“通道 1 打开:0x00 0xf1,关闭:0x00 0x01”

不幸的是,当我尝试这个时它不起作用:

>>> device.write([0x00,0xF1])
Traceback (most recent call last):
File "<pyshell#61>", line 1, in <module>
device.write([0x00,0xF1])
File 
"C:\Users\trevisan\AppData\Local\Programs\Python\Python39\lib\site- 
packages\hid\__init__.py", line 155, in write
return self.__hidcall(hidapi.hid_write, self.__dev, data, len(data))
File 
"C:\Users\trevisan\AppData\Local\Programs\Python\Python39\lib\site- 
packages\hid\__init__.py", line 142, in __hidcall
ret = function(*args, **kwargs)
ctypes.ArgumentError: argument 2: <class 'TypeError'>: wrong type
>>> 

当我在 device.write 方法中传递列表时,为什么 python 会引发类型错误?

非常感谢!最大限度

4

1 回答 1

1

我使用类字节解决了:

>>> device.write(bytes([0x00,0xf1]))

我很开心!最大限度

于 2021-07-13T09:05:49.973 回答