单片机作业答案第5、6、7、8章.

上传人:最**** 文档编号:116667645 上传时间:2019-11-17 格式:DOC 页数:27 大小:376KB
返回 下载 相关 举报
单片机作业答案第5、6、7、8章._第1页
第1页 / 共27页
单片机作业答案第5、6、7、8章._第2页
第2页 / 共27页
单片机作业答案第5、6、7、8章._第3页
第3页 / 共27页
单片机作业答案第5、6、7、8章._第4页
第4页 / 共27页
单片机作业答案第5、6、7、8章._第5页
第5页 / 共27页
点击查看更多>>
资源描述

《单片机作业答案第5、6、7、8章.》由会员分享,可在线阅读,更多相关《单片机作业答案第5、6、7、8章.(27页珍藏版)》请在金锄头文库上搜索。

1、第5、6、7、8章习题一、问答题1说明51单片机读端口锁存器的必要性,为什么?答:MCS-51系列单片机有不少指令可以直接进行端口操作,例如:ANL、ORL、XRL、JBC、CPL、INC、DEC、DJNZ、MOV PX.x,C、CLR PX.x、SETB PX.x。这些指令的执行过程分成“读-修改-写”三步,即先将端口的数据读入CPU,在ALU中进行运算,运算结果再送回端口。执行“读-修改-写”类指令时,CPU实际上是通过三态门读回锁存器Q端的数据。这种读锁存器的方式是为了避免可能出现的一种错误。例如,用一根口线直接去驱动端口外的一个NPN晶体管基极,当向口线写“1”时,该晶体管导通,导通了

2、的三极管集极与发射极间只有0.7V,会把端口引脚的高电平拉低,这样直接读引脚就会把本来的“1”误读为“0”。但若从锁存器Q端读,就能避免这样的错误,得到正确的数据。也就是说,如果某位输出为1时,有外接器件拉低电平, 读端口引脚与读锁存器就有区别了,读锁存器状态是1,读引脚状态是0,锁存器状态取决于单片机企图输出什么电平,引脚状态则是引脚的实际电平。因此,当作为读引脚方式使用时,应先对该口写“1”,使场效应管截止,再进行读操作,以防止场效应管处于导通状态,使引脚为“0”,而引起误读。2请说明为什么使用LED需要接限流电阻,当高电平为+5V时,正常点亮一个LED需要多大阻值的限流电阻(设LED的正

3、常工作电流为8mA,导通压降为0.6V),为什么?答:因为LED导通时,电压降是基本固定的(如0.6V)。为了使LED既能正常工作(电流为820mA),又不至于被过大的电流损坏,所以必须加一个限流电阻,电阻值为100500。3简述在使用普通按键的时候,为什么要进行去抖动处理,如何处理。答:键抖动会引起一次按键被误读多次。为了确保CPU对键的一次闭合仅做一次处理,有必要去除键抖动。在键闭合稳定时,读取键的状态;在键释放稳定后,再作处理。按键的抖动,可用硬件或软件两种方法消除。4简述LED数码管动态扫描的原理及其实现方式。答:动态扫描的原理是利用人的视觉暂留,让人觉得各位LED同时点亮一样。逐位轮

4、流点亮各个LED,每一位保持一定时间,在510ms之内再一次点亮,重复不止,就可以实现动态扫描。5为什么51单片机在读口的引脚状态时,许先向端口写“1”,请用图5-1 P1结构图加以说明。锁存器DCPQQP1.x读锁存器写锁存器内部总线读引脚内部上拉电阻图5-1 P1口结构图21V1VCC答:在单片机执行读引脚操作时,如果锁存器原来寄存的数据Q=0,那么由于=1,将使V1导通,引脚被始终钳位在低电平上,不可能输入高电平。为此,使用读引脚指令前,必须先用输出指令置Q=1,使V1截止。5简述89c51各IO口的驱动能力。答:各IO口单个引脚,允许灌入的最大电流为 10 mA; 每个 8 位的接口(

5、P1、P2 以及 P3),允许向引脚灌入的总电流最大为 15 mA; P0 的驱动能力最强,允许灌入的最大总电流为 26 mA; 全部的四个接口所允许的灌电流之和,最大为 71 mA。 但引脚“输出高电平”的时候,输出电流不到 1 mA。6什么是中断?中断与子程序最本质的区别?答:中断是指计算机在执行程序的过程中,当出现异常情况或特殊请求时,计算机停止现行程序的运行,自动转向对这些异常情况或特殊请求的处理,处理结束后再返回现行程序的间断处,继续执行原程序的过程。 中断是单片机实时地处理内部或外部事件的一种内部机制。当某种内部或外部事件发生时,单片机的中断系统将迫使CPU暂停正在执行的程序,转而

6、去进行中断事件的处理,中断处理完毕后,又返回被中断的程序处,继续执行下去。中断与子程序的最本质的区别:子程序是预先安排好的;中断是随机发生的。7编制中断服务程序时,为什么在主程序的初始化程序中,必须设置EA1 这条指令(或达到同样功能的对IE赋值的指令),以及在中断服务程序中为什么通常需要保护现场和恢复现场?答:中断允许寄存器IE中有1个总的开关中断控制位EA,当EA=0时,所有的中断请求被屏蔽,CPU不接受任何中断;只有当EA=1时,CPU才开放中断。所以主程序的初始化程序中,必须设置EA1(或者用IE1xxxxxxxB,x表示1或0) 这条指令。现场是指中断时刻单片机中某些寄存器和储存器单

7、元中的数据或状态,为了使中断服务程序的执行不破坏这些数据和状态,以免在中断返回后影响主程序的运行,因此要这些数据和状态送入堆栈保存,这就是现场保护。中断结束后,在返回主程序前,则需要把保存的现场数据和状态从堆栈中弹出,以恢复那些寄存器和存储器单元中的原有内容,这就是现场恢复。8单片机89C51有哪些中断源,CPU对其中断如何请求?答:89C51中断系统有5个中断源:INT0:外部中断0请求,低电平有效。通过P3.2引脚输入。INT1:外部中断1请求,低电平有效。通过P3.3引脚输入。T0:定时器/计数器0溢出中断请求。T1:定时器/计数器1溢出中断请求。TXD/RXD:串行口中断请求。当串行口

8、完成一帧数据的发送或接收时,便可请求中断。9简述单片机89C51中断的自然优先级顺序,如何提高某一中断源的优先级别。答:中断源,其自然优先级的顺序如下:外部中断0(PX0) 最 高定时器/计数器0溢出中断(PT0)外部中断1(PX1)定时器/计数器1溢出中断(PT1)串行口中断(PS) 最 低SFR中的IP寄存器中有对应的控制位,若某几个控制位为1,则相应的中断源就规定为高优先级中断;反之,若某几个控制位为0,则相应的中断源就规定为低优先级中断。当同时接收到几个同一优先级的中断请求时,响应哪个中断源则取决于内部自然优先级的顺序。10简述51系列单片机中断响应的条件。答:有中断源发出中断请求;中

9、断总允许位EA=1,即CPU开中断;申请中断的中断源的中断允许位为1,即中断没有屏蔽;无同级或更高级中断正在被服务;当前的指令周期已经结束;若现在指令为RETI或者是访问IE或IP指令,则该指令以及紧接着的另一条指令已执行完。11用汇编语言编程时,在51系列单片机执行中断服务程序的指令较多时,为什么一般都要在入口地址(又称中断矢量地址)开始的地方放一条跳转指令?答:因为51系列单片机的两个相邻中断源中断服务程序入口地址相距只有8个单元,当中断服务程序较长容纳不下的,一般都要在相应的中断服务程序入口地址中放一条跳转指令。12为什么一般都把主程序的起始地址放在0030H之后?答:因为0000H00

10、30H中有中断的矢量地址,为了避免冲突,一般都把主程序的起始地址放在0030H之后。13中断服务子程序返回指令RETI和普通子程序返回指令RET的区别?答:RETI指令在返回的同时清除相应的优先级触发器,以便允许下次中断。14简述51单片机定时/计数器4种工作模式的特点。答:模式1:是16位的定时器/计数器;模式2:把TL0(或TL1)配置成一个可以自动重装载的8位定时器/计数器;模式3:对T0和T1大不相同。若将T0设置为模式3,则TL0和TH0被分为两个相互独立的8位计数器。定时器T1无工作模式3状态。模式0:与模式1几乎完全相同,唯一的差别是模式0中,寄存器TL0用5位,TH0用8位。这

11、种方式是为了与48系列兼容的,目前一般不使用。15定时/计数器用作定时器时,其计数脉冲由谁提供?定时时间与哪些因素有关?答:定时/计数器作定时时,其计数脉冲由系统振荡器产生的内部时钟信号12分频后提供。定时时间与时钟频率和定时初值有关。16画出51单片机计数/定时器方式1的逻辑结构框图,说明它们的工作原理,如何使用门控和非门控启动计数的方法。答:方式1的逻辑结构振荡器12控制TxTRxGATE&1INTx中断TFxTHx(8位)C/T=0C/T=1TLx(8位)如图所示,当GATE = 0时,经非门后,或门输出1,这样TRx将直接控制定时器的启动和关闭。这时如果TRx=1,则接通控制开关,定时

12、器从初值开始计数直至溢出。溢出时,16位加计数器为0,TFx置位,并申请中断。如要循环计数,则定时器需重置初值,且需用软件将TFx复位。TRx = 0,则与门被封锁,控制开关被关断,停止计数。当GATE = 1时,与门的输出由输入INTx的电平和TRx位的状态来确定。这时若TRx=1,则引脚INTx可直接开启或关断计数器:当INTx为高电平时,允许计数;低电平时则停止计数。若TRx=0,则与门被封锁(即输出为0),控制开关被关断,不能计数。控制启动、停止计数方式如下: 非门控方式当GATE0,控制权由 TRx 决定,TRx1计数启动,TRx0计数停止。这种方式实际上是用软件控制启动、停止计数。

13、 门控方式当GATE1、TRx1,控制权由INTx 决定INTx1计数启动,INTx0计数停止。这种方式实际上是用外部硬件INTx引脚控制启动、停止计数。17在使用8051的定时器/计数器前,应对它进行初始化,其步骤是什么?答: (1)确定T/C的工作方式编程TMOD寄存器; (2)计算T/C中的计数初值,并装载到TH和TL; (3)T/C在中断方式工作时,须开CPU中断和源中断编程IE寄存器; (4)启动定时器/计数器编程TCON中TR1或TR0位。18在有串行通信时,定时器/计数器1的作用是什么,怎样确定串行口的波特率?答:在有串行通信时,定时器/计数器1的作用是串行口发生器。 串行口的波

14、特率根据串行口的工作方式具有不同的计算方式: 方式0的波特率固定为晶体振荡器的十二分之一; 方式1的波特率=2SMOD.(定时器1的溢出率)/32; 方式2波特率=2SMOD.(fosc/64); 方式3波特率同方式1(定时器l作波特率发生器)。19简述89C51串口通信的四种方式及其特点。答:方式0:同步移位寄存器输入/输出方式,常用于扩展I/O口。波特率固定为振荡频率的1/12,并不受PCON寄存器中SMOD位的影响。方式1:用于串行发送或接收,为10位通用异步接口。TXD与RXD分别用于发送与接收数据。收发一帧数据的格式为1位起始位、8位数据位(低位在前)、1位停止位,共10位。波特率由

15、定时器T1的溢出率与SMOD值同时决定。方式2:用于串行发送或接收,为11位通用异步接口。TXD与RXD分别用于发送与接收数据。收发一帧数据的格式为1位起始位、8位数据位(低位在前)、1位可编程的第9数据位和1位停止位,共11位。波特率取决于PCON中SMOD位的值:当SMOD0时,波特率为晶振的1/64;当SMOD1时,波特率为晶振的1/32。方式3:用于串行发送或接收,为11位通用异步接口。TXD与RXD分别用于发送与接收数据。帧格式与方式2相同,波特率与方式1相同。20单片机的串口可以与PC的串口直接连接进行通讯吗?为什么?应如何连接?单片机与PC的串行接口图答:MCS-51系列单片机串行口与PC机的RS-232C接口不能直接对接,PC机RS232采用负逻辑电平,即

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号