[求助] GPIO模拟I2C操作EEPROM问题请教

喜鹊王子   2019-4-1 17:06 楼主
EEPROM的Datasheet中有如下的描述,如果使用GPIO模拟I2C来操作EEPROM,1)如何区分是Standard(100kHz)还是Fast(400kHz)?2)下面的时间如何运用,比如对于standard模式,tHD:STA + tSU:STA至少为8.7us(时钟信号为高电平),而时钟周期为10us,高电平应为5us,tHD:STA + tSU:STA已经超过了这个时间,怎么解释?此外,由于给出的都是Min,那么GPIO操作之后需要延时多久该如何确定?
tHD:STA START Condition Hold Time
tSU:STA START Condition Setup Time
tSU:STO STOP Condition Setup Time
tBUF Bus Free Time Between STOP and START

AC characteristics.JPG

bus timing.JPG



回复评论 (7)

最小值、最大值都是不能超过的,可以更慢,慢没有下限,快则不行,有上限。注意频率和周期的概念,最高频率对应的是最小周期。
上传了一些书籍资料,也许有你想要的:https://download.eeworld.com.cn/user/chunyang
点赞  2019-4-1 17:28
引用: chunyang 发表于 2019-4-1 17:28
最小值、最大值都是不能超过的,可以更慢,慢没有下限,快则不行,有上限。注意频率和周期的概念,最高频率 ...

GPIO模拟时钟信号时,其高电平和低电平的时间必须一样吗?比如100kHz,高点电平都必须是5us?
点赞  2019-4-1 17:37
引用: 喜鹊王子 发表于 2019-4-1 17:37
GPIO模拟时钟信号时,其高电平和低电平的时间必须一样吗?比如100kHz,高点电平都必须是5us?

不用这么严格。
点赞  2019-4-1 20:52
引用: 喜鹊王子 发表于 2019-4-1 17:37
GPIO模拟时钟信号时,其高电平和低电平的时间必须一样吗?比如100kHz,高点电平都必须是5us?

不需要精确,不短于极限并满足时序即可。
上传了一些书籍资料,也许有你想要的:https://download.eeworld.com.cn/user/chunyang
点赞  2019-4-2 17:54
感觉高于最低就可以
为江山踏坏了乌骓马,为社稷拉断了宝雕弓。
点赞  2019-4-2 17:56
引用: chunyang 发表于 2019-4-2 17:54
不需要精确,不短于极限并满足时序即可。

规格书上给出了100k和400k两种时钟频率的参数,但是用GPIO来模拟的话,可能是300k的时钟频率,这时的那些时间参数该怎么选取?
点赞  2019-4-3 14:22
引用: 喜鹊王子 发表于 2019-4-3 14:22
规格书上给出了100k和400k两种时钟频率的参数,但是用GPIO来模拟的话,可能是300k的时钟频率,这时的那些 ...

该二值均为Max极值,采用标准模式不能超出100KHz,采用快速模式不能超出400KHz。显然,你若用300KHz,只能使用快速模式。下限无所谓,低于100KHz随你用标准模式还是快速模式,都行。
上传了一些书籍资料,也许有你想要的:https://download.eeworld.com.cn/user/chunyang
点赞  2019-4-3 16:26
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复