TI中文支持网
TI专业的中文技术问题搜集分享网站

用两个GPIO口来模拟I2C口碰到的电平不高不低问题

用F28027,CCS3.3

使用两个IO口来模拟I2C,一个口用来作为CLK,另一个口用来作为SDA(数据口),其中SDA要时不时做输出口,时不时做输入口,在测试中发现一个怪现象,做输入口时,读ACK电平时,只有2V左右不高不低(实际应答应该为低电平),不知是不是由于输出口切换到输入口那个地方设置有问题引起的?求解!

user1512703:

不知道楼主的硬件接线是怎么样,常规I2C总线的两个引脚都是要增加上拉电阻的。否则就会出现这种电平不高不低的情况。

另外I2C总线的速度尤其模拟的,最好不要搞得太快了,否则你的Io反转速度可能都跟不上了。

用F28027,CCS3.3

使用两个IO口来模拟I2C,一个口用来作为CLK,另一个口用来作为SDA(数据口),其中SDA要时不时做输出口,时不时做输入口,在测试中发现一个怪现象,做输入口时,读ACK电平时,只有2V左右不高不低(实际应答应该为低电平),不知是不是由于输出口切换到输入口那个地方设置有问题引起的?求解!

mangui zhang:

回复 user1512703:

上面说的很有道理  IIC总线上拉电阻是不可少的 

没有上拉在读时应该会出现状态不定的情况

至于c28来说 IO速度应该是够的

赞(0)
未经允许不得转载:TI中文支持网 » 用两个GPIO口来模拟I2C口碰到的电平不高不低问题
分享到: 更多 (0)