OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 2913|回复: 0

Videostrong商显主板RK3288 I2C 通讯介绍资料

[复制链接]

60

主题

62

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
417
金钱
417
注册时间
2018-4-2
在线时间
42 小时
发表于 2018-6-15 10:19:42 | 显示全部楼层 |阅读模式
Videostrong商显主板RK3288 I2C 通讯介绍资料
1 Rockchip I2C功能特点
I2C(Inter-Integrated Circuit)总线是由PHILIPS 公司开发的两线式串行总线,用于连接微控制器及其外围设备; I2C总线控制器支持主模式作为桥之间 AMBA 协议和泛型I2C 总线系统。Rockchip I2C 控制器支持下列功能︰
 项目兼容 I2C 总线
 支持主模式下的 I2C 总线
 软件可编程时钟频率和传输速率高达 1000Kbit/秒
 支持 7 位和 10 位寻址模式
 中断或轮询驱动多个字节数据传输
 时钟拉伸和等待状态

2 DTS节点配置
DTS节点配置可参考kernel文件: Documentation/devicetree/bindings/i2c/i2c-rk3x.txt 需要配置项:
1. I2C速率配置: 一般配置400k,100k(默认,可不填),200k,1000k;
400k示例: clock-frequency = <400000>;
2. i2c_clk上升沿时间, 下降沿时间;
当需要I2C速率配置超过100k时,i2c_clk 上升沿和下降沿时间一定需要通过示波器测量得出;因为I2C 协议标准里面对上升沿和下降沿时间有规定要求特别是上升沿时间,如果超过了协议规定的最大值,则I2C通讯可能失败,下面是协议里面规定的最大最小值范围

上升沿Tr,下降沿Tf,分别取30%~70%的波形时间:


3. 以上两项不配置则将默认按上升沿和下降沿的max值来计算,得到的CLK速度将近90k。 默认使用100k的max值是1000ns,基本上大多数硬件都是符合的,所以可以不填,如果要求不高的话。
4. I2C1+es8316 codec 示例说明,需要I2C时钟400k,示波器所测得Tr=164ns,Tf=15ns:
&i2c1 { status = "okay"; i2c-scl-rising-time-ns = <164>; i2c-scl-falling-time-ns = <15>; clock-frequency = <400000>; es8316: es8316@10 { #sound-dai-cells = <0>; compatible = "everest,es8316"; reg = <0x10>; clocks = <&cru SCLK_I2S_8CH_OUT>;

clock-names = "mclk"; spk-con-gpio = <&gpio0 11 GPIO_ACTIVE_HIGH>; hp-det-gpio = <&gpio4 28 GPIO_ACTIVE_LOW>; }; };


正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-25 12:35

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表