在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 7376|回复: 6

[求助] I2C中速率的设置问题

[复制链接]
发表于 2011-9-5 15:22:33 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
我想请问下,I2C中有三个模式:标准模式:100Kbit/s,快速模式:400kbit/s,高速模式:3.4Mbit/s.这个应该是指SCL的频率吧?
     我写的主机位控制模块中,写和读状态需要,w_a,w_b,w_c,w_d四个状态来完成,相当于Fscl=Fclk_sys/4,那如果我想设定I2C在快速模式下工作,是不是就根据前面那个公式转换得Fclk_sys=4*Fscl=4*400K=1600KHz,只要设定我的系统时钟为1600KHz,就表示快速模式?
    我在网上下了一个代码,其中有这样的解释:
// Timing:     Normal mode      Fast mode
///////////////////////////////////////////////////////////////////////
// Fscl        100KHz           400KHz
// Th_scl      4.0us            0.6us   High period of SCL
// Tl_scl      4.7us            1.3us   Low period of SCL
// Tsu:sta     4.7us            0.6us   setup time for a repeated start condition
// Tsu:sto     4.0us            0.6us   setup time for a stop conditon
// Tbuf        4.7us            1.3us   Bus free time between a stop and start condition、
怎么SCL高电平和低电平的占空比都不一样,而且通过计算也不是精确的数,这是为什么?请高手解释下。谢谢。。。。。
发表于 2011-9-5 15:25:31 | 显示全部楼层
我之前做过,时钟似乎要求不是很严格,看看你要控制的器件的datasheet,应该是有一个范围的,只要时钟在这个范围,占空比满足一定要求就没问题。
发表于 2011-9-5 16:08:38 | 显示全部楼层
没错,SCL占空比不需要固定,只要满足它的要求就可以
发表于 2011-9-5 17:06:19 | 显示全部楼层
I2C的SCL没具体规定吧
 楼主| 发表于 2011-9-5 19:44:53 | 显示全部楼层
回复 2# buley


    我老师只是让我实现I2C协议,没有说什么控制器件,那我就不用管时钟了吧?
 楼主| 发表于 2011-9-5 19:45:49 | 显示全部楼层
回复 3# falloutmx


    请问你说的满足要求,就是指主从机收发数据的要求吧?
发表于 2011-9-5 22:59:17 | 显示全部楼层
回复 5# 刺猬精灵


应该是这样。因为几乎每个I2C器件手册都会详细定义其I2C接口的速率和时序的,到时候你在照着调整就完了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条

×

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-5-2 15:41 , Processed in 0.035754 second(s), 9 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表