微机原理单片机第7章80C51单片机的系统扩展_第1页
微机原理单片机第7章80C51单片机的系统扩展_第2页
微机原理单片机第7章80C51单片机的系统扩展_第3页
微机原理单片机第7章80C51单片机的系统扩展_第4页
微机原理单片机第7章80C51单片机的系统扩展_第5页
已阅读5页,还剩160页未读 继续免费阅读

下载本文档

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

文档简介

1、第第7 7章章 80C5180C51的系统扩展的系统扩展 7.1 7.1 存储器的扩展存储器的扩展7.5 7.5 显示器及键盘接口显示器及键盘接口7.2 7.2 输入输入/ /输出及其控制方式输出及其控制方式 7.3 7.3 并行接口的扩展并行接口的扩展7.4 82797.4 8279接口芯片接口芯片 单片机内资源少,容量小,在进行较复杂过单片机内资源少,容量小,在进行较复杂过程的控制时,它自身的功能远远不能满足需要。程的控制时,它自身的功能远远不能满足需要。应扩展其功能。应扩展其功能。 MCS-51MCS-51单片机的扩展性能较强,可根据需要单片机的扩展性能较强,可根据需要扩展:扩展: 1

2、1、ROMROM、RAMRAM; 2 2、定时、定时/ /计数器;计数器; 3 3、并行、并行I/OI/O口、串行口;口、串行口; 4 4、中断系统扩展等。、中断系统扩展等。 一、存储器扩展一、存储器扩展(一)存储器的分类(一)存储器的分类 1 1、制造工艺:、制造工艺:双极型(TTL)和MOS型(金属氧化物半导体)(1)双极型:存取速度快,集成度低,功耗大(2)MOS型:存取速度慢,集成度高,功耗小 2 2、应用:、应用:ROM(只读M)和RAM(随机M) ROM:用于存放无需修改并长期使用的程序或数据。 RAM:作内存,存放正运行并需要不断修改的程序 和数据。(二)半导体存储器的性能指标(

3、二)半导体存储器的性能指标1 1、存储容量:、存储容量:存储器能存放的二进制信息的总量。存储器能存放的二进制信息的总量。2 2、存取速度:、存取速度:启动启动M M操作到完成操作所需时间,存操作到完成操作所需时间,存取时间越短,存取速度越快。取时间越短,存取速度越快。 内存的存取时间用内存的存取时间用nsns(纳秒)表示。(纳秒)表示。 高速高速M M的存的存取时间:取时间:50-60 ns50-60 ns;中速;中速M M:100-250 ns100-250 ns;低速;低速M M:300 ns300 ns左右。(左右。(例如,例如,SRAMSRAM的存取时间约为的存取时间约为60ns60n

4、s,DRAMDRAM的的存取时间约为存取时间约为120120250ns250ns) 3 3、可靠性:、可靠性:M M无故障读无故障读/ /写的时间,用平均无故障时写的时间,用平均无故障时间间MTBFMTBF衡量。衡量。4 4、功耗、功耗:反映:反映M M的耗能和工作稳定性。的耗能和工作稳定性。 (三)(三)ROMROM存储器存储器 ROM是一种只读存储器,存储器中内容一经写入,即使掉电,写入的内容也不会丢失。ROM主要用于存放系统软件。 掩模掩模ROMROM:由厂商按用户要求掩模制作(即光刻图形技术) ,封装后不能改写,用户只能读出,无法改写,适合于存储永久性保存的程序和数据。 PROM( P

5、ROM(可编程可编程) ):它的编程逻辑器件靠存储单元中熔丝的断开与接通来表示存储的信息:当熔丝被烧断时,表示信息“0”;当熔丝接通时,表示信息“1”。可由用户一次性编程写入,写入后不能改写。 EPROM( EPROM(紫外线可擦紫外线可擦PROM)PROM):用户可多次改写内容,改写方法一般可 选用紫外线擦除,再编程写入,有任一位错,都须全片擦除、改写。紫外线照射约半小时,所有存储位复原到1。 E E2 2PROM (PROM (电可擦电可擦PROM)PROM):兼有RAM和ROM的双重功能特点,可以字节为单位多次用电擦除和改写,并可直接在机内进行,无需专用设备,故方便灵活。 FLASH F

6、LASH(闪电擦(闪电擦ROMROM):):可联机快速电擦除。和E2PROM的不同是可以“块”电擦除,即按需要将内存分为若干“块”,以块为单位进行擦/写。其速度比E2PROM快,一般在65170ns之间 。 (四)随机存取存储器(四)随机存取存储器RAM(Random Access RAM(Random Access Memory)Memory) RAM能够随时从任一单元读出或写入内容,其优点是读/写方便,使用灵活.但RAM中的信息不能长期保存,一旦停电时,所存信息会丢失,因此RAM主要用作信息的暂存。 常用的随机存取存储器有静态随机存取存储器SRAMSRAM和动态随机存取存储器DRAMDRA

7、M两种,SRAMSRAM主要用在高速缓冲存储器或小容量的存储系统中,而DRAMDRAM主要用做内存。 RAM主要用于以下几个方面:(1)存放当前正在执行的程序和数据,中间运算结果和I/O数据等。(2)作堆栈(Stack)保护中断和子程序调用时CPU的现场信息。(3)作I/O数据缓冲器,如显示输出、打印输出、键盘输入缓冲存储器。(4)构成CMOS电路,用于保存系统当前设置的各种参数。在这种情况下需要有后备电源及掉电保护电路的支持。 RAM可分为静态RAM,动态RAM和非易失性RAM等几类。 SRAM(静态RAM):存储单元电路以双稳为基础,故状态稳定,只要不掉电,信息不会丢失。 DRAM(动态R

8、AM):存储单元电路简单,集成度高,功耗小,但即使不掉电也会因电容放电而丢失信息,所以需定时刷新。 IRAM(组合RAM):附有片上刷新的DRAM,兼有SRAM和DRAM优点。 NVRAM(非易失性RAM):实际是由SRAM和E2PROM共同 构成.正常时为SRAM;掉电或电源故障时,立即将SRAM中的信息保存在E2PROM中,使不丢失。多用于存储系统中的重要信息保存和掉电保护。新型新型RAM存储器:存储器:(1)静态RAM: SB SRAM(同步突发SRAM) PB SRAM(管道突发SRAM)(2)动态RAM: SDRAM(同步DRAM) CDRAM(高速缓冲DRAM) DRDRAM(接口

9、DRAM) DDRRAM(双数据传输DRAM) FCDRAM(快速循环DRAM)。二、二、MCS-51MCS-51单片机最小系统单片机最小系统 (一)一)8051/87518051/8751硬件最小系统硬件最小系统 对于片内有对于片内有ROMROM型单片机,其自身可以构成最小系统型单片机,其自身可以构成最小系统 该系统的资源如下:该系统的资源如下: 4KB ROM4KB ROM,128-256B RAM128-256B RAM; 五源中断系统;两个十六位加一五源中断系统;两个十六位加一 定时定时/ /计数器;计数器; 一个全双工串行一个全双工串行UARTUART;四个并行;四个并行I/OI/O

10、口口P0-P3P0-P3。 (二)(二)80318031硬件最小系统硬件最小系统 80318031单片机片内无单片机片内无ROMROM,若要正常工作,必需外配,若要正常工作,必需外配ROMROM。外接。外接ROMROM后,后,P3P3口、口、P2P2口、口、P0P0口均被占用,只剩口均被占用,只剩下下P1P1口作口作I/OI/O口用,其它功能不变。口用,其它功能不变。 三总线的概念三总线的概念: :地址总线地址总线 AB AB:P0P0口提供(口提供(A7-A0A7-A0);); P2P2口提供(口提供(A15-A8A15-A8),共),共1616位。位。数据总线数据总线 DB DB:P0P0

11、口提供(口提供(D7-D0D7-D0),共),共8 8位。位。控制总线控制总线 CB CB:ALEALE、EAEA、PSENPSEN、WRWR、RDRD7.1 存储器的扩展存储器的扩展 7.1.1 7.1.1 程序存储器的扩展程序存储器的扩展 一、扩展总线一、扩展总线 74LS37374LS373是有输出三态门的电平允许是有输出三态门的电平允许8D8D锁存器。当锁存器。当G G(使能端)为高电平时,锁存器的数据输出端(使能端)为高电平时,锁存器的数据输出端Q Q的状的状态与数据输入端态与数据输入端D D相同(透明的)。当相同(透明的)。当G G端从高电平返端从高电平返回到低电平时(下降沿后),

12、输入端的数据就被锁存回到低电平时(下降沿后),输入端的数据就被锁存在锁存器中,数据输入端在锁存器中,数据输入端D D的变化不再影响的变化不再影响Q Q端输出。端输出。 二、片外二、片外ROMROM操作时序操作时序 进行进行ROMROM的扩展,单片机的地址总线为的扩展,单片机的地址总线为1616位,位,扩展的片外扩展的片外ROMROM的最大容量为的最大容量为64KB64KB,地址为,地址为0000H0000HFFFFHFFFFH。 由于由于80C5180C51采用不同的控制信号和指令采用不同的控制信号和指令,尽管尽管ROMROM与与RAMRAM的地址是重叠的地址是重叠的,也不会发生混乱。的,也不

13、会发生混乱。 80C5180C51对对片内和片外片内和片外ROMROM的访问的访问使用相同的指令,使用相同的指令,两者的选择是由硬件实现的。两者的选择是由硬件实现的。 芯片选择现在芯片选择现在多采用线选法,地址译码法用的渐多采用线选法,地址译码法用的渐少。少。ROMROM与与RAMRAM共享数据总线和地址总线。共享数据总线和地址总线。访问片外访问片外ROMROM的时序的时序 : 80C51 80C51系列单片机的系列单片机的CPUCPU在访问片外在访问片外ROMROM的一个机器的一个机器周期内,信号周期内,信号ALEALE出现两次(正脉冲),出现两次(正脉冲),ROMROM选通信号选通信号也两

14、次有效,这说明也两次有效,这说明在一个机器周期内,在一个机器周期内,CPUCPU两次访两次访问片外问片外ROMROM,也即在一个机器周期内可以处理两个字,也即在一个机器周期内可以处理两个字节的指令代码节的指令代码,所以在,所以在80C5180C51系列单片机指令系统中系列单片机指令系统中有很多单周期双字节指令。有很多单周期双字节指令。 访问外部程序存储器时序访问外部程序存储器时序 操作时序如图所示,操作时序如图所示,其操作过程如下。其操作过程如下。 (1 1)在)在S S1 1P P2 2时刻产生时刻产生ALEALE信号。信号。 (2 2)由)由P P0 0、P P2 2口送出口送出1616位

15、地址(位地址(PCLPCL和和PCHPCH),由),由于于P P0 0口送出的低口送出的低8 8位地址只保持到位地址只保持到S S2 2P P2 2,所以要利用,所以要利用ALEALE的下降沿信号将的下降沿信号将P P0 0口送出的低口送出的低8 8位地址信号锁存到位地址信号锁存到地址锁存器中。而地址锁存器中。而P P2 2口送出的高口送出的高8 8位地址在整个读指位地址在整个读指令的过程中都有效,不需要对其进行锁存。从令的过程中都有效,不需要对其进行锁存。从S S2 2P P2 2起,起,ALEALE信号失效。信号失效。 (3 3)从)从S3P1S3P1开始,开始,PSENPSEN开始有效,

16、选通片外开始有效,选通片外ROMROM,对,对外部程序存储器进行读操作,将选中的单元中的指令外部程序存储器进行读操作,将选中的单元中的指令代码从代码从P0P0口读入,口读入,S4P2S4P2时刻,时刻,PCHPCH失效。失效。(4 4)从)从S4P2S4P2后开始第二次读入,过程与第一次相似。后开始第二次读入,过程与第一次相似。 三、三、ROMROM芯片及扩展方法芯片及扩展方法 (一)(一)EPROMEPROM存储器及扩展存储器及扩展 常用的芯片有常用的芯片有27322732、27642764、2712827128、2725627256、2751227512等等 。1、2764的信号:(1)A

17、12-A0:13条地址线(2)D7-D0:8条数据线(3)OE:读出允许(4)CE:片选信号(5)PGM:编程脉冲输入(6)其它:VPP、VCC、GND2 2、27642764的操作方式的操作方式 2764 有读出、保持、编程、编程校验和编程禁止五种操作方式 (1)读出 :D0-D7输出,CE和OE低电平,PGM:编程控制为高电平,VPP接+5V。(2)编程:D0-D7输入,CE低电平,OE高电平,PGM:编程控制为低电平,VPP:加12.5V用于写入程序。(3)保持:CE为高电平,数据线呈现高阻状态,禁止数据传送。 (4)编程校验:在编程过程中,对写入的信息可以进行校验操作。即在一个字节编程

18、完成后,PGM为高电平,OE和CE 为低电平,将同一单元的内容由数据线输出,可检验写入的内容是否正确。 (5) 编程禁止:当CE为高电平时,禁止编程,数据线呈现高阻状态。 3 3、EPROMEPROM存储器扩展电路:存储器扩展电路:(1)P0口地址/数据复用,除和2764的D0-D7连接作数据线外,还经74LS373与2764的A0-A7相连作低8位地址线。(2)P2口的P2.0-P2.4与2764的P8-P12相连提供高5位地址作高5位地址线。(3)控制信号:PSEN与2764的OE连作外部ROM的选通信号,OE接地表示芯片片选信号有效,可以读出。(二)(二)EEPROMEEPROM存储器及

19、扩展存储器及扩展 常用的常用的EEPROMEEPROM芯片有芯片有28642864、28172817等等 。123456789101112131428272625242322212019181716152864AVccWENCA8A9A11OEA10CEI/O7I/O6I/O5I/O4I/O3NCA12A7A6A5A4A3A2A1A0I/O0I/O1I/O2GND EEPROM兼有ROM和RAM的特性,每个单元可重复进行约1万次改写。 EEPROM对硬件电路无特殊要求,可直接接5电源进行在线擦除和改写,擦除时间约10ms,写入时必须保存足够的时间。 在芯片设计上EEPROM和EPROM兼容,给

20、用户的设计和调试带来方便。 7.1.2 7.1.2 数据存储器数据存储器RAMRAM的扩展的扩展 一、一、RAMRAM扩展原理扩展原理 扩展扩展RAMRAM和扩展和扩展ROMROM类似,由类似,由P2P2口提供高口提供高8 8位地址,位地址,P0P0口分时地作为低口分时地作为低8 8位地址线和位地址线和8 8位双向数据总线。由位双向数据总线。由RDRD、WRWR信号控制读和写。信号控制读和写。 外部外部RAMRAM读时序为:读时序为:外部外部RAMRAM写时序为:写时序为: 访问外部数据存储器的操作过程如下:访问外部数据存储器的操作过程如下: (1 1)从第)从第1 1次次ALEALE有效到第

21、有效到第2 2次次ALEALE开始有效期间,开始有效期间,P P0 0口送出外部口送出外部RAMRAM单元的低单元的低8 8位地址,位地址,P P2 2口送出外部口送出外部RAMRAM单元的高单元的高8 8位地址。位地址。 (2 2)在第)在第2 2个机器周期,第个机器周期,第1 1次次ALEALE信号不再出现,信号不再出现,此时也失效,并在第此时也失效,并在第2 2个机器周期的个机器周期的S S1 1P P1 1时,信号开时,信号开始有效,从始有效,从P P0 0口输入(口输入(RD=0RD=0)或输出()或输出(WR=0)WR=0)选中选中RAMRAM单元中的内容。单元中的内容。 (3 3

22、)此时)此时PSENPSEN为高电平,所以不会访问为高电平,所以不会访问ROMROM。 二、二、RAMRAM扩展方法扩展方法 (一)数据存储器(一)数据存储器常用的数据存储器常用的数据存储器SRAMSRAM芯片有芯片有61166116626462646225662256等。等。 1 1、Intel 6264Intel 6264:容量为8KB,是28引脚双列直插式芯片,采用CMOS工艺制造 A12A0 :地址线,可寻址8KB的存储空间。 D7D0 :数据线,双向,三态。 OE :读出允许信号,输入,低电平有效。 WE :写允许信号,输入,低电平有效。 CE1 :片选信号1,输入,在读/写方式时为

23、低电平。 CE2 :片选信号2,输入,在读/写方式时为高电平。 VCC :+5V工作电压。 GND :信号地。 2 2、操作、操作: (1)读出时,地址线A0-A12来的地址信号经行、列地址译码器。译码后选中某个存储单元(8位),当CE1=0,OE=0,WE=1,CE2=1时构成读出逻辑,打开三态门,数据经I/O电路送到D7-D0后输出到CPU。 (2)写入时,地址选择与读出相同,而CE1=WE=0,OE=CE2=1打开三态门,数据经D7-D0和数据输入控制电送到I/O电路,写入存储单元中。 (3)当片选信号无效时,即CE1=1,输入/输出三态门成高阻,从而存储芯片与系统总线被隔离。 3、 静

24、态静态RAMRAM与与CPUCPU的连接的连接(1)地址线A0-An与CPU的低位地址线相连;(2)数据线D0-D7与CPU的对应数据线相连;(3)CPU高位地址线经译码器译码后接静态RAM 的片选信号;(4)读/写控制OE/WE与CPU的RD/WR相连。 (二)数据存储器扩展电路(二)数据存储器扩展电路 7.1.3 7.1.3 存储器扩展的编址技术存储器扩展的编址技术 7.1.3.1 7.1.3.1 线选法线选法 线选法是直接以系统的地址作为存储芯片的片选信线选法是直接以系统的地址作为存储芯片的片选信号,只需把某条高位地址线与存储芯片的片选信号直号,只需把某条高位地址线与存储芯片的片选信号直

25、接连接。接连接。适用于小规模单片机系统的存储器扩展适用于小规模单片机系统的存储器扩展。 优点:不需增加另外电路。缺点:存储空间不连续。优点:不需增加另外电路。缺点:存储空间不连续。【例【例1 1】现有】现有2K2K* *8 8位存储器芯片,需扩展位存储器芯片,需扩展8K8K* *8 8位存储结位存储结构采用线选法进行扩展。构采用线选法进行扩展。 扩展扩展8KB8KB的存储器结构需的存储器结构需2KB2KB的存储器芯片的存储器芯片4 4块。块。2K2K的存储器所用的地址线为的存储器所用的地址线为A0A0A10A10共共1111根地址线和片选根地址线和片选信号与信号与CPUCPU的连接如表所示。的

26、连接如表所示。80C5180C51与存储器与存储器的线路连接的线路连接 80C51存储器存储器P0口经锁存器锁口经锁存器锁存形成存形成A0A7与与A0A7相连相连P2.0、P2.1、P2.2与与A8A10相连相连P0口口与与D0D7相连相连P2.3与存储器与存储器1的片选的片选信号相连信号相连P2.4与存储器与存储器2的片选的片选信号相连信号相连P2.5与存储器与存储器3的片选的片选信号相连信号相连P2.6与存储器与存储器3的片选的片选信号相连信号相连扩展存储器的硬件连接所示。扩展存储器的硬件连接所示。 P2.2P2.1P2.0ALEP0EA74LS373D0|D7A A7 7| |A A0

27、0A A7 7| |A A0 0A A7 7| |A A0 0A A7 7| |A A0 0D0|D7D0|D7D0|D7A10A9A8A10A9A8A10A9A8A10A9A8CE1CE2CE3CE4P2.6|P2.31 12 23 34 48 80 0C C5 51 1线选法连线图 四个芯片的地址分配所示:四个芯片的地址分配所示: A15A14A13A12A11A10 . A0地址范围芯片100111111000 . 01 . 17000H-77FFH芯片200111100110 . 01 . 16800H-6FFFH芯片300110011110 . 01 . 15800H-5FFFH芯片

28、400001111110 . 01 . 13800H3FFFH 7.1.3.2 7.1.3.2 译码法译码法 所谓译码法就是使用译码器对系统的高位地址进行译码,以其译码输出作为存储芯片的片选信号。这是一种最常用的存储器编址方法,能有效地利用空间,特点是存储空间连续,适用于大容量多芯片存储器扩展。 常用的译码芯片有:74LS139(双24译码器)和74LS138(38译码器)等,它们的CMOS型芯片分别是74HC139和74HC138。 74LS138译码器 1G2G1A1B2A2B1Y01Y21Y12Y01Y32Y12Y22Y3二四译码器Y0Y1Y2Y3Y4Y5Y6Y7G1G2AG2BABC三

29、八译码器译码器管脚图【例【例2 2】现有】现有2K2K* *8 8位存储器芯片,需扩展位存储器芯片,需扩展8K8K* *8 8位存储位存储结构采用译码法进行扩展。结构采用译码法进行扩展。 扩展扩展8KB8KB的存储器结构需的存储器结构需2KB2KB的存储器芯片的存储器芯片4 4块。块。2K2K的存储器所用的地址线为的存储器所用的地址线为A A0 0A A1010共共1111根地址线和片根地址线和片选信号与选信号与CPUCPU的连接所示。的连接所示。 80C51与存储器的线路连接 80C51存储器存储器P0口经锁存器锁存形成A0A7与A0A7相连P2.0、P2.1、P2.2与A8A10相连P0口

30、与D0D7相连P2.4P2.3译码输出与存储器的片选信号连接00与存储器1的片选信号相连01与存储器2的片选信号相连10与存储器3的片选信号相连11与存储器4的片选信号相连 P2.3、P2.4作为二-四译码器的译码地址,译码输出作为扩展4 个存储器芯片的片选信号,P2.5、P2.6、P2.7悬空。扩展连线图采用译码器扩展8KB存储器连线图 4A7|A0CECECECEA7|A0A7|A0A7|A0123BAY0Y1Y2Y374LS1391GA10A9A8A10A9A8A10A9A8A10A9A8P0口锁存输出P2.2P2.1P2.0P2.4P2.3这样得到四个芯片的地址分配所示。 译码方式地址

31、分配表 P2.7P2.6P2.5P2.4P2.3P2.2 . P0地址范围芯片100000000000 . 01 . 10000H-07FFH芯片200000000110 . 01 . 10800H-0FFFH芯片300000011000 . 01 . 11000H-17FFH芯片400000011110 . 01 . 11800H1FFFH7.2 7.2 输入输入/ /输出及其控制方式输出及其控制方式 原始数据或现场信息要利用输入设备输入到单片机原始数据或现场信息要利用输入设备输入到单片机中,单片机对输入的数据进行处理加工后,还要输出中,单片机对输入的数据进行处理加工后,还要输出给输出设备。

32、给输出设备。常用的输入设备常用的输入设备有键盘、开关及各种传有键盘、开关及各种传感器等,常用的输出设备有感器等,常用的输出设备有LEDLED(或(或LCDLCD)显示器、微)显示器、微型打印机及各种执行机构等。型打印机及各种执行机构等。 80C5180C51单片机内部有四个并行口和一个串行口,对单片机内部有四个并行口和一个串行口,对于简单的于简单的I/OI/O设备可以直接连接。当系统较为复杂时,设备可以直接连接。当系统较为复杂时,往往要借助往往要借助I/OI/O接口电路接口电路(简称(简称I/OI/O接口)完成单片机接口)完成单片机与与I/OI/O设备的连接。现在,许多设备的连接。现在,许多I

33、/OI/O接口已经系列化、接口已经系列化、标准化,并具有可编程功能。标准化,并具有可编程功能。单片机与单片机与I/OI/O设备的关系:设备的关系:7.2.1 7.2.1 输入输入/ /输出接口的功能输出接口的功能 I/O I/O接口的功能是:接口的功能是: 2 2、对输入设备的三态缓冲、对输入设备的三态缓冲 外设传送数据时要占用总线,不传送数据时必须对外设传送数据时要占用总线,不传送数据时必须对总线呈高阻状态。利用总线呈高阻状态。利用I/OI/O接口的三态缓冲功能,可接口的三态缓冲功能,可以以实现实现I/OI/O设备与数据总线的隔离设备与数据总线的隔离,便于其它设备的,便于其它设备的总线挂接。

34、总线挂接。 1 1、对单片机输出的数据锁存、对单片机输出的数据锁存 锁存数据线上瞬间出现的数据锁存数据线上瞬间出现的数据,以解决单片机与,以解决单片机与I/OI/O设备的速度协调问题。设备的速度协调问题。 3 3、信号转换、信号转换 实现单片机与实现单片机与I/OI/O设备间的信号类型(数字与模拟、设备间的信号类型(数字与模拟、电流与电压)、信号电平(高与低、正与负)、信号电流与电压)、信号电平(高与低、正与负)、信号格式(并行与串行)等的转换。格式(并行与串行)等的转换。 4 4、时序协调、时序协调 不同的不同的I/OI/O设备定时与控制逻辑是不同的设备定时与控制逻辑是不同的,并与,并与CP

35、UCPU的时序往往是不一致的,这就需要的时序往往是不一致的,这就需要I/OI/O接口进行时序接口进行时序的协调。的协调。 一、无条件传送一、无条件传送 适用于对适用于对简单的简单的I/OI/O设备设备(如开关、(如开关、LEDLED显示器、显示器、继电器等)的操作,或者继电器等)的操作,或者I/OI/O设备的定时固定或已知设备的定时固定或已知的场合。的场合。7.2.2 7.2.2 单片机与单片机与I/OI/O设备的数据传送方式设备的数据传送方式 二、查询状态传送二、查询状态传送 效率低。效率低。三、中断传送方式三、中断传送方式 效率大大提高。效率大大提高。 四、直接存储器存取(四、直接存储器存

36、取(DMADMA)方式)方式 适于适于高速外设以及成组交换数据高速外设以及成组交换数据的场合的场合 。7.3 7.3 并行接口的扩展并行接口的扩展 7.3.1 7.3.1 并行输入并行输入/ /输出口的简单扩展输出口的简单扩展举例:如上图,扩展74LS244作输入,接8个开关,扩展74LS273作输出,接8个LED灯,要求读入开关的状态,并将状态在LED灯上显示。解:P2.7=0,设其余地址线全为“1”,74LS244和74LS273地址为:7FFFH。 程序:MOV DPTR,#7FFFHLOP:MOVX A,DPTRMOVX DPTR,AJMP LOP7.3.2 7.3.2 可编程接口可编

37、程接口81C5581C55的扩展的扩展一、一、81C5581C55的引脚及结构的引脚及结构 (一)(一) 81C5581C55的内部结构的内部结构 1、256个字节的RAM 2、3个并行口:A口(8位)、B口(8位)、C口(6位) 3、一个14位的减1计数器 4、命令/状态寄存器 写入命令寄存器决定81C55的工作方式,读出状态寄存器时可以了解81C55的当前状态,2个寄存器公用一个地址,靠写入或读出不同操作区分。 (二)(二) 81C5581C55的芯片引脚的芯片引脚 81C55为40引脚双列直插式封装芯片,其引脚排列如图所示。现将其各引脚的功能简介如下: AD0-AD7:地址/数据复用线。

38、 它与单片机的P0口直接相连。81C55和CPU之间的地址、数据、命令及状态信号都通过这组信号线传送。 :片选信号,输入,低电平有效。 :RAM和I/O口选择线。当 =1时,选中I/O口;当 =0时,选中RAM。 CE/IO M/IO M/IO M ALE:地址锁存信号。 RD :读选通信号,输入,低电平有效。 WR :写选通信号,输入,低电平有效。TIMER IN:定时器输入。是81C55片内定时器的脉冲信号输入端TIMER OUT:定时器输出。通过它可以输出矩形波或脉冲波。 PA0-PA7:A口通用的输入/输出线。由编程来决定是输入还是输出。 PB0-PB7:B口通用的输入/输出线。由编程

39、来决定是输入还是输出。 PC0-PC5:C口的输入/输出或控制状态信号线。 二、二、81C5581C55的内部编址的内部编址内部内部RAMRAM地址地址为:为: 00H00HFFHFFH。内部内部端口地址端口地址为:为: 000 - 000 - 命令命令/ /状态寄存器状态寄存器 001 - A001 - A口口 010 - B010 - B口口 011 - C011 - C口口 100 - 100 - 计数器低计数器低8 8位位 101 - 101 - 计数器高计数器高6 6位及计数位及计数 器方式设置位器方式设置位三、工作方式设置及状态字格式三、工作方式设置及状态字格式 1 1、方式设置(

40、写命令寄存器)、方式设置(写命令寄存器)PA:A口数据传送方向设置位。口数据传送方向设置位。0-输入;输入;1-输出。输出。 PB:B口数据传送方向设置位。口数据传送方向设置位。0-输入;输入;1-输出。输出。PC1、PC2:C口工作方式设置位。口工作方式设置位。 81C55的工作方式 81C55有3个I/O口,A口、B口和C口,其中C口只有6位。A口和B口均可工作于基本I/O方式或选通I/O方式。C口既可工作于基本I/O方式,也可作为A口、B口选通工作时的状态联络控制信号线。 1.基本I/O 基本I/O为无条件传送, 不需要任何联络信号。 2.选通I/O 选通I/O为条件传送,传送的方式可用

41、查询方式,也可用中断方式,需要有联络信号。 IEAIEA:A A口的中断允许设置位。口的中断允许设置位。0-0-禁止;禁止;1-1-允许。允许。IEBIEB:B B口的中断允许设置位。口的中断允许设置位。0-0-禁止;禁止;1-1-允许。允许。TM2TM2、TM1TM1:计数器工作方式设置位。:计数器工作方式设置位。2 2、状态字格式(写状态寄存器)、状态字格式(写状态寄存器) INTRX INTRX:中断请求标志。:中断请求标志。INTRINTRX X =1 =1,表示,表示A A或或B B口有中断请求;口有中断请求;INTRX=0INTRX=0,表示,表示A A或或B B口无中断请求。口无

42、中断请求。 BFXBFX:口缓冲器空:口缓冲器空/ /满标志。满标志。BFBFX X=1=1,表示口缓冲器已装满数,表示口缓冲器已装满数据,可由外设或单片机取走;据,可由外设或单片机取走;BFBFX X=0=0,表示口缓冲器为空,表示口缓冲器为空,可以接受外设或单片机发送数据。可以接受外设或单片机发送数据。 INTEXINTEX:口中断允许:口中断允许/ /禁止标志。禁止标志。INTEINTEX X=1=1,表示允许口中断;,表示允许口中断;INTEX=0INTEX=0,表示禁止口中断。,表示禁止口中断。 TIMERTIMER:计数器计满标志。:计数器计满标志。 TIMER=1TIMER=1,

43、 表示计数器的原计表示计数器的原计数初值已计满回零;数初值已计满回零; TIMER=0TIMER=0, 表示计数器尚未计满。表示计数器尚未计满。 四、计数器输出模式四、计数器输出模式 计数器是一个计数器是一个1414位(位(T0-T13T0-T13)的减法计数器,能对输入的脉)的减法计数器,能对输入的脉冲进行计数,到达最后一个计数值时,输出一个矩形波或脉冲。冲进行计数,到达最后一个计数值时,输出一个矩形波或脉冲。装入计数长度寄存器的值为装入计数长度寄存器的值为2H-3FFFH2H-3FFFH。 1515、1414两位用于规定计数器的输出方式两位用于规定计数器的输出方式 。 其中低其中低1414

44、位组成计数器,剩下的两个高位位组成计数器,剩下的两个高位(M2M1)(M2M1)用于定义计数器输出的信号形式。用于定义计数器输出的信号形式。 81C5581C55的定时的定时/ /计数器与计数器与MCS-51MCS-51单片机芯片内部的单片机芯片内部的定时定时/ /计数器在功能上是相同的计数器在功能上是相同的, ,都有定时和计数两种都有定时和计数两种功能。但在使用上却有很多不同之处。具体表现在:功能。但在使用上却有很多不同之处。具体表现在: (1)81C55(1)81C55的定时的定时/ /计数器为减计数器为减1 1计数计数, ,而而MCS-51MCS-51单片单片机内部的定时机内部的定时/

45、/计数器却是加计数器却是加1 1计数。计数。 (2)MCS-51(2)MCS-51单片机内部的定时单片机内部的定时/ /计数器有多种工作方计数器有多种工作方式式, ,而而81C5581C55的定时的定时/ /计数器却只有一种固定的工作方计数器却只有一种固定的工作方式式, ,即即1414位计数位计数, ,通过软件方法进行计数值的加载。通过软件方法进行计数值的加载。 (3) MCS-51(3) MCS-51单片机内部的定时单片机内部的定时/ /计数器有两种计数计数器有两种计数脉冲:当定时工作时脉冲:当定时工作时, ,由芯片内部按机器周期提供固由芯片内部按机器周期提供固定频率的计数脉冲定频率的计数脉

46、冲; ;当计数工作时当计数工作时, ,从芯片外部引入计从芯片外部引入计数脉冲。数脉冲。 (4) MCS-51(4) MCS-51单片机内部的定时单片机内部的定时/ /计数器计数器, ,在计数溢在计数溢出时自动置位出时自动置位TCONTCON寄存器中的计数溢出标志位寄存器中的计数溢出标志位TF,TF,供供用户以查询或中断方式使用用户以查询或中断方式使用; ; 而而81C5581C55的定时的定时/ /计数器计数器, ,在计数溢出时却是通过在计数溢出时却是通过TIMER OUTTIMER OUT引脚向外部发出引脚向外部发出1 1个脉冲信号。个脉冲信号。 定时/计数器输出方式 另外另外,81C55,

47、81C55的定时器在计数过程中的定时器在计数过程中, ,计数器计数器的值并不直接表示外部输入的脉冲。若作为外的值并不直接表示外部输入的脉冲。若作为外部事件计数部事件计数, ,那么由计数器的现行计数值求输入那么由计数器的现行计数值求输入脉冲数的方法为:脉冲数的方法为: (1) (1) 停止计数器计数。停止计数器计数。 (2) (2) 分别读出计数器的两个字节内容。分别读出计数器的两个字节内容。 (3) (3) 取其低取其低1414位数作为现行计数值。位数作为现行计数值。 (4) (4) 算出现行计数值与初始计数值之差即可。算出现行计数值与初始计数值之差即可。 五、选通五、选通I/OI/O的组态的

48、组态 对对81C5581C55命令字的命令字的PC2PC2PC1PC1位编程,使位编程,使A A或或B B口工口工作在选通方式时,作在选通方式时,C C口的口的PC0PC0PC5PC5就被定义就被定义为为A A或或B B口选通口选通I/OI/O方式的应答和控制线。方式的应答和控制线。 选通方式的组态逻辑选通方式的组态逻辑 : (1)BFX:A口或B口I/O缓冲器满空标志,输出,高电平有效。 (2)STBX :选通信号,输入,低电平有效。 (3)INTRX:中断请求信号,输出,高电平有效。 以上这些信号线对A口与B口均适用,分别称之为BFA、STBA、INTRA与BFB、STBB、INTRB。它

49、们都是由C口提供的。 六、六、81C5581C55芯片与单片机的接口芯片与单片机的接口 80C5180C51单片机可以单片机可以与与81C5581C55直接连接直接连接而不需要附加任何电路。而不需要附加任何电路。使系统增加使系统增加256256字节的字节的RAMRAM,2222位位I/OI/O线及一个计数器。线及一个计数器。 81C5581C55中中RAMRAM地址地址因因P2.7P2.7(A15A15)=0 =0 及及P2.0P2.0(A8A8)=0=0,故可选为,故可选为01111110 00000000B01111110 00000000B(7E00H7E00H)- - 01111110

50、 11111111B01111110 11111111B(7EFFH7EFFH);); I/OI/O端口的地址端口的地址为:为:7F00H-7F05H7F00H-7F05H。 初始化程序: MOV DPTR,#7F00H ;命令寄存器地址送DPTR MOV A,#03H ;00000011b=03H 命令字存入A MOVX DPTR,A ;写入控制字 七、初始化编程举例七、初始化编程举例 例例1 1 设81C55的A、B口工作在基本方式输出,C口工作在基本方式输入,禁止定时器工作,不请求中断。A、B口:口:0 输入;输入;1 输出输出C口:口:00 输入输入 11 输出输出例例2 2 设81C

51、55的A、B口工作在基本方式输入,C口工作在基本方式输出,禁止定时器工作,不请求中断。 初始化程序: MOV DPTR,#7F00H ;命令寄存器地址送DPTR MOV A,#0CH ;00001100b=0CH 命令字存入A MOVX DPTR,A ;写入控制字A、B口:口:0 输入;输入;1 输出输出C口:口:00 输入输入 11 输出输出例例3 3 81C55基本I/O,A口输入B口输出,定时器作方波发生器,对80C31输入脉冲进行24分频(注意81C55的计数最高频率约为4MHz),编写I/O口初始化程序。MOV DPTR,#7F04H ;定时器低8位MOV A,#24MOVX DPT

52、R,A;送计数值INC DPTR ;定时器高8位MOV A,#01000000BMOVX DPTR,A ;定义定时器为方波输出MOV DPTR,#7F00HMOV A,#11000010B ;A口输入B口输出并启动MOVX DPTR,A;写入命令字 例例4 4 将数据25H存入8155RAM的0F2H中 MOV DPTR,#7EF2H ;确定地址送DPTR MOV A,#25H ;25H存入A MOVX DPTR,A ;传送 7.4 82797.4 8279接口芯片接口芯片 由由80C5180C51系列单片机构成的小型测控系统或智能仪系列单片机构成的小型测控系统或智能仪表中,常常需要扩展显示器

53、和键盘以实现人机对话表中,常常需要扩展显示器和键盘以实现人机对话功能。功能。82798279芯片在扩展显示器和键盘时功能强、使芯片在扩展显示器和键盘时功能强、使用方便。用方便。 82798279是是IntelIntel公司为公司为8 8位微处理器设计的通用键盘位微处理器设计的通用键盘/ /显示器接口芯片,其显示器接口芯片,其功能是:接收来自键盘的输入功能是:接收来自键盘的输入数据并作预处理;完成数据显示的管理和数据显示数据并作预处理;完成数据显示的管理和数据显示器的控制器的控制。单片机应用系统采用。单片机应用系统采用82798279管理键盘和显管理键盘和显示器,软件示器,软件编程极为简单,显示

54、稳定,且减少了主编程极为简单,显示稳定,且减少了主机的负担。机的负担。 7.4.1 7.4.1 82798279的的结构结构 数据缓冲器数据缓冲器将双向三态将双向三态8 8位内部数据总线位内部数据总线D0-D7D0-D7与系与系统总线相连,用于传送统总线相连,用于传送CPUCPU与与82798279之间的命令和状态。之间的命令和状态。 控制和定时寄存器控制和定时寄存器用于寄存键盘和显示器的工作方用于寄存键盘和显示器的工作方式,锁存操作命令,通过译码器产生相应的控制信号,式,锁存操作命令,通过译码器产生相应的控制信号,使使82798279的各个部件完成相应的控制功能。的各个部件完成相应的控制功能

55、。 定时器定时器包含一些计数器,其中有一个可编程的包含一些计数器,其中有一个可编程的5 5位位计数器(计数值在计数器(计数值在2 23131间),对间),对CLKCLK输入的时钟信号输入的时钟信号进行分频,进行分频,产生产生100 KHz100 KHz的内部定时信号的内部定时信号(此时扫描(此时扫描时间为时间为5.1ms5.1ms,消抖时间为,消抖时间为10.3ms10.3ms)。外部输入时钟)。外部输入时钟信号周期不小于信号周期不小于500ns500ns。 扫描计数器扫描计数器有两种输出方式:有两种输出方式: 一、编码方式一、编码方式,计数器以二进制方式计数,计数器以二进制方式计数,4 4位

56、计数状态从位计数状态从扫描线扫描线SL3-SL0 SL3-SL0 输出,经外部译码器可以产生输出,经外部译码器可以产生1616位的键盘和位的键盘和显示器扫描信号;显示器扫描信号; 二、译码方式二、译码方式,扫描计数器的低两位经内部译码后从,扫描计数器的低两位经内部译码后从SL3-SL3-SL0 SL0 输出,直接作为键盘和显示器的扫描信号。输出,直接作为键盘和显示器的扫描信号。 回送缓冲器、键盘消抖及控制回送缓冲器、键盘消抖及控制完成对键盘的自动扫描以搜完成对键盘的自动扫描以搜索闭合键,锁存索闭合键,锁存RL7-RL0RL7-RL0的键输入信息,消除键的抖动,将键的键输入信息,消除键的抖动,将

57、键输入数据写入内部先进先出存储器(输入数据写入内部先进先出存储器(FIFO RAMFIFO RAM)。)。RL7-RL0RL7-RL0为为回送信号线作为键盘的检测输入线,由回送缓冲器缓冲并锁回送信号线作为键盘的检测输入线,由回送缓冲器缓冲并锁存,当某一键闭合时,附加的移位状态存,当某一键闭合时,附加的移位状态SHIFTSHIFT、控制状态、控制状态CNTLCNTL及扫描码和回送信号拼装成一个字节的及扫描码和回送信号拼装成一个字节的“键盘数据键盘数据”送入送入82798279内部的内部的FIFOFIFO(先进先出)(先进先出)RAMRAM。 键盘的数据格式为键盘的数据格式为: 在传感器矩阵方式和

58、选通方式时,回送线在传感器矩阵方式和选通方式时,回送线RL7-RL0RL7-RL0的内容被直接送往相应的的内容被直接送往相应的FIFO RAMFIFO RAM。输入数据即为。输入数据即为RL7-RL0RL7-RL0。数据格式为。数据格式为 : FIFO/FIFO/传感器传感器RAMRAM是具有双功能的是具有双功能的8 88 RAM8 RAM 在键盘或选通方式时在键盘或选通方式时,它作为,它作为FIFO RAMFIFO RAM,依先进先,依先进先出的规则输入或读出,其状态存放在出的规则输入或读出,其状态存放在FIFO/FIFO/传感器传感器RAMRAM状态寄存器中。只要状态寄存器中。只要FIFO

59、 RAMFIFO RAM不空,状态逻辑将置中不空,状态逻辑将置中断请求断请求IRQ=1IRQ=1; 在传感器矩阵方式,在传感器矩阵方式,作为传感器作为传感器RAMRAM,当检测出传感,当检测出传感器矩阵的开关状态发生变化时,中断请求信号器矩阵的开关状态发生变化时,中断请求信号IRQ=1IRQ=1。在外部译码扫描方式时,可对在外部译码扫描方式时,可对8 88 8矩阵开关的状态进矩阵开关的状态进行扫描,在内部译码扫描方式时,可对行扫描,在内部译码扫描方式时,可对4 48 8矩阵开关矩阵开关的状态进行扫描。的状态进行扫描。显示显示RAMRAM用来存储显示数据,容量是用来存储显示数据,容量是16168

60、 8位位在显示过程中,存储的在显示过程中,存储的显示数据显示数据轮流从显示寄存器轮流从显示寄存器输出。显示寄存器输出分成两组,即输出。显示寄存器输出分成两组,即OUTA0-OUTA3OUTA0-OUTA3和和OUTB0-OUTB3OUTB0-OUTB3,两组可以单独送数,也可以组成一个,两组可以单独送数,也可以组成一个8 8位的字节输出,该输出与位选扫描线位的字节输出,该输出与位选扫描线SL0-SL3SL0-SL3配合就配合就可以实现动态扫描显示。可以实现动态扫描显示。显示地址寄存器显示地址寄存器用来寄存用来寄存CPUCPU读读/ /写显示写显示RAMRAM的地址,的地址,可以设置为每次读出或

温馨提示

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

评论

0/150

提交评论