I2C的叫法其实需要纠正下,这是大家常见的广泛错误叫法,正确的叫法为I平方C(I²C),但是大家约定俗成了,也就I2C都这么叫。
IIC(Inter-Integrated Circuit)其实是IICBus简称,所以中文应该叫集成电路总线,它是一种串行通信总线,使用多主从架构,由飞利浦公司在1980年代为了让主板、嵌入式系统或手机用以连接低速周边设备而发展的。
I2C串行总线一般有两根信号线,一根是双向的数据线SDA,另一根是时钟线SCL。所有接到I2C总线设备上的串行数据SDA都接到总线的SDA上,各设备的时钟线SCL接到总线的SCL上。其中的SDA是传输数据,SCL是同步收发的作用。
查看外设
先获取外设的权限
sudo usermod -a -G i2c jetson #jetson 为用户名
然后安装查看工具
sudo apt-get install libi2c-dev i2c-tools
这里可能会出错,一般都是镜像的问题,使用国内的,下面列出有阿里和清华的镜像(本人使用清华镜像是可以的)
先备份
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
阿里镜像:
deb http://mirrors.aliyun.com/ubuntu/deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
清华镜像:
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic main multiverse restricted universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-security main multiverse restricted universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-updates main multiverse restricted universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-backports main multiverse restricted universe
deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic main multiverse restricted universe
deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-security main multiverse restricted universe
deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-updates main multiverse restricted universe
deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-backports main multiverse restricted univers
编辑:
cat vim /etc/apt/sources.list
删除里面的镜像源,复制粘贴上面其中的镜像源之后,输入":wq 回车"进行保存退出
如果镜像有问题,我们可以删除镜像内容文件,然后将备份的名称修改回来,或者再换一个镜像源试下:
sudo rm /etc/apt/sources.list
sudo mv /etc/apt/sources.list.bak /etc/apt/sources.list
用i2cdetect检测有几组i2c总线在系统上:
i2cdetect -l
i2c-3i2c 7000c700.i2c I2C adapter
i2c-1i2c 7000c400.i2c I2C adapter
i2c-8i2c i2c-6-mux (chan_id 1) I2C adapter
i2c-6i2c Tegra I2C adapter I2C adapter
i2c-4i2c 7000d000.i2c I2C adapter
i2c-2i2c 7000c500.i2c I2C adapter
i2c-0i2c 7000c000.i2c I2C adapter
i2c-7i2c i2c-6-mux (chan_id 0) I2C adapter
i2c-5i2c 7000d100.i2c I2C adapter
用i2cdetect检测挂载在i2c-1总线上器件:
i2cdetect -r -y 1
