对于I2C和SPI的配置,对于树莓派安装官方操作系统的配置方法说的很详细,但对于ARCH LINUXARM的几乎没有说明。在网上找了很久也没有找到,折腾了一天终于在https://learn.adafruit.com/adafruits-raspberry-pi-lesson-4-gpio-setup/configuring-i2c这里找到了相应的解决办法,虽然也是针对官方操作系统,但其中有一点特别重要,就是修改/boot/config.txt文件。官方操作系统可以通过raspi-config配置启用I2C和SPI设备,ARCH LINUX ARM 没有却没有这个配置文件,虽然在/etc/modules-load.d/raspberrypi.conf(arch linux arm中的配置文件)中添加了
i2c-bcm2708
i2c-dev
重启后/dev中依然没有/dev/i2c-1设备。
因此我们需要修改/boot/config.txt文件
添加
device_tree_param=i2c1=on
device_tree_param=i2c_arm=on
如果要使用SPI,还要添加
device_tree_param=spi=on
另外就是在/etc/modules-load.d/raspberrypi.conf中添加
i2c-bcm2708
i2c-dev
spi-bcm2708
然后reboot,就能在/dev找到我们需要的设备文件了
执行i2cdetect -y 1