i2c-tools的使用方法及举例
i2c-tools的使用方法
最近在调试ADV7401,调试的过程难免要反复修改寄存器,然后看结果现象。传统的做法是修改驱动代码寄存器值->编译->下载->运行->看结果,这一过程比较费时间,而我每次需要改的可能只是1个bit,有没有更便捷的方法呢?
在浏览TI E2E论坛时发现有人用一个叫i2c-tools的工具,没有使用过,从官网下载后发现很好用也很便捷,非常适合81xx平台的使用,现简单介绍使用方法:
一、下载i2c-tools,交叉编译
1、从开源网站http://dl.lm-sensors.org/i2c-tools/releases/下载i2c-tools,我使用的是3.0.2的版本。
2、解压后的目录结构如下:
最有用的是tools/文件夹,接下来修改Makefile,主要是修改交叉编译器,如下图所示
然后保存退出。直接make,进行编译。编译完成后在tools/文件夹下会有如下几个可执行文件,i2cdetect, i2cdump, i2cget, i2cset。如下图所示:
将i2cdetect, i2cdump, i2cget, i2cset拷贝到你的nfs调试目录,就可以进行操作了。
二、使用举例
1、用i2cdetect检测有几组i2c总线在系统上,输入:./i2cdetect -l
由上图可知,系统中存在两组总线分别i2c-1和i2c-2。
2、用i2cdetect检测挂载在i2c总线上器件,输入 ./i2cdetect-r -y 1(检测i2c-1上的挂载情况)
由上图可知,0x18,0x20,0x30,0x34, 0x64地址有挂载。而这几个分别是0x18(tlv3104),0x20(adv7401), 0x30, 0x34(sii9135),0x64(这个不知道是谁,可能是系统的)
3、用i2cdump查看器件所有寄存器的值,这个很有用,输入 ./i2cdump -f -y 1 0x20 (查看adv7401寄存器值)
这样就可以对比自己设置的是否一致了。
3、用i2cset设置单个寄存器值,用i2cget读取单个寄存器值,可以在初期调试时发挥很大作用,一旦有预期的现象出现,就可以用i2cdump读出整个寄存器的值,然后固化到代码中。
上图是i2cset和i2cget使用方法:
./i2cset -f -y 1 0x20 0x77 0x3f (设置i2c-1上0x20器件的0x77寄存器值为0x3f)
./i2cget -f -y 1 0x20 0x77 (读取i2c-1上0x20器件的0x77寄存器值)
i2c-tools的使用方法及举例的更多相关文章
- 在android下使用i2c tools
在android使用i2c tools访问i2c,很方便,可以在https://launchpad.net/ubuntu/+source/i2c-tools 下载最新的i2c tools. 把i2c- ...
- linux i2c tools
最近要操作eeprom,所以了解一下i2c-tool的使用方法,记录于此. 参考链接: http://www.myir-tech.com/bbs/thread-7567-1-1.html http:/ ...
- 安装vmware tools失败解决方法
失败提示: reating a new initrd boot image for the kernel. update-initramfs: Generating /boot/initrd.img- ...
- Ubuntu系统安装VMware Tools的简单方法
不少网友反映在VMWare虚拟机下安装Ubuntu系统后无法安装VMware Tools,这里给出一个简单方法,只需要几步即可解决. 第一步:进入系统后,点击虚拟机上的安装vmware tools,回 ...
- [RK3288][Android6.0] 调试笔记 --- 测试I2C设备正常传输方法【转】
本文转载自:http://blog.csdn.net/kris_fei/article/details/71515020 Platform: RockchipOS: Android 6.0Kernel ...
- php中常用魔术方法的举例
魔术方法是php面向对象特有的功能,并且有时候能实现意想不到的效果,包括前面提到的构造函数.析构函数.还有__clone函数,另外再简单的介绍几个: 1.__toSring和__invoke clas ...
- Apache Ant运行时Unable to locate tools.jar解决方法
下载Apache Ant 一.解压ant安装包在D:\ant下 二.环境变量配置 ANT_HOME D:\ant\apache-ant-1.9.0 CLASSPATH ;%ANT_HOME%lib; ...
- 【转】树莓派学习笔记——I2C Tools 学习笔记
原文网址:http://blog.csdn.net/xukai871105/article/details/15029843 1.安装 I2C驱动载入和速率修改请查看博文[树莓派学习笔记——I ...
- python笔记之列表与元组函数和方法使用举例
在学习列表之前先了解了raw_input和input的区别:(仅适用于版本2,版本3中raw_input和input合并,没有raw_input) input的语法为:input("str& ...
随机推荐
- 2015最流行的Android组件、工具、框架大全(转)
转自:2015最流行的Android组件.工具.框架大全 Android 是目前最流行的移动操作系统之一. 随着新版本的不断发布, Android的功能也日益强大, 涌现了很多流行的应用程序, 也催生 ...
- Python学习总结之四 -- 这就是Python的字典
字典原来是这么回事儿 Python学习到现在,我们已经知道,如果想将值分组到结构中,并且通过编号对其进行引用,列表就可以派上用场.不过,今天,我们将学到一种通过名字引用值的数据结构,应该知道这种数据类 ...
- 统计分析表的存储过程遇ORA-00600错误分析与处理
1. 统计分析表的存储过程部分内容 CREATE OR REPLACE procedure SEA.sp_analyze_XXX_a is v_sql_1 varchar ...
- NUTCH2.3 hadoop2.7.1 hbase1.0.1.1 solr5.2.1部署(二)
Precondition: hadoop 2.7.1 hbase 1.0.1.1 / hbase 0.98.13 192.168.1.106 ->master 192.168.1.105 ...
- leetcode笔记:Pow(x, n)
一. 题目描写叙述 Implement pow(x, n). 二. 题目分析 实现pow(x, n).即求x的n次幂. 最easy想到的方法就是用递归直接求n个x的乘积,这里须要依据n的值,推断结果是 ...
- c++编码习惯
1 大驼峰命名法 类名和函数名由单词构成,每个单词的首字母大写. 2 函数命名 大驼峰命名法. 3 类命名 大驼峰命名,但是为了和函数名区分开,在前面加上一个大写的C.
- 镜像回源主要用于无缝迁移数据到OSS,即服务已经在自己建立的源站或者在其他云产品上运行,需要迁移到OSS上,但是又不能停止服务,此时可利用镜像回写功能实现。
管理回源设置_管理文件_开发指南_对象存储 OSS-阿里云 https://help.aliyun.com/document_detail/31865.html 通过回源设置,对于获取数据的请求以多种 ...
- 去ioe
http://baike.baidu.com/link?url=ntILcQyM_S7rpsbUrVu7vLEKHXNfSlJyWdWQnUo9LYO7JfoOpDEvbKldXobL0_nUEkXn ...
- 【题解】NOI2015软件包管理器
[题解][P2146 NOI2015]软件包管理器 实际上就是树链剖分板子题. 对于\(install\)操作,直接查询它到\(0\)节点有多少已经安装了的,再用总数减去它. 对于\(uninstal ...
- 【剑指Offer学习】【面试题33:把数组排成最小的数】
题目:输入一个正整数数组,把数组里全部数字拼接起来排成一个数.打印能拼接出的全部数字中最小的一个. 样例说明: 比如输入数组{3. 32, 321},则扫描输出这3 个数字能排成的最小数字321323 ...