打印

为什么 IIC 总线对上升时间有要求?

[复制链接]
4943|37
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
yb430|  楼主 | 2017-8-16 19:31 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
沙发
xyz549040622| | 2017-8-16 20:55 | 只看该作者
假设超过这个时间,就不会被认为是上升了,就会被认为是持续了一段时间的低电平或者高电平了。

使用特权

评论回复
板凳
yb430|  楼主 | 2017-8-16 21:12 | 只看该作者
xyz549040622 发表于 2017-8-16 20:55
假设超过这个时间,就不会被认为是上升了,就会被认为是持续了一段时间的低电平或者高电平了。 ...

快速模式是300ns,标准模式是1us,快速模式的器件在标准模式的总线上不能用?

使用特权

评论回复
地板
xyz549040622| | 2017-8-16 21:22 | 只看该作者
这个应该是STM32的I2C的介绍吧。I2C器件应该都是支持100k-400k的速率的,这个在器件的介绍中应该都有说明的。100k就是标准模式,400k就是快速模式。除非器件的手册说这个器件最大支持100k的速率,那么他就不能用快速模式了。

使用特权

评论回复
5
yb430|  楼主 | 2017-8-16 22:21 | 只看该作者
xyz549040622 发表于 2017-8-16 21:22
这个应该是STM32的I2C的介绍吧。I2C器件应该都是支持100k-400k的速率的,这个在器件的介绍中应该都有说明的 ...

不是STM32的介绍,是I2C总线规范。
我觉得快速模式的器件应该可以用在标准模式总线上。但快速模式上升沿最大300ns,标准模式的1us看起来超标了。

使用特权

评论回复
6
xyz549040622| | 2017-8-16 22:39 | 只看该作者
yb430 发表于 2017-8-16 22:21
不是STM32的介绍,是I2C总线规范。
我觉得快速模式的器件应该可以用在标准模式总线上。但快速模式上升沿 ...

既然他快速模式可以运行,标准模式肯定也是可以的。降速运行肯定可以吧。

使用特权

评论回复
7
yb430|  楼主 | 2017-8-17 06:26 | 只看该作者
xyz549040622 发表于 2017-8-16 22:39
既然他快速模式可以运行,标准模式肯定也是可以的。降速运行肯定可以吧。 ...

我也认为降速应该是可以的。但我不知道上升沿最大300ns该如何理解,明显矛盾的嘛。
所以标题是:为什么 IIC 总线对上升时间有要求?

上升沿慢一点会有问题吗?慢到什么程度会有问题?道理是什么?
快速器件要求上升沿必须更快吗?如果是,那如何兼容标准器件?

使用特权

评论回复
8
山东电子小菜鸟| | 2017-8-17 08:37 | 只看该作者
yb430 发表于 2017-8-17 06:26
我也认为降速应该是可以的。但我不知道上升沿最大300ns该如何理解,明显矛盾的嘛。
所以标题是:为什么 I ...

支持楼主

使用特权

评论回复
9
kingkits| | 2017-8-17 09:27 | 只看该作者
主要是时钟有触发机制,当上升沿过长时,因为各种原因的干扰,可能会导致信号线在门限位置产生重复(误)触发。芯片在设计时有考虑过这个问题,但还要兼容快速响应真实的信号,因此在这里设置了一个最大时间限制。

使用特权

评论回复
10
datouyuan| | 2017-8-17 15:25 | 只看该作者
本帖最后由 datouyuan 于 2017-8-17 16:29 编辑

IC 总线的IO都是准双向的。下降时间由端口直接拉低,所以非常短。上升时间是由线对地电容和线的上拉电阻决定的,减小上拉电阻或缩短IIC导线能减少上升时间。上升时间和IIC器件是标准或快速无关。
在相同环境下,快速IIC和标准IIC的上升时间是一样的。假如该环境能达到快速器件的要求(上升时间小于300nS),自然就满足标准器件的要求(上升时间小于1000nS),不矛盾。假如该环境上升时间是600nS,只满足标准模式要求(上升时间小于1000nS),却不能满足快速模式要求(上升时间小于300nS),这时以快速模式操作可能会出错,以标准模式能正常工作。
快速器件要兼容标准器件,只需要用标准模式的时序就可以了。

使用特权

评论回复
11
feelhyq| | 2017-8-17 16:26 | 只看该作者
datouyuan 发表于 2017-8-17 15:25
IC 总线的IO都是准双向的。下降时间由端口直接拉低,所以非常短。上升时间是由线对地电容和线的上拉电阻决 ...

使用特权

评论回复
12
datouyuan| | 2017-8-17 16:42 | 只看该作者
本帖最后由 datouyuan 于 2017-8-17 17:03 编辑
yb430 发表于 2017-8-17 06:26
我也认为降速应该是可以的。但我不知道上升沿最大300ns该如何理解,明显矛盾的嘛。
所以标题是:为什么 I ...
上升沿慢一点会有问题吗?慢到什么程度会有问题?道理是什么?

楼主可以极端的考虑一下,假如IIC线对地并一个比较大的电容,这时不管以哪种模式的时序操作,IIC线上将不会出现高电平。

所以对上升沿有要求。

我估计稍微超出范围也没问题,但既然有这个标准,我们就尽量满足这标准。

使用特权

评论回复
13
songchenping| | 2017-8-17 16:59 | 只看该作者
主要是时钟决定的,总线需要足够的时间来识别数据发送结束后的总线释放。

使用特权

评论回复
14
NE5532| | 2017-8-18 08:32 | 只看该作者
是触发器都有要求,不是I2C才有。

使用特权

评论回复
15
pkuzhx| | 2017-8-19 09:31 | 只看该作者
快速模式要求<300,标准模式要求<1000。
假设快速器件上升沿是299,满足299<300,当然也满足299<1000,怎么就不能在标准模式下使用了?

使用特权

评论回复
16
linqing171| | 2017-8-19 17:09 | 只看该作者
上升沿占时间。
如果上升沿用一个小时,那么低电平和高电平时间再短,通讯速率也不可能快上去。

使用特权

评论回复
17
ddllxxrr| | 2017-8-20 07:40 | 只看该作者
因为,总线上有好几个器件,不给个时间限制,你老占道做什么呢

使用特权

评论回复
18
yb430|  楼主 | 2017-8-21 09:10 | 只看该作者
本帖最后由 yb430 于 2017-8-21 09:36 编辑
datouyuan 发表于 2017-8-17 15:25
IC 总线的IO都是准双向的。下降时间由端口直接拉低,所以非常短。上升时间是由线对地电容和线的上拉电阻决 ...

比方说,一群IIC标准器件正在愉快地玩耍(信号上升时间是1us),这时进来一个要求上升时间小于300ns的快速器件(从器件)。
从常识,新进来的器件肯定可以跟标准器件们一起玩耍。但快速器件指标要求的最大上升沿300ns该如何理解?好像有点矛盾的啊。


使用特权

评论回复
19
ningling_21| | 2017-8-21 10:26 | 只看该作者
yb430 发表于 2017-8-21 09:10
比方说,一群IIC标准器件正在愉快地玩耍(信号上升时间是1us),这时进来一个要求上升时间小于300ns的快速 ...

快速器件可以运行在标准速率下,但标准器件不能运行在快速模式下。

这里是最大值一般不运行在这个速率下,且主机支持这个速率才可以

使用特权

评论回复
20
datouyuan| | 2017-8-21 10:51 | 只看该作者
本帖最后由 datouyuan 于 2017-8-21 11:12 编辑
yb430 发表于 2017-8-21 09:10
比方说,一群IIC标准器件正在愉快地玩耍(信号上升时间是1us),这时进来一个要求上升时间小于300ns的快速 ...

我前面说那么多白说了。
这信号上升时间不由IIC器件决定,是由IIC器件所在的环境决定的。他们玩耍时的实际上升时间有可能只有10nS,当然满足(信号上升时间是1us)要求。快速器件只是对使用环境要求比标准器件严了些(300ns)。
假如这个环境造成信号上升时间明显大于1us,那标准器件也不能愉快的玩耍了。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

17

主题

74

帖子

0

粉丝