1、临时解决办法:
$sudo chmod -R 777 /dev/i2c-1
#其中:
-R 是指级联应用到目录里的所有子目录和文件 777 是所有用户都拥有最高权限
修改权限为可读可写可执行,但是这种设置电脑重启后,又会出现这种问题,还要重新设置.因此查询资料,可以用下面方法。
2.永久解决方法
1)查看i2c-1设备信息可以获取机器的“KERNEL ”,“SUBSYSTEM”的值;
$udevadm info -a /dev/i2c-1
2)添加规则文件, 一般前缀数字越小优先级越高
$sudo touch /etc/udev/rules.d/50-myi2c.rules
3)文件内添加内容:
$sudo vim /etc/udev/rules.d/50-myi2c.rules
复制下面的文字到文件中:
# == 作用是条件匹配,= 作用是条件匹配成功后赋值
# KERNEL 代表设备名,SUBSYSTEM 代表设备所在子系统名
KERNEL=="i2c-1", SUBSYSTEM=="i2c-dev", GROUP="users", MODE="0666"
4):wq保存退出
5)增加或修改规则文件后重载规则
$sudo udevadm control --reload
6) 重启机器
$sudo reboot
7)重新测试程序不在报错。