CH423关于I2C通讯的ACK位的问题

在CH423技术手册上有写“应答 1 和应答 2 总是固定为 1”,另外在C语言例程里也是在ACK位时是直接SDA是直接输出1的。

但是我用示波器测量,实际CH423是会响应ACK位的,会在ACK位将SDA拉低。

并且我在使用IO输出能力很强的单片机去驱动时,如果在ACK位按例程输出1时,LED显示器会偶尔出现某个位置闪一下的问题。改为输出0或者弱上拉输出1,就没有问题了。

现在有些疑问:

1.手册的应答固定为1是什么意思,是指单片机要设为1,还是CH423的ACK为1?

2.CH423究竟是有响应ACK(拉低SDA)还是没有响应ACK的呢(不拉低SDA)?

3.如果是有ACK,是以后一直都有的吗,会不会以后变更设计变为没有了?


图1:接了CH423,有ACK

有ACK.jpg


图2:没有接CH423,没有ACK

无ACK.jpg

您好,手册的时序说明是针对主控单片机的,所以那个ACK是由单片机来做的高电平。芯片本身是有响应的。


只有登录才能回复,可以选择微信账号登录