接前一篇文章:M24C64芯片资料与程序代码(1)
二、详细描述
1. 总述
这些I2C兼容的电可擦除可编程存储器(EEPROM)设备被组织为8192x8位(M24C64)和4096 x8位(M24C 32)。
芯片逻辑图如下:
I2C使用双线串行接口,包括双向数据线和时钟线。根据I2C总线定义,此设备携带内置的4位设备类型标识符代码(1010)。
该设备在I2C协议中充当从设备,所有内存操作都由串行时钟同步。读写操作由总线主机生成的启动条件启动。启动条件之后是设备选择代码和读/写位(RW)(如表3所示),由应答边缘位终止。
当向存储器写入数据时,设备在总线主控器的8位传输后的第9位(时间)插入确认位。
当总线主控读取数据时,总线主控以相同的方式确认收到数据。在写应答和读无应答后,数据传输会因停止条件而终止。
注:这是经典的I2C时序。
2. 上电复位 —— VCC锁定写保护
为了防止上电期间的数据损坏和无意写入操作,上电复位(POR)电路被引入。上电时,内部复位保持激活状态,直到VCC达到上电复位(POR)阈值电压,所有操作都被禁用——设备将不会对任何命令做出响应;同样地,当VCC从工作电压下降到低于通电复位(POR)阈值电压时,所有操作都被禁用,设备将不会对任何命令做出响应。
在施加任何逻辑信号之前,必须施加稳定有效的VCC。
3. 信号描述
- 串行时钟(SCL)
此输入信号用于选通设备中的所有数据。在从设备使用此信号将总线同步到较慢时钟的应用中,总线主控器必须具有漏极开路输出,并且必须将上拉电阻器从串行时钟(SCL)连接到VCC。
然而,在大多数应用中,没有采用这种同步方法,因此只要总线主控器具有推挽式(而不是开漏)输出,就不需要上拉电阻。
- 串行数据(SDA)
这种双向信号用于将数据传输到设备中或从设备中传输出去。它是一个漏极开路输出,可以与总线上的其他漏极开路或集电极开路信号进行有线连接。必须将上拉电阻器从串行数据(SDA)连接到VCC。
- 芯片使能(E0、E1、E2)
这些输入信号用于设置在7位设备选择代码的三个最低有效位(b3、b2、b1)上要查找的值。这些输入必须连接到VCC或VSS,以建立设备选择代码。
- 写控制(/WC)
该输入信号有助于保护存储器的全部内容免受无意的写入操作。当写控制(/WC)被驱动为高时,对整个存储器阵列的写操作被禁用。当未连接时,信号在内部被读取为VIL,并且允许写入操作。
当写控制(/WC)被驱动为高时,设备选择和地址字节被确认,数据字节不被确认。
更多内容请看下回。