




已阅读5页,还剩105页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2020/6/11,单片机原理及应用技术教材编写组,1,第二章单片机组成与工作原理,2020/6/11,单片机原理及应用技术教材编写组,2,MCS-51系统单片机是INTEL公司在MCS-48系列单片机的基础之上推出的高性能8位单片机。它基本上可以满足用户的一般要求,它是工业过程控制、智能化仪器、数控机床、位总线分布式控制、以及通信系统的优选机种。2.1单片机结构及组成2.2微处理器(CPU)2.3单片机的存储器组织2.4定时器/计数器2.5并行输入/输出口2.6串行输入/输出接口2.7中断系统2.8特殊工作方式,2020/6/11,单片机原理及应用技术教材编写组,3,2.1.1单片机的系统资源及主要性能特点,2.1单片机结构及组成,1.系统资源8031内包括:1个8位CPU;128个字节RAM;21个特殊功能寄存器;4个8位并行I/O口;1个全双工串行口(二根线);2个16位定时计数器器;1个片内振荡器和时钟电路;5个中断源2个中断优先级;,2020/6/11,单片机原理及应用技术教材编写组,4,2.性能特点单片机为哈佛结构的计算机,除上述基本资源外,还具有如下特点:外部程序存储器:可扩展到64KB;外部数据存储器:可扩展到64KB;堆栈:最深128B/256B;输入/输出口线:32根;寄存器区:划出RAM中32B作为通用寄存器;具有位寻址功能;单一“+5V”电源;系统时钟112MHz,常用12MHz、11.0592MHz和6MHz。,2020/6/11,单片机原理及应用技术教材编写组,5,2.1.2单片机基本结构,1.内部结构框图,包括:CPU、存储器(ROM、RAM)、I/O接口等计算机的基本组成。,2020/6/11,单片机原理及应用技术教材编写组,6,1)CPU(微处理器)MCS-51单片机中有1个8位的CPU,包括了运算器和控制器。MCS-51增加了面向控制的处理功能,不仅可处理字节数据,还可以进行位变量的处理。2)数据存储器(RAM)片内为128个字节(52子系列的为256个字节),片外最多可外扩64K字节。片内的128个字节的RAM,以高速RAM的形式集成在单片机内,可以加快单片机运行的速度,而且这种结构的RAM还可以降低功耗。,2020/6/11,单片机原理及应用技术教材编写组,7,3)程序存储器(ROM/EPROM)8031无此部件;8051为4K字节ROM;8751则为4K字节EPROM。如果片内只读存储器的容量不够,则需用扩展片外只读存储器,片外最多可外扩至64K字节。4)中断系统具有5个中断源,2级中断优先权。5)定时器/计数器片内有2个16位的定时器/计数器(52子系列有3个16位的定时器/计数器),具有四种工作方式。,2020/6/11,单片机原理及应用技术教材编写组,8,6)串行口1个全双工的串行口,具有四种工作方式,进行串行通讯。作用:扩展并行I/O口,甚至与多个单片机相连构成多机系统,从而使单片机的功能更强且应用更广。7)P1口、P2口、P3口、P0口为4个并行8位I/O口。8)特殊功能寄存器(SFR)特殊功能寄存器共有21个,用于CPU对片内各功能部件进行管理、控制、监视。实际上是一些控制寄存器和状态寄存器。是一个具有特殊功能的RAM区。,2020/6/11,单片机原理及应用技术教材编写组,9,2.外部引脚(40个),MCS-51芯片逻辑符号,MCS-51双列直插封装方式的引脚,2020/6/11,单片机原理及应用技术教材编写组,10,引脚可分为四类:1)电源引脚VCC和VSSVCC:40脚,电源端,+5VVSS:20脚,接地端(GND)2)时钟电路引脚XTAL1:19脚,外接晶振输入引脚。XTAL2:18脚,外接晶振输出引脚。,2020/6/11,单片机原理及应用技术教材编写组,11,3)控制线引脚(1)RST/VPD:9脚,复位/备用电源。RST-通过外接复位电路实现上电复位或按键复位。VPD-可外接备用电源,在VCC掉电时向RAM供电。(2)/VPP:31脚,内外ROM的选择/EPROM编程电源。/VPP=0:访问外部ROM;/VPP=1:访问内部ROM;PC值超过0FFFH(4KB)时,自动转向外ROM。VPP-在8751片内EPROM编程期间,为21V编程电源输入端。,2020/6/11,单片机原理及应用技术教材编写组,12,(3)ALE/:30脚,地址锁存允许/编程脉冲。ALE-访问外ROM或RAM时,用来驱动地址锁存器锁存P0口分时送出的低8位地址(下降沿有效)。不访问外存储器时,该端以1/6时钟频率输出正脉冲,可用作为外部时钟。带8个LS型TTL门电路。-8751片内EPROM编程期间,此引脚输入编程脉冲。(4):29脚,读外部ROM选通信号。该脚有效时(上升沿),外ROM允许输出。每个机器周期2次有效。从内部ROM取指时不产生。可带8个LS型TTL门电路。,2020/6/11,单片机原理及应用技术教材编写组,13,4)I/O引脚P0口:P0.0P0.7,3932脚,外接存储器时作地址/数据分时使用口线;不接外部存储器时,可用作为8位准双向I/O口。P1口:P1.0P1.7,18脚,8位准双向I/O口。P2口:P2.0P2.7,2128脚,8位准双向I/O口。外接存储器时作为高8位地址总线。P3口:P3.0P3.7,1017脚,8位准双向I/O口,出于芯片引脚数的限制,P3口具有第二输出、输入功能。,2020/6/11,单片机原理及应用技术教材编写组,14,2.2微处理器(CPU),CPU是单片机内部的核心部件。MCS-51单片机的CPU由运算器、控制器以及位处理器(布尔处理器)组成。2.2.1运算器运算器主要用来对操作数进行算术、逻辑运算和位操作的。主要包括算术逻辑运算单元ALU、累加器A、位处理器、程序状态字寄存器PSW以及BCD码修正电路等。,2020/6/11,单片机原理及应用技术教材编写组,15,1.算术逻辑运算单元ALUALU不仅可对8位变量进行逻辑“与”、“或”、“异或”、循环、求补和清零等基本操作,还可以进行加、减、乘、除等基本算术运算。MCS-51的ALU还具有位处理操作功能。2.累加器A它是CPU中使用最频繁的一个寄存器,也可写为Acc。1)累加器A是ALU单元的输入之一,又是ALU运算结果的存放单元。2)累加器A相当于数据的中转站,易产生“堵塞”现象。为此,MCS-51单片机增加了一部分可以不经过累加器的传送指令。,2020/6/11,单片机原理及应用技术教材编写组,16,3.布尔处理机Cy累加器A的进位标志Cy,被称作“位累加器”,可在任何可寻址的位与Cy间进行逻辑运算操作。4.程序状态字寄存器PSW(ProgramStatusWord)MCS-51的PSW是一个8位可读写的寄存器,位于单片机片内的特殊功能寄存区,字节地址为D0H。PSW的不同位包含了程序运行状态的不同信息,如图。,2020/6/11,单片机原理及应用技术教材编写组,17,PSW中的各个位的功能如下:1)Cy(或C)进位标志位(PSW.7)在执行算术和逻辑指令时,Cy可被硬件或软件置1或清0,在位处理器中,它是位累加器。2)Ac辅助进位标志位(PSW.6)当进行BCD码加法或减法操作而产生的由低4位数(代表一个BCD码)向高4位进位或借位时,Ac将被硬件置1,否则被清0。Ac用于在进行BCD码运算时,用作十进位调整,同DA指令结合起来用。3)F0标志位(PSW.5)用户使用的一个状态标志位,可用软件置1或清0,也可由指令来测试标志位F0,以控制程序的流向。,2020/6/11,单片机原理及应用技术教材编写组,18,4)RS1、RS04组工作寄存器区选择控制位1和位0(PSW.4、PSW.3)用来选择4组工作寄存器区中的哪一组为当前工作寄存区,它们与4组工作寄存器区的对应关系如下:5)OV溢出标志位(PSW.2)当执行算术指令时,由硬件置1或清0,以指示运算是否产生溢出。,2020/6/11,单片机原理及应用技术教材编写组,19,6)PSW.1位保留位,未用。7)P奇偶标志位(PSW.0)该标志位用来表示累加器A中为1的位数的奇偶数。P=1,则A中“1”的个数为奇数P=0,则A中“1”的个数为偶数5.DAABCD码十进制修正,由专用电路实现。,2020/6/11,单片机原理及应用技术教材编写组,20,2.2.2控制器,控制器主要包括程序计数器、程序地址寄存器、指令寄存器IR、指令译码器、条件转移逻辑电路及时序控制逻辑电路等。,2020/6/11,单片机原理及应用技术教材编写组,21,1.程序计数器PC(ProgramCounter)16位计数器,指向程序存储器中被执行的指令所在的地址。本身没有地址。读指令时,程序计数器将其中的数作为所取指令的地址输出给程序存储器,然后程序存储器按此地址输出指令字节,同时程序计数器本身内容自动增加,指向下一条指令在程序存储器中的地址。PC中内容的变化决定程序的流向。PC的位数决定了单片机对程序存储器可以直接寻址的范围。寻址范围0000FFFFH的64KB空间。,2020/6/11,单片机原理及应用技术教材编写组,22,程序计数器的基本工作方式有以下几种:1)程序计数器自动加1。2)执行有条件或无条件转移指令时,程序计数器将被置入新的数值,从而使程序的流向发生变化。3)在执行调用子程序调用或响应中断时,单片机自动完成如下的操作:PC的现行值(断点值)自动压入堆栈。将子程序的入口地址或中断向量的地址送入PC,程序执行子程序或中断服务子程序。执行完毕RET或RETI时,将栈顶的断点值弹到程序计数器PC中,程序的流向又返回到断点处继续执行程序。,2020/6/11,单片机原理及应用技术教材编写组,23,2.指令寄存器IR、指令译码器及控制逻辑电路IR用来存放指令操作码。IR的输出送指令译码器;然后对该指令进行译码,译码结果送定时控制逻辑电路。定时控制逻辑电路根据对指令的译码结果,发出一系列的定时控制信号,控制单片机的各组成部件进行相应的工作,执行指令。3.指针1)数据指针(DPTR):16位地址指针,可寻址范围0000FFFFH的64KB空间,可指向程序、数据存储器。2)堆栈指针(SP):8位地址寄存器。它指向内部RAM的一个存储单元,且总是指向栈顶单元。MCS-51的堆栈是内部RAM中的一个部分,符合“先进后出、后进先出”原则。,2020/6/11,单片机原理及应用技术教材编写组,24,2.2.3时钟电路1.振荡源(oscillation)MCS-51的HMOS芯片内部时钟电路的振荡源有两种方式提供。内部自激振荡方式外部振荡脉冲源方式。,2020/6/11,单片机原理及应用技术教材编写组,25,2.CPU时序CPU的运算操作在P1期间,数据传送在P2期间。时钟周期、状态周期、机器周期、指令周期、指令字节。ALE时序:地址锁存信号,每个机器周期2次有效,分别在S1、S4状态。每次出现,CPU进行一次取指操作。,2020/6/11,单片机原理及应用技术教材编写组,26,2.3单片机的存储器组织,MCS-51存储器可分为五类:程序存储器内部数据存储器特殊功能存储器位寻址区外部扩展的数据存储器扩展I/O口,2020/6/11,单片机原理及应用技术教材编写组,27,2.3.1程序存储器1.程序存储器作用及寻址范围作用:存放指令(程序)的存储器,用PC作地址指针。寻址范围:0000FFFFH,共64KB;片内、片外统一编址。片内:PC=00000FFFH;片外:PC=1000FFFFH;,2020/6/11,单片机原理及应用技术教材编写组,28,2.ROM低端的几个特殊入口地址0000H:CPU开始执行指令时的第一个取指单元,每次执行时PC的内容总是0000H;0003H002B:中断专用固定入口地址(系统规定);一般是从ROM的0030H单元开始存放用户指令。3.8031内部无程序存储器需外接程序存储器,端必须外接低电平。4.8051、8751内部有4KBROM/EPROMEA=0,使用外部程序存储器;EA=1,使用内部程序存储器4KB空间,当PC的值超过4KB范围时,自动转向外部程序存储器。,2020/6/11,单片机原理及应用技术教材编写组,29,2.3.2数据存储器内部RAM中低128B:007FH。按功能划分为三个部分:,1.工作寄存器区:001FH1)共分4个区,每区有8个工作寄存器:R0R7;2)当前工作寄存器区:由PSW中的第三、第四位选择,具有快速保护现场数据的作用,也可作为一般的数据缓冲器。,2020/6/11,单片机原理及应用技术教材编写组,30,2.位寻址区(20H2FH),128个位,位地址:007FH。51系列整个位地址空间为:00FFH,共211位。1)007FH为片内RAM中202FH的16个字节单元中的128个位。2)80FFH中11个SFR的可寻址位,85位。它们是:A、B、PSW、P0P3、TCON、SCON、IE、IP。52系列的SFR可寻址为93位,共221位。3.数据缓冲区:30H7FH1)作为通用的按字节操作的数据缓冲区。2)常开辟为堆栈区。,2020/6/11,单片机原理及应用技术教材编写组,31,(1)堆栈的特点:是一个符合“先进后出、后进先出”的RAM区域SP总是指向堆栈的顶部(保存有数据);堆栈可以设在内部RAM中的任意区域,一般开辟在307FH中。(2)堆栈的功能:保护断点-保护从主程序转向子程序、中断时的断点,发生转移时自动完成。保护现场-对子程序、中断程序中要用到的、现场的某些寄存器的内容进行保护,以保证返回时正确恢复。软件指令方式实现。数据的临时存放。外部RAM,可扩至64KB,0000FFFFH,2020/6/11,单片机原理及应用技术教材编写组,32,2.3.3特殊功能寄存器区SFR包括I/O锁存器、定时器、串行口、中断、状态、控制寄存器等共21个。离散地分布在80FFH中(不包括PC):算术运算寄存器:A、B、PSW指针寄存器:SP、DPTR(DPH,DPL)并行口:P0、P1、P2、P3串行口:SCON、SBUF、PCON中断系统:IP、IE定时/计数器:TMOD、TCON、TH0、TL0、TH1、TL151系列内部RAM,80FFH中未定义的单位为不可访问单元。,2020/6/11,单片机原理及应用技术教材编写组,33,2.3.4外部扩展数据存储器和扩展I/O口外部扩展数据存储器:最大可扩展到64KB,由P3口的第二功能控制其读、写,并通过MOVX指令访问。扩展I/O口:MCS-51单片机将其看作外RAM的一个单元,与外RAM统一编址,提供16位寻址能力,寻址范围也是64K。,2020/6/11,单片机原理及应用技术教材编写组,34,2.4定时器/计数器,定时器/计数器是MCS-51单片机的重要功能模块之一。在检测、控制及智能仪器等应用中,常用定时器作实时时钟,实现定时检测、定时控制。还可用定时器产生毫秒宽的脉冲,驱动步进电机一类的电气机械。计数器主要用于外部事件的计数。MCS-51单片机内部有两个16位可编程定时器/计数器,即定时器T0和定时器T1(8052提供3个,这第三个称为定时器T2)。它们既可用作定时器方式,又可用作计数器方式,可编程设定4种不同的工作方式。,2020/6/11,单片机原理及应用技术教材编写组,35,2.4.1定时/计数器的结构T0、T1由加法计数器、TMOD、TCON寄存器等组成。,2020/6/11,单片机原理及应用技术教材编写组,36,当16位加法计数器的输入端每输入一个脉冲,16位加法计数器的值自动加1,当计数器的计数值超过加法计数器字长所能表示的2进制数的范围而向第17位进位,即计数溢出时,置位定时中断请求标志,向CPU申请中断。16位加法计数器编程选择对内部时钟脉冲进行计数或对外部输入脉冲计数。对内部脉冲计数时称定时方式,对外部脉冲计数时称计数方式。,2020/6/11,单片机原理及应用技术教材编写组,37,2.4.2定时/计数器的方式控制字1.工作方式寄存器TMODTMOD用于控制T0和T1的工作方式,其各位定义如下:其中,M1、M0:工作方式控制位,可构成以下4种工作方式。,2020/6/11,单片机原理及应用技术教材编写组,38,C/:计数工作方式/定时工作方式选择位。C/=0,设置为定时工作方式。C/=1,设置为计数工作方式。GATE:门控位,用以决定是由软件还是硬件启动/停止计数。GATE=0,/被封锁,只要用软件对TR0(或TR1)置1就启动了定时器。GATE=1,定时器/计数器的计数受外部引脚输入电平的控制。在TR0(或TR1)置1时,若(或)引脚为高电平,启动定时器计数;为低电平时停止计数。TMOD的所有位在复位后清0。TMOD不能位寻址,只能按字节操作设置工作方式。,2020/6/11,单片机原理及应用技术教材编写组,39,2.控制寄存器TCON(88H)TCON的高4位用于控制定时器的启动、停止以及标明定时器的溢出和中断情况,TCON的低4位用于两个外部中断源控制。,2020/6/11,单片机原理及应用技术教材编写组,40,2.4.3定时/计数器的四种工作方式1.工作方式013位计数器,2020/6/11,单片机原理及应用技术教材编写组,41,C/T=0时,定时/计数器的输入端接内部振荡器的12分频,即工作在定时方式,每个计数脉冲的周期等于机器周期,当定时/计数器溢出时,其定时时间为:T=计数次数机器周期=(213-T0初值)机器周期C/T=1时,定时/计数器接外部T0引脚输入信号,即工作在计数方式,当外部输入信号电平发生从“1“到”0“跳变时,加1计数器加1。,2020/6/11,单片机原理及应用技术教材编写组,42,2.工作方式116位计数器T=计数次数机器周期=(216-T0初值)机器周期,2020/6/11,单片机原理及应用技术教材编写组,43,3.工作方式28位自动重装初值计数器TL0用作8位计数器,TH0用来保存初值,每当TL0计满溢出时,硬件自动将TH0中的值装入TL0中。工作方式2的定时时间为:T=计数次数机器周期=(28-T0初值)机器周期,2020/6/11,单片机原理及应用技术教材编写组,44,4.工作方式32个独立8位计数器一般在系统需增加一个额外的8位定时器时,T0可设置为工作方式3,此时T1虽仍可定义为工作方式0、工作方式1和工作方式2、但只能用在不需中断控制的场合。,2020/6/11,单片机原理及应用技术教材编写组,45,2.4.4综合举例1.定时/计数器的应用编程应注意两点:1)初始化(正确写入控制字)2)时间常数(初值)的计算。2.初始化步骤为:1)向TMOD写工作方式控制字。2)向计数器TL、TH装入初值。3)置TRx=1,启动计数。4)置ETx=1,允许定时/计数器中断(若需要时)。5)置EA=1,CPU开中断。,2020/6/11,单片机原理及应用技术教材编写组,46,3.装载初值的计算:当定时器/计数器工作于定时状态时,对机器周期进行计数,一个机器周期T=12/fosc若定时时间为t,则对应的计数次数N=t/机器周期对应定时时间t应装入的计数初值为:2n-N(n为工作方式选择所确定的定时器位数)。,2020/6/11,单片机原理及应用技术教材编写组,47,定时器/计数器的定时/计数范围:工作方式0:13位定时/计数方式,因此,最多可以计到2的13次方,也就是8192次。工作方式1:16位定时/计数方式,因此,最多可以计到2的16次方,也就是65536次。工作方式2和工作方式3,都是8位的定时/计数方式,因此,最多可以计到2的8次方,也说是256次。预置值计算:用最大计数量减去需要的计数次数即可。,2020/6/11,单片机原理及应用技术教材编写组,48,4.举例例1:设T0为工作方式1,设置为定时时间为2ms,每当2ms到,申请中断,在中断服务程序中将P1.0的内容取反送出,即在P1.0引脚产生250Hz的方波(假设晶振为6MHz)。下面先计算定时的T0初始值。以题意:6Hz,t=2ms则:机器周期T=2S计数次数N=1000对应的计数初值为:=64536D=FC18H,2020/6/11,单片机原理及应用技术教材编写组,49,2.5并行输入/输出口,MCS-51单片机有4个8位并行I/O口,P0P3,共32根口线。并行I/O端口一次可传送一个字节的数据。每个I/O端口都由一个八位数据锁存器和一个八位数据缓冲器组成。需要输出数据时,8个数据锁存器用于对端口引脚上输入数据进行锁存。需要输入数据时,8个数据缓冲器用于对端口引脚上输入数据进行缓冲。另外访问并行I/O端口除了可以用字节地址访问外,还可以进行按位寻址。,2020/6/11,单片机原理及应用技术教材编写组,50,四个接口工作在一般I/O方式时,具有以下基本相同的特性:1.作为输出口用时,内部带锁存器,故可以直接和外设相连,不必加锁存器。2.作为输入口用时,有两种读操作指令,读锁存器和读引脚。读锁存器实际上只是把端口锁存器中的内容读到内部总线,经过某种运算和变换后,再写回到锁存器。这类指令称为读修改写指令。读引脚时才真正地把外部的数据读入到内部总线。3.执行读引脚指令读入I/O引脚状态,当端口做输入口使用时,要先将端口锁存器置1。然后再执行读引脚操作,否则就可能读错。,2020/6/11,单片机原理及应用技术教材编写组,51,2.5.10口(P0.7P0.0)P0口是真正的双向I/O口。P0是由一个输出锁存器(D型触发器),两个三态门缓冲器(控制读引脚或读锁存器),与门和多路开关MUX组成的输出控制电路,一对场效应晶体管FET构成的输出电路所组成。,2020/6/11,单片机原理及应用技术教材编写组,52,1.P0口的I/O操作(通用I/O端口)在P0口作为通用I/O端口时,控制电路中“控制”端输入为0电平。(1)输出操作当内部总线信号置0时,锁存器输出/Q输出高电平,下端FET导通,由于上端FET截止,因此P0引脚输出低电平。当内部总线置1时,锁存器输出低电平,下端FET截止,由于上拉电阻的作用,P0口引脚输出高电平。由于两个场效应管均截止,使输出处于“悬浮”状态,因此当MOS负载连接时需要加上一上拉电阻,以保证端口能够正确的输出高电平。,2020/6/11,单片机原理及应用技术教材编写组,53,(2)输入操作读引必须先将端口锁存器置1。执行程序为:MOVP0,#0FFH;端口锁存器置1MOVA,P0;读引脚读锁存器锁存器一般完成的是“读修改写”的操作。这种类型的操作指令只有算术(INC,DEC,ADD),逻辑(ORC,XRL,ANL),位(JBC,CPL,CLR)操作指令等。P0口的两种数据操作:字节操作和位操作。CPU对于P0口不仅可以作为一个八位口来操作,也可以按位来操作。,2020/6/11,单片机原理及应用技术教材编写组,54,2.P0口作为地址/数据复用总线使用(系统使用外存储器时)当P0的地址/数据口置1时,控制上拉电路的“与门”输出为1,上端FET导端,同时地址/数据通过反相器输出为0,下端FET截止,地址/数据线输出为1。当P0的地址/数据口置0时,控制上拉电路的“与门”输出为0,上端FET截止,同时地址/数据输出通过反相器输出1,下端FET导通,地址/数据线输出为0。,2020/6/11,单片机原理及应用技术教材编写组,55,注意:P0口作地址/数据总线输出时,通过反相器、与门工作。P0口作外部数据输入时,CPU使T1、T2均截止,引脚浮空,第三态,数据经“读引脚”输入缓冲器进入内部总线是真正的双向口。P0口控制端的转换是通过指令进行的,即执行I/O总线操作时,如MOVP0,A,系统自动控制端置0,执行地址操作指令如MOVX,MOVC(EA0时)时,则控制端自动置1。在进行硬件系统的设计时,如果使用了外部存储器时,P0口成为整个系统的地址/数据复用总线,此时P0口不能在作为通用的I/O端口。因此一般情况下,P0作为地址/数据总线。,2020/6/11,单片机原理及应用技术教材编写组,56,2.5.21口(90H)P1口是准双向I/O口。P1口的功能和P0口的第一功能相同,仅用于传递I/O输入/输出数据。,2020/6/11,单片机原理及应用技术教材编写组,57,P1口特点:1)准双向口:作为I/O输入时,口锁存器必须置“1”,使T截止,输入信号通过“读引脚”三态缓冲器进入内部总线。2)内部有上拉电阻(20K40K);3)CPU读P1口的两种情况:读P1口的锁存器状态值:“读改写”指令。例ANLP1,#0FH;读P1口的引脚(外部输入)。例MOVA,P1;,2020/6/11,单片机原理及应用技术教材编写组,58,2.5.32口(A0H)P2口是属于准双向口。P2口的第一功能和上述两组引脚的第一功能相同,即它可以作为通用I/O使用。它的第二功能和P0口引脚的第二功能相配合,作为地址总线用于输出片外存储器的高8位地址。,2020/6/11,单片机原理及应用技术教材编写组,59,1.P2口的I/O操作P2口的I/O操作与P0口的I/O同。2.P2口的地址总线操作可分别寻址64KB的程序存储器或片外数据存储器。注意:(1)一般P2口不用于传送存储器的读写数据,因此P2口无需外加地址锁存器。(2)如果使用256B的外部RAM,此时用8位的寄存器R0或R1作间址寄存器,这时P2口无用,此时P2口仍可以做通用I/O端口,如MOVA,R0或MOVA,R0。,2020/6/11,单片机原理及应用技术教材编写组,60,2.5.43口(B0H)特点:1)准双向口:条件为第二功能输出端常“1”,与门开锁;2)第二功能口:作为第二功能口使用时,(P3)=FFH;某位作为第二功能输入时,第二功能输出也必须置“1”。,2020/6/11,单片机原理及应用技术教材编写组,61,2.6串行输入/输出接口,2.6.1基本概念微机与外部信息交换称为通信。基本的通信方法有并行通信和串行通信两种。1.并行通信一个信息的各位数据被同时传送的通信方法称为并行通信。2.串行通信一条信息的各位数据被逐位顺序传送的通信方式称为串行通信。,2020/6/11,单片机原理及应用技术教材编写组,62,串行通信借助于串行输入/输出接口实现,只要一条传输线。串行通信分为两种基本方式:1)异步通信2)同步通信,2020/6/11,单片机原理及应用技术教材编写组,63,串行通信中的几个问题:(1)波特率:串行通信的数据是按位进行的,每秒传送的位数称为波特率,以此来衡量(2)传送的速度:1波特位/秒(3)数据传送的方向:单工,半双工,全双工,通常采用半双工(4)数据校验方法:采用奇偶校验法,发送时,在每个字符的最高位之后(发送时总是低位在前,高位在后)附加一个校验位,这个校验位可以是0或1,所发送的每个字符中“1”的个数为奇数称为奇校验,是偶数称为偶校验。,2020/6/11,单片机原理及应用技术教材编写组,64,2.6.2串行接口的功能与结构MCS-51单片机中的异步通信串行接口能方便地与其他计算机或串行传送信息的外围设备(如串行打印机、CRT终端等)实现双机、多机通信。,2020/6/11,单片机原理及应用技术教材编写组,65,1.串行接口的控制寄存器(SCON)用于控制串行接口的工作状态:,SM0,SM1:工作方式选择位,2020/6/11,单片机原理及应用技术教材编写组,66,REN:串行接收使能位,软件置1时,启动接收过程,TB8:多机方式发送的第9位,多机方式的地址/数据帧标志。也可作为奇偶校验位。,RB8:多机方式接收的第9位,多机方式的地址/数据帧标志。也可作为奇偶校验位。,TI:发送中断标志位,要由软件清0,RI:接收中断标志位,要由软件清0,2020/6/11,单片机原理及应用技术教材编写组,67,SM2:多机通信控制位,SM2=1时,接收机处于地址帧筛选状态。若RB81,该地址帧信息可进入SBUF,并使RI=1若RB80,该帧不是地址帧,应丢掉,且保持RI=0,SM2=0时,接收机处于地址帧筛选被禁止状态。不论收到的RB8为0或1,信息都可进入SBUF,并使RI=1。此时的RB8通常为校验位。,2020/6/11,单片机原理及应用技术教材编写组,68,2.电源控制寄存器(PCON),SMOD:波特率倍增位。在串行口方式1、2、3时,波特率与SMOD有关,当SMOD=1时,波特率提高一倍。复位时,SMOD=0。,2020/6/11,单片机原理及应用技术教材编写组,69,2.6.3串行口的4种工作方式1.方式0,2020/6/11,单片机原理及应用技术教材编写组,70,串行工作方式0同步移位寄存器方式方式设定:SM0SM1=00,通过执行MOVSCON,#00H。此时:RXD(P3.0):数据的发送或接收口。TXD(P3.1):输出同步移位脉冲。发送、接收的是8位数据,不设起始位和停止位,低位在前,波特率固定为fosc/12。,也就是每一机器周期传送1位数据,方式0可外接移位寄存器,将串行接口扩展为并行接口,也可外接同步输入输出设备。,2020/6/11,单片机原理及应用技术教材编写组,71,1)发送CPU执行一条写SBUF的指令如MOVSBUF,A就启动了发送过程。如要再次发送数据,必须用软件将TI清零,并再次执行写SBUF的指令。,2020/6/11,单片机原理及应用技术教材编写组,72,2)接收在RI0的条件下,将REN(SCON4)置1就启动一次接收过程。此时RXD为串行数据接收端,RXD依然输出同步移位脉冲。在串行方式0时,是将串行口变成并行口使用。并要有串并转换芯片74LS164、74LS165转换。,2020/6/11,单片机原理及应用技术教材编写组,73,2.方式1,2020/6/11,单片机原理及应用技术教材编写组,74,1)发送CPU执行一条写SBUF指令后便启动了串行口发送,数据从TXD输出。,2020/6/11,单片机原理及应用技术教材编写组,75,2)接收接收器采用移位寄存器和SBUF双缓冲结构,使得前、后两帧数据进入SBUF的时间间隔至少有l0个位传送周期。在后一帧数据送入SBUF之前,CPU有足够的时间将前一帧数据取走。,2020/6/11,单片机原理及应用技术教材编写组,76,3.方式2与方式3当设定SM0,SM1为10或11时,串行口工作于方式2或方式3,这两种方式都是9位异步通信,仅波特率不同,适用于多机通信。在方式2或方式3下,数据由TXD发送,RXD接收,1帧数据为11位,1位起始位(低电平)8位数据位(低位在前)1位可编程位(第9位数据)用作奇偶校验或地址/数据选择,1位停止位,与方式1相比多了一位可编程位,发送时,第9位数据为TB8,接收时,第9位数据送入RB8。,2020/6/11,单片机原理及应用技术教材编写组,77,方式2和方式3的区别只在于波特率不同。方式2的波特率=2SMOD*fosc/64即为fosc/32(SMOD1时)或fosc/64(SMOD0时)。方式3波特率=2SMOD*(定时器T1溢出率)/32即由定时器/计数器1或定时器/计数器2及SMOD决定。,2020/6/11,单片机原理及应用技术教材编写组,78,1)发送方式2、方式3发送时,数据从TXD引脚输出,附加的第九位数据由SCON中的TB提供。CPU执行一条写入SBUF的指令后立即启动发送器发送;发送完一帧信息后由硬件置TI1。,2020/6/11,单片机原理及应用技术教材编写组,79,2)接收与方式l相似,REN置l后,跳变检测器不断对RXD引脚采样。当采样到负跳变后就启动接收控制器。位检测器对每位数据采集3个值,用采3取2办法确定每位的数值。当第九位数据移入移位寄存器后,将8位数据装入SBUF,第九位数据装入RB*,并置R11。,2020/6/11,单片机原理及应用技术教材编写组,80,4.多机通信串行口用于多机通信时必须使用方式2或方式3。设多机系统有1个主机与3个从机,从机地址分别为00H、01H、02H。为了区分是数据信息还是地址信息,主机用第九位数据TB作为地址/数据的识别位,地址帧的TB1,数据帧的TB0。各从机的SM2必须置1。,2020/6/11,单片机原理及应用技术教材编写组,81,在主机与某从机通信前,先将该从机的地址发送给各从机。由于各从机SM21,接收到的地址帧RB1,所以各从机的接收倍息都有效,送入各自的接收缓冲器,并置RI1。各从机CPU响应中断后,通过软件判断主机送来的是不是本从机地址,如是本从机地址就使SM20,否则保持SM21。接收主机发送数据帧,因数据帧的第九位数据RB0,只有地址相符的从机其SM20,才能将8位数据装入SBUF,其他从机因SM2l,数据将丢失,从而实现主机与从机的一对一通信。方式2、3也可以用于双机通信,此时第九位数据可作为奇偶校验位,但必须使SM20。,2020/6/11,单片机原理及应用技术教材编写组,82,5.波特率工作方式0的波特率是固定的,为f/12。工作方式2的波特率由SMOD(PCDN.7)决定。SMOD=1时为f/32SMOD=0时为f/64在8031/8051/8751单片机中,工作方式1、工作方式3的波特率取决于定时器/计数器1的溢出速率及SMOD,并由下式决定波特率2SMOD定时器/计数器1溢出速率/32,2020/6/11,单片机原理及应用技术教材编写组,83,例设串行接口工作于工作方式3,SMOD0,f=11.059MHz,定时器/计数器1工作于定时器方式2(自动重装载方式),TLl、THl的初值为FDH,试计算波特率。因为定时器/计数器1的定时时间为:T(256253)12/(11.059106)其溢出速率:1/T11.059106/(256-253)12307194.4所以波特率为:20307194.4/329599.839600(位/秒),2020/6/11,单片机原理及应用技术教材编写组,84,2.7中断系统,中断系统在计算机应用系统中起着十分重要的作用,良好的中断系统能提高计算机对外界异步事件的处理能力和响应速度,从而扩大计算机的应用范围。在单片机中,实时控制、故障自动处理时往往用到中断系统,计算机与外部设备间传送数据及实现人机联系也常常采用中断方式。,2020/6/11,单片机原理及应用技术教材编写组,85,2.7.1中断系统的总体结构为了实现中断功能而配置的软件和硬件,称为中断系统。中断系统的处理过程包括中断请求、中断响应、中断处理和中断返回。MCS-5l中断系统的功能为:5个中断请求源4个用于中断控制和管理的可编程和可位寻址的特殊功能寄存器(中断允许控制寄存器IE、中断优先级控制寄存器IP以及定时器/计数器控制寄存器TCON等)提供两个中断优先级,可实现二级中断嵌套,且每一个中断源可编程为开放或屏蔽。,2020/6/11,单片机原理及应用技术教材编写组,86,中断系统结构示意图,2020/6/11,单片机原理及应用技术教材编写组,87,2.7.2中断源8031/8051/8751有5个中断源。1.外部中断0、1输入/输出设备的中断请求,掉电、设备故障的中断请求等都可以作为外部中断源,从引脚INT0或INT1输入。外部中断请求INT0、INT1有两种触发方式:电平触发跳变触发2定时器/计数器0、1溢出中断定时器/计数器计数溢出时,由硬件分别置TF01或TFl1,向CPU申请中断。CPU响应中断后,由硬件自动清除TF0或TF1。,2020/6/11,单片机原理及应用技术教材编写组,88,3串行接口中断串行接口的中断请求由发送或接收所引起。串行接口发送了一帧信息,便由硬件置TI1、向CPU申请中断。串行接口接收了一帧信息,便由硬件置RI1,向CPU申请中断。CPU响应中断后必须用软件清除TI和RI。8032/8052有6个中断源,增加了定时器/计数器2中断请求。该中断源有溢出中断和定时器/计数器2外部中断两种方式。除了外部中断电平触发方式外,其他各个中断实际上是由标志位IE0、IE1、TF0、TFl、TI、RI、TF2及EXF2置位引起的。如果有需要,可以用程序安排产生中断。,2020/6/11,单片机原理及应用技术教材编写组,89,2.7.3中断控制1.中断允许控制MCS-51有多个中断源,为了便于用户灵活使用,在每一个中断请求信号的通路中设置了一个中断屏蔽触发器,用KI表示。KI合上,中断请求信号才能进入CPU,这称为接口电路中断允许或中断开放,否则,即使中断标志位置1,CPU也不响应中断,这称为接口电路中断屏蔽或中断禁止。在CPU内部还设置了一个中断允许触发器,用K2表示。只有在CPU中断允许(K2合上)的情况下,CPU才会响应中断。如果CPU中断屏蔽(K2打开),CPU一律不响应任何中断,即中断系统停止工作。,2020/6/11,单片机原理及应用技术教材编写组,90,中断屏蔽触发器(K1)与中断允许触发器(K2)由中断允许寄存器IE控制工作。IE的格式如下;IE的每一位都可以由软件置1或清零。且1中断允许,0中断屏蔽。(1)CPU中断允许位EA(2)定时器/计数器2中断允许位ET2(3)串行接口中断允许位ES(4)定时器/计数器1中断允许位ETl(5)外部中断1中断允许位EX1(6)定时器/计数器0中断允许位ET0(7)外部中断0中断允许位EXO,2020/6/11,单片机原理及应用技术教材编写组,91,2中断优先权选择8051单片机有两个中断优先级,每一个中断源都可以通过编程确定为高优先级中断或低优先级中断,高优先级的优先权高。同一优先级别中的中断源不止一个,所以也有中断优先权排队问题。中断优先级由中断优先级寄存器IP控制。IP的格式如下:,2020/6/11,单片机原理及应用技术教材编写组,92,IP中的每一位都可以由软件来置1或清零,且1高优先级,0低优先级。(1)定时器/计数器2中断优先级选择位PT2(2)串行口中断优先级选择位PS(3)定数器/计数器1中断优先级选择位PTl(4)外部中断1中断优先级选择位PXl(5)定时器/计数器0中断优先级选择位PT0(6)外部中断0中断优先级选择位PX0,2020/6/11,单片机原理及应用技术教材编写组,93,同一优先级中的中断源优先权排队由中断系统的硬件确定,用户无法自行安排。,2020/6/11,单片机原理及应用技术教材编写组,94,例8031芯片的INT0、INT1引脚分别输入压力超限及温度超限中断请求信号,定时器/计数器0作定时检测的实时时钟,用户规定的中断优先权排队次序为:压力超限温度超限定时检测要求确定IE、IP的内容,以实现上述要求。,2020/6/11,单片机原理及应用技术教材编写组,95,MCS-51系列单片机的中断优先权有三条原则:正在进行的中断过程不能被新的同级或低优先级的中断请求所中断,一直到该中断服务程序结束,正在进行的低优先级中断服务程序能被高优先级中断请求所中断,实现二级中断嵌套。CPU同时接收到几个中断请求时,首先响应优先权最高的中断请求。,2020/6/11,单片机原理及应用技术教材编写组,96,2.7.4中断响应MCS-51的CPU在每个机器周期的S5P2期间顺序采样各中断请求标志位,如有置位,且下列三种情况都不存在,那么在下一周期的S1期间响应中断。否则,采样的结果被取消。三种情况是:CPU正在处理同级或高优先级的中断。现行的机器周期不是所执行指令的最后一个机器周期。正在执行的指令是RETI或访问IE、IP的指令。CPU在执行RETI或访问IE、IP的指令后,至少需要再执行一条其他指令后才会响应中断请求。,2020/6/11,单片机原理及应用技术教材编写组,97,CPU响应中断后,由硬件执行如下功能:根据中断请求源的优先级高低,使相应的优先级状态触发器置1。保留断点,即把程序计数器PC的内容推入堆栈保存。清相应的中断请求标志位IE0、IE1、TF0或TFl。把被响应的中断服务程序的入口地址送入PC,从而转入相应的中断服务程序。中断服务程序的最后一条指令必须是中断返回指令RETI。保护现场及恢复现场的工作必须由用户设计的中断服务程序处理,有些中断请求的撤除也要由中断服务程序来实现。,2020/6/11,单片机原理及应用技术教材编写组,98,2.7.5中断请求的撤除CPU响应中断请求后,在中断返回(执行RETI)前,必须撤除请求,否则会错误地再一次引起中断过程。对于定时器
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 【正版授权】 ISO/IEC 29167-11:2025 EN Information technology - Automatic identification and data capture techniques - Part 11: Crypto suite PRESENT-80 security services for air interface
- 2025年生物技术行业生物医药新药研发前景分析报告
- 2025年家电维修行业维修服务市场前景分析报告
- 2025年医疗器械行业智能医疗机器人技术前景报告
- 2025年智能电子行业智能化电子产品发展趋势与市场前景研究报告
- 2025年生物科技行业生物技术在农业领域的应用与发展前景研究报告
- 2025年网约车行业共享出行市场前景预测报告
- 崇阳县2025年湖北咸宁崇阳县事业单位招聘工作人员97人(含医疗岗45人)笔试历年参考题库附带答案详解
- 国家事业单位招聘2025中央民族乐团应届毕业生招聘4人笔试历年参考题库附带答案详解
- 国家事业单位招聘2025中国极地研究中心(中国极地研究所)招聘应届毕业生(硕士岗)拟聘笔试历年参考题库附带答案详解
- 3D打印车间粉尘防爆管理体系
- 剪映入门培训课件
- 新能源汽车充电桩工程物资供应措施
- 基于大数据的国际广播媒体发展模式比较分析-洞察阐释
- DB32-T 5108-2025 科技服务机构星级评定规范
- JG/T 441-2014额定电压450/750 V及以下双层共挤绝缘辐照交联无卤低烟阻燃电线
- T/CI 311-2024风力发电机组高强钢塔架焊接附属件结构疲劳性能评价方法
- 公安计算机试题及答案
- 《肠道菌群》课件
- 《中医药信息学》课件
- 铁路旅客运输服务普速列车设备设施规范课件
评论
0/150
提交评论