【开发工具】【i2c-tools】I2C总线调试工具(i2c-tools)的安装与使用
获取更多相关的嵌入式开发工具,可收藏系列博文,持续更新中:
【开发工具】嵌入式常用开发工具汇总帖
i2c-tools的安装
I2C Tools源码官网
http://i2c.wiki.kernel.org/index.php/I2C_Tools
安装步骤
- 下载i2c tools:
https://www.kernel.org/pub/software/utils/i2c-tools/
- 解压缩
tar -vxzf i2c-tools-4.1.tar.gz 注:小技巧:Linux下一般压缩文件后缀为.tar.bz2和.tar.gz, 它们解压命令有两三个选项是一致的: xf(v),前者再加上j选项,后者再加上z选项。
- 进入目录
cd i2c-tools-4.1/
- 编译、安装
make
或者
make USE_STATIC_LIB=1 //注:(使用静态库)
make install
- 完成
PS:可能遇到的问题
问题:
[root@localhost ~]# ./i2cdetect ./i2cdetect: error while loading shared libraries: libi2c.so.0: cannot open shared object file: No such file or directory
排查:
提升缺少libi2c.so.0动态库,最简单的一个办法就是编译的时候采用静态编译。
解决:
编译时添加参数,使用静态库编译
make USE_STATIC_LIB=1
i2c-tools的使用
i2c-tools软件包
i2c-tools软件包包含用于Linux的一组不同的I2C工具:
- i2cdetect – 用來列举I2C bus和上面所有的i2c设备
- i2cdump – 显示i2c设备所有register的值
- i2cget – 读取i2c设备上某个register的值
- i2cset – 写入i2c设备上某个register
这些工具曾经是lm-sensors程序包的一部分,但后来被拆分为一个单独的程序包。 此举的基本原理是,并非所有的硬件监视芯片都是I2C设备,也不是所有的I2C设备都是硬件监视芯片,因此将所有内容都封装在一个封装中是令人困惑和不切实际的。
i2c-tools的当前主要版本为版本4,只要内核中包含I2C支持,就支持所有版本的Linux。
命令举例
- 用i2cdetect检测有几组i2c总线在系统上,输入:
./i2cdetect -l
- 用i2cdetect检测挂载在i2c总线上器件,输入:
./i2cdetect -r -y 1
注:(检测i2c-1上的挂载情况)0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- 38 -- -- -- -- -- -- --
40: -- -- -- -- 44 -- -- -- 48 -- -- -- -- -- -- --
50: 50 -- -- -- UU -- -- -- -- -- -- -- -- 5d -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: 70 -- -- -- -- -- -- -
由上图可知,0x18,0x20,0x30,0x34,0x64地址有挂载。而这几个分别是0x18(tlv3104),
0x20(adv7401),0x30, 0x34(sii9135),0x64(这个不知道是谁,可能是系统的)
- 用i2cdump查看器件所有寄存器的值
i2cdump -f -y 0 0x70
- 用i2cset设置单个寄存器
i2cset -f -y 0 0x70 0x0 0x1 说明:
(设置i2c-1上0x20器件的0x77寄存器值为0x3f)
- 用i2cget获取单个寄存器值
i2cget -f -y 0 0x70 0x0说明:
(读取i2c-1上0x20器件的0x77寄存器值)
实例:
I2C总线号为0, I2C设备地址为0x20寄存器 Reg[0x06,0x07] 配置为 Val[0xC0,0x01]:
i2cset -f -y 0 0x20 0x6 0xC0
i2cset -f -y 0 0x20 0x7 0x01
寄存器 Reg[0x02,0x03] 配置为 Val[0x01,0x10];
i2cset -f -y 0 0x20 0x2 0x01
i2cset -f -y 0 0x20 0x3 0x10
参考:
i2c-tools的使用方法及举例
【开发工具】【i2c-tools】I2C总线调试工具(i2c-tools)的安装与使用相关推荐
- Keil MDK 和 IAR 两款ARM开发工具区别比较和Keil MDK 的下载,安装及常见问题解决
软件的开发工具在软件的开发过程中占很重要的地位,可以说是直接影响你软件开发的效率.比如:开发工具的常用功能.配置.以及优化等级. ARM处理器是英国Acorn有限公司设计的低功耗成本的第一款RISC微 ...
- 专接本汇编开发工具【Masm for Winodws 集成实验环境】安装细则
注意: 注:安装前一定将[360.腾讯管家.金山毒霸]等杀毒软件关闭,否则无法创建最终的快捷方式与执行环境. 汇编工具: 下载地址:[https://download.csdn.net/downloa ...
- 网络开发工具应用客户端下载Dreamweaver8在Windows XP中安装详解与步骤
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://1572091hyl10.blog.51cto.com/1562091/60184 ...
- 《嵌入式 – GD32开发实战指南》第21章 I2C
开发环境: MDK:Keil 5.30 开发板:GD32F207I-EVAL MCU:GD32F207IK 21.1 I2C工作原理 21.1.1 I2C串行总线概述 I2C总线是PHLIPS公司推出 ...
- Web开发工具大集合
网站开发者的一大苦恼,就是有太多的浏览器要应付.幸亏世界上有一些聪明的人,能够研究出一大些方便编辑和调试网页代码的好工具.不过,要从不计其数的小工具里面找出合适的可真不容易.这篇文章列出了几个最好用的 ...
- 浏览器开发工具的秘密
目录 常规 找到开发工具 用最新的开发版 移动开发工具位置 开发工具调试响应式设计 学习快捷键 Console 控制台 Log, Info, Debug, Warn, Error 输出数据表格 Ass ...
- 浏览器自带开发工具你知道多少?
常规 找到开发工具 快捷方式: "F12"(Windows) "Cmd"⌘ +"Option" +"I"(Mac) 右键 ...
- 白金译作 Web开发工具大集合——每个浏览器都有份的!
网站开发者的一大苦恼,就是有太多的浏览器要应付.幸亏世界上有一些聪明的人,能够研究出一大些方便编辑和调试网页代码的好工具.不过,要从不计其数的小工具里面找出合适的可真不容易.这篇文章列出了几个最好用的 ...
- 【翻译】25个浏览器开发工具的秘密
原文:http://www.andismith.com/blog/2011/11/25-dev-tool-secrets/ 作者:Andi Smith 翻译:25个浏览器开发工具的秘密 开发 过去几年 ...
- 微信小程序——账号及开发工具
1. 注册微信小程序账号 点击我进入微信公众平台 进入后点击立即注册 注册成功且登录后进入小程序管理后台 2. 安装开发者工具 点击进入开发文档 进入安装开发工具(稳定版本) 一路默认下一步进行安装 ...
最新文章
- [THUWC2017]随机二分图
- Windows 2008活动目录的安装和卸载
- 3 年工作经验程序员应有的技能
- 【BZOJ4407】于神之怒加强版
- [Web]Restful风格的适用场景
- 【超直白】leetcode 279 完全平方数
- 洛谷——P1024 [NOIP2001 提高组] 一元三次方程求解
- 几种线程池的实现算法分析
- 51. yii csrf
- centos7中使用LVM管理磁盘和挂载磁盘
- 丁磊力荐 网易卡搭编程构建国内首个开放生态
- 苹果所有常用证书,appID,Provisioning Profiles配置说明及制作图文教程
- SpringBoot项目启动 错误: 找不到或无法加载主类 com.abc.demo.DemoApplication
- adb 卸载android系统程序
- Openstack-T 之Neutron
- 错误与编程——抛弃 C程序设计 中的谬误与恶习
- (四) appium-desktop 脚本录制常用AW使用介绍
- 思杰pvs服务器压力无法最大化,XXX学校桌面虚拟化方案剖析.docx
- 03-Python正则表达式
- 陆奇:开源开发是更优越的开发方式
热门文章
- java 中文数字排序_java 中文数字排序方法
- 空间权重矩阵(SWM)
- Wireless Network概念解析
- linux版锐捷认证客户端,Linux/UNIX锐捷802.1x网络的认证客户端:RuijieClient 0.7发布
- 数据挖掘之apriori算法(python实现详细注释)
- 通达OA二次开发 小飞鱼工作流开发快捷CRM解决方案
- 推荐一款优秀的注册表和临时文件等清理软件-CCleaner
- wps是计算机应用软件吗,wps word属于什么软件
- ZEMAX基础光学设计笔记(一)
- Excel 2016新增函数之MaxIFS、MinIFS