最近要读写 24C256,没有参考网上代码,自己撸了几个小时,总是不对,读取结果总是 0xFF,但是ACK的返回都是正确的,经过一番努力,终于找到问题所在了. 在芯片规格书里面时序图只有 START 和 STOP,没有 RESTART,问题就是出在 RESTART 上面, 下图是 I2C 标准里面的图片. 对于 I2C 这种串行协议,根据不同的断句有两种写法. 第一种: START中先是 SCL, SDA 为高,然后 SDA 为低. 每bit 都是 SCL 为低,SDA输出,SCL 为高. AC…