命令行下I2C读写操作

#实验目的:了解命令行下I2C的操作方法。
1、查看已挂在设备:

i2cdetect -y 1
(其中-y表示命令行执行 1表示/dev/i2c-1)
可见0x27地址已挂载设备
2、打印出指定设备的所有数据

i2cdump -y 1  0x27
0x00到0xff的所有值
3、读取指定设备指定寄存器地址数据

i2cget -y 1  0x27  0x10
(0x27设备地址 0x10寄存器地址)
执行效果
4、设置指定设备指定寄存器地址

i2cset -y 1  0x27  0x10 0x11
(0x27设备地址 0x10寄存器地址 0x11要设置的值)
#其他
1、安装I2C可执行命令

apt-get install i2c-tools
2、打开I2C可参考文章:http://www.shumeijiang.com/2019/12/08/基于命令行打开i2c协议支持

基于命令行打开I2C协议支持

实验目的:通过命令行命令执行,打开树莓派对于I2C协议的支持;或者查看当前自己的树莓派支持的协议情况。因为有些协议默认是关闭的。
#操作流程:
1、ssh登录树莓派,可以写成一个shell脚本;例如下图,我这边有三个树莓派板子登录脚本,分别是car、dog和master。
2、实验用的是dog-login.sh,less可见脚本内容:
3、执行sh ./dog-login.sh登录dog树莓派;因为pi没有设置密,所以可直接登录。
4、接下来查看树莓派配置,执行命令 sudo raspi-config,可见效果如图:
5、上图可见很多选项,有关于用户密码,网络设置,开机设置等等,我们这边选择5 Interfacing Options(关于外接设备的接口设置);通过键盘上下键移动选择选项,左右键选择Select还是Finish,按Enter键选择,可见效果如下图:
6、可见选项列表,有P1 Camera(外接摄像头需要打开),P2 SSH (ssh登录需要打开,我们这次就是采用ssh登录因此需要先执行这个配置的打开),P3 VNC(允许远程控制,比如QQ的允许其他人控制电脑),P4 SPI(SPI协议),P5 I2C(I2C协议)等,我们这次要打开I2C协议,因此通过上下键选择,然后Enter执行,可见如下效果:
7、上图提示是否开启I2C协议支持(即使当前已经开启),默认选中”是“,Enter键执行即可。
8、提示上图表示已开启成功,然后会跳转到步骤4的选项列表,左右光标移动选择Finish即可退出选项;至此,开启配置完成。