i2c_slave起始条件和结束条件
时间:10-02
整理:3721RD
点击:
设计i2c slave时一般会选用一个快的时钟来采sda和scl信号,借此来产生一个起始条件和结束条件,但若系统中没有快的时钟,该怎么设计呢?如果直接让数据当时钟,异步设计让设计很不可靠。
一般都有一个快一点的时钟吧,SCL的速度很慢的啊
scl最快是400khz,, 没有办法么?
最高400K也很低速了啊,最慢100K呢。什么系统的时钟会低于100K?
额,,那就假设没有比scl快的时钟
如果你的时钟低于400K,不可能产生小编需要的信号
小编就是假设没有比400k快的时钟啊
不论你是主还是从,没有更快的时钟意味着你所有的相关逻辑都必须在一个SCL内完成
scl是又master产生的,你没有比scl快的时钟··怎么产生scl呢?
master是我通讯的对象,slave才是我的设计本身啊
使用SDA做时钟,SCL做数据,就可以了
I2C协议对Tsu:sta、Thd:sta和Tsu:sto都是有要求的
你没有比scl更快的时钟,怎么踩点?你想用scl触发吗?这样的设计是不行的!
怎么看待11楼的解答呢
可以 很早很早 以前的老人是這樣做的
always@(negedge SDA)
START <= SCL;
always@(posedge SDA)
END <= SCL;
代码跑仿真可以,但是综合性可行不?一般都要求异步信号同步化!
SCL 快的都20M了 用同步
用slave的时钟做同步
