第2章智能仪器中的微处理器_第1页
第2章智能仪器中的微处理器_第2页
第2章智能仪器中的微处理器_第3页
第2章智能仪器中的微处理器_第4页
第2章智能仪器中的微处理器_第5页
已阅读5页,还剩46页未读 继续免费阅读

下载本文档

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

文档简介

第2章智能仪器中的微处理器首页本章内容2.1单片机的基本结构与工作原理2.2单片机与外围扩展芯片

下页上页返回2.1单片机的基本结构与工作原理

2.1.1MCS-51系列单片机总体结构

MCS-51系列是Intel公司20世纪80年代初推出的。包括51和52两个子系列。在51子系列中,主要有8031、8051和8751三个机型,它们的指令系统与芯片引脚完全相同,仅片内ROM有所不同。

51子系列的主要功能:8位CPU;128个字节的片内数据存储器;4K字节的片内程序存储器(8031无);程序存储器和片外数据存储器的寻址范围均为64KB字节;4个8位并行I/O接口;21个专用寄存器;1个全双工串行I/O接口;2个16位定时器/计数器;5个中断源;下页上页返回111条指令,含乘法指令和除法指令;强大的位寻址、位处理能力。52子系列主要有8032、8052两种机型。2.1.2MCS-51单片机的内部结构

1.MCS-51的内部程序存储器(ROM)和内部数据存储器(RAM)MCS-51系列的805l单片机内部有4KB的程序存储器,地址范围为0000-0FFFH。当单片机的EA引脚为高电平时,程序存储器空间的0000-0FFFH在单片机内部,1000-FFFFH在单片机外部。805l单片机的内部有128字节的数据存储器,地址范围从00-7FH。2.MCS-51的特殊功能寄存器内部地址范围从80-FFH为特殊功能寄存器区。单下页上页返回片机的输入/输出端口、计数器/定时器、串行通信口、累加器及一些控制寄存器等都位于这个地址空间。

3.中断与堆栈

MCS-51有5个中断源(对8032/8052为6个),分别为外部中断0、外部中断1、时钟中断0、时钟中断1和串行通信中断(对8032/8052还有时钟中断2)。堆栈位于单片机的内部数据存储器中,堆栈是一个向上增长的后进先出的存储空间。

4.定时/计数器与寄存器区

MCS-51子系列有两个16位定时/计数器,通过编程可以实现4种工作模式。MCS-52子系列则有3个16下页上页返回位定时/计数器。

5.指令系统

MCS-51的指令系统有加、减、乘、除等算术运算指令;逻辑运算指令;位操作指令;数据传送指令及多种程序转移指令。

6.布尔处理器

MCS-51的布尔处理器实际上是一个完整的一位微计算机。这个一位微机有自己的CPU、位寄存器、I/0口和指令集(对于MCS-51是一个指令子集)。一位机在开关决策、逻辑电路仿真和实时测控方面非常有效。下页上页返回2.1.3MCS-51单片机的引脚描述

MCS-51系列8051单片机采用40引脚的双列直插封装(DIP)。其引脚功能可分为四类:

1.电源引脚Vcc(40脚)和Vss(20脚)。

2.外接晶体引脚XTALl和XTAL2。

3.控制和复位引脚ALE、PSEN、EA和RST。

4.I/O引脚P0~P3。图2.1MCS-51芯片引脚图下页上页返回

图2.2MCS-51复位电路原理图

MCS-51复位后,P0~P3口输出高电平,堆栈指针SP置为07H,清“0”程序计数器PC和其余的特殊功能寄存器。RST由高电平变为低电平后,8031从0地址开始执行程序。下页上页返回PO口(32~39脚):双向8位三态I/O口,数据/地址总线口。

P1口(1~8脚):8位准双向I/O口。其输出没有高阻状态,输入也不能锁存。

P2口(21~28脚):8位准双向I/O口。

P3口(10~17脚):8位准双向I/O口,是一个复用双功能口。2.1.4MCS-51单片机的片外总线结构

1)地址总线(AB):地址总线宽度为16位,可访问64KB的外部程序存储器和64KB的外部数据存储器。

2)数据总线(DB):数据总线宽度为8位。

3)控制总线(CB):由P3口的第二功能状态和4根独立控制线RESET、EA、ALE和PSEN组成。下页上页返回2.1.5微处理器微处理器(CPU)由运算器和控制器组成。

1.运算器运算器以算术逻辑单元ALU为核心,含累加器A、暂存器、程序状态字PSW、B寄存器等许多部件。

·算术逻辑单元它在控制器所发内部控制信号的控制下进行各种算术操作和逻辑操作。

·累加器累加器A是最常用的专用寄存器。下页上页返回·程序状态字PSW

其各位的含义如下:(1)进位标志C(PSW.7);

(2)辅助进位标志AC(PSW.6);

(3)软件标志FO(PSW.5);

(4)工作寄存器区选择位RSl、RS0(PSW.4、PSW.3);

(5)溢出标志OV(PSW.2);

(6)奇偶标志P(PSW.O):每执行一条指令,单片机都能根据A中1的个数的奇偶自动令P置位或清零:奇为1,偶为O。下页上页返回2.以定时控制逻辑为中心的控制器

CPU的大脑中枢,包括定时控制逻辑,指令寄存器、译码器、数据指示器DPTR、程序计数器PC、堆栈指针SP、RAM地址寄存器、16位地址缓冲器等。

3.MCS-5l单片机存储器分类及配置从物理结构上可分为:片内、片外程序存储器与片内、片外数据存储器4个部分;从寻址空间分布分为:程序存储器、内部数据存储器和外部数据存储器3个部分;从功能上分为:程序存储器(64K)、内部数据存储器(256字节)、特殊功能寄存器(128字节)、位地址空间和外部数据存储器(64K)5个部分。下页上页返回·程序存储器程序存储器空间为64KB。0开始的部分程序存储器(如4KB)可以在片内或片外,由引脚EA的电平控制。复位后PC为O。MCS-51的中断入口是固定的,程序存储器地址0003H(INT0)、000BH(T0)、0013H(INT1)、001BH(T1)和0023H(串行口中断)单元为中断人口。·数据存储器

MCS-51内部数据存储器空间为256B,但一般为128B。内部RAM划分为3个区域:工作寄存器区、位寻址区、堆栈和数据缓冲器区。下页上页返回

内部RAM的00H~1FH区域为四组寄存器区,每个区有8个工作寄存器R0~R7。工作寄存器0组R0~R7:00~07H,RS1=0,RS0=0

工作寄存器1组R0~R7:08~0FH,RS1=0,RS0=1

工作寄存器2组R0~R7:10~17H,RS1=1,RS0=0

工作寄存器3组R0~R7:18~1FH,RS1=1,RS0=1

对于这部分RAM,CPU对它们的操作可视为工作寄存器(寄存器寻址),也可视为一般RAM。②位寻址区

MCS-51的内部RAM中20H~2FH单元以及特殊功能寄存器中地址为8的倍数的特殊功能寄存器可以位寻址。既可以字节操作也可以位操作。③堆栈和数据缓冲器堆栈是器用于保护CPU的现场一个后进先出的RAM下页上页返回缓冲。MCS-51的堆栈一般设在30-7FH(或30~FFH)。复位后SP为07H。④特殊功能寄存器(SFR)MCS-51内部的I/0口锁存器以及定时器、串行口、中断等各种控制寄存器和状态寄存器都作为SFR(RAM的80~FFH)。如累加器ACC(A)、寄存器B。⑤外部RAM和I/O口

MCS-51最多可以扩展64KB的外部RAM和I/0口。外部扩展RAM和I/0口是统一编址的,也就是说一个I/O口相当于RAM的一个存储单元,CPU都是通过MOVX指令对它们进行读写操作的。下页上页返回2.1.6最小微机系统最小微机系统是指能维护单片机运行的最简单配置系统。

·8051/80C51/8751/87C51/89C51最小微机系统

8051/80C51/8751/87C51/89C51是片内有ROM/EPROM/EPROM/FLASHROM的单片机,用这种芯片构成的最小微机系统简单、可靠。只要将单片机接上时钟电路和复位电路即可。由于集成度的限制,最小微机系统只能用作一些小型的控制单元。其应用特点:下页上页返回⑴有可供用户使用的大量I/O口线。因没有外部存储器扩展,此时EA接高电平。⑵内部存储器容量有限。内部ROM/EPROM/FLASHROM为4KB,RAM为128个字节。⑶用户可对片内4KB的程序存储器进行写入或擦除,并具有保护内部存储器不被外部软件破坏和非法复制的措施。⑷有较高的可靠性和抗干扰能力。

·8031/80C31最小微机系统

8031/80C31是片内无程序存储器的单片机,因此,其最小微机系统必须在片外扩展EPROM。如图6-2。片外程序存储器的的低8位地址线由P0口经所锁存器产生(地址锁存信号为ALE),下页上页返回图2.58051/80C51最小微机系统图2.68031/80C31最小微机系统高位地址线由P2口提供;取指信号为PSEN,由于程序存储器芯片只有一片,故其CE接地。8031/80C31芯片的EA必须接地。下页上页返回2.2单片机与外围扩展芯片2.2.1程序存储器扩展对于无ROM型单片机(如8031)或程序容量较大(几十K)时才需扩展外部程序存储器。

1.常用EPROM程序存储器外部程序存储器一般用EPROM存储器,EPROM是紫外线可擦除电可编程的只读存储器,通过编程器将程序写入后信息不会丢失,可靠性很高。常见有2716(2KB)、2732(4KB)、2764(8KB)、27128(16KB)、27256(32KB)、27512(64KB)。常用2764、27128、27256、27512来作为外部程序存储器。引脚如图2.7。下页上页返回

图2.7常用EPROM存储器电路的引脚图由图可见2764/128/256/512这几种EPROM具有很强的兼容性。引脚符号意义如下:

下页上页返回·A0~Ai:地址输入线,i=13~15。

·O0~O7:三态数据总线(有时用D0~D7表示),读或编程检验时为数据输出线,编程时为数据输人线。维持或编程禁止时,O0~O7呈高阻抗。

·CE:片选信号输入线,“0”有效;

·PGM:编程脉冲输入线。

·OE:读选通信号输入线,“0”有效。

·Vpp:编程电源输入线,Vpp的值因芯片型号和制造厂商而异。

·Vcc:主电源输入线,Vcc一般为+5V。

·GND:线路接地。

·NC:不连接。下页上页返回

除容量外,各种型号的EPROM还有不同的应用参数。主要有最大读出时间(范围在200~450ns之间)、工作温度(有0~70℃和-40~85℃二档)、电压容差(有5(1±5%)V和5(1±10%)V二种)等。对EPROM的主要操作方式有:

·编程方式:把程序代码固化到EPROM中。

·编程校验方式:读出EPROM中的内容,检验编程操作的正确性。

·读出方式:CPU从EPROM中读取指令或常数,是单片机应用系统中的工作方式。

·维持方式:不对EPROM操作,数据端呈高阻。下页上页返回·编程禁止方式:适用于多片EPROM并行编程不同数据。表2-5给出了27256不同操作方式下控制引脚的电平。表2-527256不同操作方式下控制引脚的电平

不同公司生产的EPROM的编程电压不同,有12.5v、21v、25V等几种。

下页上页返回2.程序存储器扩展方法内部有程序存储器的单片机扩展外部程序存储器时,EA接高电平。对于8031、8051,EA接地,外接EPROM,CPU总是从外部EPROM中取指令。当EA接地时,外部EPROM的地址从零地址开始;当EA接高电平时,外部EPROM的地址紧跟在内部程序存储器地址后开始。图2.8给出了8031单片机和EPROM27256的接口方法。下页上页返回

图2.8一片27256的EPROM扩展电路

下页上页返回2.2.2数据存储器RAM的扩展

1.常用的数据存储器数据存储器用于存储现场采集的原始数据、运算结果等,通常采用半导体静态随机存取存储器RAM电路。E2PROM电路也可用作外部数据存储器。常用的RAM电路有6116(2KB)、6264(8KB)、62256(32KB)。图2.9给出了其引脚图,引脚符号功能如下:

·A0~Ai:地址输入线,I=10(6116),12(6264),14(62256)。

·O0~07:双向三态数据线,有时用D0~D7表示。

·CE:片选信号输入线,低电平有效。下页上页返回·0E:读选通信号输入线,低电平有效

·WE:写选通信号输入线,低电平有效;

·Vcc:工作电源+5V。

·GND:线路接地。图2.9常用RAM电路引脚图下页上页返回

图中6264的NC为悬空脚,CS为6264第二片选信号脚,高电平有效。CS=1,CE=0选中。以上三种芯片都是易失性的。近年来市场上出现了一种非易失性数据存储器产品NVRAM,与以上芯片完全兼容,可在原有芯片插座上将对应的NVRAM直接插上替代,存取速度为55ns和70ns,可以单字节读写,读写次数无限。内置锂电池,在无外部供电情况下,数据保存10年不丢失。

2.RAM存储器扩展方法由于RAM和I/0口均使用RD、WD信号作为选通信号,故RAM和I/0口共占64KB的地址空间,因此RAM和I/O口的片选信号一般由高位地址译下页上页返回码产生,或者用线选法,即用某一位高位地址作为片选信号。图2.10给出了用线选法外接一片6264的接口方法,6264的地址为6000~7FFFH。MCS-5l访问外部数据存储器时PSEN保持高电平,对外部RAM或I/0读/写时,外部EPROM的数据线呈高阻态。所以MCS-5l可以同时扩展64KB程序存储器和64KB数据存储器。图2.10MCS_5l总线与6264的接口方法下页上页返回2.2.3并行接口的扩展

MCS-5l系列的单片机大多具有四个8位并行I/0口(P0~P3),原理上这四个口均可用作双向并行I/0接口。但在实际应用系统中,可提供给用户使用的I/0口只有Pl口和部分P3口。因此,往往需要进行I/0口的扩展。

I/0接口扩展有多种方法。当所需I/0口较少时,可采用中小规模集成电路进行扩展,当所需I/0口较多时,则可采用专用接口芯片进行扩展,也可利用串行口进行并行I/0口扩展。并行I/O口的并行扩展均应遵照“输入三态、输出锁存”的原则与总线相连。“输入三态”下页上页返回可保证在未被选通时,I/0芯片的输出与数据总线隔离,“输出锁存”则可使通过总线输出的信息得以保持,以与速度较慢的外设相配。

1.用74系列器件扩展并行I/O口

·用74LS377扩展并行输出口

74LS377是一种8D触发器,如图2.11,当它的接数允许端E为低电平且接数时钟CLK端电平正跳时,D0~D7端的数据被锁存到8D触发器中。否则,输出保持不变。图2.1174LS377的功能

下页上页返回MCS-5l单片机与74LS377的接口,应满足以下条件:⑴在单片机访问74LS377时,在D0~D7上出现待输出数据,E端出现低电平,CLK端出现由低到高的正跳变信号。⑵此时使用WR作为选通信号的有其他芯片的片选端必须保持高电平。⑶在单片机不访问74LS377的时候,E端和CLK端不能出现⑴中所列的情况。将74LS377的E作为片选信号线,CLK作为写选通线,即能满足上述要求。如图2.12,此时A15取0,其余地址线均取1,则74LS377的地址为7FFFH。当执行如下指令时,在74LS377有关下页上页返回引脚,就会把累加器A的内容锁存到74LS377中。

MOVDPIR,#7FFFH ;指向74LS377MOVA,#data ;输出的数据先送AMOVX@DPTR,A ;A中数据送74LS377

类似芯片还有74LS273、74LS373等锁存器。

图2.12MCS-51和74LS377的一种接口方法

下页上页返回·用74LS245扩展并行输入口

74LS245是一种三态门8总线收发器/驱动器,无锁存功能。当DIR=1时,数据从A→B端。当DIR=0时,数据从B→A端。使能信号G=0时,允许传输;G=l时,禁止传输,输出为高阻态。引脚分布见图2.13。根据输入三态的原则,我们可以把DIR作为片选线,将G作为读选通线,在执行如下两条指令时,在74LS245的有关引脚,就会把输入设备的数据通过74LS245传送到数据总线,送往A。

MOVDPTR,#7FFFH MOVXA,@DPTR下页上页返回图2.12中地址线A15既接74S377的E又接74LS245的G,使74LS377和74LS245的口地址都为7FFFH,对7FFFH写操作写入74LS377,读操作则读74LS245。

图2.1374LS245引脚分布下页上页返回2.2.4可编程并行I/O扩展接口8255A8255A是Intel公司的一种通用可编程并行接口电路,被广泛用作可外部I/O扩展接口。

1.8255A的结构

8255A与MCS-51单片机连接方式简单,其工作方式由程序设定。图2.14给出了8255A的逻辑结构框图和引脚图。

8255A可编程并行I/0芯片由以下四个逻辑结构组成:⑴数据总线驱动器。双向三态的8位驱动器,用于和单片机的数据总线相连。⑵并行I/0端口。A口、B口和C口。这三个8位I/0端口功能完全由编程决定。下页上页返回A口:具有一个8位数据输出锁存/缓冲器和一个8位数据输入锁存器。它是最灵活的输入输出寄存器,可编程作为8位输入输出或双向寄存器。

B口:具有一个8位数据输出锁存/缓冲器和一个8位数据输入缓冲器(不锁存)。可编程作为8位输入或输出寄存器,但不能双向输入输出。

C口:具有一个8位数据输出锁存/缓冲器和一个8位数据输人缓冲器(不锁存)。在方式控制下,可分为两个4位口使用。C口除作输入、输出口使用外,还可以作为A口、B口选通方式操作时的状态控制信号。下页上页返回图2.148255A引脚图和逻辑框图

下页上页返回⑶读/写控制逻辑。它用于管理所有的数据、控制字或状态字的传送,接收单片机的地址信号和控制信号来控制各个口的工作状态。

CS:8255A的片选引脚端。

RD:读控制端。当RD=0时,允许单片机从8255A读取数据或状态字。

WR:写控制端。当WR=0时,允许单片机将数据或控制字写入8255A。

A0、A1:口地址选择。通过A0、A1可选中8255A的4个寄存器。口地址选择如下:

AlA0 寄存器

00 输出寄存器A(A口)下页上页返回 01 输出寄存器B(B口)

10 输出寄存器C(C口) 1l 控制寄存器(控制口)RESET:复位控制端。当RESET=l时,8255复位。此时控制寄存器被清除,所有接口被置人输入方式。⑷A组B组控制块。每个控制块接收来自读/写控制逻辑的命令和内部数据总线的控制字,并向对应口发出适当的命令。A组控制块控制A口及C口的高4位。B组控制块控制B口及C口的低4位。下页上页返回表2-6CPU对8255A端口的寻址和操作控制

下页上页返回2.8255A操作方式

8255A有方式0/方式1/方式2三种操作方式。⑴方式0(基本I/O方式)8255A的PA、PB、PC4~PC7、PC0~PC3可分别被定义为方式0输入或输出。方式0输出具有锁存功能,输入没有锁存。方式0适用于无条件传输数据的设备,如读一组开关状态、控制一组指示灯,不使用应答信号,CPU可以随时读出开关状态,随时把一组数据送指示灯显示。⑵方式1(应答I/0方式)PA口、PB口定义为方式1时,PC口的某些位为状态控制线,其余位作I/0线。下页上页返回·方式1输入。若PA口、PR口定义为方式l输入,相应的状态控制信号的意义如下:

STB:设备的选通信号输入线,低电平有效。STB的下降沿将外设数据输入8255A。

IBF:端口锁存器满标志输出线,IBF和设备相连。IBF为高电平表示设备已将数据打入端口锁存器,但CPU尚未读取。当CPU读取端口数据后,IBF变为低电平,表示端口锁存器空。

下页上页返回INTR:中断请求信号线,高电平有效。当STB、IBF、INTE都为“l”时,INTR就置“l”,RD的下降沿使它复“0”。

·方式l输出。PA口、PB口定义为方式l输出。涉及的状态控制信号的意义如下:

OBF:输出锁存器满状态标志输出线。OBF为低电平,表示CPU已将数据写入端口,输出数据有效。设备从端口取走数据后发来的回答信号使OBF升为高电平。

ACK:设备响应信号输入线。ACK上出现设备送来的负脉冲,表示设备已取走了端口数据。

INTR:中断请求信号输出线,高电平有效。当ACK、OBF和INTE都为“l”时,INTR被置“l”,WR的下降沿使它复“0”。下页上页返回INTEA(A口中断允许标志)由按位置位/复位的PC6控制;INTEB(B口中断允许标志)由PC2控制。

方式l适用于打印机等具有握手信号的输入/输出设备。

·方式2(双向选通I/0方式)

方式2是方式1输入和方式1输出的结合。对PA口有意义。方式2使PA口成为8位双向三态数据总线口(可发送/接收数据)。PB口仍可作方式0和方式1I/O口,PC口高5位作状态控制线。

3.8255A的控制字

8255A有两种控制字,即方式控制字和PC口位置位/复位控制字。下页上页返回⑴方式控制字(地址为xxxxxx11B)方式控制字控制8255A三个口的工作方式,工作方式由CPU送往控制寄存器的内容设定。这个8位的控制命令字叫方式选择控制字,控制字的6~3位用来设定A组,2~0位用来设定B组,位7用来指明是否置工作方式控制字。

D7:D7=1。置方式标志。

D6D5:A组方式选择。00=方式0;01=方式1;1×=方式2。

D4:端口A。0=输出;1=输入。

D3:端口C(高4位)。0=输出;1=输入。

D2:B组方式选择。0=方式0;1=方式1。

D1:端口B。0=输出;1=输入。

D0:端口C(低4位)。0=输出,1=输入。下页上页返回表2-78255在三种方式下各端口功能表

例2.1要使8255APA口为方式0输入、PB

温馨提示

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

评论

0/150

提交评论