第六章MCS51单片机存储器扩展_第1页
第六章MCS51单片机存储器扩展_第2页
第六章MCS51单片机存储器扩展_第3页
第六章MCS51单片机存储器扩展_第4页
第六章MCS51单片机存储器扩展_第5页
已阅读5页,还剩77页未读 继续免费阅读

下载本文档

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

文档简介

1、1单片机原理及应用单片机原理及应用1、单片机系统扩展的三总线结构;、单片机系统扩展的三总线结构;2、存储器扩展的、存储器扩展的 编址技术;编址技术;3、程序存储器和数据存储器的扩展方法。、程序存储器和数据存储器的扩展方法。4、I/O口扩展方法口扩展方法26.5 存储器综合扩展存储器综合扩展6.6 存储器特点及使用存储器特点及使用6.7 I/O口扩展口扩展6.1 单片机扩展及系统结构单片机扩展及系统结构6.2 存储器扩展编址技术存储器扩展编址技术6.3 程序存储器扩展程序存储器扩展6.4 数据存储器扩展数据存储器扩展3子系列子系列机机 型型片内片内ROM片内片内RAM可寻址可寻址ROM范围范围可

2、寻址可寻址RAM范围范围51子系列子系列8031无无128B64KB64KB80514KB128B64KB64KB87514KB128B64KB64KB52子系列子系列8032无无256B64KB64KB80528KB256B64KB64KB4单片机原理及应用单片机原理及应用6.1 MCS-51单片机扩展及系统结构单片机扩展及系统结构8051数据数据存储器存储器程序程序存储器存储器I/O接口接口I/O接口接口I/O设备设备I/O设备设备设设备备O/I地址总线地址总线数据总线数据总线控制总线控制总线5地址总线是地址总线是单向单向的,从单片机发出。的,从单片机发出。数据总线是数据总线是双向双向的。

3、的。对于一条控制线,其传送方向是对于一条控制线,其传送方向是单向单向的。的。总线:总线:连接系统中各扩展部件的一组公共信号线。连接系统中各扩展部件的一组公共信号线。地址总线:地址总线:传出单片机送出的地址信号,进行存传出单片机送出的地址信号,进行存储单元和储单元和I/O端口的选择。端口的选择。数据总线:数据总线:单片机和存储单元以及单片机和单片机和存储单元以及单片机和I/O端端口之间传输数据。口之间传输数据。控制总线:控制总线:一组控制信号线的总称。有单片机发一组控制信号线的总称。有单片机发出的,也有从其他部件发向单片机的。出的,也有从其他部件发向单片机的。61、单片机扩展的实现(总线构造)、

4、单片机扩展的实现(总线构造)以以P0口口的的8位口线作位口线作地址地址/数据数据线(复用线)线(复用线);以以P2口口的的8位口线作位口线作高高8位地址位地址线。线。MCS-51单片机寻址范围为单片机寻址范围为64K,需要,需要16根根地址线地址线:所谓复用:所谓复用:既可作既可作地址地址线(低线(低8位),又可作位),又可作数据数据线。线。复用技术:复用技术:增加一个增加一个8位锁存器,通过对锁存器的控制位锁存器,通过对锁存器的控制实现对地址(低实现对地址(低8位)和数据的分离位)和数据的分离72、扩展时常用的控制信号、扩展时常用的控制信号1)ALE:地址锁存选通信号(高电平有效)。地址锁存

5、选通信号(高电平有效)。2)PSEN :扩展程序存储器(外部扩展程序存储器(外部ROM)读选通信)读选通信号(低电平有效)。号(低电平有效)。3)EA:内外程序存储器的选择信号。内外程序存储器的选择信号。4)RD和和WR:扩展外部数据存储器(扩展外部数据存储器(RAM)的读、)的读、写选通信号(低电平有效)。写选通信号(低电平有效)。8单片机总线扩展结构图单片机总线扩展结构图ALE0P2PPSENRDWREA8031锁锁存存器器返返 回回9单片机原理及应用单片机原理及应用6.2 MCS-51单片机存储器扩展编址技术单片机存储器扩展编址技术MCS-51系列单片机存储器有四个部分:系列单片机存储器

6、有四个部分:1)片内)片内ROM(部分有,(部分有,8031无片内无片内ROM););2)片外)片外ROM(可扩展到(可扩展到64KB););3)片内)片内RAM(51系列单片机都有,系列单片机都有,256字节);字节);4)片外)片外RAM(可扩展到(可扩展到64KB,独立)独立)一、一、MCS-51单片机存储器系统单片机存储器系统RAM、ROM都可以扩展至都可以扩展至64K。64KB64KB10程序存储器映象程序存储器映象数据存储器映象数据存储器映象11单片机原理及应用单片机原理及应用二、单片机扩展存储器编址及映像二、单片机扩展存储器编址及映像存储器编址技术:存储器编址技术:以系统的以系统

7、的高位地址高位地址作为存储器的作为存储器的片选片选信号。信号。直接将直接将地址线地址线连接到存储芯片连接到存储芯片片选片选端。端。将地址线进行适当连接,使得存储器中每一个存将地址线进行适当连接,使得存储器中每一个存储单元可唯一地对应一个编址。储单元可唯一地对应一个编址。1、线选法、线选法122、译码法译码法能有效地利用存储空间,能有效地利用存储空间,最常用的存储器编址方法。最常用的存储器编址方法。通过译码器对系统的通过译码器对系统的高位地址高位地址进行进行译码译码,以译,以译码输出作为存储芯片的片选信号。码输出作为存储芯片的片选信号。常用译码器:常用译码器: 74LS139:双:双24译码器;

8、译码器; 74LS138:38译码器译码器131)74LS139:双:双24译码器译码器87654321910111213141516GNDY1Y1Y1Y1B1A1G13210139LS743210Y2Y2Y2Y2B2A2G2Vcc输入端输入端输出端输出端选择选择使能使能GBA000011100 1010 111011101110111011110Y1Y2Y3Y有效译码输出信号,低电平译码输入;、使能端,低电平有效;:,:3210YYYYBAG142)74LS138:3-8译码器译码器87654321910111213141516GNDYEEECBA7321138LS746543210YYYY

9、YYYVcc输入端输入端输出端CBA0Y1Y2Y3Y4Y5Y6Y7Y11110000110011001010101011111110111111011111101111110111111011111101111110111111011111111E2E3E&EN使能控制使能控制1E0EE312 153)74LS138作译码器的连接作译码器的连接7 . 2P6 . 2P5 . 2PV5 3E2E1EABCccV138LS74GND70YY8051V5 返返 回回16单片机原理及应用单片机原理及应用6.3 程序存储器扩展程序存储器扩展掩膜掩膜ROM可编程可编程ROM(PROM):内容只能写一次;)

10、:内容只能写一次;可改写可改写ROM(EPROM):紫外线擦除;):紫外线擦除;可改写可改写ROM(EEPROM):电擦除;):电擦除;快擦写快擦写ROM:flashROM一、只读存储器(一、只读存储器(ROM)17单片机原理及应用单片机原理及应用二、典型只读存储器芯片二、典型只读存储器芯片2716 INTEL公司公司27系列系列产品(加电编程、紫外线擦除产品(加电编程、紫外线擦除EPROM),系列产品还有),系列产品还有2716、2732、2764、27128等。等。存储容量:存储容量:2k 8(位位)、4k 8(位位)、 8k 8(位位)、 16k 8(位位)芯片引脚:芯片引脚:12111

11、0987654321131415161718192021222324GNDOOOAAAAAAAA21001234567345671098OOOOOPGM/CEAOEVppAAVcc2716PGM/CEOEA10A0:11位地址;位地址;O7O0:数据线;:数据线; :片选:片选/编程控制信号;正编程控制信号;正常使用片选(低电平有效),编程时,常使用片选(低电平有效),编程时,引入编程脉冲;引入编程脉冲; :输出允许信号,低电平有效。:输出允许信号,低电平有效。185种工作方式:种工作方式:1)读方式读方式: 均为低电平,被寻址单元均为低电平,被寻址单元内容经数据线读出;内容经数据线读出;OE

12、,CE2)未选中方式未选中方式: 为高电平,数据线输出呈为高电平,数据线输出呈高阻状态;高阻状态;CE3)编程方式编程方式:Vpp加加25V电压,电压, 加加TTL高电平。高电平。进行数据重新写入;进行数据重新写入;4)程序检验方式程序检验方式:Vpp=25V, 均为低电平均为低电平OE,CE5)编程禁止编程禁止CE19单片机原理及应用单片机原理及应用三、程序存储器扩展示例三、程序存储器扩展示例1、线选法编址扩展示例、线选法编址扩展示例373LS7407AA07OOPSENOE7 . 2P2 . 2P1 . 2P0 . 2P10A9A8ACE27168031EAALEG0P202716是是2K

13、 8(位)(位)EPROM,11根地址线根地址线示例中,示例中,2716的地址范围是:的地址范围是:最低地址最低地址:A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0 1000,0000,0000,0000(8000H)最高地址最高地址:A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0 1000,0111,1111,1111(87FFH)A14A13A12A11(P2.6P2.3)的状态与芯片寻址无关,的状态与芯片寻址无关, A14A13A12A11的所有的所有16种种组合(组合(00001111)都不会影响该芯片的寻址,即)都不会影响该

14、芯片的寻址,即1, 000,0000,0000 1 , 111,1111,1111因此,因此,8000H87FFH、88008FFFH、F800HFFFFH都是都是该芯片的寻址范围。该芯片的寻址范围。该该2716有有16个地址映像区个地址映像区,在这些地址范围内都能访问该芯片。,在这些地址范围内都能访问该芯片。212、多芯片存储器扩展、多芯片存储器扩展PSEN7.2P8031EAALE0.24.2PPOEOE812A812A07A07A07O07OCECE37374 LSG当当P2.7=0时,选中时,选中1片,地址为:片,地址为:B1111,1111,1111, 10B0000,0000,00

15、00, 00 FFFH1H0000即即当当P2.7=1时,选中时,选中2片,地址为:片,地址为:B1111,1111,1111, 11B0000,0000,0000, 01 FFFH9H8000即即12764227640P223、译码法编址示例、译码法编址示例ABC7 . 2P6 . 2P5 . 2P07A07A07A07O07O07O812A812A812A373LS740 . 07 . 0P0 . 24 . 2PPSENCECECEOEOEOE0Y1Y7Y13812764027647276421EE3EV5 2327640地址范围:地址范围:0000H1FFFH0000,0000,0000

16、,0000 0001,1111,1111,111127641地址范围地址范围:2000H3FFFH0010,0000,0000,0000 0011,1111,1111,111127642地址范围地址范围:4000H5FFFH0100,0000,0000,0000 0101,1111,1111,111127647地址范围地址范围:E000HFFFFH1110,0000,0000,0000 1111,1111,1111,1111 . . .返返 回回24单片机原理及应用单片机原理及应用6.4 数据存储器扩展数据存储器扩展静态静态RAM(SRAM):):加电即可保存信息;加电即可保存信息;动态动态R

17、AM(DRAM):):加电,不断进行周期性加电,不断进行周期性刷新(再生),才可保存信息。刷新(再生),才可保存信息。一、随机存储器概述一、随机存储器概述随机存储器随机存储器RAM(Random Access Memory),),可以进行可以进行读读、写写两种操作,分为静态(两种操作,分为静态(SRAM)和动态(和动态(DRAM)两种。)两种。25单片机原理及应用单片机原理及应用二、典型随机存储器芯片二、典型随机存储器芯片6116(2KB)121110987654321131415161718192021222324GNDDDDAAAAAAAA21001234567345671098DDDDD

18、CSAOEWEAAVcc6116A10A0:地址线:地址线D7D0:数据线:数据线 :片选信号:片选信号 :数据输出允许信号:数据输出允许信号 :写选通信号:写选通信号CSOEWE266116工作方式工作方式写入写入读出读出禁止禁止未选中未选中状态状态0001CS101OE 011WE 数据写入数据写入数据读出数据读出高阻高阻高阻高阻07DD27单片机原理及应用单片机原理及应用三、线选法三、线选法RAM扩展举例扩展举例07A07D810AOEWECS07A07D810AOEWECS373LS74RDWR0 . 22 . 2P0PALE3 . 2P4 . 2P(1)6116)2(61162861

19、161寻址范围:寻址范围: 0001,0000,0000,0000 000 1,0111,1111,1111即:即:1000H17FFH61162寻址范围:寻址范围: 0000,1000,0000,0000 000 0,1111,1111,1111即:即:0800H0FFFH291、单片机系统扩展的三总线结构;、单片机系统扩展的三总线结构; 2、程序存储器和数据存储器的扩展方法。、程序存储器和数据存储器的扩展方法。存储器扩展时的地址译码、分配与计算。存储器扩展时的地址译码、分配与计算。306.5 存储器综合扩展存储器综合扩展6.5.1 同时扩展同时扩展ROM和和RAM07A07D812AOEC

20、S07A07D812AOEWECS373LS74RDWR0 . 24 . 2P0PALE地地址址译译码码信信号号27646264地地址址译译码码信信号号PSENEA803131如果采用线选法选择芯片如果采用线选法选择芯片2764(ROM)接P2.7 地址范围:00,0000,0000,0000(0000H) 到 0 1,1111,1111,1111(1FFFH)6264(RAM)接P2.6地址范围: 0 0,0000,0000,0000(0000H) 到 0 1,1111,1111,1111(1FFFH) 两组地址可能重合,如何理解。两组地址可能重合,如何理解。32如图所示,如图所示,8031

21、外同时扩展外同时扩展ROM和和RAM,请,请分别写出两片芯片的地址范围?地址范围是否分别写出两片芯片的地址范围?地址范围是否会重合?如何理解?会重合?如何理解?07A07D812AOECS07A07D812AOEWECS373LS74RDWR0 . 24 . 2P0PALE地址译码信号27646264地址译码信号PSENEA8031P2.7P2.6336.5.2 扩展即可读又可写的程序存储器扩展即可读又可写的程序存储器一般地,单片机系统是ROM、RAM并存。ROM只能运行程序,不能修改程序;RAM可以修改程序,但又不能运行程序。有些情况下,如单片机系统开发、程序仿真、实验需要,希望有既能运行程

22、序,又能修改程序的存储器,这就是所谓的既可读又可写的程序存储器。将将RAM芯片经过特殊连接实现芯片经过特殊连接实现34PSENRD&OEOEWEWR812A812A07D07D07A07A3730P04 . 2P7 . 2PCECE27646264开发开发应用应用35RAM的读选通信号:&PSENRD开关扳“调试”2764(第一片)首地址0000H,存放监控程序;6264(第二片)首地址8000H,存放用户调试程序。系统启动,自动进入监控程序,然后进入用户应用程序调试。将开关扳“应用”,6264首地址0000H(2764拔去),系统复位后,用户应用程序自动执行。366.6 MCS-51单片机存

23、储器系统特点和使用单片机存储器系统特点和使用6.6.1 MCS-51单片机存储器系统特点单片机存储器系统特点程序存储器与数据存储器同时存在并截然分开,各有各的地址空间、存取指令、和控制信号;内外存储器同时存在,分为4个物理空间;存储器地址空间重叠和连续程序存储器:内外连续编址形成完整地址空间(最大64K)。数据存储器:内外数据存储器分开各自编址,都从0单元开始。37三个逻辑存储空间三个逻辑存储空间:片内外统一编址的64K字节程序存储器空间;256字节片内数据存储器空间;64K字节片外数据存储器空间。数据存储器数据存储器程序存储器程序存储器内部外部指令指令MOV选通选通指令指令WR,RDMOVX

24、1EAMOVC 指指令令0EAPSENMOVC 选选通通指指令令386.6.2 MCS-51单片机存储器的使用单片机存储器的使用存储空间的区分存储空间的区分内部RAM和内部ROM的区分:内部RAM访问用MOV指令;内部ROM访问用MOVC指令。外部RAM和外部ROM的区分:外部RAM访问用MOVX指令;外部ROM访问用MOVC指令。内部RAM和外部RAM的前256个单元重叠内部RAM访问用MOV指令;外部RAM访问用MOVX指令。39内外程序存储器的衔接内外程序存储器的衔接ROM内部内部ROM外部外部FFFH0H0000H1000FFFH0FFFFH01EA 0EA 401234CSCSCSC

25、S138LS74CBA4 . 2P3 . 2P2 . 2P1 . 2P0 . 2P1k 8位存储器位存储器片片4:0,0000,0000,0000 0,0011,1111,1111即即0000H01FFH片片3:0,0100,0000,0000 0,0111,1111,1111即即0400H07FFH片片2:0,1000,0000,0000 0,1011,1111,1111即即0800H0BFFH片片1:0,1100,0000,0000 0,1111,1111,1111即即0C00H0FFFH41说明下图各存储器地址范围说明下图各存储器地址范围CBA321EEECBA321EEE7654321

26、0CEOECEOECEOE)1(2732)2(2732)3(2732WEOE)1(4118OE)2(4118WERDWRCSCS6 . 25 . 24 . 2PPP765432107 . 2P2 . 2P3 . 2PV5138LS74138LS74PSEN422732:4k 8位位EPROM,12根地址线根地址线2732(1):0000,0000,0000,00000000,1111,1111,1111即0000H0FFFH2732(2):0001,0000,0000,00000001,1111,1111,1111即1000H1FFFH2732(3):0010,0000,0000,000000

27、10,1111,1111,1111即2000H2FFFH434118:1k 8位位EPROM,10根地址线根地址线4118(1):0100,0100,0000,00000110,0111,1111,1111即4400H67FFH4118(2):0100,0000,0000,00000110,0011,1111,1111即4000H63FFH446.7 I/O 扩扩 展展6.7.1 I/O口扩展概述口扩展概述 1MCS-51单片机单片机I/O口扩展性能口扩展性能 单片机应用系统中的I/O口扩展方法与单片机的I/O口扩展性能有关。 (1) 在MCS-51单片机应用系统中,扩展的I/O口采取与数据存

28、储器相同的寻址方法。所有扩展的I/O口或通过扩展I/O口连接的外围设备均与片外数据存储器统一编址。任何一个扩展I/O口,根据地址线的选择方式不同,占用一个片外RAM地址,而与外部程序存储器无关。45 (2) 利用串行口的移位寄存器工作方式(方式0),也可扩展I/O口,这时所扩展的I/O口不占用片外RAM地址。 (3) 扩展 I/O口的硬件相依性。在单片机应用系统中,I/O口的扩展不是目的,而是为外部通道及设备提供一个输入、输出通道。因此,I/O口的扩展总是为了实现某一测控及管理功能而进行的。例如连接键盘、显示器、驱动开关控制、开关量监测等。这样,在I/O口扩展时,必须考虑与之相连的外部硬件电路

29、特性,如驱动功率、电平、干扰抑制及隔离等。 (4) 扩展I/O口的软件相依性。根据选用不同的I/O口扩展芯片或外部设备时,扩展I/O口的操作方式不同,因而应用程序应有不同,如入口地址、初始化状态设置、工作方式选择等。46 2I/O口扩展用芯片口扩展用芯片 MCS-51单片机应用系统中I/O口扩展用芯片主要有通用I/O口芯片和TTL、CMOS锁存器、缓冲器电路芯片两大类。 通用I/O口芯片选用Intel公司的芯片,其接口最为简捷可靠,如8255、8155等。 采用TTL或CMOS锁存器、三态门电路作为I/O扩展芯片,也是单片机应用系统中经常采用的方法。这些I/O口扩展用芯片具有体积小、成本低、配

30、置灵活的特点。一般在扩展8位输入或输出口时十分方便。可以作为I/O扩展的TTL芯片有74LS373、74LS277、74LS244、74LS273、74LS367等。在实际应用中,根据芯片特点及输入、输出量的特征,应选择合适的扩展芯片。47 3I/O口扩展方法口扩展方法 根据扩展并行I/O口时数据线的连接方式,I/O口扩展可分为总线扩展方法、串行口扩展方法和I/O口扩展方法。 (1) 总线扩展方法。扩展的并行I/O芯片,其并行数据输入线取自MCS-51单片机的P0口。这种扩展方法只分时占用P0口,并不影响P0口与其它扩展芯片的连接操作,不会造成单片机硬件的额外开销。因此,在MCS-51单片机应

31、用系统的I/O扩展中广泛采用这种扩展方法。48 (2) 串行口扩展方法。这是MCS-51单片机串行口在方式0工作状态下所提供的I/O口扩展功能。串行口方式0为移位寄存器工作方式,因此接上串入并出的移位寄存器可以扩展并行输出口,而接上并入串出的移位寄存器则可扩展并行输入口。这种扩展方法只占用串行口,而且通过移位寄存器的级联方法可以扩展多数量的并行I/O口。对于不使用串行口的应用系统,可使用这种方法。但由于数据的输入输出采用串行移位的方法,传输速度较慢。49 (3) 通过单片机片内I/O口的扩展方法。这种扩展方法的特征是扩展芯片的输入输出数据线不通过P0口,而是通过其它片内I/O口。即扩展片外I/

32、O口的同时也占用片内I/O口,所以使用较少,但在MCS-51单片机扩展8243时,为了模拟8243的操作时序,不得不使用这种方法。506.7.2 简单简单I/O接口扩展接口扩展 在MCS-51单片机应用系统中,采用TTL或CMOS锁存器、三态门芯片,通过P0口可以扩展各种类型的简单输入/输出口。P0口是系统的数据总线口,通过P0口扩展I/O口时,P0口只能分时使用,故输出时接口应有锁存功能;输入时,视数据是常态还是暂态的不同,接口应能三态缓冲,或锁存选通。 不论是锁存器,还是三态门芯片,都只具有数据线和锁存允许及输出允许控制线,而无地址线和片选信号线。而扩展一个I/O口,相当于一个片外存储单元

33、。CPU对I/O口的访问,要以确定的地址,用MOVX指令来进行。511用锁存器扩展输出口用锁存器扩展输出口图4.31 用74LS377扩展输出口 52 74LS377是带有输出允许控制端的8D锁存器,有8个输入端(1D8D),8个输出端(1Q8Q),1个时钟控制端CLK,1个锁存允许端E。当E=0时,CLK的上升沿将8位D输入端的数据打入锁存器,这时锁存器将保持D端输入的8位数据。在图中CLK与WR相连,作为写(输出)控制端;E与单片机的地址选择线P2.7相连,作为寻址端。如此连接的输出口地址是P2.7=0的任何16位地址。7FFFH可作为该口地址。对该口的输出操作如下:MOV DPTR,#7

34、FFFH ;使DPTR指向74LS377输出口MOV A,#data ;输出的数据要通过累加器A传送MOVX DPTR,A ;向74LS377扩展口输出数据532用锁存器扩展输入口用锁存器扩展输入口图4.32 用74LS373扩展输入口 54中断系统初始化程序:PINT: SETB IT0 ;外部中断0选择为下降沿触发方式 SETB EA ;开系统中断 MOV R0,#50H ;R0作地址指针,指向数据区首址 SETB EX0 ;外部中断0中断允许 中断服务程序: ORG 0003HPINT0:AJMP INT0 INT0: MOV DPTR,#0BFFFH ;使DPTR指向74LS373扩展

35、输入口 MOVX A,DPTR ;从74LS373扩展输入口输入数据 MOV R0,A ;输入数据送数据区 INC R0 RETI553用三态门扩展输入口用三态门扩展输入口图4.33 用74LS244扩展输入口 564扩展多个输入、输出口举例扩展多个输入、输出口举例 图图4.34 扩展多个输入口和输出口的连接扩展多个输入口和输出口的连接 576.7.3 8255可编程并行接口扩展可编程并行接口扩展 所谓可编程的接口芯片是指其功能可由单片机的指令来加以改变,通过编程,可以使接口芯片执行不同的接口功能。 8255A是Intel公司为单片机配套的通用可编程并行接口芯片, 8255A接口芯片有3个8位

36、并行输入/输出端口,可利用编程方法设置3个端口是作为输入端口还是作为输出端口。 6.7.3.1 Intel 8255A的结构与功能的结构与功能 Intel 8255A是一个40引脚双列直插的芯片,其引脚如图6-9 所示。 1、8255A的引脚 1)、与单片机相连的引脚 D7D0:数据线,双向、三态。 RD:读信号,输入、低电平有效。 WR:写信号,输入、低电平有效信号。 CS:片选信号,输入、低电平有效。 A1、A0:地址线,输出。 A1、A0与8255内部寄存器的关系如表6-3所示。图6-9 8255A引脚 58592)、与外设相连的引脚 PA7PA0:A端口数据信号引脚 PB7PB0:B端

37、口数据信号引脚。 PC7PC0:C端口数据信号引脚。3)、其它引脚 RESET:复位信号,输入、高电平有效。 VCC、GND:电源+5V和接地引脚。2、8255A的内部结构与功能的内部结构与功能 8255A的内部结构如图6-10所示。它包括四个部分: 数据总线缓冲器; 读写控制逻辑; A组控制; B组控制。 端口A和端口C的高4位(PC7PC4)构成A组,由A组控制部件来对它进行控制; 端口B和端口C的低4位(PC3PC0)构成B组,由B组控制部件对它进行控制。60图6-10 8255A的内部结构616.7.3.2 Intel 8255A的控制字的控制字 8255A是可编程接口芯片,要使825

38、5A工作,必须把工作命令控制字写入8255A的控制字寄存器。8255A共有两种控制字: -工作方式选择控制字; -对端口C置位/复位控制字。 1、方式选择控制字 8255A的选择工作方式的控制字格式和各位的含义如图6-11所示。小结: (1)、端口A可以工作于方式0、方式1、方式2共三种工作方 式,可以作为输入端口或输出端口; (2)、端口B可以工作于方式0、方式1两种工作方式,可以作 为输入端口或输出端口; (3)、端口C分成高4位(PC7PC4)和低4位(PC3PC0),可 分别设置成输入端口或输出端口;端口C的高4位与端 口A配合组成A组,端口C的低4位与端口B配合组成B组 (4)、D7

39、1表明是设定方式选择控制字。 62图6-11 8255A的方式选择控制字63例6.5: 设8255A的控制字寄存器端口地址为3003H,使端口A、端口B都工作于方式0,端口A、端口B、端口C都作为输入端口,则控制字为10011011B,设置8255A控制字的程序段如下: MOV DPTR ,#3003H MOV A ,#9BH MOVX DPTR,A2、端口C按位置位/复位控制字 端口C可以按位进行置位/复位操作,也就是使端口C的各位分别设置为1或0。控制字的格式如图6-12所示。 控制字中,D70(特征位),表示是端口C按位置位/复位控制字。D3、D2、D1选择端口C要进行置位/复位操作的位

40、。 64图6-12端口C按位置位/复位控制字65v控制字中,D70(特征位),表示是端口C按位置位/复位控制字。D3、D2、D1选择端口C要进行置位/复位操作的位。 v【例6-6】 设8255A的控制字寄存器的端口地址为3003H,要设置PC31,则按位置位/复位控制字为00000111B,设置8255A置位/复位控制字的程序段如下所示。vMOV DPTR ,#3003HvMOV A ,#07HvMOVX DPTR ,A666.7.3.3 Intel 8255A的工作方式的工作方式 1、方式、方式0 方式0也被称为基本输入/输出工作方式,不需要应答联络信号。端口A、端口B和端口C的高4位及低4

41、位都可以作为输入或输出端口。 2、方式、方式1 方式1是一种选通输入/输出方式,也称为应答方式。在这种工作方式下,端口A和端口B作为输入或输出数据的数据端口。端口C的某些位作为联络信号,配合端口A和端口B工作。端口C联络信号如表6-4所示。 3、方式、方式2 方式2也被称为双向选通输入/输出方式,只有端口A可以工作于这种方式。在这种方式下,利用端口A既可以进行数据输入,也可以进行数据输出。输入或输出的数据都被锁存。端口B仍可独立工作于方式0或方式1。8255A工作于方式2时,端口C的PC3PC7作为方式2的控制和状态信息,端口C联络信号如表6-4所示。67686.7.3.4 8255A可编程并

42、行接口扩展应用实例可编程并行接口扩展应用实例v8255A在使用前必须进行初始化,8255A初始化编程基本包括两个步骤:首先根据问题要求写出方式选择控制字,然后编写初始化程序,把方式选择控制字写入控制字寄存器。v【例6-7】 如图6-13所示,在8255的B口接有8个按键,A口接有8个发光二极管,按下某一按键,相应的发光二极管发光,试设计程序完成这一功能。69图6-13 8255的B口接按键,A口接发光二极管解解:根据电路图6-13所示,可确定8255A的端口地址为:0001H0003H。70参考程序如下:参考程序如下: ORG 0000H LJMP MAIN ORG 0200H MAIN: M

43、OV DPTR,#0003H ;指向8255的控制口 MOV A,#83H MOVX DPTR, A ;向控制口写控制字,A口输出,B口输入 MOV DPTR,#0001H ;指向8255的B口 LOOP: MOVX A, DPTR ;检测按键,将按键状态读入A累加器 MOV DPTR,#0000H ;指向8255的A口 MOVX DPTR, A ;驱动LED发光 SJMP LOOP ;循环 END71图图4.23 8255的扩展连接图的扩展连接图 28031与与8255的接口方法的接口方法72 例例 试对图4.23中的8255A编程,使其各口工作于方式0,A口作输入,B口作输出,C口高4位作输出,C口的低4位作输入。 由方式选择控制字的格式与 定义可确定出满足要求的方式控制字应为91H(10010001B)。对8255A编写程序将91H写入它的控制寄存器,初始化程序为MOV DPTR,#FF7FH ;DPTR作地址指针,指向控制口MOV A,91H MOVX DPTR,A 因为图4.23扩展电路未使用高位地址线,所以端口地址也可使用8位。73 例例 试按图4.23扩展电路,写出自8255A的B口输出单片机中R7内容与自8255的A口输入数据到单片机R3的程序。 使用8位地址,8255A的A、B、C口及控制口地址分别为7CH、7DH、

温馨提示

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

评论

0/150

提交评论