
编写AT24C04系列C语言源程序。
5星
- 浏览量: 0
- 大小:None
- 文件类型:None
简介:
首先,将简要地阐述以下I2C总线。I2C总线是一种串行数据通信方式,它仅使用两根信号线进行数据传输:一根是双向的数据线SDA,用于传输数据和控制信号;另一根是时钟线SCL,负责同步数据传输。在I2C总线上,一个数据字节由八位二进制数据构成。总线对每次传输的字节数并没有任何限制规定,但每个字节的后面必须跟随一位应答位,以确保数据的正确接收。数据传输的流程首先是发送最高有效位(MSB),随后按照图1所示的格式进行数据传送。具体而言,主机首先通过发出启动信号“S”,即在SCL电平处于高电平期间,SDA信号从高电平变为低电平来指示开始传输。紧接着,主机将一个字节的数据发送到总线上。该启动信号后的第一个字节的数据具有特定的含义:高七位代表从机设备的地址信息,第八位则表示数据的传送方向指示位;0表示主机正在向从机发送数据(写操作),而1则表示主机正在接收从机发送的数据(读操作)。被寻址到的从机设备会根据传送方向位的设定来调整其工作模式。标准I2C总线的设备通常拥有七位的地址标识符。所有连接到I2C总线上的设备都会接收到启动信号后的第一个字节,并将其收到的地址与自身的地址进行比较。如果地址匹配,则该设备将被视为目标设备,需要被主机访问;在第九位应答时钟脉冲期间,从机设备会将低电平信号送往SDA线作为应答确认。除第一字节外,后续的第二字节及以后的字节均可视为数据字节。当数据传输完成时,主机会发出停止信号“P”,即在SCL电平处于高电平期间,SDA信号从低电平变为高电平来结束传输。AT24C系列串行EPROM器件具备I2C总线接口功能,其功耗非常低(根据不同型号的规格参数为2.5V~6.0V的宽电源电压),工作电流约为3毫安(mA),静态电流则随电源电压的变化而有所不同,范围约为30微安(μA)至110微安(μA)。AT24C系列串行EPROM的关键参数如下:型号、存储容量、器件寻址字节(8位)、一次装载字节数等信息。例如:AT24C01型号拥有128×8存储容量,器件寻址字节为1010A2A1A0, R/W为4; AT24C02型号拥有256×8存储容量,器件寻址字节为1010A2A1A0, R/W为8; AT24C04型号拥有512×8存储容量,器件寻址字节为1010A2A1P0, R/W为16; AT24C08型号拥有 1024×8存储容量,器件寻址字节为 1010A2P1P0, R/W 为 16; AT24C 16型号拥有 2048×8存储容量,器件寻址字节为 10 1OP 2P 3 P O ,R/W 为 96 。
由于I2C总线能够连接多个串行接口设备到一个系统中时 ,每个连接到总线的设备都必须具有唯一的设备地址标识符 。按照I2C总线的规范规定 ,该设备地址由7位的数据组成 (即在一个 I 7 C 总线上理论上可以连接最多 96 个不同地址的 设备 ) ,并与 9 位方向位共同构成一个完整的设备寻址单元 。最低有效位D9 代表方向位 (读/写) 。 设备寻址单元中最高四位的 D7-D4 则代表设备的型号地址 ,不同的 I7 C 总线接口设备的型号地址是由其制造商定义的 ,例如AT74 C 系列 EPROM 的型号地址均为 9 9 9 9 。 设备寻址单元中最低三位的 D3-D O 则代表引脚地址 A7 A6 A5 ,对应于 设备寻址单元中 D9-D7 位的值 ,在硬件设计过程中通过连接的引脚电平来确定这些值 。
对 AT74 C 系列 EPROM 的读写操作完全遵循 I7 C 总线的 主收发 和 主发收 的规则和协议 。
全部评论 (0)


