参考连接:
硬件:树莓派 3b+
固件:2018-04-18-raspbian-stretch.img
一、安装iic库
1.1、修改raspi-blacklist.conf文件
sudo nano /etc/modprobe.d/raspi-blacklist.conf ---也可以是使用vim添加。
在文件内部添加
blacklist spi-bcm2708
blacklist i2c-bcm2708 ---i2c-bcm2708驱动程序的名称,里面支持多个arm的iic控制器。
1.2、修改modules文件
sudo nano /etc/modules在文件后面添加如下内容:
i2c-bcm2708
i2c-dev
1.3、安装软件包
连接wifi,参考《树莓派3B+ wifi设置》
sudo apt-get update
sudo apt-get install i2c-tools python-smbus
reboot
重启后:
sudo i2cdetect -l 检查命令安装是否成功
sudo i2cdetect -y 1 上面看到的i2c-1,所以这里有个1
sudo i2cdump -y 1 0x68 (1:设备1,0x68:设备地址)读0x68设备的寄存器内容
数据的写入:
sudo i2cset -y 1 0x2a 0x1a 0x55
即可向设备地址为0x2a的0x1a寄存器地址写入0x55
-y 代表取消用户交互过程,直接执行命令
1 代表I2C设备号
0x2a 代表I2C设备地址
0x1a 代表寄存器地址
0x55 代表向寄存器写入的数据
数据的写入
sudo i2cset -y 1 0x2a 0x1a 0x55
即可向设备地址为0x2a的0x1a寄存器地址写入0x55
-y 代表取消用户交互过程,直接执行命令
1 代表I2C设备号
0x2a 代表I2C设备地址
0x1a 代表寄存器地址
0x55 代表向寄存器写入的数据
获取当前波特率:
sudo cat /sys/module/i2c_bcm2708/parameters/baudrate
设置波特率:
sudo emacs /etc/modprobe.d/custom.conf
添加一行设置:
options i2c_bcm2708 baudrate=100000
设置后需要重启才能生效。
二、打开iic设备
ls /dev --- 查看开发板上是否有iic设备。如果有此设备,打开iic设备过程略过。
2.1、打开IIC设备
在终端输入 sudo raspi-config
选择interfaceing options
然后选择I2C
就打开了IIC设备。
通过上面2个步骤就可以,打开树莓派的iic设备。
输入:
ls /dev
可以看到:i2c-1
备注:
raspi-config命令修改的/boot/config.txt文档,raspi-config只不过用图像化实现了。
2.2、查找IIC总线上的设备
sudo i2cdetect -y 1 上面看到的i2c-1,所以这里有个1 ,如果IIC总线上有设备,这里会有发现
sudo i2cdump -y 1 0x68 (1:linux的IIC设备1,0x68:设备地址)读0x68设备的寄存器内容