我正在使用带有 Grove Pi+(1.2.2 固件)和 Raspbian for Robots Image 的 Raspberry Pi 3 B 型号。我在 I2C-1 端口中插入了多通道气体传感器,我正在尝试执行Dexter 的 Github 中可用的代码。我遇到以下问题:
> Traceback (most recent call last): File "/home/pi/Desktop/GrovePi/Software/Python/grove_i2c_multichannel_gas_sensor/multichannel_gas_sensor.py",
> line 85, in m= MutichannelGasSensor() File
> "/home/pi/Desktop/GrovePi/Software/Python/grove_i2c_multichannel_gas_sensor/multichannel_gas_sensor.py",
> line 39, in init if self.readR0() >= 0: File
> "/home/pi/Desktop/GrovePi/Software/Python/grove_i2c_multichannel_gas_sensor/multichannel_gas_sensor.py",
> line 45, in readR0 rtnData = self.readData(0x11) File
> "/home/pi/Desktop/GrovePi/Software/Python/grove_i2c_multichannel_gas_sensor/multichannel_gas_sensor.py",
> line 70, in readData buffer=bus.read_i2c_block_data(self.address, cmd,
> 4)IOError: [Errno 110] Connection timed out
当我运行 GrovePi+ 的旧固件时,没有出现这个错误,但它不起作用,屏幕上什么也没有。
逐行检查代码,我意识到在第 71 行是 print(data),在 buffer=bus.read_i2c_block_data(self.address, cmd, 4) 之后,但是代码中没有定义“data”变量。这段代码有些奇怪。
有人可以帮我使用这个 Grove pi 传感器吗?有人可以给我任何提示吗?