2019-08-11 18:32发布
Q1:不应该大于4us吗?是我搞错什么了吗?
AT24C02 IIC 时序
时间参数
Q2:不是很理解最后那里延时10ms的作用
15767909146 发表于 2017-10-22 15:59 你好 可是正点的例程运行起来也没错呢
DreamWaterPro 发表于 2017-10-26 00:21 A1:emmm。。。这个应该得看目标器件的数据手册。 在AR24C02数据手册的第7页,图2:
最多设置5个标签!
在AR24C02数据手册的第7页,图2:
AT24C02 IIC 时序
可以看到标记的SDA有效位的保持时间为tHIGH。而在数据手册的第5页,表五中第三行:
时间参数
可以看到SDA有效位保持时间的取值范围是0.6us~4.0us。因此来讲正点原子例程给了2us的延时,对于AT24C02来讲是正确的.
应当说明,我个人在调试IIC总线的时候曾经使tHIGH长达数秒,但是依旧能够完成通信;但是如果太短,会造成通信失败。宁长不要短吧。
A2:这个主要是对AT24C02加的,由于AT24C02接收到写入指令之后,真正将数据写入到EEPROM存储体中需要花费一定的时间,故留出10ms的延时。
这里有个同样的问题,可以参考:
http://www.openedv.com/forum.php?mod=viewthread&tid=231333
另附上AT24C02的数据手册以供参考。
AT24C02数据手册
以上。
你看时序图的时间,它是有范围的,但不一定准确
有没有试过不延时或延时少了有什么后果?
我觉得应该是保证EEPROM足够时间写入。
原来如此
一周热门 更多>