版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、2022-5-81不同型号的对比2022-5-82硬件基本配置8位位CPU片内片内ROM/EPROM、RAM片内并行片内并行 I/O接口接口片内片内16位定时器位定时器/计数器计数器片内中断处理系统片内中断处理系统片内全双工串行片内全双工串行I/O口口2022-5-831.2 中央处理器 CPU内部结构1. 算术逻辑单元算术逻辑单元ALU (8位位)+、算术运算,与、或、非、异算术运算,与、或、非、异或或 逻辑运算,循环移位,位处理。逻辑运算,循环移位,位处理。2. 寄存器阵列寄存器阵列4个工作寄存器区(个工作寄存器区(0区区3区区):每个区均):每个区均含含8个寄存器个寄存器R0R7 ( 8
2、位,暂存运算数据位,暂存运算数据和中间结果;用和中间结果;用PSW中的两位中的两位PSW.4和和PSW.3来切换选择四个工作寄存器区中的来切换选择四个工作寄存器区中的一个工作寄存器区进行读、写操作一个工作寄存器区进行读、写操作2022-5-842. 寄存器阵列寄存器阵列累加器累加器A (8位位):需要:需要ALU处理的数据和计处理的数据和计算结果多数要经过算结果多数要经过A累加器累加器寄存器寄存器B(8位位):与:与A累加器配合执行乘、除累加器配合执行乘、除运算,亦可作通用寄存器运算,亦可作通用寄存器程序状态字程序状态字PSW(8位位):存放:存放ALU运算过程运算过程的标志状态的标志状态进位
3、进位/辅助进位辅助进位/用户定用户定/选工作寄选工作寄/溢出标志溢出标志/ /奇偶标志奇偶标志2022-5-852. 寄存器阵列寄存器阵列数据指针数据指针DPTR(16位位) :存放片外存储器:存放片外存储器地址,作为片外存储器的指针。可分成两个地址,作为片外存储器的指针。可分成两个8位寄存器位寄存器DPH、DPL使用使用堆栈指针堆栈指针SP(8位位) :按:按“先进后出、后进先先进后出、后进先出出”的原则存取数据的存储区的原则存取数据的存储区 MCS-51堆栈设在片内堆栈设在片内RAM区区 数据入栈数据入栈/出栈时,出栈时,(SP)自动先加自动先加1/后减后减 1,其,其内容始终为栈顶地址内
4、容始终为栈顶地址 复位时复位时:(SP) =07H,可通过对,可通过对SP初始化具体初始化具体设置堆栈区设置堆栈区2022-5-863.程序计数器程序计数器PC(16位位) :CPU总是按总是按PC的指示读取程序的指示读取程序PC可可自动加自动加1,CPU执行程序一般是执行程序一般是顺序顺序方方式式当发生转移、子程序调用、中断和复位等操当发生转移、子程序调用、中断和复位等操作,作,PC被强制改写,程序执行顺序也发生被强制改写,程序执行顺序也发生改变改变MCS-51复位时,复位时,(PC ) =0000H。CPU从从地址地址0开始执行程序,即复位入口地址为开始执行程序,即复位入口地址为0.202
5、2-5-871.3 MCS-51单片机的片外总线结构单片机的片外总线结构地址总线(Address Bus)总线宽度为总线宽度为16位,可访问位,可访问64K外部存储器外部存储器A0A7 P0口口(经锁存器经锁存器); A8A15P2口口数据总线(Data Bus)总线宽度为8位(P0)控制总线(Control Bus)由P3口和4根独立控制线组成2022-5-883.1 MCS-51单片机存储器图(图(a)是程序存储器)是程序存储器图(图(b)是内部数据存储器)是内部数据存储器图(图(c)是外部数据存储器)是外部数据存储器2022-5-893.2 MCS-51存储器配置程序存储器(64KB)
6、=1,若PC值在00FFFH之间,则CPU访问片内ROM,若PC值大于0FFFH,则CPU访问片外ROM =0,则忽略片内ROM, CPU只访问片外ROM 仅当CPU访问外部ROM时才有效(每机器周期输出两次负脉冲)EAEAPSEN2022-5-810特殊地址复位入口: 0000H中断入口: 0003H 000BHT0 0013H 001BHT1 0023H串口中断INT0INT12022-5-811片内数据存储器(128B)工作寄存器区:物理地址为00H1FH位寻址区:物理地址为20H2FH,其128bit位地址统一编为00H7FH,还包括部分特殊功能寄存器堆栈/数据缓冲区:物理地址:00H
7、7FH,一般使用30H7FH(注意:复位时, (SP)=07H!)2022-5-8123.3 存储器结构的特点ROM(8051) 引脚为1,则片内4KB、片外60KB为0,则只有片外RAM总和:片内256B (00H-0FFH),片外:64KB (0000H-0FFFFH)片内外RAM总和超过64KB,系统用两种操作码助记符区分片内、片外RAM“MOV” 对片内RAM寻址,“MOVX” 对片外RAM寻址EA2022-5-8133-2 3-2 指令寻址方式指令寻址方式一、立即寻址方式二、直接寻址方式三、寄存器寻址方式四、寄存器间接寻址方式五、变址间接寻址方式六、相对寻址方式七、位寻址方式2022
8、-5-814一、立即寻址方式一、立即寻址方式寻址方式寻址方式:指令如何给出参与运算的操作数。:指令如何给出参与运算的操作数。指令中给出实际操作数指令中给出实际操作数(立即数立即数),以指令字节的形式存放,以指令字节的形式存放在在ROM中,一般用于为寄存器或存储器赋初值中,一般用于为寄存器或存储器赋初值(常数)。(常数)。例:例: 8位立即数:位立即数: MOV A,#40H ;A40H 16位立即数:位立即数: MOV DPTR,#2100H ;DPH21H ;DPL00H2022-5-815二、二、直接寻址方式直接寻址方式 指令中的操作数是存储器单元的地址(指令中的操作数是存储器单元的地址(
9、8 8位位),数),数据存放在存储器单元中。据存放在存储器单元中。 (1)直接寻址方式对数据操作时,直接寻址方式对数据操作时,地址地址是固定值,而地是固定值,而地址所指定的址所指定的单元的内容单元的内容为变量形式。为变量形式。 (2)SFRSFR只能用直接寻址方式访问,两种表示方法:只能用直接寻址方式访问,两种表示方法:物理地址物理地址和和寄存器标号寄存器标号(推荐使用推荐使用)(P40 (P40 例例3-22)3-22)。如:。如: 累加器累加器A E0H ACCA E0H ACC B B寄存器寄存器 F0H BF0H B 程序状态字程序状态字 D0H PSWD0H PSW41H 78H40
10、H 56H 例:例:设存储器两个单元的内容如图所设存储器两个单元的内容如图所示,则执行指令示,则执行指令 MOV AMOV A,40H 40H 后,后,(A A) = = ?56H2022-5-816三、三、寄存器寻址方式寄存器寻址方式 指令中的操作数为寄存器名指令中的操作数为寄存器名( (RnRn等等),),数据在数据在寄存器中。寄存器中。例例: :MOV AMOV A,R0R0;AA(R0R0)设指令执行前(设指令执行前(A A)=20H=20H,(,(R0R0)=40H=40H,则执行指令后(则执行指令后(A A)= = ? , ,(R0R0)= = ?40H40H2022-5-817四
11、、四、寄存器间接寻址方式寄存器间接寻址方式 指令中的操作数为寄存器中存放的地址数据。指令中的操作数为寄存器中存放的地址数据。 存放地址的寄存器称为间址寄存器存放地址的寄存器称为间址寄存器( (RiRi) )或地址指或地址指针针( (DPTRDPTR) )。例例: :MOV AMOV A,R0R0;A(R0)A(R0) 设指令执行前设指令执行前(A)=20H(A)=20H,(R0)=40H(R0)=40H,地址为地址为40H40H的存储单元内容如图所示。执的存储单元内容如图所示。执行指令后,行指令后,(A)= (A)= ? ,(R0)= ,(R0)= ? ,(40H)= ,(40H)= ? 41
12、H 67H 40H 34H34H40H34HR02022-5-818五、五、变址间接寻址方式变址间接寻址方式 数据在存储器中,指令给出的寄存器中存有数据在存储器中,指令给出的寄存器中存有数据的数据的基地址基地址(PCPC( (当前值当前值) )或或DPTRDPTR)和)和偏移量偏移量(A A)。)。数据地址数据地址 = = 基地址基地址 + + 偏移量偏移量例:例: A A,A+DPTRA+DPTR;A(A)+(DPTR)A(A)+(DPTR) 设指令执行前设指令执行前(A)=09H,(DPTR)=2000H(A)=09H,(DPTR)=2000H,存储器单,存储器单元内容如图所示。则执行指令
13、后,元内容如图所示。则执行指令后,(A)= (A)= ? (DPTR)= (DPTR)= ? 12H2000H2008H 89H2009H 12H2022-5-819 六、例:例:2022-5-820七七. .位寻址方式位寻址方式 指令给出位地址。数据存放于指令给出位地址。数据存放于RAMRAM可位寻址空间可位寻址空间中的某一位。中的某一位。 例:例: MOV CMOV C,40H40H ;Cy(40HCy(40H( (位地址位地址) ) ) 设指令执行前设指令执行前(Cy)=1(Cy)=1,RAMRAM地址为地址为28H28H的存储单的存储单元如图,则执行指令后,元如图,则执行指令后,(Cy
14、)= (Cy)= ?28H 0110001029H 11010111位寻址区02022-5-821说明:1. 一条指令中不能同时出现两个工作寄存器非法指令: MOV R1,R2MOV R2,R02. 间址寄存器只能使用 R0、R1非法指令:MOV A,R23. SFR区只能直接寻址,不能用寄存器间接寻址非法指令: MOV R0,#80HMOV A,R02022-5-822例:顺序执行下列指令序列,求每一步执行结果。MOV AMOV A,#30H#30HMOV 4FHMOV 4FH,A AMOV R0MOV R0,#20H#20HMOV R0MOV R0,4FH4FHMOV 21HMOV 21H
15、,20H20H;(A)= 30H (A)= 30H ;(4FH)= 30H (4FH)= 30H ;(R0)= 20H (R0)= 20H ;(20H)= 30H (20H)= 30H ;(21H)= 30H(21H)= 30H2022-5-8233-53-5 算术运算指令算术运算指令 与数据传送指令不同,多数算术运算指令会影响与数据传送指令不同,多数算术运算指令会影响标志位的状态,即标志位的状态,即CPUCPU执行算术运算指令后会根据数据执行算术运算指令后会根据数据操作情况操作情况自动设置自动设置标志位的状态。标志位的状态。MCS-51 的程序状态字寄存器的程序状态字寄存器PSW为状态标志寄
16、为状态标志寄存器存器CyACF0RS1RS0OVP2022-5-8241 1标志位标志位(CPU(CPU自动设置状态自动设置状态) )1 1)CyCy:进位标志位:进位标志位保存运算后最高位的进位保存运算后最高位的进位/ /借位状态,有进位借位状态,有进位/ /借位时,借位时,(Cy)=1(Cy)=1,否则,否则(Cy)=0(Cy)=0。2 2)ACAC:辅助进位标志位:辅助进位标志位保存低半字节的进位保存低半字节的进位/ /借位状态,借位状态,D D3 3产生进位产生进位/ /借位时,借位时,(AC)=1(AC)=1,否则,否则(AC)=0(AC)=0。用于十进制调整。用于十进制调整。3 3
17、)OVOV:溢出标志位:溢出标志位加加/ /减法时减法时, ,OV=CPOV=CP( (最高位的进最高位的进/ /借位状态借位状态) )CSCS( (次高位的进次高位的进/ /借位状态借位状态););补码运算产生溢出补码运算产生溢出, ,则则(OV)=1(OV)=1,否则,否则(OV)=0(OV)=0。4 4)P P:奇偶标志位:奇偶标志位反映累加器反映累加器A A中中“1”1”的个数的奇偶性。当的个数的奇偶性。当1 1的个数为奇数,的个数为奇数,(P)=1(P)=1,否则,否则(P)=0(P)=0。2022-5-8252 2用户选择位用户选择位( (编程设置状态编程设置状态) )1 1)F0
18、F0:用户自定义。:用户自定义。2 2)RS1RS1、RS0RS0: 工作寄存器区选择位。工作寄存器区选择位。复位时,复位时,(PSW)=00H(PSW)=00H。例:复位后,设置使用工作寄存器例:复位后,设置使用工作寄存器3 3区,其余标志位不变。区,其余标志位不变。解:解: MOV PSWMOV PSW, # # 18H18HRS1 RS0工作寄存区0 00区0 11区1 02区1 13区CyACF0RS1RS0OVP2022-5-826 例例: : ( (A)=3BHA)=3BH,(PSW)=0(PSW)=0,执行指令,执行指令 ADD AADD A,#3BH #3BH 后,后,问:问:
19、(A)= ,(Cy)= ,(OV)= ,(AC)= ,(P)= ,(A)= ,(Cy)= ,(OV)= ,(AC)= ,(P)= ,(PSW)= (PSW)= ? 0011 10110011 1011 + + 0011 10110011 1011 0111 01100111 011001000001= 41HCyACF0RS1RS0OVP76H 0 0 1 12022-5-827 1001 10101001 1010 1110 00111110 0011 + + 0 0 1 1 0111 11010111 1101 2. 2.带进位加法带进位加法:(:(指令执行前指令执行前CyCy的内容的内容
20、) ) ADDC A ADDC A,RnRn ADDC A ADDC A,directdirect ADDC A ADDC A,RiRi ADDC A ADDC A,#data#data 影响标志位影响标志位 CyCy、OVOV、ACAC、P P。7DH 1 1 0 07DH 1 1 0 0 例:例:(A)=9AH(A)=9AH,(R2)=E3H(R2)=E3H,(PSW)=0(PSW)=0,执行指令,执行指令ADDC AADDC A,R2R2 问问: (: (A)= ,(Cy)= ,(OV)= ,(AC)= ,(P)= ,A)= ,(Cy)= ,(OV)= ,(AC)= ,(P)= , (P
21、SW)= (PSW)= ?10000100 = 84HCyACF0RS1RS0OVP2022-5-828指令系统小结MOV:源操作数和目的操作数都在片内RAM与A中; MOVX:实现外部RAM与累加器A之间的数据传送; MOVC:两条专用查表指令,实现外部ROM与累加器A之间的数据传送。2022-5-829Ri 中i的范围是0或1。 Rn 中n的范围是07。 每条指令中只能有每条指令中只能有1个个Rn或或Ri。 如:如: MOV R1,R0 MOV A, R2 以累加器以累加器A为目的操作数寄存器的传送为目的操作数寄存器的传送指令会影响指令会影响PSW中的奇偶标志位,其余中的奇偶标志位,其余传
22、送指令执行时均不会影响任何标志位。传送指令执行时均不会影响任何标志位。2022-5-8304-2 定时器/计数器1、MCS-51内部具有两个定时/计数器,可用于定时控制,分频器和事故处理来用。2、内部是一个二进制加1计数器,当计数器计满回零时能自动产生溢出中断请求,表示定时时间已到或计数已中止。2022-5-831一.定时器控制、状态寄存器 1.TMOD定时器方式寄存器(89H)1)功能选择位)功能选择位C/T:=0,定时功能,计数内部机器周期脉冲;,定时功能,计数内部机器周期脉冲;=1,计数功能,计数引脚,计数功能,计数引脚T0(T1)输入的脉冲下降沿。输入的脉冲下降沿。 2 2)方式选择位
23、方式选择位M1M1、M0M0:4 4种工作方式:种工作方式:13/16/813/16/8位位 3)门控方式选择位)门控方式选择位GATE : =0,非门控方式,非门控方式(内部启动内部启动):TRx=1,启动定时器工作;,启动定时器工作;TRx=0,停止定时器工作。,停止定时器工作。=1,门控方式,门控方式(外部启动外部启动):TRx=1且引脚且引脚INTx=1才启动。才启动。GATEC/TM1M0GATEC/TM1M0T1T02022-5-832TMODGATEC/TM1M0GATEC/TM1M0确定定时器工作方式指令:确定定时器工作方式指令:MOV TMOD,#方式字方式字例:例:设设T0
24、用方式用方式2非门控定时,非门控定时,T1用方式用方式1门控计数。门控计数。 MOV TMOD,#1101 0010B 或或 MOV TMOD,#0D2H2022-5-8332.TCON定时器控制/状态寄存器(88H)TF1TR1TF0TR01)启动控制位)启动控制位TR0、TR1=0,停止定时器工作;,停止定时器工作; =1,启动定时器工作。,启动定时器工作。例:启动例:启动T0:SETBTR02)溢出中断标志位)溢出中断标志位TF0、TF1定时器溢出使定时器溢出使TFx=1。 中断方式:中断方式: TFx=1引起中断请求,引起中断请求,CPU响应响应Tx中断后,自动对中断后,自动对TFx清
25、清0 。 软件查询方式:软件查询方式:可用软件检测可用软件检测TFx,必须软件清,必须软件清0。 WAIT:JBC TF0,NEXT ;检测;检测T0是否溢出是否溢出SJMPWAIT ;未溢出,继续检测;未溢出,继续检测 NEXT: ;溢出,;溢出,TF0清清0,处理溢出,处理溢出2022-5-8343可预置初值的16位加1定时计数器 属于SFR中的一种,T0由TH0、TL0组成, T1由TH1、TL1组成。通过预设初值来定时。 预置T0初值指令: MOV TH0,#X MOVTL0,#XL2022-5-835二、定时器工作方式 13位定时位定时/计数器。计数外部脉冲个数:计数器。计数外部脉冲
26、个数:18192(213)。 定时时间定时时间(12MHz,即:,即:T=1 s):1 s 8.192ms。TRxINTxGATEC/T=0C/T=1usfatosc12)2(13由方式选择位由方式选择位M1M1、M0M0设定设定2022-5-836THx THx 高高8 8位和位和TLx TLx 低低5 5位组成位组成1313位加位加1 1计数器计数器例:计算得初值为例:计算得初值为76927692,1313位定时器位定时器T0T0应装初应装初值多少?值多少?76927692化为化为1616进制数进制数1E0CH,1E0CH,则则TH0TH00FOH,TL0=0CH0FOH,TL0=0CHT
27、1T9T8T7T6T5T4T3T2T13T12T11T10TH0/TH1TL0/TL12022-5-837第四章 单片机的其他片内功能部件16位定时/计数器。 THx8位和TLx8位组成16位加1计数器计数外部脉冲个数:计数外部脉冲个数:165536(216)定时时间定时时间(T=1 s):1 s 65536T= 65.54msC/T=0C/T=1usfatosc12)2(162022-5-8383. 方式2自动恢复初值自动恢复初值8位定时位定时/计数器。计数器。TLx为为8位加位加1计数器,计数器,THx为为8位初值暂存器。位初值暂存器。无需重装初值,用于需要重复定时和计数的场合。无需重装初
28、值,用于需要重复定时和计数的场合。最大计数值:最大计数值:256 (28)最大定时时间最大定时时间(T=1 s): 256 susfatosc12)2(82022-5-839注意:方式2下,当定时器计满回零时, 一方面向CPU发出溢出中断请求, 另一方面从TH中重新获得初值并启动计数。方式0、1、3下, 定时器必须通过重装初值来重新启动计数。2022-5-8404.方式3(只适用T0)T0分成分成2个独立的个独立的8位定时器:位定时器:TL0定时定时/计数器和计数器和TH0定时器定时器TL0占用占用T0控制位:控制位:C/T,TR0,GATE;TH0占用占用T1控制位。控制位。T1不能使用方式
29、不能使用方式3工作工作,一般当一般当T1作为波特率发生器时作为波特率发生器时,T0选方式选方式3。C/T=0C/T=12022-5-8414-2-3 定时器/计数器的初始化1 1初始化步骤初始化步骤 1)给定时器方式寄存器)给定时器方式寄存器TMOD送一个方式控制字,以设定定送一个方式控制字,以设定定 时器时器/计数器的相应工作方式。计数器的相应工作方式。 2)确定需要定时的时间和需要计数的初值,给定时器)确定需要定时的时间和需要计数的初值,给定时器/计数器计数器 送定时器初值或计数器初值。送定时器初值或计数器初值。 3)给中断允许寄存器)给中断允许寄存器IE选送中断控制字和中断优先级寄存器选
30、送中断控制字和中断优先级寄存器 IP选送中断优先级字,以开放相应中断和设定中断优先级。选送中断优先级字,以开放相应中断和设定中断优先级。 4)给定时器控制寄存器)给定时器控制寄存器TCON送命令字,以启动或禁止定时器送命令字,以启动或禁止定时器 /计数器的运行。计数器的运行。2022-5-842例4-7 若单片机时钟频率为12MHz,请计算定时2ms所需 的定时器初值。解:由于定时器工作在方式2和方式3下时的最大定时时间只有0.256ms, 因此要想获得2ms的定时时间定时器必须工作在方式0或方式1。 若采用方式0,则根据公式可得定时器初值为:TC= M MT/ TT/ T计数计数= 213
31、2*103/1=6192=1830H 即:TH0应装0C1H;TL0应装#10H(高三位为0) 若采用方式1,则根据公式可得定时器初值为:TC=2ms/1=63536=F830H 即:TH0应装#0F8H;TL0应装#30H。2022-5-843例:设8031时钟频率为12MHz,要求定时器T0定时50ms,写出初始化程序。TC=M-T/T计数216-50ms/1us=15536=3CB0HSTART: MOV TMOD #01H ; 方式1 MOV TH0,#3CH ;装初值 MOV TL0,#0B0H SETB TR0 ; 启动T0计数WAIT:JBC TF0,TT0 ;检测T0是否溢出
32、SJMP WAIT ;未溢出,继续检测TTO: MOV TH0, #3CH ;重装初值 MOV TL0,#0B0H CPL P1.0 ;功能?HERE: SJMP HERE2022-5-8444-3 串行接口一一. .串行通讯的基本方式串行通讯的基本方式( (一一).).异步通讯异步通讯 以字符为传送单位用起始位和停止位标识每个字符的开始和结束,以字符为传送单位用起始位和停止位标识每个字符的开始和结束, 字符间隔不固定,只需字符传送时同步。字符间隔不固定,只需字符传送时同步。 异步通讯常用格式:一个字符帧异步通讯常用格式:一个字符帧( (二二).).同步通信同步通信 每一数据块开头时发送一个或
33、两个同步字符,使发送与接收双方取每一数据块开头时发送一个或两个同步字符,使发送与接收双方取 得同步。数据块的各个字符间取消了起始位和停止位,所以通信速得同步。数据块的各个字符间取消了起始位和停止位,所以通信速 度得以提高。度得以提高。 2022-5-845二.串行接口功能1.发送器:并串数据格式转换,添加标识位和校验位,一帧发送结束, 设置结束标志,申请中断。2.接收器:串并数据格式转换,检查错误,去掉标识位,保存有效数据,设置接收结束标志,申请中断。3.控制器:接收编程命令和控制参数,设置工作方式:同步/异步、 字符格式、波特率、校验方式、数据位与同步时钟比例。 4.串行数据传送方向 单工通
34、讯:数据单向传送。 半双工通讯:数据可分时双向传送。 全双工通讯:可同时进行发送和接收2022-5-846第四章 单片机的其他片内功能部件2 2个外部中断源信号:个外部中断源信号:INT0INT0、INT1INT12 2个定时器个定时器T0T0、T1T1溢出中断请求:溢出中断请求:TF0TF0、TF1TF11 1个串行口数据发送、接收结束中断请求:个串行口数据发送、接收结束中断请求:TITI、RIRI2022-5-847三、中断控制寄存器寄寄存存器器名名称称D7D6D5D4D3D2D1D0TCON(88H)TF1TF0IE1IT1IE0IT0定定时时器器控控制制寄寄存存器器位位地地址址8 8F
35、 FH H8 8E EH H8 8D DH H8 8C CH H8 8B BH H8 8A AH H8 89 9H H8 88 8H HSCON(98H)TIRI串串行行口口控控制制寄寄存存器器位位地地址址9 9F FH H9 9E EH H9 9D DH H9 9C CH H9 9B BH H9 9A AH H9 99 9H H9 98 8H HIE(A8H)EAESET1EX1ET0EX0中中断断允允许许寄寄存存器器位位地地址址A AF FH HA AC CH HA AB BH HA AA AH HA A9 9H HA A8 8H HIP(B8H)PSPT1PX1PT0PX0中中断断优优先
36、先级级寄寄存存器器位位地地址址B BC CH HB BB BH HB BA AH HB B9 9H HB B8 8H H2022-5-848四、中断控制寄存器中的各中断标志1.中断标志位: TF1、TF0、IE1、IE0、RI 、TI TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 SM0 SM1 SM2 RENTB8RB8TIRITCONSCON登记各中断源请求信号:登记各中断源请求信号:=1,有中断请求;,有中断请求;=0,无中断请求。,无中断请求。 CPU响应中断后,各中断标志自动清零。响应中断后,各中断标志自动清零。注意:注意:TI,RI标志必须软件清零。标志必须软件清
37、零。2.2.外部中断触发方式选择位:外部中断触发方式选择位:IT0IT0、IT1 IT1 =1 =1,负边沿触发中断请求;,负边沿触发中断请求;=0=0,低电平触发中断请求。,低电平触发中断请求。2022-5-8493.中断允许控制位:EA、ES、ET1、EX1、ET0、EX0 IE =1,开中断;=0,关中断。 例:允许CPU响应T0的中断请求 MOV IE,#82H 或者 SETB ET0 SETB EA4中断优先级控制位:PS、PT1、PX1、PT0、PX0 IP 2级优先级:=1,为高优先级;=0,为低优先级。 同一优先级别按内部查询顺序排列优先级: 高 INT0、T0、INT1、T1
38、、SIO 低。EA/ET2ESET1EX1ET0EX0/PT2PSPT1PX1PT0PX0五、中断控制寄存器中各控制位五、中断控制寄存器中各控制位2022-5-850注意:一种中断一旦得到响应,与它同级的中断不能再中断它。低优先级中断可以被高优先级中断所中断,反之不能。2022-5-8514.4.2 中断处理过程1.中断响应(一)中断响应条件(一)中断响应条件 1.1.有中断源发出中断请求;有中断源发出中断请求; 2.2.中断总允许位中断总允许位EAEA1 1,即,即CPUCPU开中开中断;断; 3.3.相应的中断允许位为相应的中断允许位为1 1,即没有,即没有屏蔽。屏蔽。(二)(二) 响应过
39、程响应过程 1.阻断同级或低级中断;阻断同级或低级中断; 2.PC指针内容压栈保护;指针内容压栈保护; 3.相应中断入口地址装入相应中断入口地址装入PC,程序程序转移到该中断入口地址单元。转移到该中断入口地址单元。中断源中断源中断入口地址中断入口地址INT00003HT0000BHINT10013HT1001BHSIO0023H2022-5-8522.中断处理注意: (1)各中断源的入口矢量地址之间,相隔8个单元,通常是在中断入口矢量地址单元处存放一条无条件转移指令,转至存储器其他的任何空间去执行中断服务程序。 (2)若要在执行当前中断程序时禁止更高优先级中断,应用软件关闭CPU中断,或屏蔽更
40、高级中断源的中断,在中断返回前再开放中断。 (3)在保护现场和恢复现场时,为了不使现场信息受到破坏或造成混乱,一般在此情况下,应关CPU中断,使CPU暂不响应新的中断请求。3.中断返回 中断返回指令: RETI= RET指令 + 通知CPU中断服务已结束。2022-5-853ORG0000HRESET:AJMPMAIN ;转主程序 ORG 000BH ;转中断处理程序 AJMPIT0P ORG 0100HMAIN: MOV SP,#60H ACALL PT0M0HERE:SJMP HERE ;等待中断PT0M0: MOVTL0,#0CH ;T0置初值 MOVTH0,#0F0H SETBTR0
41、SETBET0 ;允许T0中断 SETB EA ;CPU开放中断 RETIT0P: MOVTL0,#0CH ;T0重新置初值 MOVTH0,#0F0H CPLP1.0 ;P1.0取反 RETI END2022-5-8546-2 存储器的扩展一、MCS-51用于扩展存储器的外部总线信号:P0.00.7:8位数据和低8位地址信号,复用总线AD07。P2.02.7:高8位地址信号AB815ALE: 地址锁存允许控制信号PSEN: 片外程序存储器读控制信号RD: 片外数据存储器读控制信号WR: 片外数据存储器写控制信号EA: 程序存储器选择2022-5-855二、扩展程序存储器电路:常用EPROM芯片:Intel 2716(2K8位)、2732(4KB)、2764(8KB)、27128(16KB)、27256(32KB)、27512(64KB)。8031扩展扩展32KB EPROMIntel 27256 地址?地址?2022-5-856三. 扩展数据存储器电路:常用RAM芯片:Intel 6116(2KB)、6264(8KB)、62256(32KB)。8031扩展扩展8KB RAM Intel 62642022-5-857四. 程序与数据存储器扩展电路单片机连接 8KB EPROM 2764 和 8KB RAM 6264 各一片A8A12A0A7MCS-5
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 交通运输安全生产监测制度
- 光学非线性增强材料考核试卷
- 体育组织法律顾问制度的功能
- 幼儿绘画创作与美术技巧考核试卷
- 2024年度物业服务合同:物业公司与业主之间的物业服务合同
- 家居纺织品的设计风格与市场需求考核试卷
- 2024年影像制作服务合同
- 公务员职级晋升的三年工作总结与反思
- 2024年度国际珠宝首饰设计定制合同
- 2024年式商务车融资租赁合同模板
- 装修垃圾清运处置方案
- JC-T 2536-2019水泥-水玻璃灌浆材料
- 品牌授权协议书
- 艺术设计就业职业生涯规划
- 《狙击手》和《新神榜杨戬》电影赏析
- 枪库应急处置预案
- 老年患者术后谵妄的护理干预
- 《凸透镜成像的规律》课件
- 仓库管理中的客户服务和沟通技巧
- 规划选址及用地预审
- 土砂石料厂项目融资计划书
评论
0/150
提交评论