单片机原理及接口技术第7章AT89C51单片机系统扩展_第1页
单片机原理及接口技术第7章AT89C51单片机系统扩展_第2页
单片机原理及接口技术第7章AT89C51单片机系统扩展_第3页
单片机原理及接口技术第7章AT89C51单片机系统扩展_第4页
单片机原理及接口技术第7章AT89C51单片机系统扩展_第5页
已阅读5页,还剩76页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 第第7章章 AT89C51单片机系统扩展单片机系统扩展 7.1 AT89C51最小应用系统最小应用系统 7.2 AT89C51单片机的外部扩展性能单片机的外部扩展性能 7.3 程序存储器的扩展程序存储器的扩展 7.4 数据存储器的扩展数据存储器的扩展 7.5 I/O口的扩展口的扩展 7.6 实验实验 习题与思考题习题与思考题 第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 7.1 AT89C51最小应用系统最小应用系统 从本质上讲,单片机本身就是一个最小应用系统。由于晶振、开关等器件无法集成到芯

2、片内部,这些器件又是单片机工作所必需的器件,因此,由单片机与晶振电路及由开关、电阻、电容等构成的复位电路就是单片机的最小应用系统。如图7-1所示,AT89C51片内有Flash程序存储器,由它构成的最小应用系统简单可靠。 第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 P2.0P2.1P2.2P2.3P2.4P2.5P2.6P2.7P0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.73938373635343332212223242526272812345678XTAL2XTAL1RST101

3、11213141516171819931VCCAT89C51INT0 P3.2INT1 P3.3P3.0 RXDP3.1 TXDP3.4 T0P3.5 T1WR P3.6RD P3.7EAC1C21 k8.2 k10 F图7-1 AT89C51最小应用系统第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 7.2 AT89C51单片机的外部扩展性能单片机的外部扩展性能 1. 地址总线(AB) 地址总线用来传送存储单元或外部设备的地址。AT89C51由P0口提供低8位地址线。由于P0口同时又作为数据口,地址数据是分时控制输出,所以低8位地址必须用锁存器锁存。 第第7 7章章

4、 AT89C51AT89C51单片机系统扩展单片机系统扩展 2. 数据总线(DB) 数据总线用来传送数据和指令码,AT89C51由P0口提供数据线,其宽度为8位,该口为三态双向口。单片机与外部交换数据、指令、信息几乎都是由P0口传送。 3. 控制总线(CB) 控制线用来传送各种控制信息。AT89C51用于系统扩展的控制线有 、 、 、ALE、EA。 WRRDPSEN第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 7.3 程序存储器的扩展程序存储器的扩展 7.3.1 28C16程序存储器概述 1. 并行EEPROM28C16的特点 28C16是一种采用CMOS工艺制成的

5、2 K8位可用电擦除的可编程只读存储器。第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 其读写不需要外加任何元器件。读访问时间可为150250 ns,在写入之前自动擦除;一个字节的擦除和写访问时间为200 ns1 ms;工作电流为30 mA,备用状态时只有100 A;电源电压为单一的+5 V;三态输出,与TTL电平兼容。引脚图见图7-2。第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 A7A6A5A4A3A2A1A0D0D1D2GNDVCCA8A9A10D7D6D5D4D324232221201918171615141312345678910

6、1112WEOECE图7-2 28C16引脚图第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 2. 引脚说明 (1) A0A10:地址线; (2) D0D7:数据线; (3) :片选线(低电平有效); =0,本芯片被选中工作,否则,本芯片不被选中工作; (4) :写允许低(低电平有效); (5) :输出允许(低电平有效); (6) VCC:+5 V电源; (7) GND:接地端。CECEWEOE第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 3. 工作方式 28C16工作方式选择如表7-1所示。 表7-1 28C16工作方式选择 第第7 7章

7、章 AT89C51AT89C51单片机系统扩展单片机系统扩展 7.3.2 单片28C16的扩展电路 图7-3采用一片28C16的扩展程序存储器。由于89C51内部有4 KB的程序存储器,只有当片内4 KB存储器不够用时,才考虑扩展片外程序存储器。扩展存储器主要注意以下三个方面: (1) 地址总线的连接:28C16有2 KB的存储空间11根地址线,而89C51有64 KB的寻址空间16根地址线。 第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 (2) 数据总线的连接:28C16 与AT89C51的数据总线都是8位,所以从D0D7与89C51的P0.0P0.7依次对应连接

8、即可。 (3) 存储器片选端的连接:存储器片选端的连接是非常重要的,如果单片机扩展了多片存储器,它的连接往往是单片机剩余的高位地址线,这样就决定了各个存储器在系统中的地址范围。 第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 P2.7(A15)P2.6(A14)P2.5(A13)P2.4(A12)P2.3(A11)P2.2(A10)P2.1(A9)P2.0(A8)P0.7(A7)P0.6(A6)P0.5(A5)P0.4(A4)P0.3(A3)P0.2(A2)P0.1(A1)P0.0(A0)3536373839302989C51D7D6D5D4D3D2D1D0Q7Q6Q

9、5Q4Q3Q2Q1Q0A7A6A5A4A3A2A1A0A10A9A8D7D6D5D4D3D2D1D01817141387431916151296523233342827262524232221678192223123451716151413111092128C1674HC373GEALE1111821VCCEAPSEN31OEOEWECE图7-3 一片28C16程序存储器扩展连接图第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 7.3.3 多片28C16的扩展方 1. 线选法 由于28C16是2 K个字节的存储器,所以它的地址线是A0A10,共11根。 图7-4就是采

10、用线选法用三片28C16扩展存储器的电路图,按照未用地址线P2.3和P2.4以低电平“0”计算,三片28C16的地址范围分别是:28C16(1)为C000HC7FFH,28C16(2)为A000HA7FFH,28C16(3)为6000H67FFH。 第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 GOE74LS373A0A7 A8A1028C16(2)D0D7WEOECEA0A7 A8A1028C16(3)D0D7WEOECE1P2.7P2.6P2.5P2.2P2.0ALE74LS083888338889C51EAWEP0RDPSENA0A7 A8A1028C16(1

11、)D0D7WEOECED0D7Q0Q78图7-4 线选法多片28C16程序存储器扩展连接图第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 2. 地址译码法 如果采用线选法扩展存储器,可用的高位地址线有限。用少量的高位地址线扩展多片存储器,常常采用地址译码法。地址译码法只需在线选法的基础上加译码器就可以了。具体电路图如图7-6所示。 译码器芯片74LS138是3位选择输入线,8位译码输出线。所以最多能接八个芯片的片选端。图7-5是该芯片的引脚图,表7-2是该芯片的真值表。 第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 表7-2 74LS138

12、真值表第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 74LS13812345678161514131211109VCCY0Y1Y2Y3Y4Y5Y6ABCG2AG2BG1Y7GND图7-5 74LS138引脚图 第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 在图7-6中,28C16(1)的地址范围是0000H07FFH,28C16(2)的地址范围是0800H0FFFH,28C16(3)的地址范围是1000H17FFH。从地址分配可以看出三片28C16的地址是连续的,没有浪费地址空间,可扩展的芯片较多。第第7 7章章 AT89C51AT89C

13、51单片机系统扩展单片机系统扩展 A0A7 A8A1028C16(3)D0 D7WEOECEA0A7 A8A1028C16(2)D0 D7WEOECEA0A7 A8A1028C16(1)D0 D7WEOECED0D7Q0Q7GCBAY0Y1Y2Y7G2AG2BG15 V1P2.5P2.4P2.3P2.2P2.0ALEP089C51WERDPSEN74LS0838388888883374LS37374LS138图7-6 译码法程序存储器扩展连接图第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 7.4 数据存储器的扩展数据存储器的扩展 7.4.1 并行传送外部数据存储器的

14、扩展方法 单片机和数据存储器的连接方法与程序存储器的连接方法大致相同,主要区别在控制信号上。地址线、数据线均与程序存储器的连接方法一致。因为数据存储器既要读又要写,所以必须有控制读写的信号线。 图7-7是单片SRAM6116(2 K8位)的扩展连接图。 第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 P2.2P2.1P2.0P0.7P0.6P0.5P0.4P0.3P0.2P0.1P0.0AT89C5174LS3731716232221D7D6D5D4D3D2D1D0Q7Q6Q5Q4Q3Q2Q1Q0GEOE61163233343536373839191615129652

15、181714138743202119222312345678D7D6D5D4D3D2D1D0A10A9A8A7A6A5A4A3A2A1A0ALE11 117161514131110931EARDWRCE3018OEWE图7-7 AT89C51与6116接口连接图第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 7.4.2 串行传送数据存储器的扩展方法 1) 一般特性 AT24C01是一种采用CMOS工艺制成的1288位串行可电擦除的可编程只读存储器,自动擦除时间不超过10 ms,典型时间为5 ms。 第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩

16、展 2) 引脚图及说明 AT24C01A引脚图见图7-8,各引脚功能如下: (1) SCL:串行时钟端,用于对输入和输出数据的同步。 (2) SDA:串行数据地址输入或输出端,串行双向数据输入、输出端。第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 8765A0A1A2VSS1234VCCWPSCLSDA图7-8 AT24C01A引脚图第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 (3) WP:写保护,硬件数据保护端接地时可对整个存储器进行正常读写,接电源时具有写保护功能。 (4) A0、A1、A2:片选输入。 (5) VCC:电源端,接+

17、5 V电源。 (6) VSS:接地端。第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 3) 芯片操作 (1) 功能描述:AT24C01A支持I2C双向二线制串行总线及其传输规约。在串行EEPROM系统中,必须有一片可以产生串行时钟(SCL)的主器件控制,通常这个主器件就是单片机,控制其总线访问及产生“启动”和“停止”信号。 (2) 总线特性:I2C双向二线制串行总线协议定义只有在总线处于“非忙”状态时,数据传输才能被初始化。 第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 SCLSDAABD启动信号#数据电平稳定数据才有效#数据在此期间变化停

18、止信号DCA图7-9 AT24C01A总线状态图 第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 A段:总线非忙状态,在此期间SDA、SCL都保持高电平。 B段:启动数据传输,当SCL为高电平时,SDA由高电平变为低电平的下降沿被认为是“启动”信号,只有出现了启动信号后,其他命令才有效。 C段:停止数据传输,当SCL为高电平时,SDA低电平的上升沿被认为是“停止”信号。 第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 D段:数据有效,在出现“启动”信号以后,SCL为高电平且数据线稳定,这时数据线的状态表示要传送的数据。第第7 7章章 AT89

19、C51AT89C51单片机系统扩展单片机系统扩展 1010A2 A1 A0WRD7 D6 D5 D4 D3 D2 D1 D0I2C总线特征码芯片地址1:读操作0:写操作图7-10 AT24C01A控制字第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 (3) 芯片寻址:当芯片接收到“启动”信号后,需要接收一个8位的控制字,控制字的格式如图7-10所示。 A2、A1、A0三位地址与引脚上的A2、A1、A0的接法(接VCC=1,接VSS=0)相比较,如果一致,该芯片被选通。所以一个总线上总共可以挂八个AT24C01A。 (4) 字节编程方式:在这种方式下,微处理器发送EEP

20、ROM存储单元地址和一个字节数据至EEPROM。字节写入的帧格式见图7-11。 第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 S1010X X XSDA线主机启动控制字节应答写存储单元地址应答数据应答停止PWR/图7-11 AT24C01A字节写入帧格式 第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 (5) 读操作:读操作分三种情况,即读当前地址存储单元的数据,读指定地址存储单元的数据,读连续存储单元的数据。 (6) AT89C51与AT24C01A接口电路:因为89C51不带I2C总线,所以必须用I/O口来模拟I2C总线的工作时序。硬件

21、接口见图7-13。第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 S 1 0 1 0 X X XSDA线主机启动控制字应答写存储单元指定地址应答数据非应答停止P启动控制字应答读1WR/0WR/S 1 0 1 0 X X X图7-12 读AT24C01A指定地址存储单元数据的帧格式第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 AT89C51X1X25 V5 VAT24C01AVCCSDASCLWPA2A1A0VSS5 V5 V5 V10 k10 k5673214P2.0P2.1P2.2P2.3P2.4P2.5P2.6P2.7P0.0P0.1P

22、0.2P0.3P0.4P0.5P0.6P0.7RSTEAP1.0P1.18图7-13 AT89C51与AT24C01A的硬件接口连接图第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 软件编程非常关键,一定要注意P1.0、P1.1的时序应严格符合I2C总线时序,否则AT24C01A将不能正常工作。以下给出用单片机模拟I2C总线时序的程序,此程序向AT24C01A指定地址写入一个字节数据。30H单元放要写入AT24C01A数据的地址,R0放要写入的数据。第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 程序如下:WROM:SETB P1.0 LCA

23、LL DELAYSETB P1.1 LCALL DELAYCLR P1.0LCALL DELAY CLR P1.1LCALL DELAYMOV R2,#08H ;送写控制字MOV A,#0A0H第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 WM2: LCALL WRITELCALL DELAYSETB P1.1LCALL DELAYCLR P1.1LCALL DELAYMOV R2,#08H ;送写入数据的首地址MOV A,30HLCALL WRITELCALL DELAY第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 SETB P1.1L

24、CALL DELAYCLR P1.1LCALL DELAYMOV R2,#08H ;连续放一个字节的数据 MOV A,R0LCALL WRITECLR P1.0 LCALL DELAYSETB P1.1LCALL DELAYCLR P1.1第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 LCALL DELAYWM:SETB P1.1 ;给出停止信号LCALL DELAYSETB P1.0LCALL DELAYRETWRITE:CLRC ;写入数据子程序第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 RLC A MOV P1.0,C LCALL

25、 DELAY SETB P1.1 DJNE R2,WRITE RETDELAY:MOV R3,#1FH ;延时子程序 DELY:DJNE R3,DELY RET第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 7.5 I/O口的扩展口的扩展 7.5.1 简单I/O口的扩展 只要根据“输入三态,输出锁存”的原则,选择74系列的TTL电路或MOS电路就能组成简单的扩展电路,如74LS244、74LS273、74LS373、74LS377等芯片都能组成输入、输出接口。第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 对于AT89C51单片机,外部I/O

26、接口和外部RAM是统一编址的,也就是说它们共用64 K存储空间。每个扩展I/O接口相当于一个扩展的外部单元,因此,访问外部接口就如同访问外部RAM一样,用的都是MOVX指令,MOVX指令产生的 、 信号可以对I/O口进行读写。图7-14给出了一个用8位三态缓冲器74LS244作为输入口和八D锁存器74LS273作为输出口组成的简单I/O口扩展电路。RDWR第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 74LS273D0D1D2D3D4D5D6D7Q0Q1Q2Q3Q4Q5Q6Q7D0D1D2D3D4D5D6D774LS244Q0Q1Q2Q3Q4Q5Q6Q7CLRCLK

27、11AT89C51GP2.0WRRD200 85 V5.1 k8OEP0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7图7-14 简单I/O口扩展图第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 在图7-14中,输出电路控制采用P2.0和的组合信号。当P2.0和都为0时,或门输出为0,将P0口数据锁存到74LS273,其Q端控制发光二极管LED;当某个Q端为0时,与其相连的发光二极管被点亮。第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 按照图7-14,若让某一个按键按下,对应的发光二极管亮,程序如下:LOOP:MOV DPTR

28、,#0FEFFH;置I/O口地址 MOVX A,DPTR ;产生 读入键值 MOVX DPTR,A ;产生 输出信号 AJMP LOOP ;循环RDWR第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 7.5.2 可编程I/O口的扩展 18255的内部结构 8255是一个可编程并行I/O口芯片,由以下四个逻辑结构组成,逻辑结构图如图7-15所示。第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 数据总线驱动读/写控制逻辑A组控制B组控制A组A口A 组A 口A 组C 口B 组C 口B 组B 口PA7PA0PC7PC4PC4PC0PB7PB08448

29、D7D0RDWRCSA1A0RESET图7-15 8255内部结构框图 第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 (1) 数据总线驱动器:具有双向三态的8位驱动器,用于和单片机数据总线相连,以实现单片机与8255数据的传送。 (2) 并行I/O端口:共有三个并行端口,分别是A口、B口、C口。 (4) A组、B组控制块:用于接收来自读、写控制逻辑命令和内部数据总线的控制字,并向对应口发出操作命令。 第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 28255的引脚介绍 8255是一个具有40个引脚的DIP封装的芯片,引脚图见图7-16。第第

30、7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 12345678910111213141516171819204039383736353433323130292827262524232221PA4PA5PA6PA7WRRESETD0D1D2D3D4D5D6D7VCCPB7PB6PB5PB4PB3PA3PA2PA1PA0RDCSGNDA1A0PC7PC6PC5PC4PC0PC1PC2PC3PB0PB1PB2图7-16 8255引脚图第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 引脚功能介绍如下: (1) PA0PA7:A口,具有8位数据输出锁存器

31、/缓冲器和一个8位数据输入锁存器。 (2) PB0PB7:B口,具有8位数据输出锁存器/缓冲器和8位数据输入缓冲器(不锁存)。 (3) PC0PC7:C口,具有8位数据输出锁存器/缓冲器和8位数据输入缓冲器(不锁存),该口可分为两个4位口使用,它除了作为输入/输出口外,还可以作为A口、B口选通工作方式操作时的状态控制信号。 第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 (4) :读控制端,低电平有效,允许从8255读取数据或状态字。 (5) :写控制端,低电平有效,允许向8255写入数据或控制字。 (6) :片选端,低电平有效。 (7) A0、A1:口地址选择端,通

32、过A0、A1可选中8255的四个寄存器,每个寄存器口地址见表7-3。 (8) RESET:复位控制端,当RESET=1时,8255复位,通常与单片机的复位端直接相连。 RDWRSC第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 38255的操作方式 8255的全部工作状态是通过读/写控制逻辑和工作方式选择来实现的。 1) 读/写控制逻辑操作选择 由单片机输出的地址线A0、A1及 、 、 来选择口的操作状态,具体说明如表7-3所示。RDWRSC第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 表7-3 8255A 控制信号功能表第第7 7章章 A

33、T89C51AT89C51单片机系统扩展单片机系统扩展 第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 2) 8255三种工作方式的功能 8255有三种工作方式,分别是方式0、方式1和方式2,它们是通过程序对控制口送控制字来选择的,下面分别介绍三种工作方式: (1) 方式0:基本I/O方式。 (2) 方式1:单向选通I/O方式。 (3) 方式2:双向总线方式。 第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 3) 8255的编程选择控制字 8255的传输方式和工作方式的选择是通过对控制口输入控制字的方式实现的。8255的控制字有两种:方式选择

34、控制字和C口位操作控制字。 方式选择控制字为8位,每一位都有固定含义,用于选择每个口的工作方式和数据传输方向,具体定义见图7-17。第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 B组C口的低4位1:输入0:输出B口1:输入0:输出工作方式选择0:方式01:方式1A组C口的高4位1:输入0:输出A口1:输入0:输出工作方式选择00:方式001:方式11X:方式2工作方式标志1:有效D7D6D5D4D3D2D1D0图7-17 8255方式选择控制字第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 位控制字用于对C口进行位操作。C口不仅在方式0下具

35、有并行数据传输功能,还可以进行位操作。把一个置“1”或置“0”的控制字送入8255的控制口,就能把C口的某一位置1或清0而不影响其他位的状态,位操作控制字格式见图7-18。第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 置位或复位0:复位1:置位D7D6D5D4D3D2D1D0位选择D3D2D1C口000001010011100101110111PC0PC1PC2PC3PC4PC5PC6PC7控制选择0:位操作没用图7-18 8255 C口置/复位控制字第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 4AT89C51与8255的接口电路 在8

36、9C51单片机的I/O口上扩展8255芯片,硬件连接图比较简单。在图7-19中,8255的片选及口地址选择线A0、A1分别由单片机的P0.7、P0.0、P0.1经地址锁存后提供,故8255的A、B、C口及控制口的地址分别为FF7CH、FF7DH、FF7EH、FF7FH(当然这不是惟一的连接方法,与单片机不同的地址线相连,8255的口地址也不会相同)。数据线直接与单片机的数据线相连, 、 也直接连在单片机的 、 端。RDWRRDWR第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 89C5174LS3738255PC0PC1PC2PC3PC4PC5PC6PC7PB0PB1

37、PB2PB3PB4PB5PB6PB7PA0PA1PA2PA3PA4PA5PA6PA7D0D1D2D3D4D5D6D7D0D1D2D3D4D5D6D7Q0Q1Q2Q3Q4Q5Q6Q7GOEALEWRRDWRRDRESETA1A0P0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7CS图7-19 8255与AT89C51连接图第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 例7.1 如图7-19所示,用8255扩展单片机并行I/O口并读、写数据。要求8255工作在方式0,且A口作为输入,B口、C口作为输出。 分析:从图7-19可知,8255的A、B、C、控制口

38、的地址分别为FF7CH、FF7DH、FF7EH、FF7FH。编程时,应先按题目要求对8255初始化设置每个口的工作方式,然后再使数据输入、输出。程序如下:第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 MOV A,#90H ;A、B、C口方式0,A口输入,B口、C口输出MOV DPTR,#0FF7FH;MOVX DPTR,A ;方式控制字控制寄存器MOV DPTR,#0FF7CHMOVX A,DPTR ;从A口读取数据MOV DPTR,#0FF7DHMOV A,#DATA1 第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 MOVX DPTR,

39、A;将数据DATA1从B口输出MOV DPTR,#0FF7EHMOV A,#DATA2MOVX DPTR,A;将数据DATA2从C口输出第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 例7.2 对C口的位操作,把PC5置1,再把PC5复位,程序如下: MOV DPTR,#0FF7FH ;控制口地址DPTR MOV A,#0BH ;PC5置1的控制字A第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 MOVX DPTR,A ;控制字控制口,PC5=1MOV A,#0AH;PC5复位的控制字AMOVX DPTR,A ;控制字控制口,PC5=0第第7

40、 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 7.6 实实 验验 1. 实验目的 (1) 学会使用AT89C51扩展口。 (2) 了解可编程接口芯片的各种功能,掌握各种工作方式的编程和使用方法。第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 2. 实验设备和器材 (1) AT89C51开发实验设备一台。(2) 8255A芯片一块。(3) 开关八个。(4) 10 k与300 k电阻各八个。(5) 发光二极管八个。 (6) 连接导线若干。 第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 3. 实验内容和步骤 1) 硬件连接

41、本实验用A口作为输入口,连接八个开关,B口作为输出口,去点亮发光二极管。编程实现用A口开关的状态(闭合、断开)去控制发光二极管的亮、灭。连接图如图7-20所示。 第第7 7章章 AT89C51AT89C51单片机系统扩展单片机系统扩展 AT89C51825574LS377D0D1D2D3D4D5D6D7Q0Q1OE323334353637383918171413874311272829309831323334356365G5 V31928161730251ALEP27EAD0D1D2D3D4D5D6D7A0A1PA0PA1PA2PA3PA4PA5PA6PA7PB0PB1PB2PB3PB4PB5PB6PB7RDWRRSET

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论