I2C GPIO接口测试
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、测试命令
1、读取I2C-1-20的值
i2cget -f -y 1 0x20 0x00 w
注:
i2cget :读取i2c设备的命令
-f :是强制读取(force)忽略设备的状态(busy)
-y :同意执行(yes)
1 :i2c接口总线号(i2c0)
0x20 :i2c gpio设备pcf8575的i2c地址
0x00 :pcf8575内部寄存器存储P0-P7 P10-P17接口的数据
w :一次读取16bit数据可换成b 读取8bit数据(P0-P7)
2、设置I2C-1-20的值
i2cset -f –y 1 0x20 0xef 0x00
i2cset :设置i2c设备的命令
-f :是强制读取(force)忽略设备的状态(busy)
-y :同意执行(yes)
1 :i2c接口总线号(i2c0)
0x20 :i2c gpio设备pcf8575的i2c地址
0xef :P0口的值高四位为输出控制led灯第四位为输入读取按键值(0xXf形式)0x00 :P1口的值
2、其他I2C命令
1》i2cdump -f -y 1 0x20 读取所有设备寄存器的值
2》i2cdetect -y -l 查询i2c总线信息
3》i2cdetect -y -a -r 1 查看所有总线设备
二、I2C GPIO LED测试步骤
i2cset -f -y 1 0x20 0xef 0x00 DS2-LED灯亮
i2cset -f -y 1 0x20 0xdf 0x00 DS3-LED灯亮
i2cset -f -y 1 0x20 0xbf 0x00 DS4-LED灯亮
i2cset -f -y 1 0x20 0x7f 0x00 DS5-LED灯亮
i2cset -f -y 1 0x20 0x0f 0x00 全亮
i2cset -f -y 1 0x20 0xff 0x00 全灭
三.I2C GPIO KEY 测试步骤
使用i2cget -f -y 1 0x20 0x00 b 命令读取键值后四位有效
SW2-1闭合时键值为0xfe
SW2-2闭合时键值为0xfd
SW2-3闭合时键值为0xfeb
SW2-4闭合时键值为0xf7
全部打开时键值为0xff
全部闭合时键值为0xf0
四、测试原理
1、使用工具有i2c-tools-3.0.3编译生成
2、也可通过/sys/bus/i2c接口控制
五、应用程序开发
1、参考i2c-tools-3.0.3源代码
2、参考linux内核Documentation/i2c目录下的文档
六、vs子板I2C0 GPIO测试
1、只需将设备地址修改为0x21
七、vs子板I2C1 GPIO测试
1、只需将设备号由1 改为2