我有这段代码,它在Windows和macosx上使用python2.7.6运行良好。我正在使用cython hidapi接口从Voltcraft VC870功率表读取数据。要获取数据,如果首先需要向设备发送功能报告,则:
buf = [0x00, 0x80, 0x25, 0x00, 0x00, 0x03]
res = hid.device().send_feature_report(buf);
在Windows8.1和MacOSXMavericks上,这项工作很好,并返回一个非负值。但是,Linux上的相同代码返回一个负数。我相信这意味着设备无法理解发送的功能报告。在
从hid(cython hidapi)调用的代码如下:
^{pr2}$我不太熟悉C类型或字节级处理。我最初怀疑这句话:
buff = ''.join(map(chr, buff))
是罪魁祸首,因为chr(0x80)在我的系统中输出了不同的值。但我想知道是否有人能解释一下这里的问题并提出解决办法。在
目前没有回答
相关问题 更多 >
编程相关推荐