ARM学习
直播中

石玉兰

7年用户 1444经验值
私信 关注
[问答]

CPLD/FPGA实现I2C的透传,使用三态门,请问如何确定SDA的方向?

CPLD/FPGA实现I2C的透传,使用三态门,那么SDA的方向应向该如何确定?
assign SCL_OUT = SCL_IN;
wire mid;
assign mid = dir?1'bz:SDA_IN;  //dir为0的时候,SDA_IN
wire mid1;
assign mid1 = dir?SDA_OUT:1'bz;  //为1的时候,SDA_OUT
assign SDA_IN = mid1;
assign SDA_OUT = mid;
那个dir如何确定呢?

回帖(5)

李志静

2019-1-11 13:28:31
已经解决,主要是根据I2C的SCL和SDA的时序来控制SDA的方向,就可以实现I2C透传,只是做通道。
2 举报
  • 闫研: 您好,请问是否方便分享一下详细的解决方案?
  • dingyyyyyy: 能帮忙详细解释下吗,最近也在做这个,但是SDA端口的输入、输出状态切换一直没有很好的方法解决

孙雅念

2019-1-11 13:42:19
帮顶
举报

陈英

2019-1-11 13:51:04
fpga做不了透传。那是nmos干的活。
举报

金果子

2019-1-11 14:01:49
设inout,双向型,没问题。
但我不记得能不能设置开漏。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分