Python(Beaglebone Black)上的Writebyte和Readbyte esp QMC5883出现Errno 110

时间:2018-10-02 04:48:47

标签: python beagleboneblack i2c adafruit smbus

我找不到适合该BBB Python的代码,因为许多源代码会在Raspberry Pi和Arduino上表达更多。我正在使用VMware和Ubuntu_18运行linux终端,以运行我的BBB。

这是我开始尝试在QMC5883磁力计上测试的几行代码,我正在尝试将Arduino转换为Python版本。

import Adafruit_GPIO.I2C as I2C
import math

QMC5883 = I2C.Device(0x0D, 1)
QMC5883.write8(0x0b,0x01)

但是,错误一直出现,尤其是终端BBB上的writebyte和readbyte

root@beaglebone:~/user_python# python compass1.py
Traceback (most recent call last):
File "compass1.py", line 5, in <module>
QMC5883.write8(0x0b,0x01)
File "build/bdist.linux-armv7l/egg/Adafruit_GPIO/I2C.py", line 116, in write8
File "build/bdist.linux-armv7l/egg/Adafruit_PureIO/smbus.py", line 256, in write_byte_data
IOError: [Errno 110] Connection timed out]

我跟随该函数调用的链接来自此Adafruit_GPIO/I2C.py

即使使用smbus库,错误仍然相同

import smbus

这里的任何人都知道如何解决此Errno110超时连接? 我期待任何人能引导我全面了解BBB Python如何使QMC5883磁力计正常工作。

1 个答案:

答案 0 :(得分:0)

最后一个月后,我找到了Beaglebone Black的解决方案。如果可能的话,请在库代码中进行一些更改。将总线号从1更改为2。

此GitHub链接可能会帮助您https://github.com/RigacciOrg/py-qmc5883l立即获得您的方位角(偏航角)。