单片机答案第5章 高峰版
单片机第五章作业答案
![单片机第五章作业答案](https://img.taocdn.com/s3/m/f6f3fcc1227916888586d706.png)
5.试编制一个子程序将字符串^MCS-51 Microcomputer^装入外部RAM8000H 开始的显示 缓冲区。
ORG 0000HAJMP0030HMIAN :MOV DPTR, #800011MOV Rl, #0MOV R0, #20LOOP :MOV A,R1ADD A, #5MOVCA, @A+PCMOVX ©DPTR, A ;1BINC DPTR ;1BINCR1 ;1BDJNZR0, LOOP;3BTAB :DBC' ,‘ S' / -,,‘ 5,,99• c ,‘ r ,, 'o'DB"J9999o t m t 999p , u , END6.试设计一个n 字节的无符号十进制数加法子程序,其功能为将(R0)和(R1)指出的内 部RAM中两个n 字节压缩BCD 码无符号十进制数相加,结果存放于被加数单元中。
子程 序入口时,RO, R1分别指向被加数和加数的低位字节,字节数n 存于R2,出口时R0指 向和的最高位字节.CY 为进位位。
其功能为判断(R2R3R4R5)中压缩BCD 码十进制最高位是否为零.若 最高位为0,且该十进制数不为0,则通过左移使最高位不为0。
ORG 0000H AJMP MAINLENMAIN :EQU 30 ORG 0000H AJMPMAINORG 0030HMOV SP. #60H MOV R2, #LEN ACALL ADD NBYTE SJMP$ CLR c MOV A, @R0 ADDC A. @R1 DAAMOV @R0, AINC R0 INC R1 DJNZ R2. LOOPRETEND试设计一个程序. ADD NBYTE : LOOP :ORG 0030HMAIN:MOV A. R2ANL A. #80HJNZ NEXTCLR CLOOP:MOV A, R5RLC AMOV R5, AMOV A, R4RLC AMOV R4, AMOV A, R3RLC AMOV R3, AMOV A, R2RLC AMOV R2, AANL A, #80HJZ LOOPNEXT:SJMP $END9.试设计一个双字节无符号整数乘法子程序,其功能为将(R3R2)和(R5R4)相乘,积存放于30H~33H。
单片机原理与应用及C51程序设计第5章习题答案
![单片机原理与应用及C51程序设计第5章习题答案](https://img.taocdn.com/s3/m/a2b8665d168884868762d6c3.png)
第5章习题答案5-1 什么叫中断系统?中断系统的功能是什么?什么是中断嵌套?答:当CPU正在执行主程序时,外部或内部发生的某一事件(如某个引脚上电平的变化、一个脉冲的发生或计数器的计数溢出等)请求CPU迅速处理,CPU暂时中断当前程序的执行而转去执行相应的处理程序,待处理程序执行完毕后,CPU再继续执行原来被中断的程序,这样的过程称为中断。
功能:中断系统是为使CPU 具有对单片机外部或内部随机发生的事件进行实时处理而设置的。
中断嵌套:8051设置了两级中断优先级,低优先级中断请求不能打断高优先级的中断服务;但高优先级中断请求可以打断低优先级的中断服务,从而实现中断嵌套。
5-2 MCS-51型单片机各中断源的中断标志是如何产生的?又是如何清除的?CPU响应中断时,中断入口地址各是多少?答:见p133;.或端出现有效中断请求时,IE0 IE1)位由硬件置“1”。
当中断响应当CPU采样到IE0IE1完成转向中断服务程序时,由硬件把IE0(或IE1)清零。
TF0和TF1——计数溢出标志位,当计数器产生计数溢出时,相应的溢出标志位由硬件置“1”。
当转向中断服务时,再由硬件自动清“0”。
TI:串行发送中断标志。
CPU将数据写入发送缓冲器SBUF时就启动发送,每发送完一帧后,硬件将TI置位,必须由软件清0.RI:串行接收中断标志。
串口允许接收时,每接收完一帧后,硬件将RI置位,必须由软件清0.地址分别为:0003H,000bH0013H,001BH,0023H5-3:在MCS-51型单片机中,哪些中断标志可以在响应自动撤除。
见第二题,也可见P136;5-4答:见p136.5-5:解:PX1=1;IT1=0;PT1=0;PS=1;EA=1;ES=1;ET1=1;EX1=1;ET0=0;EX0=0;5-6解:两个,它由模式设置寄存器TMOD,中断控制寄存器IE,中断优级级寄存器IP,中断标志寄存器TCON组成5-8 请叙述TMOD=A6H所代表的含义。
单片机第五章习题部分答案
![单片机第五章习题部分答案](https://img.taocdn.com/s3/m/0b89a4676bec0975f565e2b8.png)
1. P0口用作输出端口时,输出级为漏极开路电路,在驱动NMOS电路及TTL电路时应外接上拉电阻(用作输入时与其他三个端口一样,在输入之前,都需要先向端口写“1”)。
P0口除用作I/O口外,还用作外部地址总线(用于送出16位地址的低8位)和外部数据总线。
3. P2口除用作I/O口外,还用外部地址总线(用于送出16位地址的高8位)。
4. P3口各口线的第二功能:P3.0——RXD,串行数据接收;P3.1——TXD,串行数据发送;P3.2——(INT0)’,外部中断0中断请求信号输入端;P3.3——(INT1)’,外部中断1中断请求信号输入端;P3.4——T0,定时器/计数器T0外部计数脉冲输入;P3.5——T1,定时器/计数器T1外部计数脉冲输入;P3.6——(WR)’,外部数据存储器写选通信号;P3.7——(RD)’,外部数据存储器读选通信号。
5. 优点:方便灵活,不需专门电路,改变逻辑关系只需重新编程即可。
缺点:延迟大。
6. 读-改-写指令:先读端口,然后对读入的数据进行修改,最后再写回到端口,这类指令称为读-改-写指令。
读-改-写指令不直接读取引脚上的数据而读锁存器Q端内容是为了消除错读错电平的可能性。
例如,用一根口线去驱动一个晶体管的基极,当向该端口写1时,晶体管导通,并把引脚上的电平拉低。
这时若从引脚读数据,将读回0,而实际输出的是1。
输出数据在锁存器中保存着,从锁存器的Q端读取,可以得到正确的结果。
7. 对端口的读-改-写指令,读的是端口锁存器,其他需要读端口的指令,读的是引脚。
(1)MOV C,P1.0;读引脚(2)MOV P1,#55H;写端口指令(3)PUSH P2;读引脚(4)INC P1;读锁存器(5)XRL P1,#01H;读端口锁存器(6)SETB P3.2;读端口锁存器(7)JBC P1.7,NEXT;读端口锁存器(8)JNB P3.2,$;读引脚8. 简单并行输出口的扩展方法:使用1片锁存器芯片,锁存器的数据输入端直接与单片机的P0口连接,单片机的(WR)’信号与锁存器的锁存脉冲信号,可用外部地址总线的高8位的某些位作为锁存器的片选(选通)信号。
单片机原理及接口技术课后习题答案(五)
![单片机原理及接口技术课后习题答案(五)](https://img.taocdn.com/s3/m/c6beb149dcccda38376baf1ffc4ffe473368fd96.png)
单片机原理及接口技术课后习题答案(五)第 5 章1.简述中断、中断源、中断优先级及中断嵌套的含义。
答:①中断:中断是指计算机在执行某一程序的过程中, 由于计算机系统内、外的某种原因, 而必须中止原程序的执行, 转去执行相应的处理程序, 待处理结束之后, 再回来继续执行被中止的原程序的过程。
(采用了中断技术后的计算机, 可以解决CPU与外设之间速度匹配的问题, 使计算机可以及时处理系统中许多随机的参数和信息, 同时, 它也提高了计算机处理故障与应变的能力。
)②中断源:中断源是指在计算机系统中向CPU发出中断请求的来源。
(中断可以人为设定, 也可以是为响应突发性随机事件而设置。
通常有I/O设备、实时控制系统中的随机参数和信息故障源等。
)③中断优先级:中断优先级越高, 则响应优先权就越高。
当CPU正在执行中断服务程序时, 又有中断优先级更高的中断申请产生, 这时CPU就会暂停当前的中断服务转而处理高级中断申请, 待高级中断处理程序完毕再返回原中断程序断点处继续执行, 这一过程称为中断嵌套。
2.MCS-51单片机提供几个中断源?几个中断优先级?答:提供5个中断源,分两个优先级。
3.简述TCON、SCON、IE、IP 4个特殊功能寄存器各位的定义及功能。
答:①TCON:TFi:内部定时器i溢出标志位,硬件置位,进入中断后硬件自动清除。
TRi:内部定时器i运行控制位,软件置位或清除。
IEi:外部中断i请求标志位,硬件置位,进入中断后硬件自动清除。
ITi:外部中断i类型控制位,由软件设置或清除。
ITi=1时是下降沿触发;ITi=0时是低电平触发。
(i=0、1)②SCON:TI:串行口发送中断标志位。
发送完一帧数据后,硬件置位TI,CPU响应中断后,应由软件清除TI。
RI:串行口接收中断标志位。
接收完一帧数据后,硬件置位RI,CPU响应中断后,应由软件清除RI。
③ IE:EA:中断总允许位。
EA=0,禁止一且中断,EA=1,是否允许中断由下各位定。
《单片机原理与应用开发技术》第五章习题答案
![《单片机原理与应用开发技术》第五章习题答案](https://img.taocdn.com/s3/m/4e8db244a8956bec0975e37e.png)
《单片机原理与应用开发技术》第五章习题答案(P137-138):4. 答:串行口有四种工作方式:方式0、方式1、方式2、方式3。
有三种帧格式:8位、10位、11位。
串行口的4种工作方式对应三种波特率模式。
方式0:波特率是固定的,为f osc /12。
方式2:波特率由振荡频率f osc 和SMOD(PCON.7)所决定。
对应公式为波特率 = 2SMOD *f osc /64,当SMOD=0时,波特率为f osc /64;当SMOD=1时,波特率为f osc /32。
方式1和方式3:波特率由定时器/计数器T1的溢出率和SMOD 决定,即由下式确定:波特率 = 2SMOD *定时器/计数器T1溢出率 /32 。
= 6. 答:当定时器/计数器为定时工作方式时,其计数脉冲由振荡器的12分频信号产生,即每过一个机器周期,计数器加1,直至计满溢出为止。
定时时间与系统的振荡频率、定时器/计数器工作模式和计数初值有关,t=(M -初值)*振荡周期*12 。
10. 设晶振频率为6MHz ,即机器周期为2μs 。
占空比(正脉冲持续时间:脉冲总周期)为1:10,即正脉冲时间为40μs ,负脉冲时间360μs 。
初值分别如下:(28-X 1)* 2μs = 40μs)x 256(12f 322osc smod-⋅X1 = 28 - 20 = 236D = 0ECH(28-X2)* 2μs = 360μsX2 = 28 - 180 = 76D = 4CH主程序:MOV TMOD,#02H;设置T0为模式2,定时方式START: MOV TH0,#0ECH;T0定时40μs初值MOV TL0,#0ECHSETB P1.0 ;P1.0置1SETB TR0 ;启动T0定时40μsLOOP1: JBC TF0,LOOP2;查询溢出标志,定时到TF0=1转移,且TF0=0 SJMP LOOP1LOOP2: CLR TR0 ;停止计数MOV TH0,#4CH ;T0定时360μs初值MOV TL0,#4CHCLR P1.0 ;P1.0清0SETB TR0 ;启动T0定时360μsLOOP3: JBC TF0,LOOP4;查询溢出标志,定时到TF0=1转移,且TF0=0 SJMP LOOP3LOOP4: CLR TR0 ;停止计数SJMP START中断方式下?如:可以设一个标志,00,01,02,,,07,00则设P1.0为高,01-07设P1.0为低。
单片机原理及应用第五章课后题答案
![单片机原理及应用第五章课后题答案](https://img.taocdn.com/s3/m/0a82c42543323968011c928d.png)
第五章作业答案6. 当DAC 0832 D/A转换器的CS接8031的P2.0时,程序中0832的地址指针DPDR寄存器应置为(D)。
A:0832H B;FE00H C:FEF8H D;以上三种都可以10.简述D/A转换器的主要技术指标。
解:D/A转换器的主要性能指标有:(1)分辨率:单位数字量所对应模拟量增量,即相邻两个二进制码对应的输出电压之差称为D/A转换器的分辨率。
它确定了D/A产生的最小模拟量变化,也可用最低位(LSB)表示。
(2)精度:精度是指D/A转换器的实际输出与理论值之间的误差,它是以满量程V FS 的百分数或最低有效位(LSB)的分数形式表示。
(3)线性误差:D/A转换器的实际转换特性(各数字输入值所对应的各模拟输出值之间的连线)与理想的转换特性(始、终点连线)之间是有偏差的,这个偏差就是D/A的线性误差。
即两个相邻的数字码所对应的模拟输出值(之差)与一个LSB所对应的模拟值之差。
常以LSB的分数形式表示。
(4)转换时间T S(建立时间):从D/A转换器输入的数字量发生变化开始,到其输出模拟量达到相应的稳定值所需要的时间称为转换时间。
22.具有8位分辨率的A/D转换器,当输入0~5V电压时,其最大量化误差是多少?解:对于8位A/D转换器,实际满量程电压为5V,则其量化单位1LSB=5V/256=0.0196V, 通常,A/D采用均匀量化,即每一量化层的输出都取该量化层的中值。
所以最大量化误差为(1/2)LSB,即0.0098V。
23.在一个80C51单片机与一片DAC0832组成的应用系统中,DAC0832的地址为7FFFH,输出电压为0~5V。
试画出有关逻辑电路图,并编写产生矩形波,其波形占空比为1:4,高电平为2.5V,低电平为1.25V的转换程序。
解:硬件电路连接图如图5.23所示。
图5.23 5.23题逻辑电路图DAC0832的口地址为7FFFH。
波形占空比为1:4,高电平波形时间/低电平波形时间为1/3。
单片机原理及接口技术第5章习题答案
![单片机原理及接口技术第5章习题答案](https://img.taocdn.com/s3/m/2af2b939376baf1ffc4fad45.png)
1、什么是中断和中断系统?其主要功能是什么?答:当CPU正在处理某件事情的时候,外部发生的某一件事件请求CPU迅速去处理,于是,CPU暂时中止当前的工作,转去处理所发生的事件,中断服务处理完该事件以后,再回到原来被终止的地方,继续原来的工作。
这种过程称为中断,实现这种功能的部件称为中断系统。
功能:(1)使计算机具有实时处理能力,能对外界异步发生的事件作出及时的处理(2)完全消除了CPU在查询方式中的等待现象,大大提高了CPU的工作效率(3)实现实时控制2、试编写一段对中断系统初始化的程序,使之允许INT0,INT1,TO,串行口中断,且使T0中断为高优先级中断。
解:MOV IE, #097HMOV IP, #02H3、在单片机中,中断能实现哪些功能?答:有三种功能:分时操作,实时处理,故障处理4、89C51共有哪些中断源?对其中端请求如何进行控制?答:(1)89C51有如下中断源①INT0:外部中断0请求,低电平有效②INT1:外部中断1请求,低电平有效③T0:定时器、计数器0溢出中断请求④T1:定时器、计数器1溢出中断请求⑤TX/RX:串行接口中断请求(2)通过对特殊功能寄存器TCON、SCON、IE、IP的各位进行置位或复位等操作,可实现各种中断控制功能5、什么是中断优先级?中断优先处理的原则是什么?答:中断优先级是CPU相应中断的先后顺序。
原则:(1)先响应优先级高的中断请求,再响应优先级低的(2)如果一个中断请求已经被响应,同级的其它中断请求将被禁止(3)如果同级的多个请求同时出现,则CPU通过内部硬件查询电路,按查询顺序确定应该响应哪个中断请求查询顺序:外部中断0→定时器0中断→外部中断1→定时器1中断→串行接口中断6、说明外部中断请求的查询和响应过程。
答:当CPU执行主程序第K条指令,外设向CPU发出中断请求,CPU接到中断请求信号并在本条指令执行完后,中断主程序的执行并保存断点地址,然后转去响应中断。
单片机课后答案第五章习题
![单片机课后答案第五章习题](https://img.taocdn.com/s3/m/7610d62fcfc789eb172dc813.png)
习题1.单片机C语言与汇编语言混合编程有哪几种方式?通常采用什么方式?答:单片机C语言和汇编语言混合编程分为汇编中调用C51函数和C51程序中引用汇编,通常使用的是在C51程序中引用汇编。
在C51程序中使用汇编语言有两种情况:一种是汇编程序部分和C51程序部分为不同的模块,或不同的文件,通常由C51程序调用汇编程序模块的变量和函数(也可称为子程序或过程);另一种是嵌入式汇编,即在C51程序中嵌入一段汇编语言程序。
2.简述C51程序调用汇编程序时如何实现参数传递。
答:C51中调用汇编程序进行参数传递时都必须严格遵守C51函数的参数和返回值的相关约定。
行参数传递的方式有两种,一种是通过寄存器传递参数,C51中不同类型的实参会存入相应的寄存器,在汇编中只需对相应寄存器进行操作,即可达到传递参数的目的;第二种是通过固定存储区传递。
3.简述嵌入式汇编的实现方法。
答:在C51程序中嵌入汇编程序通常的处理方法如下。
第一步:在C文件中以如下方式嵌入汇编程序。
第二步:在Keil C51软件的Project 窗口右击嵌入汇编程序的C文件,在弹出的快捷菜单中选择Options for ...命令,选中右边的Generate Assembler SRC File和Assemble SRC File复选框,使检查框由灰色变成黑色(有效)状态。
第三步:根据选择的编译模式,把相应的库文件(如 Small 模式时,是Keil\C51\Lib\C51S.Lib)加入到工程中,该文件必须作为工程的最后文件。
4.简述C51中调用汇编程序的实现方法。
答:编写为C51调用的汇编程序,参数须按规定的寄存器或存储器传送,程序格式有相应的规则,这些规则比较繁琐,为了便于处理,在实际中我们往往先用C51写出这个程序的主体,然后用SRC控制指令编译产生asm文件,修改这个asm文件得到我们所要的汇编函数。
处理过程具体如下。
第一步:先用C语言程序编写出程序框架,如文件名为a1.c(注意参数)。
单片机与嵌入式系统实践第五章 课后答案
![单片机与嵌入式系统实践第五章 课后答案](https://img.taocdn.com/s3/m/5271e7d8f61fb7360b4c65e1.png)
第五章课后答案1、答:(1)静态显示就是数码管的各笔划段都由具有锁存能力的I/O端口引脚驱动,单片机将段码写入锁存器并由其持续驱动每个数码管显示,到下一次段码更新之前数码管的显示不会发生改变。
(2)数码管的动态显示是通过程序轮流驱动每个数码管,控制数码管依次显示,并利用人眼的“视觉暂留”效应来实现的。
它特点是在同一时刻只允许一个数码管显示,多个数码管在极短的时间内依次显示一次完成一个显示周期的扫描。
2、答:数码管的本质是发光二极管,但在单片机芯片的端口驱动电流很小,一般为微安级别的,几乎无法驱动共阴型数码管,因而通常需要外面加锁存器或门电路以增强其驱动能力或者使用I/O口控制一个三极管的基极,利用三极管集电极输出增强驱动能力或者使用门电路来驱动LED发光3、答:液晶显示器中最主要的物质是液晶,其本身不发光,只是调节光的亮度。
目前,嵌入式系统中最常用的液晶显示器都是利用液晶的“扭曲—向列效应”原理制成的单色液晶显示器。
向列效应是一种电场效应,夹在两片导电玻璃电极之间的液晶经过一定处理,其内部的分子呈90°的扭曲,当线性的偏振光透过其偏振面时便会发生90°旋转。
当在玻璃电极加上电压后,在电场的作用下,液晶的扭曲结构消失,分子排列变得有秩序其旋光作用也消失,偏振光便可以直接通过;当去掉电场后液晶分子又恢复其扭曲结构,阻止光线通过。
如果把这样的液晶置于两个偏振片之间,改变偏振片相对位置(正交或平行),让液晶分子如闸门般地阻隔或让光线穿透,就可以得到白底黑字或黑底白字的显示形式。
4、答:1602LCD的VSS引脚为地电源。
VDD引脚接5V正电源。
VL引脚为液晶显示器对比度调整端。
RS引脚为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。
R/W 引脚为读写信号线,高电平时进行读操作,低电平时进行写操作。
E引脚为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。
D0~D7引脚为8位双向数据线。
单片机第五章习题解答(word文档良心出品)
![单片机第五章习题解答(word文档良心出品)](https://img.taocdn.com/s3/m/7e4d3554dd36a32d7275816d.png)
第五章单片机接口技术习题解答1.简述单片机系统扩展的基本原则和实现方法。
(1)以P0作数据/地址总线,此地址总线是系统总线的低8位。
(2)P2口作高8位地址总线。
(3)控制总线:使用ALE作为地址锁存选通信号,以实现低8位地址锁存。
以PSEN信号作为扩展程序存储器的读选通信号。
以EA信号作为片内或片外程序存储器的选择信号。
以WR和RD作为片外数据存储器的读/写选通信号,当执行片外数据存储器操作指令MOVX时,这两个信号分别自动生成。
2.如何构造MCS-51单片机的系统总线?单片机扩展时,为了便于与各种芯片相连接,应把单片机的外部总线变成一般微机所具有的三总线结构形式,即地址总线、数据总线、控制总线。
MCS-51单片机数据总线由P0口提供。
地址总线的低8位A7~A0由P0口经地址锁存储器提供,高8位A15~A8由P2口直接提供。
控制总线由P3口的第二功能扩展出读/写控制信号,包括WR,RD,PSEN,ALE,EA。
3.在MCS-51单片机中,程序存储器器和数据存储器的地址空间均为0000H~FFFFH,在访问它们时,会发生地址冲突吗?为什么?不会。
扩展片外数据存储器和程序存储器的地址线、数据线由P0口和P2口提供,但数据存储器读写控制线是用WR、RD扩展线,而不使用PSEN。
外部程序存储器时所使用的控制信号是PSEN。
因此,数据存储器和程序存储器地址空间完全重叠,不会发生地址冲突。
4.系统扩展中低8位地址为什么需要用外部地址锁存器,而高8位地址却不需要锁存?地址总线的低8位A7~A0由P0口经地址锁存储器提供,高8位A15~A8由P2口直接提供。
由于P0口是数据、地址分时复用的,故P0口输出的低8位地址必须用锁存器进行锁存。
P2口一直提供高8位地址,故不需要外加地址锁存器。
5. MCS-51单片机可以外接64KB的片外程序存储器和64KB的片外数据存储器。
这两种片外存储器共处同一地址空间而不会发生总线冲突,主要依靠单片机外引脚上的哪些信号来区分?片外程序存储器靠单片机引脚上的PESN信号访问;片外数据存储器则靠RD或WR信号访问。
单片机原理及应用(高教第二版)第5章参考答案及解析
![单片机原理及应用(高教第二版)第5章参考答案及解析](https://img.taocdn.com/s3/m/63a898669b6648d7c1c7467e.png)
第5章 AT89S51的中断系统参考答案及解析:1.答:0013H;001BH解析:P93 表5-2,由表各中断源入口地址2.答:串行口中断;T1溢出中断解析:P92 由于(IP)=00010100B,PS=1,PX1=1,故串行口、外部中断1中断为高优先级,其余为低优先级,再由表5-1,同级中断查询次序T1溢出中断为最低3.答:P96 设置中断允许控制寄存器IE,允许相应的中断请求源中断。
设置中断优先级寄存器IP,确定并分配所使用的中断的优先级。
若是外部中断源,还要设置中断请求的触发方式IT0或IT1,以决定采用电平触发方式还是跳沿触发方式。
中断程序返回使用RETI指令,RETI指令在返回的同时清除相应的优先级触发器,以允许下次中断,而普通子程序RET指令则没有这个操作。
4.答:D解析:P88 5.2.2 5个中断源的中断请求标志分别由特殊功能寄存器TCON和SCON的相应位锁存。
5.答:P94 5.5在一个单一中断的系统里,AT89S51单片机对外部中断请求的响应时间总是在3~8个机器周期之间。
推迟对外部中断请求的响应:P94 5.4(1)A T89S51正在处理同级或更高优先级的中断。
因为当一个中断被响应时,要把对应的中断优先级状态触发器置1(该触发器指出CPU所处理的中断优先级别),从而封锁了低级中断请求和同级请求。
(2)所查询的机器周期不是当前正在执行指令的最后一个机器周期。
设定这个限制的目的是只有在当前指令执行完毕后,才能进行中断响应,以确保当前指令执行的完整性。
(3)正在执行的指令是RETI或是访问IE或IP的指令。
因为按照AT89S51中断系统的规定,在执行完这些指令后,需要再执行完一条指令,才能响应新的中断请求。
如果存在上述三种情况之一,AT89S51将丢弃中断查询结果,将推迟对外部中断请求的响应。
6.答:D解析:P94(A)如果已在处理同级或更高级中断,外部中断请求的响应时间取决于正在执行的中断服务程序的处理时间,这种情况下,响应时间就无法计算了。
单片机习题集(第五章)答案
![单片机习题集(第五章)答案](https://img.taocdn.com/s3/m/e31a2355312b3169a451a4d3.png)
0100 0000 0000 0000~0101 1111 1111 1111;即3000H~5FFFH;
9、试用一片74LS373扩展一个并行输入口,画出硬件连接图,指出相应的控制命令。
硬件电路图如下:74LS373的输入端为扩展的输入口,输出端接8051的数据总路线P0口,控制端接高电平,输出允许由片外数据存储器读信号RD和P2.0控制。当片外数据存储器读信号RD和P2.0同为低平时从74LS373中读入输入的数据。
第五章习题
本次作业采用纸质提交
1、什么是MCS-51单片机的最小系统?
所谓最小系统,是指一个真正可用的单片机的最小配置系统。对于单片机内部资源已能够满足系统需要的,可直接采用最小系统。
2、简述存储器扩展的一般方法。
存储器芯片与单片机扩展连接具有共同的规律。即不论何种存储器芯片,其引脚都呈三总线结构,与单片机连接都是三总线对接。另外,电源线接电源线,地线接地线。
使用2764(8K8)芯片通过部分译码法扩展24KB程序存储器,须要3块。采用线译码,P2.5与第一片2764的CE相连,P2.6与第二片2764的CE相连,P2.7与第三片2764的CE相连,硬件连接如下:
地址空间如下:
第一片:
1100 0000 0000 0000~1101 1111 1111 1111;即C000H~DFFFH;
3、什么是部分译码?什么是全译码?它们各有什么特点?用于形成什么信号?
部分译码就是存储器芯片的地址线与单片机系统的地址线顺次相接后,剩余的高位地址线仅用一部分参加译码。部分译码使存储器芯片的地址空间有重叠,造成系统存储器空间的浪费。全译码就是存储器芯片的地址线与单片机系统的地址线顺次相接后,剩余的高位地址线全部参加译码。这种译码方法中存储器芯片的地址空间是唯一确定的,但译码电路要相对复杂。译码形成存储器芯片的片选信号线 。
2020年新编第5章-习题参考答案名师精品资料.
![2020年新编第5章-习题参考答案名师精品资料.](https://img.taocdn.com/s3/m/dce7e3d7900ef12d2af90242a8956bec0975a5de.png)
2020年新编第5章-习题参考答案名师精品资料.第五章习题参考答案一、填空题1、MCS-51有5个中断源,2个中断优先级,优先级由软件填写特殊功能寄存器 IP 加以选择。
2、外中断请求标志位是 IE0 和 IE1 。
3、RETI 指令以及任何访问IE 和IP 寄存器的指令执行过后,CPU不能马上响应中断。
4、8051单片机响应中断后,产生长调用指令LCALL,执行该指令的过程包括:首先把 PC的内容压入堆栈,以进行断点保护,然后把长调用指令的16位地址送 PC ,使程序执行转向程序存储器中的中断地址区。
二、选择题:1、在中断服务程序中,至少应有一条( D )。
A、传送指令B、转移指令C、加法指令D、中断返回指令2、要使MCS-51能够响应定时器T1中断,串行接口中断,它的中断允许寄存器IE的内容应是( A )。
A、 98HB、 84HC、 42HD、 22H3、MCS-51响应中断时,下列哪种操作不会发生( A )A、保护现场B、保护PCC、找到中断入口D、保护PC转入中断入口4、MCS-51中断源有( A )A、 5个B、 2个C、 3个D、6个5、计算机在使用中断方式与外界交换信息时,保护现场的工作应该是( C )A、由CPU自动完成B、在中断响应中完成C、应由中断服务程序完成D、在主程序中完成6、MCS-51的中断允许触发器内容为83H,CPU将响应的中断请求是( D )。
A、 INT0,INT1B、 T0,T1C、 T1,串行接口D、 INT0,T07、若MCS-51中断源都编程为同级,当它们同时申请中断时,CPU首先响应( B )。
A、 INT1B、 INT0C、 T1D、T08、当CPU响应串行接口中断时,程序应转到( C )。
A、 0003HB、 0013HC、 0023HD、 0033H9、执行MOV IE,#03H后,MCS-51将响应的中断是( D )。
A、 1个B、 2个C、 3个D、0个10、外部中断1固定对应的中断入口地址为( C )。
单片机原理及应用课后习题答案第5章作业.pptx
![单片机原理及应用课后习题答案第5章作业.pptx](https://img.taocdn.com/s3/m/f4d1349a58f5f61fb736669c.png)
那 么会暂时停止当前执行的低优先级的中断服务程序,去处理高优先级的中断服务程序, 处理 完后在返回到被中断的低优先级的服务程序继续执行,这个过程称为中断嵌套。
14. 中断服务子程序与普通子程序有哪些相同和不同之处? 相同点:都是从主函数转到子函数,子函数执行完后又返回主函数。 不同点:中断函数是发生中断后,自动执行的,不需要主函数调用,是否执行,取决于相应 的中断事件是否发生。而普通子函数要主函数调用才能执行。
3. 在 MCS-51 中,需要外加电路实现中断撤除的是:( D )
(A) 定时中断
(B) 脉冲方式的外部中断
(C) 外部串行中断
(D) 电平方式的外部中断
4. 下列说法正确的是:(AC D )
(A) 同一级别的中断请求按时间的先后顺序顺序响应。(YES)
(B) 同一时间同一级别的多中断请求,将形成阻塞,系统无法响应。(ERR) (C) 低优先级中断请求不能中断高优先级中断请求,但是高优先级中断请求能中断低优
11. 什么是中断?其主要功能是什么?
中断是指计算机暂时停止原程序的执行,转而为外部设备服务(执行中断服务程序),
并在服务完成后,自动返回原程序执行的过程。
可以提高 CPU 的工作效率,可以提高实时数据的处理时效。
中断技术主要用于实时监测与控制,采用中断可以解决单片机在查询方式中的等待现
象,可以大大地提高了单片机的工作效率和实时性。
6. 各中断源对应的中断服务程序的入口地址是否能任意设定? ( )
7.89C51 单片机五个中断源中优先级是高的是外部中断 0,优先级是低的是串行
口中断。( )
单片机的第五章习题答案
![单片机的第五章习题答案](https://img.taocdn.com/s3/m/26f46879ac02de80d4d8d15abe23482fb4da02b6.png)
单片机的第五章习题答案第五章习题参考答案一、填空题:1、工作方式1。
2、工作方式0。
3、单工,半双工,全双工。
4、起始位,数据位,奇偶较验,停止位。
5、工作模式3。
6、T1。
7、SUBF。
8、串行数据通信。
9、93000,186000。
10、串行通信11、异,412、串行二、选择题:1、C2、C3、D4、D5、D6、C三、简答题:1、答:异步通信与同步通信的区别:1)异步通信中,数据以字符为单位组成字符帧传送;同步通信传送的是数据块,字符与字符间没有间隙,不用起始位和停止位,仅在数据块开始时用SYNC来指示。
2)异步通信中,发送端和接收端由各自独立的时钟来控制数据的发送和接收,两个时钟独立,互不同步。
同步通信中,要求用时钟实现发送端和接收端的同步。
3)异步通信数据传送速率比同步通信低,但准确度高,实现起来也较简单。
异步通信的格式是:起始位,数据位,奇偶校验位,停止位。
2、答:工作方式0下,串行口作同步移位寄存器用,移位数据的发送和接收以8位为一帧,这种方式常用作扩展I/O 口。
方式1为波特率可调8位通用异步通信接口。
发送和接收一帧信息为10位。
方式2、3下,串行口为9位异步通信接口,发送、接收一帧信息为11位。
3、串行通信的标准有RS-232,RS-422,RS-485等。
4、在实际应用中,为减少误码率,通信距离越远,通信速率应取低一些。
5、传输线采用双绞线,在传输线末端接120欧姆的电阻进行阻抗匹配。
四、计算题:1、设f OSC 为6MHz ,利用定时器T1工作于方式2产生600bps 的波特率,试计算定时器初值。
波特率=n SMOD ?32/2,得出1)SMOD=0,n=19200据)]256(12/[x fosc n -?=,X=230,即X=E6H2)SMOD=1,n=9600据)]256(12/[x fosc n -?=,X=204,即X=CCH2、波特率=(1800/60)*10=300 bps五、编程题:1、8051以方式1工作,设主频6M ,波特率为600bps ,编制程序将MCS-51单片机片内RAM30H ~3FH 的数据通过串行口传送到乙机片内RAM40H ~4FH 单元中(接收分别采用查询方式和中断方式)。
单片机第五章习题答案
![单片机第五章习题答案](https://img.taocdn.com/s3/m/c203f82b5b8102d276a20029bd64783e09127d2c.png)
第五章习题答案第五章习题答案5-1 什么是中断系统?中断系统的功能是什么?什么是中断系统?中断系统的功能是什么?实现中断功能的硬件和软件称为中断系统. 中断系统功能包括进行中断优先排队、实现中断嵌套、自动响应中断和实现中断返回。
中断系统功能包括进行中断优先排队、实现中断嵌套、自动响应中断和实现中断返回。
5-2 什么是中断嵌套?什么是中断嵌套?CPU 在响应某一个中断源中断请求而进行中断处理时,若有中断优先级更高的中断源发出中断请求,CPU 会暂停正在执行的中断服务程序,转向执行中断优先级更高的中断源的中断服务程序,等处理完后,再返回继续执行被暂停的中断服务程序,这个过程称为中断嵌套。
5-3 什么是中断源?MCS-51有哪些中断源?各有什么特点?有哪些中断源?各有什么特点?①实现中断功能的硬件和软件称为中断系统,产生中断请求的请求源称为中断源. ②5个中断源中共有两个外部中断、两个定时中断和一个串行中断。
个中断源中共有两个外部中断、两个定时中断和一个串行中断。
(1)外部中断源)外部中断源外部中断是由外部原因(如打印机、键盘、控制开关、外部故障)引起的,可以通过两个固定引脚来输入到单片机内的信号,即外部中断0(INT0)和外部中断1(INT1)。
(2)定时中断类)定时中断类定时中断是由内部定时(或计数)溢出或外部定时(或计数)溢出引起的,即T0和T1中断。
中断。
(3)串行口中断类)串行口中断类串行口中断是为接收或发送一帧串行数据,硬件自动使RI 和TI 置1,并申请中断,并申请中断 5-4 MCS-51单片机响应外部中断的典型时间是多少?在哪些情况下,CPU 将推迟对外部中断请求的响应?中断请求的响应?(1)MCS-51单片机的最短响应时间为3个机器周期,最长响应时间8个机器周期。
个机器周期。
(2)有下列任何一种情况存在,则中断响应会受到阻断。
)有下列任何一种情况存在,则中断响应会受到阻断。
① CPU 正在执行一个同级或高一级的中断服务程序;正在执行一个同级或高一级的中断服务程序;② 当前的机器周期不是正在执行的指令的最后一个周期,即正在执行的指令还未完成前,任何中断请求都得不到响应;前,任何中断请求都得不到响应;③ 正在执行的指令是返回指令或者对专业寄存器IE 、IP 进行读/写的指令,此时。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第5章【单片机的中断系统原理及应用】思考与练习题解析【5—1】什么是中断?【答】单片机在程序执行过程中,允许外部或内部“事件’’通过硬件打断程序的执行.,使其转向执行处理外部或内部“事件’’的中断服务子程序;而在完成中断服务子程序以后,继续执行原来被打断的程序,这种情况称为“中断",这样的过程称为“中断响应过程"。
【5—2】单片机的中断系统主要应该解决哪几个问题?【答】单片机的中断系统主要应该解决3个问题,即:‘①当单片机内部或外部有中断申请时,能及时响应中断,中止正在执行的任务,转去处理中断服务子程序。
中断服务处理以后,能正确回到原来的断点处继续处理原先的任务。
②当有多个中断源同时申,请中断时,单片机应能首先响应优先级高的中断源,能实现中断优先级的控制。
‘③当低优先级中断源正在享用中断服务时,若这时优先级比它高的中断源也申请中断,则要求单片机能中止低优先级中断源的服务程序,转去执行更高优先级中断源的服务程序,实现中断嵌套,并能逐级正确返回原断点处,继续处理原先的任务。
【5—3】说明8 0 C5 1单片机的中断流程。
【答】80C51单片机的中断流程由以下几个方面组成。
’①中断采样:解中断采样是针对外部中断请求信号进行的,而内部中断请求都发生在芯片内部,可以直接置位TCON或SCON中的中断请求标志。
在每个机器周期的S5 P2(笫五状态的第二节拍)期间,各中断标志采样相应的中断源,并置人相应标志。
②中断查询:若查询到某中断标志为1,则按优先级的高低进行处理,即响应中断。
③中断响应:响应中断后,由硬件自动生成长调用指令LCALL,其格式为“LCALL addrl 6”,而addrl 6就是各中断源的中断矢量地址。
首先将程序计数器PC的内容压人堆栈进行保护,先压入PC低8位地址,后压人PC高8位地址,同时堆栈指针SP加2。
将对应中断源的中断矢量地址装入程序计数器PC,使程序转向该中断矢量地址,去执行中断服务程序。
④中断服务子程序:由中断矢量地址开始,执行子程序,直到遇到中断返回指令RETI为止。
⑤中断返回:执行指令RETI,撤消中断申请,把断点地址从堆栈弹出送人PC。
先弹出PC高8位地址,后弹出PC低8位地址,同时堆栈指针SP减2。
程序从断点处恢复执行。
【5-4】什么是单片机的中断优先级?中断优先级处理的原则是什么?【答】在一个单片机系统中往往允许有多个中断源,通常给每个中断源规定了优先级别,称为“优先权"或“中断优先级’’。
当单片机同时接收到两个或多个不同优先级的中断请求时,先响应高优先级的中断。
如果同时接收到的是几个同一优先级的中断请求,则由内部的硬件查询序列确定它们的优先服务次序,当服务结束后,再响应级别较低的中断源。
在80C51单片机中有高、低两个中断优先级,通过中断优先级寄存器IP来设定。
在80C51单片机中存在同一优先级内由内部硬件查询序列确定的第二个优先级结构。
其排列如下:中断源中断优先级外部中断0 最高定时器T0中断外部中断1定时器T1中断串行口中断定时器T2中断最低【5-5】外部中断请求有哪两种触发方式?对跳变触发和电平触发信号有什么要求?如何选择和设置?【答】外部中断请求有两种信号触发方式,即电平有效方式和跳变有效方式,可通过设置有关控制位进行定义。
当设定为信号电平有效方式时,若INT0或INT1引脚上采样到有效的低电平,则提出中断请求;当设定为信号跳变有效方式时,若INT0或INT1引脚上采样到有效负跳变,则提出中断请求。
’①INT0(P3.2)—一外部中断O。
当IT0(TCON.O)=0 时,信号触发方式为低电平有效;当IT0(TCON.O)=1时,信号触发方式为下降沿有效。
②INTI(P3.3)——外部中断1。
当ITI(TCON.2)=0时,信号触发方式为低电平有效;当ITl(TCON.2)=1时,信号触发方式为下降沿有效。
【5-6】80C51单片机有哪些中断源?对其中断请求如何进行控制?【答】1.中断源80C51.单片机中有5个中断源。
80c52中增加了一个中断源--定时器/计数器T2中断,共有6个中断源。
每一个中断源都能被单片机程控为高优先级或低优先级。
80c51单片机的5个中断源包括2个外部中断源和3个内部中断源。
2个外部中断源为INT0和INT1,外部设备的中断请求信号、掉电等故障信号都可以从INT0或INT1引脚输入。
3个内部中断源为定时器/计数器TO、T1的定时/计数溢出中断源和串行口发送或接收中断源。
80C5 1的5个中断源可以分为3类,即:(1)外部中断外部中断是由外部信号引起的,共有两个外部中断,其中断请求信号分别从引脚INT0(P3.2)和INTl(P3.3)上引入。
(2)定时中断定时中断是为满足定时或计数需要而设置的。
当计数器发生计数溢出时,表明设定的定时时间已到或计数值已满,这时可以申请中断。
由于定时器/计数器位于单片机芯片内部,所以定时中断属于内部中断。
80C51.内部有两个定时器/计数器,所以定时中断有两个源,即:① FF0(P3.4)一一定时器/计数器TO溢出中断。
② FFI(P3.5)…定时器/计数器T1溢出中断。
(3)串行中断串行中断是为串行数据传送的需要而设置的。
每当串行口发送或接收一组串行数据时,就产生一个中断请求。
.TI(SCON.1)和RI(SCON.O)--串行口发送和接收中断源。
2.中断的允许和禁止由中断允许寄存器IE控制中断允许寄存器IE格式如图5—1所示。
┏━━━━━┳━━━┳━━━┳━━━┳━━━┳━━━━┳━━━━┳━━━━┳━━━━┓┃位地址┃ AFH ┃ AEH ┃ ADH ┃ ACH┃ ABH ┃ AAH ┃ A9H ┃ A8H ┃┣━━━━━╋━━━╋━━━╋━━━╋━━━╋━━━━╋━━━━╋━━━━╋━━━━┫┃符号┃ EA ┃┃┃ ES ┃ ETl ┃ EXl ┃ETO ┃ EXO ┃┗━━━━━┻━━━┻━━━┻━━━┻━━━┻━━━━┻━━━━┻━━━━┻━━━━┛图5—1 中断允许寄存器IE格式IE寄存器中相应位设置为O时,所对应的中断源被禁止中断;相应位设置为1时,所对应的中断源被允许中断。
系统复位后IE寄存器中各位均为0,即此时禁止所有中断。
与中断有关的控制位共6位,即:EX0 外部中断O中断允许位。
ETO 定时器/计数器T0中断允许位。
EXl 外部中断1中断允许位。
ETl 定时器/计数器T1中断允许位。
ES 串行口中断允许位。
EA CPU中断允许位。
当EA=1时,允许所有中断开放,总允许后,各中断的允许或禁止由各中断源的中断允许控制位进行设置;当EA=0时,所有中断屏蔽。
80C51单片机通过中断允许控制寄存器对中断的允许(开放)实行两级控制,即以EA位作为总控制位,以各中断源的中断允许位作为分控制位。
只有当总控制位EA有效(即开放中断系统)时,各分控制位才能对相应中断源分别进行开放或禁止。
.【5—7】80C51单片机在什么情况下可响应中断?【答】中断响应是有条件的,即:·中断源申请中断;·该中断源已被允许中断,且CPU也已允许中断;·没有同级或高优先级中断在执行中断服务程序。
在接受中断申请时,如遇下列情况之一,硬件生成的长调用指令LCALL将被封锁:①CPU正在执行同级或高一级的中断服务程序。
因为当一个中断被响应时,其对应的中断优先级触发器被置1,封锁了同级和低级中断。
②查询中断请求的机器周期不是执行当前指令的最后一个周期。
目的在于使当前指令执行完毕后,才能进行中断响应,以确保当前指令的完整执行。
③当前正在执行RETI指令或执行对IE、IP的读/写操作指令。
80C51.中断系统的特性规定,在执行完这些指令之后,必须再继续执行一条指令,然后才能响应中断。
【5—8】如何分析中断响应时间?这对实时控制系统有何意义?【答】从中断请求发生直到被响应去执行中断服务程序,所需时间称为“中断响应时间”。
一般来说,在单级中断系统中,中断的响应时间最短为3个机器周期,最长为8个机器周期。
①当中断请求标志位查询占1个机器周期时,若这个机器周期恰好是指令的最后一个机器周期,则在这个机器周期结束后,CPU立即响应中断,产生硬件长调用LCALL指令。
执行这条长调用指令需要2个机器周期,这样,中断响应时间为3个机器周期。
②如果CPU正在执行的是RETI指令或访问IP、IE指令,则等待时间不会多于2个机器周期,而中断系统规定这几条指令执行完后,必须再继续执行一条指令后才能响应中断。
如这条指令恰好是4个机器周期长的指令(比如乘法指令MUL或除法指令DIV),再加上执行长调用指令LCALL所需2个机器周期,则总共需要8个机器周期。
③如果中断请求被阻止,不能产生硬件长调用LCALL指令,那么所需的响应时间就更长。
如果正在处理同级或优先级更高的中断,那么中断响应的时间还需取决于处理中的中断服务程序的执行时间。
当单片机应用中断于实时控制系统时,往往非常在意中断的响应时间。
比如出现故障后,单片机在多长时间里能够响应和处理,这反映了单片机对故障处理的“失控’’时间长短。
.【5—9】为什么单片机需要进行中断请求的撤消?中断请求的撤消有哪些方法? 【答】单片机响应中断请求,转向中断服务程序执行,在其执行中断返回指令RETI之前,中断请求信号必须撤除,否则将会再一次引起中断而出错。
中断请求撤除的方式有三种,即:1.由单片机内部的硬件自动复位(硬件置位,硬件清除)对于定时器/计数器TO、T1的溢出中断和采用跳变触发方式的外部中断请求,单片机响应中断后,由内部硬件自动清除中断标志TF0和TFl、IE0和IEl,从而自动撤除中断请求。
2.应用软件清除相应标志(硬件置位,软件清除)对于串行接收/发送中断请求和80C52中的定时器/计数器T2的溢出和捕获中断请求,单片机响应中断后,必须在中断服务程序中应用软件清除RI、TI、TF2和EXF2这些中断标志,才能撤除中断。
3.采用外加硬件结合软件来清除中断请求(硬件置位,硬、软件结合清除) 对于采用电平触发方式的外部中断请求,中断标志的撤消是自动的,但中断请求信号的低电平可能继续存在。
在以后机器周期采样时,又会把已清O的IEO、IEl标志重新置1,再次申请中断。
在系统中加入如图5—2所示的电平方式外部中断请求的撤消电路,保证在中断响应后把中断请求信号从低电平强制改变为高电平。
从图5—2中可看到,用D触发器锁存外部中断请求低电平,并通过触发器输出端Q送INT0或INTl,所以D触发器对外部中断请求没有影响。
但在中断响应后,为了撤消低电平引起的中断请求,可利用D触发器的直接置位端SD来实现。
采用80C51的一根I/O口线来控制SD端。