我正在使用I²C控制Bright Pi模块。

我按照“配置GPIO-Adafruit”和“配置I²C-Adafruit”中的说明设置I²C。几个月前我已经完成了此操作,一切都很好。

这就是我如何在Raspberry Pi(B型)上连接Bright Pi的方式: >
从今天开始,我注意到I²C不再像以前那样工作了。
使用“ sudo i2cdetect -y 1”和“ sudo i2cset -y 1 0x70 0x00 0xff”之类的命令错误:


无法打开文件'/ dev / i2c-1'或'/ dev / i2c / 1':没有这样的文件或目录


使用命令'sudo i2cdetect'将给出错误


没有指定i2c总线!正在运行。

文件'/ etc / modules'如下所示:

#/etc/modules: kernel modules to load at boot time. 
# This file contains the names of kernel modules that should be loaded
# at boot time, one per line. Lines beginning with "#" are ignored.
# Parameters can be specified after the module name.

snd-bcm2835
i2c-dev
i2c-bcm2708


文件'/etc/modprobe.d/ raspi-blacklist.conf'看起来像这样:

blacklist spi and i2c by default (many users don't need them)

#blacklist spi-bcm2708
#blacklist i2c-bcm2708
blacklist snd-soc-pcm512x
blacklist snd-soc-wm8804


我尝试重新安装所有必需的模块,但这都没有帮助。 apt-get updateapt-get upgrade也无济于事。

命令'lsmod | grep i2c'显示如下:

i2c_bcm2708          6004  0   
i2c_dev              6709  0


很奇怪,因为它以前曾经工作过。我可能认为这是“损坏的”,因为两天前我进行了固件更新,因为我的Raspberry Pi显示出奇怪的内核错误。

我该如何解决I²C问题?

#1 楼

最新的固件实现了设备树支持。那会破坏I²C,SPI和1线总线。

有关更详细的信息,请参见I²C,SPI,I2S,LIRC,PPS,是否停止工作?请阅读此内容。例如,如果您正在编程HAT EEPROM。启用i2c_vc可以停止检测到Pi摄像机。

评论


先生,您是我的英雄!这修复了我的I2C。

– LittleOne
15年1月24日在23:45

#2 楼

您可以使用sudo raspi-config并在“高级选项”中禁用“设备树”。可能比手动更改配置要快。

#3 楼

或者,您可以使用sudo raspi-config

Advanced Options> I2C中启用I2C。

用于2016年1月10日发行的raspi-config版本或更高版本的布局

Interfacing Options> I2C