#!/system/bin/busybox ash

#
# I.MX6 Android Linux shell MMPF0100 i2c 获取数据
# 说明:
# 本文主要记录通过shell脚本来获取MMPF0100的数据,更多的是为了更为
# 方便的获取到数据,在进行一些调试的时候能够更有效。
#
# -- 深圳 南山平山村 曾剑锋
# # 检查参数个数
if [ $# -lt ]; then
echo "USAGE:"
echo " i2cData.sh <curPage> <firstAddress(hex)> <byteCount(hex)>"
exit
fi curPage=$ # 从第几页开始获取
byteCount=$(($)) # 一次获取多少个字节
firstAddress=$(($)) # 获取字节的首地址 i2cBusNumber= # 采用哪个i2c总线
deviceAdress="0x08" # i2c设备地址
pageRegAddress="0x7f" # 存放页的寄存器地址 # 设置MMPF0100地址页
./i2cset -f -y $i2cBusNumber $deviceAdress $pageRegAddress $curPage # 显示一些参数
echo " currentPage : $curPage"
echo " firstAddress : $firstAddress"
echo " byteCount : $byteCount"
echo " i2cBus : /dev/dev-i2c$i2cBusNumber"
echo " deviceAdress : $deviceAdress"
echo "pageRegAddress : $pageRegAddress"
echo # 显示行对应的数
busybox printf " 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F"
echo # i是计数变量
i=$firstAddress
firstLine=true # 用于判断第一行是否需要填充0
while [ $i -lt $(($byteCount+$firstAddress)) ]
do
# 16个字节一行,换行并输出行号
if [ $((i%)) -eq ];then
busybox printf "\n0x%x0 " $((i/))
firstLine=false
else
# 用于填充一行前面的0,更多的方便16进制查看数据
if $firstLine ;then
padZero=$((i%))
busybox printf "\n0x%x0 " $padZero # 循环填充数据
j=
while [ $j -lt $padZero ]
do
busybox printf ""
j=$((j+)) done
firstLine=false
fi
fi # 读取数据
data=`./i2cget -f -y $i2cBusNumber $deviceAdress $i`
busybox printf " %02x" $data i=$((i+))
done echo # 输出结果:
# root@android:/data/local # ./i2cData.sh 0x10 0x50
# currentPage :
# firstAddress :
# byteCount :
# i2cBus : /dev/dev-i2c1
# deviceAdress : 0x08
# pageRegAddress : 0x7f
#
# 0A 0B 0C 0D 0E 0F
#
# 0x10 3f
# 0x20 2b 1b 2b 0c c4 2b 1b
# 0x30 2b 0c c4 0c d4 2c 2c 2c 0c
# 0x40 e4 2c 2c 2c 0c e4 6f 6f 6f 0c f4
# 0x50
# root@android:/data/local #

I.MX6 Android Linux shell MMPF0100 i2c 获取数据的更多相关文章

  1. I.MX6 Android Linux shell MMPF0100 i2c 设置数据

    #!/system/bin/busybox ash # # I.MX6 Android Linux shell MMPF0100 i2c 设置数据 # 说明: # 本文主要记录通过shell脚本来设置 ...

  2. I.MX6 Android Linux UART send receive with multi-thread and multi-mode demo

    /******************************************************************************************* * I.MX6 ...

  3. android linux shell 日期设置

    /************************************************************************ android linux shell 日期设置 * ...

  4. I.MX6 Android shutdown shell command

    /******************************************************************************* * I.MX6 Android shu ...

  5. Linux shell自动读mongo数据、远程获取文件大小示例脚本

    1.示例1 功能:对mongoDB导出数据,根据sid的不同状态进行统计 技术点:shell bash  读写文件.字符串截取.函数.用多个文件提到的map.grep查找并赋值给变量 #!/bin/b ...

  6. Linux Shell脚本中获取本机ip地址方法

    ifconfig -a|grep inet|grep -v 127.0.0.1|grep -v inet6|awk '{print $2}'|tr -d "addr:"​ 命令解释 ...

  7. linux shell通过curl获取HTTP请求的状态码

    直接上代码: curl -I -m -o /dev/null -s -w %{http_code} www.baidu.com 参数说明: -I 仅测试HTTP头 -m 10 最多查询10s -o / ...

  8. android与c#之间scoket获取数据进行赋值显示的问题

    Android端发送的信息为:“手机号码,低压,高压,心率”. 需要实时的将接收到的信息显示到“数据栏”中,但是在执行监听任务的时候,启用了一个主线程,在接收数据的时候直接将数值复制给文本框会出现错误 ...

  9. linux shell获取键盘输入

    linux shell从键盘获取输入 代码1: #!/bin/bash #提示“Input your choice:”,把用户的输入保存入变量choice_user中read -p "Inp ...

随机推荐

  1. Treimu更新记录1.2.9.0

    Treimu是一个WPF音乐播放器个人小项目.程序集文件:http://pan.baidu.com/s/1pJLSHsB项目源代码:http://pan.baidu.com/s/1jGHtjfC 1. ...

  2. Linux下mail/mailx命令发送邮件

    最近看到项目中经常会用mail/mailx命令发送由java程序生成的report,比较新鲜.下面就简单介绍下mail/mailx命令用法.本文以mail命令举例(mail/mailx)效果都是一样的 ...

  3. Matlab生成.dll文件在.NET中加载失败与平台的关系及解决方案

    问题链接地址:http://bbs.elecfans.com/forum.php?mod=viewthread&tid=207995

  4. Microsoft Office Excel 不能访问文件

    问题描述: Microsoft Office Excel 不能访问文件“XX.xls”.可能的原因有: 1 文件名称或路径不存在.2 文件正被其他程序使用.3 您正要保存的工作簿与当前打开的工作簿同名 ...

  5. 【趟坑】公共引用的jar包 pom的配置方法

    http://www.cnblogs.com/viewcozy/p/4789877.html 接上一篇 ,内部moudule生成jar的方式 上一篇已经实现了,想把jar作为公共的部分让任何项目都可以 ...

  6. EXTJS API

    EXTJS API 链接: http://docs.sencha.com/extjs/5.0.0/ http://docs.sencha.com/extjs/4.2.2/ http://docs.se ...

  7. (转载)shell日志分析常用命令

    shell日志分析常用命令总结 时间:2016-03-09 15:55:29来源:网络 导读:shell日志分析的常用命令,用于日志分析的shell脚本,统计日志中百度蜘蛛的抓取量.抓取最多的页面.抓 ...

  8. 5.1:FactoryBean的使用

    5.1  FactoryBean的使用 一般情况下,Spring通过反射机制利用bean的class属性指定实现类来实例化bean .在某些情况下,实例化bean过程比较复杂,如果按照传统的方式,则需 ...

  9. MySQL Replication 常用架构

    转自: http://www.cnblogs.com/ggjucheng/archive/2012/11/13/2768879.html 前言 MySQLReplicaion本身是一个比较简单的架构, ...

  10. 【更新链接】U盘启动制作工具(UDTOOL) v3.0.2014.0427

    [校验值] 文件: UDTOOLV3_Setup.exe大小: 525 MB版本: 3.0.2014.0427时间: 2014年4月27日MD5: 2E5187B7D9081E8A69B4DC45C8 ...