手动使用I2C协议写入24C02C

刚尝试用AT89C52单片机使用IIC总线协议读写AT24C02C,我忽然想能否用手动调整开关的方式写入AT24C02C?于是,便尝试了一下,结果果然成功了。

关于IIC总线,这篇文章写的很详细:https://www.cnblogs.com/whik/p/6650092.html

我是用的是Proteus进行仿真的,电路图如下:

写入结果如下

初始值全为0XFF,一号单元已经成功写入了00

 

操作步骤其实就是严格按照IIC协议进行:

1)发送起始信号

2)发送AT24C02C的设备地址 0XA0(写)/0XA1(读),注意遵守数据有效原则,还要提供应答周期脉冲

 3)写入要操作的存储芯片内部地址

 4)写入8bit数据

 5)结束信号

 

后来又尝试着读取某个单元,但是似乎SDA指示灯并没有按照数据的顺序成功显示??原因还不知道,不知道是操作原因还是其他什么原因

更新>>>>>似乎在读取的时候需要使SW2保持VCC,而不是在中间

posted @ 2019-06-03 00:12  l_____py  阅读(730)  评论(0编辑  收藏  举报