NE5532 发表于 2014-12-4 21:19 
楼主把协议理解错了,I2C的应答规则是——谁接收数据,谁就发送应答,24C02作为从机,不但可以发送应答,也 ...
版主说的没错,谁接收谁发送应答。不过有一点存在疑问,就是24C02能否发送非应答。
单片机在读数据的时候能根据情况发送应答与非应答,应答说明读到数据,让24C02发送下一帧;而非应答表明已经接收完所有数据,可以不必再传输了。
但单片机写数据时,24C02应该是只能回复应答才对啊,因为是否继续发数据是单片机说了算而不是24C02说了算。应答 就是拉低SDA,告诉单片机自己已经处理完毕,可以发送下一个字节。而没拉低的情况只能说明器件反应不过来或者器件坏了,这种情况不知叫做非应答合不合适? |