单片机原理及接口技术课后答案第三版李朝青编北航出版

上传人:lj****c 文档编号:153623930 上传时间:2022-09-19 格式:DOC 页数:37 大小:152KB
收藏 版权申诉 举报 下载
单片机原理及接口技术课后答案第三版李朝青编北航出版_第1页
第1页 / 共37页
单片机原理及接口技术课后答案第三版李朝青编北航出版_第2页
第2页 / 共37页
单片机原理及接口技术课后答案第三版李朝青编北航出版_第3页
第3页 / 共37页
资源描述:

《单片机原理及接口技术课后答案第三版李朝青编北航出版》由会员分享,可在线阅读,更多相关《单片机原理及接口技术课后答案第三版李朝青编北航出版(37页珍藏版)》请在装配图网上搜索。

1、单片机原理及接口技术课后答案_(第三版)第一章1单片机具有哪些特点()片内存储容量越来越大。(2抗干扰性好,可靠性高。(3)芯片引线齐全,容易扩展。(4)运行速度高,控制功能强。()单片机内部的数据信息保存时间很长,有的芯片可以达到100年以上。2. 8C51单片机内包含哪些主要逻辑功能部件?答:8051系列单片机在片内集成了以下主要逻辑功能部件: (l)CPU(中央处理器):8位 (2)片内RAM:28 (3)特殊功能寄存器:1个 (4)程序存储器:4KB (5)并行/O口:位,4个 (6)串行接口:全双工,1个 (7)定时器/计数器:16位,2个()片内时钟电路:个3.什么是微处理器(U)

2、、微机和单片机?答:微处理器本身不是计算机,但它是小型计算机或微机的控制和处理部分。微机则是具有完整运算及控制功能的计算机,除了微处理器外还包括存储器、接口适配器以及输入输出设备等.单片机是将微处理器、一定容量的AM、ROM以及/O口、定时器等电路集成在一块芯片上,构成的单片微型计算机。4. 微型计算机怎样执行一个程序?答:通过CPU指令,提到内存当中,再逐一执行.5什么是嵌入式系统?他有哪些类型?为什么说单片机是典型的嵌入式系统?答;嵌入式系统是将先进的计算机技术、半导体技术和电子技术和各个行业的具体应用相结合后的产物,这一点就决定了它必然是一个技术密集、资金密集、高度分散、不断创新的知识集

3、成系统。 它有嵌入式微处理器、嵌入式微控制器、嵌入式S处理器、嵌入式片上系统等。 嵌入式系统的出现最初是基于单片机的。它从体系结构到指令系统都是按照嵌入式应用特点专门设计的,能最好的满足面对控制对象,应运系统的嵌入、现场的可靠运行以及非凡的控制品质要求。因此,她是典型的嵌入式系统。第二章.89C51单片机内包含哪些主要逻辑功能部件?答:0C系列单片机在片内集成了以下主要逻辑功能部件: ()CPU(中央处理器):8位 (2)片内AM:128B (3)特殊功能寄存器:21个 (4)程序存储器:4B (5)并行I/O口:8位,个 (6)串行接口:全双工,个 (7)定时器/计数器:位,2个 ()片内时

4、钟电路:1个2.851的A端有何用途?答:/EA端接高电平时,CU只访问片内并执行内部程序,存储器。/端接低电平时,PU只访问外部OM,并执行片外程序存储器中的指令。EA端保持高电平时,CPU执行内部存储器中的指令。 8951的存储器分哪几个空间?如何区别不同空间的寻址?答:RM(片内ROM和片外ROM统一编址)(使用OVC)(数据传送指令)(16its地址)(6B) 片外A(MOVX)(1bits地址)(64KB) 片内RM(MOV)(8is地址)(26B)4 简述9C5片内RA的空间分配。答:片内M有256B 低18B是真正的AM区 高18B是SF(特殊功能寄存器)区 . 简述布尔处理存储

5、器的空间分配,片内R中包含哪些可位寻址单元。答:片内RA区从00HF(256B) 其中20HH(字节地址)是位寻址区 对应的位地址是07FH6. 如何简捷地判断89C51正在工作?答:用示波器观察80的TAL2端是否有脉冲信号输出(判断震荡电路工作是否正常?) (地址锁存允许)(Adess Latch Enble)输出是fsc的分频 用示波器观察AE是否有脉冲输出(判断 051芯片的好坏?) 观察PN(判断8051能够到EPOM 或ROM中读取指令码?) 因为/PEN接外部EPROM(ROM)的/E端子 OE=Ott Enble(输出允许)7。 8C1如何确定和改变当前工作寄存器组?答:PSW

6、(程序状态字)(Program Sa Word)中的S1和R0 可以给出4中组合 用来从4组工作寄存器组中进行选择 PSW属于SFR(Sca FunctioRgiser)(特殊功能寄存器)891 0口用作通用/口输入时,若通过TL“OC”门输入数据,应注意什么?为什么?答:9。读端口锁存器和“读引脚”有何不同?各使用哪种指令?答:读锁存器(N P,A)就是相当于从存储器中拿数据,而读引脚是从外部拿数据(如OV ,P1 这条指令就是读引脚的,意思就是把端口p1输入数据送给A) 传送类MOV,判位转移JB、JNB、这些都属于读引脚,平时实验时经常用这些指令于外部通信,判断外部键盘等;字节交换C、X

7、CD算术及逻辑运算 OL、CP、A、ADD、ADC、SUBB、INC、EC控制转移CE、DJNZ都属于读锁存器。10 8C51 P3口结构有何不同?用作通用I/口输入数据时,应注意什么?答:P0口内部没有上拉电阻,可以用做6位地址的低位; P有第二功能; P口可以用做6位地址的高8位; 需要上拉电阻。OC门电路无法输出高低电平,只有靠上拉电阻才能实现1。9C单片机的A信号有何功能?在使用8031时,EA信号引脚应如何处理?答:()80C1单片机的EA信号的功能 EA为片外程序存储器访问允许信号,低电平有效;在编程时,其上施加21V的编程电压 EA引脚接高电平时,程序从片内程序存储器开始执行,即

8、访问片内存储器;引脚接低电平时,迫使系统全部执行片外程序存储器程序。 (2)在使用C31时,EA信号引脚的处理方法 因为8C1没有片内的程序存储器,所以在使用它时必定要有外部的程序存储器,E 信号引脚应接低电平。12 895单片机有哪些信号需要芯片引脚以第2功能的方式提供?答:第一功能 第二功能 串行口: 3.0 RXD(串行输入口) P1 D(串行输出口) 中断: P32 IN0外部中断0 P3。3 INT1外部中断1 定时器/计数器(0、T1): P3. T0(定时器计数器0的外部输入) P3. (定时器/计数器1的外部输入) 数据存储器选通: P3。6 W(外部存储器写选通,低电平有效,

9、输出) 3。7 R(外部存储器读选通,低电平有效,输出) 定时器/计数器(T): P10 T(定时器T2的计数端) P1.1 T2EX(定时器T2的外部输入端)13. 内部RA低128字节单元划分为哪3个主要部分?各部分主要功能是什么?答:片内RA低12单元的划分及主要功能: ()工作寄存器组(00lFH) 这是一个用寄存器直接寻址的区域,内部数据RAM区的0(00HlFH),共32个单元。它是4个通用工作寄存器组,每个组包含个8位寄存器,编号为R0R7。 (2)位寻址区(20H2FH) 从内部数据AM区的37(2H2FH)的1个字节单元,共包含8位,是可位寻址的M区。这1个字节单元,既可进行

10、字节寻址,又可实现位寻址. ()字节寻址区(307H) 从内部数据RM区的8(30H7FH),共80个字节单元,可以采用间接字节寻址的方法访问。14。 使单片机复位有几种方法?复位后机器的初始状态如何?答:(1)单片机复位方法 单片机复位方法有:上电自动复位、按键电平复位和外部脉冲三种方式,如题图21所示。 题图21(2)复位后的初始状态 复位后机器的初始状态,即各寄存器的状态:PC之外,复位操作还对其他一些特殊功能寄存器有影响,它们的复位状态如题表21所例15. 开机复位后,CPU使用的是哪组工作寄存器?它们的地址是什么?PU如何确定和改变当前工作寄存器组?答:一般开机复位后都是选择第一组通

11、用工作寄存器作为工作寄存器的,一共有4组,分别为。1。23连续位于00到1F地址,然后在机器中有个程序状态字PSW,它的第四和第三位S1,R是用来选择工作寄存器组的,可能不同机器地址稍有不同。他们俩的值和寄存器组的关系:SRS0 /0 0/1 10 1/1使用的工作寄存器 1 2 3地址 007 08F 1017181F写程序的时候就是通过定义程序状态字来选择使用不同的寄存器组.也可以直接对S和RS0赋值.(最后一问同题)16 程序状态寄存器PW的作用是什么?常用标志有哪些位?作用是什么?答:PS是一个FR(特殊功能寄存器) 位于片内A的高128B 具体地址D0H(00HF)(片内A的编址)(

12、8bs编址方法) PSProgamStatus ord(程序状态字) PSW的常用标志位有哪些? Yarr(进位标志位) A=Auxiliaryarry(辅助进位标志位)(半进位标志位) F0用户标志位 S1,S0,用来选择当前工作寄存器组(R7)(4选) OV=erflw(溢出标志位) PPity(奇偶校验位)17. 位地址7CH与字节地址7H如何区别?位地址7H具体在片内RM中的什么位置?答:用不同的寻址方式来加以区分,即访问12个位地址用位寻址方式,访问低128字节单元用字节寻址和间接寻址。 具体地址为2F的第五位,即为.1895单片机的时钟周期与振荡周期之间有什么关系?什么叫机器周期和

13、指令周期?答:时钟信号的周期称为机器状态周期,是振荡周期的两倍。一个机器周期是指CU访问存储器一次所需的时间.指令周期是执行一条指令所需的时间。19. 一个机器周期的时序如何划分?答:一个机器周期=12个震荡周期=6个时钟周期(状态周期) S1P1,S1P2,2P1,S2P2,S3P1,S3P2,S4,S4P2,S5P,S52,S61,S6 其中tte(状态),p=phase(相位)20。 什么叫堆栈?堆栈指针S的作用是什么?895单片机堆栈的容量不能超过多少字节?答:堆栈都是一种数据项按序排列的数据结构,只能在一端(称为栈顶(tp))对数据项进行插入和删除。要点:堆:顺序随意栈:后进先出(L

14、t-InirstOut) 在调用子程序时需要保存调用函数的CU寄存器PC指针,PC指针是被CALL指令自动压入S所指向的片内存储器,PU寄存器要由用户用S指令自行保存,因此P的作用就是一个指针,当进行中断调用,子函数调用时将现场数据压入P所指向的存储器,S自动增加1或2,当中断结束ETI,调用返回RE,P时将S数据弹出,S自动减或,2851最大为28字节的片内存储器,020以上理论都可以做堆栈用96字节,85为256字节22字节可用,但这样便没有其它空间可用于数据存储现在的单片机的程序一般都能用C1来,不用关心堆栈大小与SP寄存器21 C5有几种低功耗方式?如何实现?答:空闲方式和掉电方式 空

15、闲方式和掉电方式是通过对SR中的PC(地址87H)相应位置1而启动的.当CPU执行完置IDL1(PCON1)的指令后,系统进入空闲工作方式.这时,内部时钟不向C提供,而只供给中断、串行口、定时器部分.CU的内部状态维持,即包括堆栈指针P、程序计数器PC、程序状态字PSW、累加器AC所有的内容保持不变,端口状态也保持不变。ALE和N保持逻辑高电平.当CPU执行一条置PCON.1位(PD)为的指令后,系统进入掉电工作方式。在这种工作方式下,内部振荡器停止工作。由于没有振荡时钟,因此,所有的功能部件都停止工作。但内部RA区和特殊功能寄存器的内容被保留,而端口的输出状态值都保存在对应的FR中,ALE和

16、SE都为低电平。2。PC与DPTR各有哪些特点?有何异同?答:(1)程序计数器C作为不可寻址寄存器的特点程序计数器PC是中央控制器申最基本的寄存器,是一个独立的计数器,存放着下一条将程序存储器中取出的指令的地址。 程序计数器PC变化的轨迹决定程序的流程.程序计数器的宽度决定了程序存储器可以寻址的范围。 程序计数器C的基本工作方式有: 程序计数器PC自动加。这是最基本的工作方式,也是这个专用寄存器被称为计数器的原因。 执行条件或无条件转移指令时,程序计数器将被置入新的数值,程序的流向发生变化.变化的方式有下列几种:带符号的相对跳转JM、短跳转AM、长跳转LJP及JM +DPR等。 在执行调用指令

17、或响应中断时: 的现行值,即下一条将要执行的指令的地址送入堆栈,加以保护; 将子程序的入口地址或者中断矢量地址送入PC,程序流向发生变化,执行子程序或中断服务程序; 子程序或中断服务程序执行完毕,遇到返回指令RT或RTI时,将栈顶的内容送到PC寄存器中,程序流程又返回到原来的地方,继续执行。 (2)地址指针DTR的特点 地址指针DTR的特点是,它作为片外数据存储器寻址用的地址寄存器(间接寻址)。 (3)地址指针PTR与程序计数器PC的异同 相同之处: 两者都是与地址有关的、6位的寄存器。其中,PC与程序存储器的地址有关,而 DTR与数据存储器的地址有关。 作为地址寄存器使用时,C与PTR都是通

18、过P0和P2口(作为6位地址总线)输 出的。但是,P的输出与AL及SEN有关;PTR的输出,则与ALE、RD及W相联系。 不同之处: C只能作为16位寄存器对待,由于有自动加1的功能,故又称为计数器; DPTR可以作为6位寄存器对待,也可以作为两个8位寄存器对待. PC是不可以访问的,有自己独特的变化方式,它的变化轨迹决定了程序执行的流程; DT是可以访问的,如V PTR,XXXXH,INT。3. 8C51端口锁存器的“读修改写操作与“读引脚”操作有何区别?答:指令系统中有些指令读锁存器的值, 有些指令则读引脚上的值.读锁存器指令是从锁存器中读取一个值并进行处理,把处理后的值(原值或已修改后的

19、值)重新写入锁存器中。这类指令称为读修改写指令。 对于读修改写指令.直接读锁存器而不是读端口引脚,是因为从引脚上读出的数据不一定能真正反映锁存器的状态。第三章、 指令:PU根据人的意图来执行某种操作的命令指令系统:一台计算机所能执行的全部指令集合机器语言:用二进制编码表示,计算机能直接识别和执行的语言汇编语言:用助记符、符号和数字来表示指令的程序语言高级语言:独立于机器的,在编程时不需要对机器结构及其指令系统有深入了解的通用性语言、见第1题3、简述8的汇编指令格式。答: 操作码 目的操作数 ,源操作数4、简述5的寻址方式和所能涉及的寻址空间。 寻址方式寻址空间立即数寻址程序存储器ROM直接寻址

20、片内RAM低128、特殊功能寄存器寄存器寻址工作寄存器RR7、A、C、DPTR寄存器间接寻址片内AM低128B、片外AM变址寻址程序存储器(PC,+DP)相对寻址程序存储器26范围(P+偏移量)位寻址片内RA的20H2FH字节地址、部分SFR5、访问特殊功能寄存器和外数据存储器,应采用那些寻址方式?答: S:直接寻址,位寻址,寄存器寻址;片外A:寄存器间接寻址、8951中已知()=38H,请分析以下各是什么指令,说明源操作数的寻址方式以及执行结果. MOV A,4H ;直接寻址(40)A R0,A;寄存器寻址(A)R0 MOV P1,F0H;立即数寻址00P1 MO 0,30H;直接寻址(30

21、) () MO PR,#3848H;立即数寻址 384HDPTR MOV 0H,38;直接寻址 (38H) 40H MO R0,30H;直接寻址 () 0 MV P0,R;寄存器寻址(0 )P0 MOV 18H,30 ;立即数寻址3H1 MOV A,R0 ;寄存器间接寻址 (R0) MV P2,1 ;直接寻址 (P1)P最后结果:(R)3H,(A)=40H,(P0)=3,(P)(P2)=0FH,(DPTR)848H,(18H)=3H,(30H)=38,(38H)=0H,(4H)40H,(4H)=38注意:左边是内容,右边是单元、895片内高28字节的地址寻址要注意什么/?答: 用直接寻址,位寻

22、址,寄存器寻址8、指出些列指令的本质?MV A,DATA;直接寻址2字节周期MV ,DATA;立即数寻址2字节1周期MOV DTA1,DT;直接寻址3字节周期OVH,78;立即数寻址字节2周期如果想查某一指令的机器码,字节数或周期数可查阅书本后面的附录、设R的内容分为32H,A的内容为48H,。.。请指出在执行下列程序段后上述各单元内容的变化?MVA,R;(R0))=80HMOV,40;(40)=08H(R)MO40H,;()=00HMOR0,#3;HR0最后结果:(R0)=35H (A)80,(32H)=8H,(40H)0H10、如何访问,可采用那些寻址方式?答:用直接寻址,位寻址,寄存器寻

23、址11、如何访问片外RA,可使用那些寻址方式?答:只能采用寄存器间接寻址(用指令)2、如何访问片内RAM,可使用那些寻址方式?答:低18字节:直接寻址,位寻址,寄存器间接寻址,寄存器寻址(R0R7)高18字节:直接寻址,位寻址,寄存器寻址、如何访问片内外程序存储器,可使用那些寻址方式?答:采用变址寻址(用MOV指令)14、说明十进制调整的原因和方法?答:压缩BC码在进行加法运算时应逢十进一,而计算机只将其当作十六进制数处理,此时得到的结果不正确。用DA A指令调整(加6H,60H,6H)15、说明91布尔机处理机功能?答:用来进行位操作16、AL A,1H ;837H=03HAORL 1,A

24、;30H=3717HXRL A,0 ;3H37=34HCL A ;34H求反等于BH所以()=CBH1、()SETB C0或ST E0H ;E0是累加器的地址(2)CLR ACC.7 CLR ACC C AC.5 CLR ACC.4(3)LR C。 CL CC。5 LR ACC.4 CRC。3 8、MOV 7H,R7MOV H,R6MOV 2H,RO 24H,R4MV 23H,R3V 22H,R2MOV 21,1MOV 2H,R019、MOV 2F,20 V 2EH,1 MV DH,20、编程,进行两个6位数的减法:6F5H-1B4H,结果存入内部R的3和31H单元,0H存低八位。CLR MO

25、V ,5DH ;被减数的低8位AMOV R2,#B4H ;减数低8位R2B ,R2 ;被减数减去减数,差MOV 30H,A ;低8位结果30HM A,#6FH ;被减数的高8位AMV R2,H ;减数高8位2SUB A,2 ;被减数减去减数,差AMO 1H,A ;高8位结果30H注意:如果在你的程序中用到了进位位,在程序开始的时候要记得清0进位位1、编程,若累加器A满足下列条件,则程序转至LAEL存储单元,设A中为无符号数。(1)10CJE A,#AH,1 ;(A)与1比较,不等转L1JP LABEL ;相等转ABEL1:NC LABE ;(A)大于10,转LABL或者:CLR CSUBB A

26、,0N ABL()A10CNE A,0AH,1 ;(A)与比较,不等转LRT ;相等结束1:JN LABEL ;(A)大于10,转ABEL ET ;(A)小于10,结束或者:RCSUBB ,0AHJNC L1REL1:NZLALRT()CNE ,0AH,L1 ;(A)与0比较,不等转LL:JM LBE ;相等转LAL1:JC L2 ;(A)小于10,转LRT或者:LR CSUBB A,AHJC ABELJ LBERET2、(SP)=2H,(PC)=3412H参看书上80页23、(SP)=27H,(26H)=48H,(H)=3,(PC)3456H参看书上7页2、不能.ACAL是短转指令,可调用的

27、地址范围是2K。在看这个题的时候同时看一下JMP指令。同时考虑调用指令CLL和LCA指令和RET指令的关系。25、 编程,查找内部RM中2H-50H单元中是否有0AAH这一数据,若有则将51单元置为01H,如无,则将5H单元清零。 M R,31H ;数据块长度R2 MOV 0,#20H ;数据块首地址0LOP:MV A,0 ;待查找的数据A L ;清进位位 SBB ,AAH ;待查找的数据是吗 J 1 ;是,转L1 C R0 ;不是,地址增,指向下一个待查数据 DJNZ,LOOP ;数据块长度减1,不等于0,继续查找 MO 51H,00 ;等于0,未找到,005 RET L:MO 51,01H

28、 ;找到,0H5 ET2、编程查找内部AM的20H50H单元中出现0的次数并将结果存入1H中。 MV R2,#1H ;数据块长度R2 R0,H ;数据块首地址R0LO:MOV A,R0 ;待查找的数据 JNZ L1 ;不为,转L IN 1H ;为,00H个数增 L1:N 0 ;地址增1,指向下一个待查数据 JNZ R2,LOOP ;数据块长度减,不等于,继续查找 RET、外部数据AM中有一个数据块,首地址为OURCE,要求将该数据传送到内部RM以DIST开头的区域在,直到遇到数字字符¥时结束。 MOV PTR,#UR ;源首地址DPR MOV R,DIST ;目的首地址0 OOP:MOV A,

29、DTR ;传送一个字符 MOV 0,A IC DPTR ;指向下一个字符 NCR CJE A,#24,LOO ;传送的是“字符吗?不是,传送下一个字符 T、 已知R3和R4中存有一个十六位的二进制数,高位在中,低位在4中,编程求其补,并存回原处。 MO ,R3 ;取该数高8位 A ,#0H ;取出该数符号判断 Z L1 ;是正数,转L1 OV A,R4 ;是负数,将该数低8位A CPL A ;低8位取反 AD ,#01H ;加1 MOV R4, ;低位取反加1后R MV A,R ;将该数高8位A CPL ;高8位取反 ADDC A,00H ;加上低8位加时可能产生的进位 MO 3,A ;高位取

30、反加1后R3 L1: T9、已知0H和1H中存有一个十六位的二进制数,高位在前,低位在后,编程将它们乘2,并存回原处. CL ;清进位位C MO A,31H ;取该数低8位A LC ;带进位位左移1位 M 31H,A ;结果存回31H MV ,0 ;取该数高8位A RLC A ;带进位位左移1位 MV 30H,A ;结果存回3H30、 内存中有两个4字节以压缩的CD码形式存放的十进制数,一个放在30-3的单元中,一个放在40H43H的单元中,编程求他们的和,结果放在30H-的单元中. MOV 2,4 ;字节长度 OV R,#0H ;一个加数首地址R0 OV R1,#4H ;另一个加数首地址R1

31、 LR C ;清进位位OP:MOV A,R0 ;取一个加数 ADD ,R1 ;两个加数带进位位相加 A ;十进制调整 V ,A ;存放结果 IC R0 ;指向下一个字节 IC R1 ; D R2,LOOP ;数据块长度减1,不等于0,继续查找 RET3、编程,把片外RM从200H开始存放的个数传送到片内0H开始的单元中。 MOV R,08 ;数据块长度2 O 0,#30H ;数据块目的地址R0 OV P,#200 ;数据块源地址DPRLOP:MOV A, DPTR ;传送一个数据 MO 0,A I PR ;指向下一个数据 IC R ; DJZ R2,O ;数据块长度减,没传送完,继续传送 R3

32、、解:(10H)=53 (100H)=4 (102H)41H (100H)=52H (04)4 (105H)=12H (06H)34H (07H)=30H (08)=00H (9H)=7036、阅读下列程序说明其功能O R,H ;0HRMO A,0 ;9AINC R0 ;41H0A A,R ;98H+(41)=47HAIC R MOV R0,A ;结果存入42H单元LR A ;清DDC A,0 ;进位位存入AI R0 MOV R0,A ;进位位存入43H功能:将4H,4H单元中的内容相加结果放在2H单元,进位放在43H单元,()=43H,()=1,(4)=98H,(41H)=F,(4)47H,

33、(43H)=1H37、同上题 OV A,61 ;A MO B,02H ;02H LAB ;F2HO2H=E4H AD ,6 ;积的低8位加上CCHA OH,A ;结果送62 CLR A ;清A ADC ,B ;积的高8位加进位位A OV 64H,A ;结果送4H功能:将6H单元的内容乘2,低8位再加上62H单元的内容放入63H,将结果的高8位放在4H单元.()=,(B)01H,(6)=F2H,(H)=CC,(63H)=B0H,(6)=2H39、V A,XHR A,#0HMVXX,0、(2)OV A,XH MV ,A XR ,0第五章1、什么是中断和中断系统?其主要功能是什么?答:当CU正在处理

34、某件事情的时候,外部发生的某一件事件请求CPU迅速去处理,于是,CPU暂时中止当前的工作,转去处理所发生的事件,中断服务处理完该事件以后,再回到原来被终止的地方,继续原来的工作。这种过程称为中断,实现这种功能的部件称为中断系统。功能:(1) 使计算机具有实时处理能力,能对外界异步发生的事件作出及时的处理() 完全消除了CP在查询方式中的等待现象,大大提高了CPU的工作效率(3) 实现实时控制、试编写一段对中断系统初始化的程序,使之允许INT0,INT,T,串行口中断,且使T0中断为高优先级中断。解:MV I,#09H MO IP,#0H3、在单片机中,中断能实现哪些功能?答:有三种功能:分时操

35、作,实时处理,故障处理、891共有哪些中断源?对其中端请求如何进行控制?答:(1)89C51有如下中断源 :外部中断0请求,低电平有效 :外部中断1请求,低电平有效T0:定时器、计数器0溢出中断请求T1:定时器、计数器1溢出中断请求TX/RX:串行接口中断请求(2)通过对特殊功能寄存器TON、SCON、IE、IP的各位进行置位或复位等操作,可实现各种中断控制功能、什么是中断优先级?中断优先处理的原则是什么?答:中断优先级是CPU相应中断的先后顺序。原则:(1)先响应优先级高的中断请求,再响应优先级低的(2) 如果一个中断请求已经被响应,同级的其它中断请求将被禁止(3) 如果同级的多个请求同时出

36、现,则PU通过内部硬件查询电路,按查询顺序确定应该响应哪个中断请求查询顺序:外部中断0定时器0中断外部中断1定时器1中断串行接口中断6、说明外部中断请求的查询和响应过程。答:当P执行主程序第K条指令,外设向CU发出中断请求,P接到中断请求信号并在本条指令执行完后,中断主程序的执行并保存断点地址,然后转去响应中断。CU在每个SP2期间顺序采样每个中断源,CPU在下一个机器周期6期间按优先级顺序查询中断标志,如果查询到某个中断标志为1,将在接下来的机器周期S1期间按优先级进行中断处理,中断系统通过硬件自动将相应的中断矢量地址装入P,以便进入相应的中断服务程序。中断服务完毕后,CPU返回到主程序第K

37、+1条指令继续执行。、89C51在什么条件下可响应中断? 答:() 有中断源发出中断请求 () 中断中允许位E1即CU开中断(3) 申请中断的中断源的中断允许位为1,即中断没有被屏蔽(4)无同级或更高级中断正在服务(5) 当前指令周期已经结束() 若现行指令为RTI或访问E或IP指令时,该指令以及紧接着的另一条指令已执行完毕8、简述91单片机的中断响应过程。答:P在每个机器周期S2期间顺序采样每个中断源,CU在下一个机器周期S6期间按优先级顺序查询中断标志,如查询到某个中断标志为1,将在接下来的机器周期1期间按优先级进行中断处理,中断系统通过硬件自动将相应的中断矢量地址装入PC,以便进入相应的

38、中断服务程序.一旦响应中断,8951首先置位相应的中断“优先级生效触发器,然后由硬件执行一条长调用指令,把当前的P值压入堆栈,以保护断点,再将相应的中断服务的入口地址送入PC,于是CU接着从中断服务程序的入口处开始执行。对于有些中断源,CP在响应中断后会自动清除中断标志。9、在8951内存中,应如何安排程序区?答:主程序一般从0030H开始,主程序后一般是子程序及中断服务程序。在这个大家还要清除各个中断的中断矢量地址。1、试述中断的作用及中断的全过程。答:作用:对外部异步发生的事件作出及时的处理 过程:中断请求,中断响应,中断处理,中断返回11、当正在执行某一个中断源的中断服务程序时,如果有新

39、的中断请求出现,试问在什么情况下可响应新的中断请求?在什么情况下不能响应新的中断请求?答:()符合以下个条件可响应新的中断请求:a)有中断源发出中断请求b)中断允许位EA=1,即CU开中断c)申请中断的中断源的中断允许位为1,即中断没有被屏蔽 d)无同级或更高级中断正在被服务e)当前的指令周期已结束)若现行指令为ETI或访问IE或IP指令时,该指令以及紧接着的另一条指令已被执行完2、895单片机外部中断源有几种触发中断请求的方法?如何实现中断请求?答:有两种方式:电平触发和边沿触发电平触发方式:在每个机器周期的S5P2期间采样外部中断引脚的输入电平.若为低电平,使IE1(IE0)置“”,申请中

40、断;若为高电平,则I1(IE0)清零。边沿触发方式:PU在每个机器周期S5P2期间采样外部中断请求引脚的输入电平。如果在相继的两个机器周期采样过程中,一个机器周期采样到外部中断请求为高电平,接着下一个机器周期采样到外部中断请求为低电平,则使IE1(0)置“1”申请中断;否则,IE1(IE0)置0。、89C5单片机有五个中断源,但只能设置两个中断优先级,因此,在中断优先级安排上受到一定的限制。试问以下几种中断优先顺序的安排(级别由高到低)是否可能:若可能,则应如何设置中断源的中断级别:否则,请简述不可能的理由。 定时器,定时器1,外中断0,外中断1,串行口中断。 可以,MV IP,0AH 串行口

41、中断,外中断0,定时器0,外中断1,定时器1。 可以,MOV IP,1H 外中断,定时器1,外中断1,定时器,串行口中断。 不可以,只能设置一级高级优先级,如果将NT,1设置为高级,而0级别高于IT1. 外中断0,外中断,串行口中断,定时器0,定时器. 可以,MOV IP,#15H 串行口中断,定时器0,外中断0,外中断1,定时器1。 不可以 外中断,外中断1,定时器0,串行口中断,定时器1。 不可以 外中断0,定时器1,定时器,外中断1,串行口中断。 可以,MOV IP,#09H14、89C51各中断源的中断标志是如何产生的?又是如何清0的?CPU响应中断时,中断入口地址各是多少?答:各中断

42、标志的产生和清“0”如下:(1) 外部中断类外部中断是由外部原因引起的,可以通过两个固定引脚,即外部中断0和外部中断1输入信号。外部中断0请求信号,由P3脚输入。通过I来决定中断请求信号是低电平有效还是下跳变有效。一旦输入信号有效,则向CPU申请中断,并且使IE0=1。硬件复位。外部中断请求信号,功能与用法类似外部中断(2) 定时中断类定时中断是为满足定时或计数溢出处理需要而设置的。当定时器/计数器中的计数结构发生计数溢出的,即表明定时时间到或计数值已满,这时就以计数溢出信号作为中断请求,去置位一个溢出标志位。这种中断请求是在单片机芯片内部发生的,无需在芯片上设置引入端,但在计数方式时,中断源

43、可以由外部引入。TF0:定时器T0溢出中断请求.当定时器T0产生溢出时,定时器T0请求标志TF0=1,请求中断处理.使用中断时由硬件复位,在查询方式下可由软件复位。TF1:定时器T1溢出中断请求。功能与用法类似定时器T() 串行口中断类串行口中断是为串行数据的传送需要而设置的.串行中断请求也是在单片机芯片内部发生的,但当串行口作为接收端时,必须有一完整的串行帧数据从RI端引入芯片,才可能引发中断.I或TI:串行口中断请求。当接收或发送一串帧数据时,使内部串行口中断请求标志RI或TI=1,并请求中断.响应后必须软件复位。CPU响应中断时,中断入口地址如下: 中断源 入口地址外部中断0 000H定

44、时器T0中断 0B外部中断 0013H定时器T1中断 BH串行口中断 023H5、中断响应时间是否为确定不变的?为什么?答:中断响应时间不是确定不变的.由于CPU不是在任何情况下对中断请求都予以响应的;此外,不同的情况对中断响应的时间也是不同的。下面以外部中断为例,说明中断响应的时间.在每个机器周期的S5P2期间, 端的电平被所存到TCN的I0位,CPU在下一个机器周期才会查询这些值。这时满足中断响应条件,下一条要执行的指令将是一条硬件长调用指令“LAL,使程序转入中断矢量入口.调用本身要用2个机器周期,这样,从外部中断请求有效到开始执行中断服务程序的第一条指令,至少需要3个机器周期,这是最短

45、的响应时间。如果遇到中断受阻的情况,这中断响应时间会更长一些。例如,当一个同级或更高级的中断服务程序正在进行,则附加的等待时间取决于正在进行的中断服务程序:如果正在执行的一条指令还没有进行到最后一个机器周期,附加的等待时间为13个机器周期;如果正在执行的是RETI指令或者访问E或P的指令,则附加的等待时间在个机器周期内。若系统中只有一个中断源,则响应时间为38个机器周期。16、中断响应过程中,为什么通常要保护现场?如何保护?答:因为一般主程序和中断服务程序都可能会用到累加器,PW寄存器及其他一些寄存器。CP在进入中断服务程序后,用到上述寄存器时,就会破坏它原来存在寄存器中的内容;一旦中断返回,

46、将会造成主程序的混乱。因而在进入中断服务程序后,一般要先保护现场,然后再执行中断处理程序,在返回主程序以前再恢复现场。保护方法一般是把累加器、PSW寄存器及其他一些与主程序有关的寄存器压入堆栈。在保护现场和恢复现场时,为了不使现场受到破坏或者造成混乱,一般规定此时U不响应新的中断请求。这就要求在编写中断服务程序时,注意在保护现场之前要关中断,在恢复现场之后开中断.如果在中断处理时允许有更高级的中断打断它,则在保护现场之后再开中断,恢复现场之前关中断.7、清叙述中断响应的CPU操作过程,为什么说中断操作是一个CPU的微查询过程?答:在中断响应中,CPU要完成以下自主操作过程:a)置位相应的优先级

47、状态触发器,以标明所响应中断的优先级别 b)中断源标志清零(、RI除外)c)中断断点地址装入堆栈保护(不保护PW)d)中断入口地址装入PC,以便使程序转到中断入口地址处在计算机内部,中断表现为CPU的微查询操作.9C1单片机中,CU在每个机器周期的S6状态,查询中断源,并按优先级管理规则处理同时请求的中断源,且在下一个机器周期的状态中,响应最高级中断请求.但是以下情况除外:a) CPU正在处理相同或更高优先级中断b)多机器周期指令中,还未执行到最后一个机器周期c)正在执行中断系统的SFR操作,如RET指令及访问IE、IP等操作时,要延后一条指令、在中断请求有效并开中断状况下,能否保证立即响应中

48、断?有什么条件?答:在中断请求有效并开中断状况下,并不能保证立即响应中断。这是因为,在计算机内部,中断表现为U的微查询操作。89C5单片机中,CU在每个机器周期的S6状态下,查询中断源,并按优先级管理规则处理同时请求的中断源,且在下一个机器周期的1状态中,响应最高级中断请求。在以下情况下,还需要有另外的等待:a) CPU正在处理相同或更高优先级中断)多机器周期指令中,还未执行到最后一个机器周期c)正在执行中断系统的SR操作,如RE指令及访问IE、P等操作时,要延后一条指令第6章习题答案1、定时器模式2有什么特点?适用于什么场合?答:()模式把TL(或TL1)配置成一个可以自动重装载的8位定时器

49、/计数器。T0计数溢出时不仅使溢出中断标志位TF0置1,而且还自动把H0中的内容重新装载到L中。TL用作8位计数器,TH用以保存初值.(2)用于定时工作方式时间(F0溢出周期)为 ,用于计数工作方式时,最大计数长度(H初值=)为8=25个外部脉冲。这种工作方式可省去用户软件重装初值的语句,并可产生相当精确定时时间,特别适于作串行波特率发生器。2、单片机内部定时方式产生频率为100KHZ等宽矩形波,假定单片机的晶振频率为12MHZ,请编程实现。答: 0低5位:1BHT高8位:FFHOV TMOD,0H ;设置定时器T0工作于模式0MO L0,1H ;设置定时初值MOV TH,#0FFHETB TR ;启动T0OOP:JC T0,1;查询到定时时间到?时间到转L1SJP OO ;时间未到转LOOP,继续查询L1:MOV TL0,#1H;重新置入定时初值MOV H0,#FCPL P1.0 ;输出取反,形成等宽矩形波SMP LOOP ;重复循环3、895定时器有哪几种工作模式?有何区别?答:有四种工作模式:模式0,模式1,模式,模式(1) 模式0:选择定时器的高8位和低5位组成一个13位定时器/计数器。TL低5位溢出时向TH进位,H溢出时向中断标志位TF进位,并申请中断。定时时间t(2初值)振荡周期1;计数长度

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!