第二章 单片微机的基本结构_第1页
第二章 单片微机的基本结构_第2页
第二章 单片微机的基本结构_第3页
第二章 单片微机的基本结构_第4页
第二章 单片微机的基本结构_第5页
已阅读5页,还剩129页未读 继续免费阅读

下载本文档

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

文档简介

第二章单片微机的基本结构第1页,课件共134页,创作于2023年2月2.180C51单片微机的内部结构2.280C51单片微机的引脚及其功能2.3

80C51CPU的结构和特点2.4存储器结构和地址空间2.5并行输入/输出端口2.6布尔(位)处理器2.780C51单片微机的工作方式

第2页,课件共134页,创作于2023年2月中央处理器CPU(算术逻辑部件ALU、控制器等)只读存储器ROM随机存取存储器RAM定时器/计数器并行I/O口P0~P3、串行口中断系统以及定时控制逻辑电路等。

2.180C51单片微机的内部结构

80C51内部结构如图2-1所示包括第3页,课件共134页,创作于2023年2月1.中央处理器

运算器控制器CPU算术逻辑运算部件ALU寄存器(8位)ACC--累加器BPSW—程序状态字寄存器运算器PSW(D0H)CYACF0RS1RS0OVF1PPC---程序计数器(16位)SP---堆栈指针(8位)DPTR---数据指针(16位)指令寄存器、译码、定时控制等控制器第4页,课件共134页,创作于2023年2月

2.程序存储器

内部没有程序存储器的称80C31(片外ROM)内部带ROM的称80C51(掩膜ROM)内部以EPROM代替ROM的称87C51(紫外线擦除)内部以EEPROM(电可擦除,Flash单片微机,如89C51)第5页,课件共134页,创作于2023年2月3.数据存储器(RAM)典型51的内部RAM是128字节(一般称为寄存器)当内部RAM容量不够时,还可通过串行总线或并行总线外扩数据存储器。第6页,课件共134页,创作于2023年2月

4.并行I/O口

数据线、地址线、控制线、连接外设等。单片微机I/O引脚的驱动能力也逐渐增大,甚至可以直接驱动外扩的LED显示器。

第7页,课件共134页,创作于2023年2月5.串行I/O口全双工串行I/O口,实现串行通信;也可与多个单片微机相连构成多机系统。拓宽:有些型号的单片微机内部还包含有两个串行I/O口。

第8页,课件共134页,创作于2023年2月

6.定时器/计数器80C51共有两个16位的定时器/计数器;80C52则有三个16位的定时器/计数器。

第9页,课件共134页,创作于2023年2月7.中断系统

80C51的中断功能较强,具有内、外共五个中断源,两个中断优先级。

8.时序电路及元件

计算机的整个工作是在时钟信号的驱动下,按照严格的时序有规律地一个节拍一个节拍地执行各种操作。单片微机内部设有定时电路,只需外接振荡元件即可工作。第10页,课件共134页,创作于2023年2月8位CPU;4K内部ROM;128字节内部RAM;寻址空间:64KROM64KRAM;32位I/O口线;2个16位T/C;一个全双工串行口;5个中断源80C51单片机资源:第11页,课件共134页,创作于2023年2月

80C51/80C52的封装及逻辑图如图2-2所示。

2.280C51单片微机的引脚及其功能

第12页,课件共134页,创作于2023年2月按引脚的功能可分为三部分:

1.电源和晶振:

·Vcc——运行和程序校验时接电源正端。

·Vss——接地。

·XTAL1——输入到单片微机内部振荡器的反相放大器。

·XTAL2——反相放大器的输出,输入到内部时钟发生器。电源、晶振I/O口控制线第13页,课件共134页,创作于2023年2月2.I/O:·P0——8位、漏极开路的双向I/O口。

当使用片外存储器(ROM及RAM)时,作低八位地址和数据总线分时复用。P0口(作为总线时)能驱动8个LSTTL负载。·第14页,课件共134页,创作于2023年2月2.I/O:·P1——8位、准双向I/O口。在编程/校验期间,用做输入低位字节地址。P1口可以驱动4个LSTTL负载。对于80C52,P1.0——T2,是定时器2的计数输入端; P1.1——T2EX,是定时器2的外部输入端。 读两个特殊引脚的输出锁存器时应由程序置1。第15页,课件共134页,创作于2023年2月·P2——8位、准双向I/O口。

当使用片外存储器(ROM及RAM)时,输出高8位地址。 在编程/校验期间,接收高位字节地址。 P2口可以驱动4个LSTTL负载。第16页,课件共134页,创作于2023年2月·P3——8位、准双向I/O口,具有内部上拉电路。

P3提供各种替代功能。P3口可以输入/输出4个LSTTL负载。·串行口:P3.0——RXD串行输入口。P3.1——TXD串行输出口。中断:P3.2——外部中断0输入。P3.3——外部中断1输入。第17页,课件共134页,创作于2023年2月··定时器/计数器:P3.4——定时器/计数器T0的外部输入。P3.5——定时器/计数器T1的外部输入。·数据存储器选通:P3.6——WR低电平有效,输出,片外数据存储器写选通。P3.7——RD低电平有效,输出,片外数据存储器读选通。第18页,课件共134页,创作于2023年2月3.控制线:共4根。·RST——复位输入信号,高电平有效。在振荡器工作时,在RST上作用两个机器周期以上的高电平,将器件复位。·EA/Vpp——片外程序存储器访问允许信号,低电平有效。EA=1,选择片内程序存储器(80C51为4KB,80C52为8KB);EA=0,则程序存储器全部在片外而不管片内是否有程序存储器。·第19页,课件共134页,创作于2023年2月3.控制线:共4根。··ALE/PROG——地址锁存允许信号,输出。

在访问片外存储器或I/O时,用于锁存低八位地址,以实现低八位地址与数据的隔离。PSEN

——片外程序存储器读选通信号,低电平有效。在从片外程序存储器取指期间,在每个机器周期中,当有效时,程序存储器的内容被送上P0口(数据总线)。可以驱动8个LSTTL负载。第20页,课件共134页,创作于2023年2月

中央处理器CPU是单片微机内部的核心部件,主要包括控制器运算器工作寄存器时序电路等2.3

80C51CPU的结构和特点

第21页,课件共134页,创作于2023年2月

控制器包括:程序计数器PC、程序地址寄存器、指令寄存器IR、指令译码器、条件转移逻辑电路及定时控制逻辑电路。功能:是控制指令的读出、译码和执行,对指令的执行过程进行定时控制,并根据执行结果决定是否分支转移。2.3.1中央控制器第22页,课件共134页,创作于2023年2月1.程序计数器PC

一个独立的16位计数器,不属于内部的特殊功能寄存器。PC中存放的是下一条将要从程序存储器中取出的指令的地址。工作过程:根据PC的值 到ROM对应取指令代码,同时PC值自动加1,指向下一条指令地址。

第23页,课件共134页,创作于2023年2月2.数据指针DPTR

DPTR是一个16位的特殊功能寄存器

主要功能:(1)作为片外数据存储器或I/O寻址用的地址寄存器(间接寻址),故称为数据存储器地址指针。访问片外数据存储器或I/O的指令为:MOVXA,@DPTR读MOVX@DPTR,A写第24页,课件共134页,创作于2023年2月(2)作为访问程序存储器时的基址寄存器。这时寻址程序存储器中的表格、常数等单元,而不是寻址指令。MOVC A,@A+DPTRJMP @A+DPTR

(3)可以作为两个8位寄存器处理,其高8位用DPH表示,低8位用DPL表示。第25页,课件共134页,创作于2023年2月

⑴两者都是与地址有关的16位的寄存器。PC与程序存储器的地址有关,而DPTR与数据存储器的地址有关,都是通过P0和P2口输出的。PC的输出与PSEN、ALE信号有关;DPTR的输出,则与ALE、WR、RD信号有关。

程序计数器PC与数据指针DPTR区别:第26页,课件共134页,创作于2023年2月程序计数器PC与数据指针DPTR区别:⑵

PC只能作为16位寄存器对待。PC是不可以访问的,它不属于特殊功能寄存器,有自己独特的变化方式。DPTR可以作为16位寄存器,也可以作为两个8位寄存器,DPTR是可以访问的,DPL和DPH都位于特殊功能寄存器区中。

第27页,课件共134页,创作于2023年2月

指令寄存器IR是用来存放指令操作码的专用寄存器。执行程序时,首先进行程序存储器的读操作,也就是根据程序计数器给出的地址从程序存储器中取出指令,送指令寄存器IR,IR的输出送指令译码器;然后由指令译码器对该指令进行译码,译码结果送定时控制逻辑电路,如图2-4所示。

3.指令寄存器IR、指令译码器及控制逻辑第28页,课件共134页,创作于2023年2月定时控制逻辑电路则根据指令的性质发出一系列定时控制信号,控制计算机的各组成部件进行相应的工作,执行指令。3.指令寄存器IR、指令译码器及控制逻辑

条件转移逻辑电路主要用来控制程序的分支转移。在80C51中,转移条件也可分为两部分。一部分是内部条件,即程序状态标志位(PSW)和累加器的零状态。另一部分是外部条件,即F0和所有位寻址空间的状态。第29页,课件共134页,创作于2023年2月运算器主要用来实现对操作数的算术、逻辑运算和位操作的。

运算器主要包括:算术逻辑运算单元ALU、累加器ACC(A)、暂存寄存器、B寄存器、程序状态标志寄存器PSW以及BCD码运算修正电路等。

2.3.2运算器第30页,课件共134页,创作于2023年2月ALU有两个输入:

⑴通过暂存器1的输入:输入数据来自寄存器、直接寻址单元(含I/O口)、内部RAM、寄存器B或是立即数。⑵通过暂存器2或累加器ACC的输入:通过暂存器2的运算的指令有ANLdirect, #dataORLdirect,#dataXRLdirect, #data1、ALU第31页,课件共134页,创作于2023年2月ALU有两个输出:

⑴数据经过运算后,其结果又通过内部总线送回到累加器中;⑵数据运算后产生的标志位输出至程序状态字PSW。

第32页,课件共134页,创作于2023年2月2.

累加器A一个八位专用寄存器,简称ACC或A寄存器。主要功能:累加器A存放操作数,是ALU单元的输入之一,也是ALU运算结果的暂存单元。第33页,课件共134页,创作于2023年2月3.B寄存器

B寄存器在乘法和除法指令中作为ALU的输入之一。

乘法中,ALU的两个输入分别为A、B,运算结果存放在AB寄存器中。其中:A中放积的低8位,B中放积的高8位。除法中,被除数取自A,除数取自B,商数存放于A,余数存放于B。

第34页,课件共134页,创作于2023年2月

4.程序状态字PSW

是一个8位寄存器,其内容的主要部分是算术逻辑运算单元(ALU)的输出。CYACF0RS1RS0OV-P其中:PSW.1(保留位)、RS1和RS0、用户标志F0可用软件设定;奇偶校验位P、溢出标志位OV、辅助进位标志位AC及进位标志位CY都是ALU运算结果的直接输出。

第35页,课件共134页,创作于2023年2月

P(PSW.0)-奇偶标志位。

用以表示累加器A中1的个数的奇偶性:若累加器值为1的位数是奇数,P置位(奇校验);否则P清除(偶校验)。第36页,课件共134页,创作于2023年2月OV(PSW.2)-溢出标志位。若以Ci表示位i向位i+l有进位,则OV=C6⊕C7;当位6向位7有进位(借位)而位7不向CY进位(借位)时;或当位7向C进位(借位)而位6不向位7进位(借位)时,OV标志置位,表示带符号数运算时运算结果是错误的;否则,清除OV标志,运算个结果正确。第37页,课件共134页,创作于2023年2月

对于MUL乘法,当A、B两个乘数的积超过255时OV置位;否则,OV=0。因此,若OV=0时,只需从A寄存器中取积;若OV=1时,则需从B、A寄存器对中取积。对于DIV除法,若除数为0时,OV=1;否则,OV=0。

第38页,课件共134页,创作于2023年2月

RS1、RS0(PSW.4、PSW.3)-工作寄存器组选择位

用于设定当前工作寄存器的组号。工作寄存器共有四组,其对应关系见表2–1

第39页,课件共134页,创作于2023年2月

AC(PSW.6)-辅助进位标志位。

当进行加法或减法运算时,若低4位向高4位数发生进位或借位时AC将被硬件置位;否则,被清除。

在十进制调整指令DA中要用到AC标志位状态。第40页,课件共134页,创作于2023年2月

CY(PSW.7)-进位标志位。

在进行算术运算时,可以被硬件置位或清除,以表示运算结果中高位是否有进位或借位。在布尔处理机中CY被认为是位累加器C。

F0(PSW.5)-用户标志位。

开机时该位为“0”。用户可根据需要,通过位操作指令置“l”或者清“0”。第41页,课件共134页,创作于2023年2月时钟电路用于产生单片微机工作所需要的时钟信号,而时序所研究的是指令执行中各信号之间的相互关系。2.3.3时钟电路及CPU的工作时序

第42页,课件共134页,创作于2023年2月

1.

时钟电路

在80C51内带有时钟电路,只需要在片外通过XTALI和XTAL2引脚接入定时控制元件(晶体振荡器和电容),即可构成一个稳定的自激振荡器。80C51的时钟电路如图2–6所示。第43页,课件共134页,创作于2023年2月

内部时钟发生器

内部时钟发生器实质上是一个2分频的触发器。其输入由振荡器引入的,输出为两个节拍的时钟信号。输出的前半周期,节拍1(P1)信号有效;后半周期,节拍2(P2)信号有效。每个输出周期为一个计算机CPU的状态周期,即时钟发生器的输出为状态时钟。每个状态周期内包括一个P1节拍和一个P2节拍,形成CPU内的基本定时时钟。

第44页,课件共134页,创作于2023年2月

ALE信号

一般地说,状态时钟经过3分频之后,产生ALE引脚上的信号输出。

第45页,课件共134页,创作于2023年2月2﹒时序定时单位

80C51的时序定时单位共有4个:节拍、状态、机器周期和指令周期。(1)节拍P(振荡周期)振荡脉冲的周期称为节拍。(2)

状态S(时钟周期)一个状态S包含两个节拍,其前半周期对应的节拍叫P1,后半周期对应的节拍叫P2(3)

机器周期完成一个基本操作所需要的时间。第46页,课件共134页,创作于2023年2月(3)

机器周期完成一个基本操作所需要的时间。机器周期是单片微机的最小时间单位。

当振荡脉冲频率为12MHZ时,一个机器周期为lμS;当振荡脉冲频率为6MHZ时,一个机器周期为2μS。第47页,课件共134页,创作于2023年2月(4)

指令周期

执行一条指令所需要的时间称为指令周期。80C51的指令周期根据指令的不同,可包含有一、二、三、四个机器周期。第48页,课件共134页,创作于2023年2月牢牢记住:

振荡周期=晶振频率fosc的倒数;状态时钟=晶振频率的二分频 1个机器周期=6个状态周期 1个机器周期=12个振荡周期; 1个指令周期=1、2、3、4个机器周期第49页,课件共134页,创作于2023年2月3.80C51指令时序

80C51共有111条指令,全部指令按其长度可分为单字节指令、双字节指令和三字节指令。

第50页,课件共134页,创作于2023年2月

单片微机的存储器有两种基本结构:

普林斯顿(Princeton)结构:通用微机计算机

哈佛(Harvard)结构:Intel的MCS-51和80C51系列单片微机。

图2–9为80C51单片微机存储器映象图。

2.4存储器结构和地址空间第51页,课件共134页,创作于2023年2月

在物理上设有4个存储器空间

·程序存储器: 片内程序存储器; 片外程序存储器。

·数据存储器: 片内数据存储器;

片外数据存储器。第52页,课件共134页,创作于2023年2月

在逻辑上设有3个存储器地址空间

·片内、片外统一的64KB程序存储器地址空间;·片内256(80C52为384)B数据存储器地址空间;·片外64KB的数据存储器地址空间。 在访问这3个不同的逻辑空间时,应选用不同形式的指令。

第53页,课件共134页,创作于2023年2月

片内数据存储器空间,在物理上又包含两部分:

对于80C51型单片微机,从0~127B为片内数据存储器空间;从128~255B为特殊功能寄存器(SFR)空间(仅占用20多个字节)。对于80C52型单片微机,从0~127B为片内数据存储器空间;从128~255B共128个字节是数据存储器和特殊功能寄存器地址重叠空间。

第54页,课件共134页,创作于2023年2月80C51有三种基本的寻址空间:

·64KB的片内、外程序存储器寻址空间;·64KB的片外数据存储器寻址空间;·256(或384)B的片内数据存储器寻址空间,其中包括特殊功能寄存器寻址空间。

第55页,课件共134页,创作于2023年2月

用于存放经调试正确的应用程序和表格之类的固定常数。由于采用16位的程序计数器PC和16位的地址总线,因而其可扩展的地址空间为64KB。

2.4.l程序存储器第56页,课件共134页,创作于2023年2月⒈整个程序存储器可以分为片内和片外两部分EA引脚接高电平时,程序从片内程序存储器0000H开始执行,即访问片内存储器;当PC值超出片内ROM容量时,会自动转向片外程序存储器空间执行。EA引脚接低电平时,迫使系统全部执行片外程序存储器0000H开始存放的程序。注意:对于片内无ROM的80C31/80C32单片机,应将EA引脚固定接低电平,以迫使系统全部执行片外程序存储器程序。第57页,课件共134页,创作于2023年2月EA=1(VCC5V),PC值大于某值(由容量决定)为访问外部程序存贮器;PC值小于某值为访问内部程序存贮器。EA=0(VSS地),内部程序存贮器被忽略。第58页,课件共134页,创作于2023年2月⒉程序存储器的某些单元被保留用于特定的程序入口地址

由于系统复位后的PC地址为0000H,故系统从0000H单元开始取指,执行程序。从0003H~002DH单元被保留用于6个中断源的中断服务程序的入口地址。第59页,课件共134页,创作于2023年2月以下7个特定地址被保留:

复位 0000H外部中断0 0003H计时器T0溢出 000BH外部中断1 0013H计时器T1溢出 001BH串行口中断 0023H计时器T2/T2EX 002BH在程序设计时,通常在这些中断入口处设置无条件转移指令,使之转向对应的中断服务程序段处执行。第60页,课件共134页,创作于2023年2月⒊片内程序存储器为只读存储器ROM

存储器的类型有:掩膜ROM、OTP(一次性编程)ROM和MTP(多次编程)ROM(包括EPROM及E2PROM等)。第61页,课件共134页,创作于2023年2月用来存放随机数据数据存储器:片内数据存储器(internaldatamemory)和片外数据存储器(externaldatamemory)两部分。

片内数据存储器地址只有8位,因而最大寻址范围为256个字节。

片外数据存储器的地址指针DPTR,是16位的寄存器,可外扩64KB的数据存储器。2.4.2内部数据存储器

第62页,课件共134页,创作于2023年2月

片内数据存储器在物理上又分成两个独立的功能不同的区:

·片内数据RAM区:对80C51,为地址空间的低128B;对80C52,为地址空间的0~255B。

·特殊功能寄存器SFR区:地址空间的高128B。注意:对于80C52,高128B的RAM区和SFR区的地址空间是重叠的。究竟访问哪一个区是通过不同的寻址方式来加以区别,即访问高128BRAM区时,选用间接寻址方式;访问SFR区,则应选用直接寻址方式。图2-10为片内数据存储器的地址空间分布图。第63页,课件共134页,创作于2023年2月⒈片内数据RAM区

⑴工作寄存器区:用寄存器直接寻址的区域,指令的数量最多,均为单周期指令,执行的速度最快。从图2–10中可知,其中片内数据RAM区的0~31(00H~1FH),共32个单元,是4个通用工作寄存器组(表2–l),每个组包含8个8位寄存器,编号为R0~R7。

第64页,课件共134页,创作于2023年2月在某一时刻,只能选用一个寄存器组使用。其选择是通过软件对程序状态字(PSW)中的RS0、RS1两位的设置来实现的。设置RS0、RS1时,可以对PSW字节寻址,也可以位寻址方式,间接或直接修改RS0、RS1的内容。第65页,课件共134页,创作于2023年2月

⑵位寻址区:

从片内数据RAM区的32-47(20H-2FH)的16个字节单元,共包含128位,是可位寻址的RAM区。这16个字节单元,既可进行字节寻址,又可位寻址。字节地址与位地址之间的关系见表2–2。第66页,课件共134页,创作于2023年2月

字节寻址区:从片内数据RAM区的48~127(30H~7FH),共80个字节单元,可以采用直接字节寻址的方法访问。对于80C52,还有高128B的数据RAM区。这一区域只能采用间接字节寻址的方法访问。

第67页,课件共134页,创作于2023年2月

堆栈区及堆栈指示器SP:堆栈是在片内数据RAM区中,数据先进后出或后进先出的区域。堆栈指示器SP(stackpointer)存放当前的堆栈栈顶地址,是一个8位寄存器。

堆栈是为子程序调用和中断操作而设立的。其具体功能有两个:保护断点和保护现场。第68页,课件共134页,创作于2023年2月

80C51的堆栈是向上堆栈,即进栈时SP的内容是增加的;出栈时SP的内容是减少的。

系统复位后SP内容为07H。通过软件对SP的内容重新定义,使堆栈区设定在片内数据RAM区中的某一区域内,堆栈深度不能超过片内RAM空间。第69页,课件共134页,创作于2023年2月⒉特殊功能寄存器SFR区

用以存放相应功能部件的控制命令、状态或数据的区域。

80C51共定义了21个特殊功能寄存器,其名称和字节地址列于表2-3中。在80C52中,共计26个。访问其它地址无效。注意:字节地址中低位地址为0H或8H的特殊功能寄存器,除有字节寻址能力外,还有位寻址能力。这些特殊功能寄存器与位地址的对应关系见表2-4。第70页,课件共134页,创作于2023年2月

在外部存放数据的区域,这一区域只能用寄存器间接寻址的方法访问,所用的寄存器为DPTR、R1或R0。指令助记符为MOVX。

当用R0、R1寻址时,由于R0、R1为8位寄存器,因此最大寻址范围为256B;当用DPTR寻址时,由于DPTR为16位寄存器,因此最大寻址范围为64KB。2.4.3片外数据存储区00H7FH80HFFH0000HFFFFH内部WRRDSFR外部第71页,课件共134页,创作于2023年2月80C51共有四个8位的并行双向口,分别命名为P0、P1、P2和P3,每个端口皆有八位,计有32根输入/输出(I/O)口线。每一位均由锁存器、输出驱动器和输入缓冲器所组成。P0、P1、P2和P3端口的电路形式不同,其功能也不同。故各口的性质和功能也就有了差异。它们之间的异同列于表2-5。2.5并行输入/输出端口第72页,课件共134页,创作于2023年2月

P0口是一个多功能的8位口,其字节访问地址为80H,位访问地址为80H~87H。2.5.1P0口1、地址/数据总线口在访问外部存储器时,P0口是一个真正的双向数据口,并分时送出地址的8位和送出(接收)相应存储单元的数据。2、I/O口第73页,课件共134页,创作于2023年2月图(a)是P0口的位结构图,它包括一个输出锁存器,两个三态缓冲器,一个输出驱动电路和一个输出控制电路。&MUX锁存器DQCPQ读锁存器内部总线写入读引脚地址/数据控制vccP0.x(a)p0口电路逻辑第74页,课件共134页,创作于2023年2月

当从P0口输出地址或数据时,控制信号应为高电平1,模拟转换开关(MUX)把地址/数据信息经反相器和下拉场效应管接通,同时与门打开。输出的地址或数据既通过与门去驱动上拉场效应管,又通过反相器去驱动下拉场效应管。作地址/数据复用总线用第75页,课件共134页,创作于2023年2月例如,若地址/数据信息为“0”,该“0”信号一方面通过与门使上拉场效应管截止,另一方面经反相器使下拉场效应管导通,从而使引脚上输出相应的“0”信号,反之,若地址/数据信息为“1”,将会使上拉场效应管导通而下拉场效应管截止,引脚上将出现相应的“1”信号。作地址/数据复用总线用第76页,课件共134页,创作于2023年2月在CPU向端口输出数据时,对应的输出控制信号应为0,模拟转换开关将把输出级与锁存器Q端接通。同时,因与门输出为0,使上拉场效应管处于截止状态,因此输出级是漏极开路电路。这样,当写脉冲加在触发器时针端CP上时,则与内部总线相连的D端数据取反后就出现在Q端,再经场效应管反相,在P0引脚上出现的数据正好是内部总线的数据。

作I/O口使用第77页,课件共134页,创作于2023年2月一般P0口的输出级能驱动8个LSTTL输入,但对NMOS输入而言,P0口做地址/数据总线口使用时,不必外加提升电阻。而作一般I/O口使用时,由于输出驱动电路工作于开漏状态,故需外接上拉电阻。第78页,课件共134页,创作于2023年2月当P0口引脚上输入数据,此时上拉FET应一直处于截止状态。引脚上的外部信号即加在下面一个三态缓冲器的输入端,又加在下拉FET的漏极,假定在此之前曾输出锁存过数据0,则FET是导通的,这样引脚上的电位就始终被钳位在0电平,使输入高电平无法读入。因此作为一般I/O口使用时,P0口是一个准双向口,即输入数据时,应先向口写“1”,使两个FET均截止,然后方可作高阻抗输入。第79页,课件共134页,创作于2023年2月但在P0口连接外部存储器时,由于访问外部存储器期间,CPU会自动向口0的锁存器写入0FFH,所以,对用户而言,P0口用作地址/数据总线时,则是一个真正的双向口。上面所述为数据由引脚输入的情况,称为“读引脚”操作。但在有些情况下,例如用一根口线去驱动一个晶体管的基极,则向此口线写“1”时,晶体管导通,并把引脚上的电平拉低,这时若从引脚上读取数据,会把此数据错读为0。为了避免错读引脚上电平的可能性,单片机中还提供了另一类所谓“读锁存器”操作。第80页,课件共134页,创作于2023年2月这类操作的特点是:先读口,随之可对读入的数据进行修改,然后再写到端口上。例如执行指令ORLP0,A时,则先把P0上的内容读入CPU,然后与A累加器内容按位进行逻辑“或”操作,最后把“或”的结果送回P0口。能使单片机产生这种读-修改-写操作的指令,其目的操作数一般为某I/O口或口的某一位,这些指令是:ANL,ORL,XRL,JBC,CPL,INC,DEC,DJNZ,MOVPX·Y,C,CLRPX·Y和SETBPX·Y等,它们的含义详见指令系统一章的说明。第81页,课件共134页,创作于2023年2月综上所述,P0口既可作地址/数据总线口,这时它是真正的双向口,也可作通用I/O口,但只是一个准双向口。一般情况下,P0口已当作地址/数据口使用时,就不能再作通用I/O口使用。P2口的位结构如图(b)所示,它与P0口基本相同,只有输出部分略有不同,在输出FET的漏极接有上拉电阻,这种结构不必外接上拉电阻就可驱动任何MOS输入电路,且能驱动四个LSTTL输入。P2口常用作外部存储器的高八位地址口。当不用作地址口时,P2口亦可作通用I/O口,这时它也是一个准双向I/O口。

2.5.2、P2口第82页,课件共134页,创作于2023年2月

vccP2X地址(b)p2口电路逻辑MUX锁存器DQCPQ读锁存器内部总线写入读引脚控制第83页,课件共134页,创作于2023年2月(c)p1口电路逻辑锁存器DQCPQ读锁存器内部总线写入读引脚vccP1XP1口的位结构如图(c)所示,它与P2口基本相同,只是少了一个转换器(MUX)和一个反相器,且为使逻辑上的一致将锁存器的Q与输出FET相连。P1口常用作通用I/O口,它是一个标准的准双向口,即作输入口使用时必须先给锁存器置1。2.5.3P1口字节地址:90H,位地址:90H-97H第84页,课件共134页,创作于2023年2月2.5.4、P3口P3口是一个双功能口,第一功能和P2口一样可作为通用I/O口。P3口工作于第二功能时,各位的定义如下:P3·0RxD(串行输入通道)P3·1TxD(串行输出通道)P3·2INT0(外中断0)P3·3INT1(外中断1)P3·4T0(定时器0外部输入)P3·5T1(定时器1外部输入)P3·6WR(外部数据存储器写选通)P3.7RD(外部数据存储器读选通)

第85页,课件共134页,创作于2023年2月&锁存器DQCPQ读锁存器内部总线写入读引脚第二输出功能(d)p3口电路逻辑第二输入功能vccP3.x第86页,课件共134页,创作于2023年2月

由(d)P3口位结构可以看出,实现第一功能作通用I/O输出口时,选择输出功能端应保持高电平,使与非门对锁存器Q端是畅通的。同理,实现第二功能做专用信号输出时,则该位的锁存器应置1,使与非门对选择输出功能端是畅通的。对输入而言,无论该位是作通用输入口还是作第二功能输入口,其输出锁存器和选择输出功能端都应置1,即使FET截止。

由于所有口锁存器在上电复位时均置为1,自然满足了上述条件,所以用户不必做任何工作,就可以直接使用P3口的第二功能。至于第一功能,应在确信某一引脚第二功能提供的信号不用时,该引脚才可作I/O线使用,使用方法同与一般准双向口相同。

第87页,课件共134页,创作于2023年2月是一个完整的一位微计算机,它具有自已的CPU、寄存器、I/O、存储器和指令集。一位机在开关决策、逻辑电路仿真、和实时控制方面非常有效。

位处理器系统包括以下几个功能部件:⑴位累加器:借用进位标志位CY。在布尔运算中CY是数据源之一,又是运算结果的存放处,位数据传送的中心。根据CY的状态实现程序条件转移:JCrel、JNCrel。2.6布尔(位)处理器第88页,课件共134页,创作于2023年2月⑵位寻址的RAM:内部RAM位寻址区中的0~127位(20H~2FH);⑶位寻址的寄存器:特殊功能寄存器(SFR)中的可以位寻址的位。⑷位寻址的I/O口:并行I/O口中的可以位寻址的位(如P1.0)。⑸位操作指令系统:位操作指令可实现对位的置位、清0、取反、位状态判跳、传送、位逻辑运算、位输入/输出等操作。第89页,课件共134页,创作于2023年2月

80C51单片微机共有复位、程序执行、低功耗以及编程和校验四种工作方式。2.780C51单片微机的工作方式

第90页,课件共134页,创作于2023年2月⒈复位操作

其主要功能是把PC初始化为0000H,使单片微机从0000H单元开始执行程序。当由于程序运行出错或操作错误使系统处于死锁状态时,为摆脱困境,可以按复位键以重新启动,也可以通过监视定时器来强迫复位。除PC之外,复位操作还对其它一些特殊功能寄存器有影响,它们的复位状态见表2–6。复位操作还对单片微机的个别引脚信号有影响。例如在复位期间,ALE和PSEN信号变为无效状态,即ALE=l,PSEN=l。2.7.1复位方式第91页,课件共134页,创作于2023年2月

⒉复位信号及其产生

⑴复位信号RST引脚是复位信号的输入端。复位信号是高电平有效,其有效时间应持续24个振荡周期(即2个机器周期)以上。若使用频率为6MHz的晶振,则复位信号应持续4µs以上。产生复位信号的电路逻辑图如图2-15所示。第92页,课件共134页,创作于2023年2月整个复位电路包括芯片内、外两部分。外部电路产生的复位信号(RST)送施密特触发器,再由片内复位电路在每个机器周期的S5P2时刻对施密特触发器的输出进行采样,然后才能得到内部复位操作所需要的信号。复位操作有上电自动复位、按键电平复位和外部脉冲复位三种方式,示于图2-16中第93页,课件共134页,创作于2023年2月

程序执行方式是单片微机的基本工作方式。由于复位后PC=0000H,因此,程序执行总是从0000H开始的。一般在0000H开始的单元中存放一条无条件转移指令,以便跳转到实际主程序的入口去执行。比如: ORG 0000H SJMP MAIN ;转主程序

2.7.2程序执行方式第94页,课件共134页,创作于2023年2月 80C51有两种低功耗方式,即待机方式和掉电保护方式。待机方式和掉电保护方式时涉及的硬件如图2-17所示。 待机方式和掉电保护方式都是由电源控制寄存器(PCON)的有关位来控制的。2.7.3低功耗工作方式第95页,课件共134页,创作于2023年2月

其中: SMOD:波特率倍增位,在串行通讯时使用。GF1、GF0:通信标志位1、0。PD:掉电方位式,PD=1,则进入掉电方式。 IDL:待机方式位,IDL=1,则进入待机方式。若PD和IDL同时为1,则先激活掉电方式。SMOD

---GF1GF0PDIDL电源控制寄存器格式如下:第96页,课件共134页,创作于2023年2月⒈待机(休闲)方式⑶待机(休闲)状态退出①产生中断;②复位。⑴待机(休闲)方式状态图2-17●片内时钟仅向中断源提供,其余被阻断;●

PC、特殊功能寄存器和片内RAM状态保持不变;●

I/O引脚端口值保持原逻辑值;●

ALE、保持逻辑高电平;●CPU不工作,但中断功能继续存在。⑵待机(休闲)状态进入

只要使PCON中IDL位置1。第97页,课件共134页,创作于2023年2月⒉掉电保护方式⑶掉电保护状态退出⑴掉电保护方式状态表2-7●片内振荡器停振,所有功能部件停止工作;●片内RAM数据信息保存不变;●

ALE、PSEN为低电平;●

Vcc可降至2V,但不能真正掉电。⑵掉电保护状态进入只要使PCON中PD位置1。唯一方法是硬件复位,复位后片内RAM数据不变,特殊功能寄存器内容按复位状态初始化。第98页,课件共134页,创作于2023年2月51单片机的8个特殊引脚Vcc,GND:电源端XTAL1,XTAL2:片内振荡电路输入、输出端RESET:复位端正脉冲有效(宽度

8mS)EA/Vpp:寻址外部ROM控制端。低有效片内有ROM时应当接高电平。ALE/PROG:地址锁存允许控制端。PSEN:选通外部ROM的读(OE)控制端。低有效

小结第99页,课件共134页,创作于2023年2月51单片机的4个8位的I/O口P0.0—P0.7:8位数据口和输出低8位地址复用口(复用时是双向口;不复用时也是准双向口)P1.0—P1.7:通用I/O口(准双向口)P2.0—P2.7:输出高8位地址(用于寻址时是输出口;不寻址时是准双向口)P3.0—P3.7:具有特定的第二功能(准双向口)注意:在不外扩ROM/RAM时,P0~P3均可作通用I/O口使用,而且都是准双向I/O口(例如:AT89C51)!小结第100页,课件共134页,创作于2023年2月P3口第二功能表引脚第二功能P3.0RxD:串行口接收数据输入端P3.1TxD:串行口发送数据输出端P3.2INT0:外部中断申请输入端0P3.3INT1:外部中断申请输入端1P3.4T0:外部计数脉冲输入端0P3.5T1:外部计数脉冲输入端1P3.6WR:写外设控制信号输出端P3.7RD:读外设控制信号输出端小结第101页,课件共134页,创作于2023年2月PC与SFR复位状态表寄存器复位状态寄存器复位状态PC0000HTCON00HA00HT2CON00HB00HTH000HPSW00HTL000HSP07HTH100HDPTR0000HTL100HP0-P3FFHSCON00HIPXX000000BSBUFXXHIE0X000000BPCON0XXX0000BTMOD00H

回顾第102页,课件共134页,创作于2023年2月89C51单片机存储器配置片内RAM128字节(00H—7FH);片内RAM前32个单元是工作寄存器区(00H—1FH)片内RAM有128个可按位寻址的位,占16个单元。位地址编号为:00H—7FH分布在:20H—2FH单元片内21个特殊功能寄存器(SFR)中:地址号能被8整除的SFR中的各位也可按位寻址可寻址片外RAM64K字节(0000H—FFFFH)可寻址片外ROM64K字节(0

温馨提示

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

评论

0/150

提交评论