添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

在进行II2相关程序的开发时候,很多时候我们必须要确认硬件是否连接征程,设备是否按照我们的设想正常工作,设备地址多少。因此我们需要一个I2C tools来帮助我们

linux下安装

在控制台输入:

sudo apt-get install i2c-tools

等待安装成功,需要我们使用

sudo i2cdetect -l

命令来查看是否安装成功。

I2C设备查询:

sudo i2cdetect -y 1

命令是扫描我们总线bus上所有i2c设备,并且打印出设备i2c总线地址
这里写图片描述

如图0x40 为pwm舵机驱动板的I2C总线地址

  • 注意: 每次启动树莓派都可能出现I2C设备载入异常的情况
    这里写图片描述
    这时,需要重新装在i2c。命令如下
sudo modprobe -r i2c_bcm2708   #卸载设备  -r代表remove
sudo modprobe i2c_bcm2708   #重新载入设备

然后重复最开始,查看i2c设备运行是否正常。

寄存器数据导出

使用命令:

sudo i2cdump -y 1 0x77

即可导出地址为0x77设备的数据

参数 含义
-y 代表取消用户交互过程,直接执行命令
1 代表I2C设备号
0x77 代表I2C设备地址

寄存器数据写入

使用如下命令行:

sudo i2cset -y 1 0x77 0x99 0x55

即可向设备地址为0x77的0x90寄存器地址写入0x55

参数 含义
-y 代表取消用户交互过程,直接执行命令
1 代表I2C设备号
0x77 代表I2C设备地址
0x90 代表寄存器地址
0x55 代表向寄存器写入的数据

寄存器数据读出

使用如下命令:

sudo i2cget -y 1 0x77 0x90

即可读出总线地址为0x77设备的0x90寄存器地址的数据

参数 含义
-y 代表取消用户交互过程,直接执行命令
1 代表I2C设备号
0x77 代表I2C设备地址
0x90 代表寄存器地址
前言在进行II2相关程序的开发时候,很多时候我们必须要确认硬件是否连接征程,设备是否按照我们的设想正常工作,设备地址多少。因此我们需要一个I2C tools来帮助我们linux下安装在控制台输入:sudo apt-get install i2c-tools等待安装成功,需要我们使用sudo i2cdetect -l命令来查看是否安装成功。使用I2C设备查询:sudo i2cdetect -y 1命令 i2c-tools是一款开源工具,专门用来调试i2c 设备 ,目前Tina系统已经集成了i2ctools源码,在menuconfig里打开配置编译即可。 Android的话可以从开源网站http://dl.lm-sensors.org/i2c-tools/releases/下载i2c-tools, 然后修改makefaile编译即可,会生成4个文件, 将这四个文件i2cdetect, i2cdump, i2cget, i2cset push到安卓
I2C总线通信原理 I2C总线简介 I2C总线是由Philips公司开发的一种简单、双向二线制同步串行总线。用于连接微控制器以及其外围 设备 ,是微电子通信控制领域广泛采取的一种总线标准。他是同步通信的一种特殊形式,具有接口线少,控制方式简单,期间封装形式少,通信速率高等优点。 I2C总线特征 两条总线,一条是串行数据线SDA,一条串行时钟线SCL来完成数据的传输及外围期间的扩展。 I2C总线上的每一个 设备 都可以作为主 设备 和从 设备 ,而且每一个 设备 都会对应一个唯一的地址。 I2C总线数据传输速率在标准模式下可达
SYNOPSIS i2cdetect[-y] [-a] [-q|-r]i2cbus[first last]i2cdetect-Fi2cbusi2cdetect-Vi2cdetect-l DESCRIPTION i2cdetect is a userspace program to scan an I2C bus for devices. It outputs a table with the list of dete...