第7章AT89c51单片机系统扩展 写 停 去机启动控制字节 存储单元地址 数据 SDA线 S1010xxx应 应P R/W 图7-11AT24C0A字节写入帧格式
第7章 AT89C51单片机系统扩展 S 1 0 1 0 X X X SDA线 主 机 启 动 控 制 字节 应 答 写 存 储 单元 地 址 应 答 数 据 应 答 停 止 P R /W 图7-11 AT24C01A字节写入帧格式
第7章AT89c51单片机系统扩展 (5)读操作:读操作分三种情况,即读当前地址存 储单元的数据,读指定地址存储单元的数据,读连续 存储单元的数据。 (6)AT89C51与AT24C01A接口电路:因为89C51 不带IC总线,所以必须用IO口来模拟2C总线的工作 时序。硬件接口见图7-13
第7章 AT89C51单片机系统扩展 (5) 读操作:读操作分三种情况,即读当前地址存 储单元的数据,读指定地址存储单元的数据,读连续 存储单元的数据。 (6) AT89C51与AT24C01A接口电路:因为89C51 不带I 2C总线,所以必须用I/O口来模拟I 2C总线的工作 时序。硬件接口见图7-13
第7章AT89c51单片机系统扩展 读 启动控制字 存储单元指定地址启动控制字 停止 主机 L囗 SDA线 S1010XXxk应 应S1010XX应 饣 答 答 R/W=1 非应答 图7-12读AT24C01A指定地址存储单元数 据的帧格式
第7章 AT89C51单片机系统扩展 S 1 0 1 0 X X X SDA线 主 机 启 动 控制字 应 答 写 存储单元指定地址 应 答 数 据 非 应 答 停 止 P 启 动 控制字 应 答 读 R /W=0 R /W=1 S 1 0 1 0 X X X 图7-12 读AT24C01A指定地址存储单元数 据的帧格式
第7章AT89c51单片机系统扩展 P0.0 P0.1 X2 P0.2 P0.3 +5V P0.4 RS P0.5 P0.6 P0.7 AT89C51 0+5V P2.0 +5V P2.1 +5V+5V P2.2 P2.3 10 P24 P2.6 P1 i 6 SDAAT24C01 WP P27 图7-13AT89C51与AT24C01A的硬件接口连接图
第7章 AT89C51单片机系统扩展 AT89C51 X1 X2 + + 5 V + 5 V AT24C01A VC C SDA SCL WP A2 A1 A0 VS S + 5 V + 5 V+ 5 V 10 k 10 k 5 6 7 3 2 1 4 P2.0 P2.1 P2.2 P2.3 P2.4 P2.5 P2.6 P2.7 P0.0 P0.1 P0.2 P0.3 P0.4 P0.5 P0.6 P0.7 RST EA P1.0 P1.1 8 图7-13 AT89C51与AT24C01A的硬件接口连接图
第7章AT89c51单片机系统扩展 软件编程非常关键,一定要注意PL.0、P1.1的时序 应严格符合C总线时序,否则AT24C01A将不能正常 工作。以下给出用单片机模拟I2C总线时序的程序,此 程序向AT24C01A指定地址写入一个字节数据。30H单 元放要写入AT24C01A数据的地址,RO放要写入的数 据
第7章 AT89C51单片机系统扩展 软件编程非常关键,一定要注意P1.0、P1.1的时序 应严格符合I 2C总线时序,否则AT24C01A将不能正常 工作。以下给出用单片机模拟I 2C总线时序的程序,此 程序向AT24C01A指定地址写入一个字节数据。30H单 元放要写入AT24C01A数据的地址,R0放要写入的数 据