收藏 分享(赏)

计算机硬件习题答案.doc

上传人:fcgy86390 文档编号:6988854 上传时间:2019-04-29 格式:DOC 页数:17 大小:223KB
下载 相关 举报
计算机硬件习题答案.doc_第1页
第1页 / 共17页
计算机硬件习题答案.doc_第2页
第2页 / 共17页
计算机硬件习题答案.doc_第3页
第3页 / 共17页
计算机硬件习题答案.doc_第4页
第4页 / 共17页
计算机硬件习题答案.doc_第5页
第5页 / 共17页
点击查看更多>>
资源描述

1、1原1418题目有问题,换了一个题目第7章7-1 8086/8088 CPU有哪几种中断?1)外设中断源。一般有键盘、打印机、磁盘、磁带等,工作中要求CPU为它服务时,会向CPU发送中断请求。2)故障中断源。当系统出现某些故障时(如存储器出错、运算溢出等),相关部件会向CPU发出中断请求,以便使CPU转去执行故障处理程序来解决故障。3)软件中断源。在程序中向CPU发出中断指令(8086为INT指令),可迫使CPU转去执行某个特定的中断服务程序,而中断服务程序执行完后,CPU又回到原程序中继续执行INT指令后面的指令。4)为调试而设置的中断源。系统提供的单步中断和断点中断,可以使被调试程序在执行

2、一条指令或执行到某个特定位置处时自动产生中断,从而便于程序员检查中间结果,寻找错误所在。7-2 软件中断和硬件中断有何特点,如何区别?外部中断源即硬件中断源,来自CPU外部。8086 CPU提供了两个引脚来接收外部中断源的中断请求信号:可屏蔽中断请求引脚和不可屏蔽中断请求引脚。通过可屏蔽中断请求引脚输入的中断请求信号称作可屏蔽中断请求,对这种中断请求CPU可响应,也可不响应,具体取决于标志寄存器中IF标志位的状态。通过不可屏蔽中断请求引脚输入的中断请求信号称作不可屏蔽中断请求,这种中断请求CPU必须响应。软件中断执行软件中断指令时,会产生软件中断。8086系统中,设置了三条中断指令,分别是:中

3、断指令INT n:用户可以用INT n指令来产生一个类型为n的中断,以便让CPU执行n号中断的中断服务程序。断点中断INT 3:执行断点指令INT 3,将引起类型为3的断点中断,这是调试程序专用的中断。溢出中断INTO:如果标志寄存器中溢出标志位OF为1,在执行了INTO指令后,产生类型为4的溢出中断。7-3 中断排队方法有哪些方法?21.软件查询确定中断优先级。2.硬件查询确定优先级。3.中断优先级编码电路。7-4 简述微机处理中断的过程中断请求、中断响应、中断处理、中断返回7-5 简要说明8086/8088中断的特点。中断请求:)外部中断源的中断请求8086 CPU有两根外部中断请求引脚I

4、NTR和NMI供外设向其发送中断请求信号用。根据优先级,CPU先检查NMI引脚再检查INTR引脚。INTR引脚上的中断请求称为可屏蔽中断请求,CPU是否响应这种请求取决于标志寄存器的IF标志位的值。)内部中断源的中断请求CPU的中断源除了外部硬件中断源外,还有内部中断源。内部中断请求不需要使用CPU的引脚,它由CPU在下列两种情况下自动触发:其一是在系统运行程序时,内部某些特殊事件发生(如除数为0,运算溢出或单步跟踪及断点设置等);其二是CPU执行了软件中断指令INT n。所有的内部中断都是不可屏蔽的,即CPU总是响应(不受IF限制)。7-6 简述8086/8088可屏蔽中断的响应过程。1)可

5、屏蔽外部中断请求的中断响应连续发出两个中断响应信号 ,完成一个中断响应周期。INTA关中断,即将IF标志位置0,以避免在中断过程中或进入中断服务程序后,再次被其他可屏蔽中断源中断。保护处理机的现行状态,即保护现场。包括将断点地址(即下条要取出指令的段基址和偏移量,在CS和IP内)及标志寄存器FLAGS内容压入堆栈。在中断响应周期的第二个总线周期中,中断控制器已将发出中断请求外设的中断类型号送到了系统数据总线上,CPU读取此中断类型号,并根据此中断类型号查找中断矢量表,找到中断服务程序的入口地址,将入口地址中的段基址及偏移量分别装入CS及IP,一旦装入完毕,中断服务程序就开始执行。2)不可屏蔽外

6、部中断请求的中断响应NMI上中断请求的响应过程要简单一些。只要NMI上有中断请求信号(由低向高的正跳变,两个以上时钟周期),CPU就会自动产生类型号为2的中断,并准备转入相应的中断服务程序。3)内部中断的中断响应除不用检测NMI引脚外,其余与不可屏蔽外部中断请求的中断响应相同。7-7 何为中断矢量表?它有何作用?位于内存的什么位置?3中断服务程序的地址叫做中断矢量,将全部中断矢量集中在一张表中,即中断矢量表。中断矢量表的位置固定在内存的最低1K字节中,即00000H003FFH处。7-8 30H号中断的中断服务程序地址存放在中断矢量表的什么位置处?30H*4=1927-9 8259A对中断优先

7、管理权和中断结束有哪几种方式,各自应用在什么场合?全嵌套方式全嵌套方式是最常用的和最基本的一种工作方式。8259A是初始化后默认的工作方式。特殊全嵌套方式在这种方式下,当一个中断被响应后,只屏蔽掉低级的中断请求,而允许同级及高级的中断请求。该方式一般用于多片8259A级联的系统中,主片采用此方式,而从片采用一般全嵌套方式。优先级自动循环方式在这种方式下,某个中断源被服务后,其优先级自动降为最低,它后面的中断源按顺序递升一级。如IR3刚被服务完,则各中断源的优先级次序为:IR4、IR5、IR6、IR7、IR0、IR1、IR2、IR3。这种方式中,刚开始时优先级仍是固定的,即IR0最高,IR7最低

8、。这种方式适合于各个中断源的重要性等同的情况。优先级特殊循环方式同优先级自动循环方式,但一开始时的优先级可以设定。如一开始设定IR3最低,则IR4的优先级最高,其他依次类推。8259A中断结束共有3种。自动结束方式(AEOI方式)普通结束方式(普通EOI方式)特殊中断结束方式(特殊EOI方式)7-10 8259A中断控制器的作用是什么?8259A能与8080/8085、8086/8088等多种微处理器芯片组成中断控制系统。它有8个外部中断请求输入引脚,可直接管理8级中断。若系统中中断源多于8个,8259A还可以实行两级级联工作,最多可用9片8259A级联管理64级中断。7-11 简述多个中断源

9、、单一中断请求线的中断处理过程。1.当IR7IR0中有一个或几个中断源变成高电平时,使相应的IRR位置位。2.8259A对IRR和IMR提供的情况进行分析处理,当请求的中断源未被IMR屏蔽时,如果这个中断请求是唯一的,或请求的中断比正在处理的中断优先级高,就从INT端输出一个高电平,向CPU发出中断请求。43.CPU在每个指令的最后一个时钟周期检查INT输入端的状态。当IF为“1”且无其他高优先级的中断(如NMI)时,就响应这个中断,CPU进入两个中断响应()周期。INTA4.在CPU第一个 周期中,8259A接收第一个 信号时,将ISR中当前INTAINTA请求中断中优先级最高的相应位置位,

10、而对应的IRR位则复位为“0”。5.在CPU第二个 周期中,8259A收到第二个 信号时,送出中断类型I I号。整个过程的时序如 Error! Reference source not found.所示。7-12 8259A的中断自动结束方式与非自动结束方式对中断服务程序的编写有何影响?自动结束方式(AEOI方式)当一个中断请求被响应后,在收到第一个 信号后,8259A将ISR中的对INTA应位置“1”,在收到第二个 信号后,8259A将ISR中的对应位置“0”。此ITA刻,中断服务程序并没有结束(其实才刚开始运行),而在8259A中就认为其已结束。此时若有更低级的中断请求信号,8259A仍可

11、向CPU发送中断请求,从而会造成低级中断打断高级中断的情况。这种方式一般用于单片8259A而且不会产生嵌套的情况。普通结束方式(普通EOI方式)这种方式是在中断服务程序结束前(即CPU执行IRET指令),用OUT指令向8259A发一个中断结束命令字,8259A收到此结束命令后,就会把ISR中优先级别最高的置“1”位清0,表示当前正在处理的中断已结束。这种中断结束方式比较适合于全嵌套工作方式。7-13 某8259A初始化时,ICW11BH,ICW230H,ICW401H,试说明8259A的工作情况。ICW11BH:LTIM=1,设定为电平触发方式;SNGL=1,系统中只有一片8259AICW23

12、0H中断请求类型码设置为30HICW401H8259A用于8086/8088系统;8259A工作在非自动结束方式;非缓冲方式下工作;全嵌套方式。7-14 某系统中有三片8259A接成主/从方式,二从片接在主片的IR3、IR5引脚上,5试画出硬件接线图,并给出主片与二从片的初始化命令字ICW3。ICW3:MOV AL,03H ;ICW3的内容 IR3OUT 21H,AL ;写入奇地址端口MOV AL,04H ;ICW3的内容 IR5OUT 21H,AL ;写入奇地址端口7-15 当8259A需要级联使用时,在缓冲方式与非缓冲方式下分别如何设置主/从片?ICW4 D2位 当BUF=1,且 M/S=

13、1时,此8259为主片;当BUF=1,但M/S=0时,此8259为从片。7-16 简要说明8259A的5种中断优先权管理方式的特点。参见题7-97-17 8259A仅有两个端口地址,如何识别ICW命令和OCW命令?初始化命令在一开始初始化8259A时使用,只能使用一次,一旦发出就不能改变,且4个命令字有固定的写入顺序,一般将其放在主程序的开头。操作命令字用来设置可在程序中动态改变的功能,可多次使用,也没有固定的使用顺序。7-18 中断服务程序应包含哪几部分?保存和恢复现场有何意义?中断服务程序一般由4部分组成:保护现场、中断服务、恢复现场、中断返回。所谓保护现场,是因为有些寄存器可能在主程序被

14、打断时存放有用的内容,为了保证返回后不破坏主程序在断点处的状态,应将有关寄存器的内容压入堆栈保存。中断服务部分是整个中断服务程序的核心,其代码完成与外设的数据交换。恢复现场是指中断服务程序完成后,把原先压入堆栈的寄存器内容再弹回到CPU相应的寄存器中。有了保护现场和恢复现场的操作,就可保证在返回断点后,正确无误地继续执行原先被打断的程序。中断服务程序的最后部分是一条中断返回指令IRET。7-19 如何安装中断服务程序?程序在运行后,主模块要完成中断服务程序的安装,即将中断服务程序的地址设置到中断矢量表的相应项目中。设置工作既可以用MOV指令直接写中断矢6量表,也可以用相关DOS功能调用,最好是

15、用后者,因为这样更安全一些。7-20 中断硬件服务程序驻内存应该注意什么问题?当程序结束后其所占内存被DOS收回,中断服务程序变为不可用。若想让程序退出后中断服务程序所占内存仍然保留,以便为后续程序提供中断服务,则必须让中断服务程序驻留内存。第 13 章13-1 单片机有哪些主要特点?1)体积小、价格低廉、面向控制。2)便于产品小型化、智能化。3)研制周期短、可靠性高。13-2 单片机主要应用在哪些领域?广泛应用于电子仪器仪表、家用电器、自动控制设备、节能装备、军事装备、计算机外设、机器人、工业控制等诸方面。13-3 说明以下指令执行操作的异同。 MOV R0,#11H 和 MOV R0,11

16、H MOV A,R0 和 MOV A,R0 ORL 20H,A 和 ORL A,20H MOV B,20H 和 MOV C,20H1 MOV R0,#11H #11HR0;MOV R0,11H 11H 中的内容送人 R02 MOV A,R0 将寄存器的内容存入累加器中; MOV A,R0:将间接地址的内容存入累加器中;3 ORL 20H,A 将直接地址 20H 的内容与累加器的值做逻辑或运算,结果存回直接地址 20H 中;ORL A,20H:将累加器的值与直接地址 20H 的内容做逻辑或运算,结果存回累加器中13-4 MOV,MOVC,MOVX 指令的区别。MOV:内部 RAM 数据传送MOV

17、C:外部 ROM 数据传送MOVX: 外部 RAM 数据传送13-5 单片机内部 RAM 访问指令有哪几种?MOV,XCH13-6 执行下列指令序列后,将会实现什么功能? MOV R0,#20HMOV R1,#30HMOV P2,#90HMOVX A,R0MOVX R1,A MOV DPTR,#9010HMOV A,#10HMOVC A,A+DPTR7MOVX DPTR,A MOV SP,#0AHPOP 09HPOP 08HPOP 07H MOV PSW,#20HMOV 00H,#20HMOV 10H,#30HMOV A,R0MOV PSW,#10HMOV R0,A MOV R0,#30HMO

18、V R1,#20HXCH A,R0XCH A,R1XCH A,R01. R0R1;29020H9010H3. 0AH09H 中,09H08H 中,08H07H 中。4. PSW=#20H,R0=#20H;10H 单元中内容为#30H,A=20H5. 交换 R0 与 A;交换 R1 与 A;交换 R0 与 A13-7 执行下列指令序列后,累加器 A 与各标志 C、AC、OV、P 及 Z 各等于什么?并说明标志变化的理由。 MOV A,#99HMOV R7,#77HADD A,R7DA A MOV A,#77HMOV R7,#AAHSUBB A,R7(讨论 C 的内容)1. ADD 结果是 A:1

19、0H,PSW 中 C AC OV 位为 1,DA 调整后为 0AH,P 位0,O 为 12. A 为#CDH PSW 中 C、AC、OV、P 为 113-8 执行下列指令序列后,相关寄存器、存储单元及标志如何变化? MOV A,#98HMOV R4,#11HANL A,R4 MOV A,#89HMOV 32H,#98HORL 32H,A CLR ACPL AXRL A,#77H MOV A,#89H8SWAP ARLC A(讨论 C 的内容)1.A :10H C :02 A :89H C :03 A :88H C :04 A :30H C :113-9 执行下列指令序列后,相关位及标志如何变化

20、? MOV 20H,#92HMOV C,02HCPL CMOV 02H,C MOV 2FH,#7FHCLR CORL C,/7FH1. acc:0,c:02. acc:0,c:113-10 CLR A 和 MOV A,#00H 两条指令都可能完成(A)00H 功能,分别从字节数和执行指令所需的机器周期数角度,说明两条指令的优劣。CLR A 单周期指令,双字节;MOV 双周期指令,双字节。CLR 时间快13-11 设两个无符号二进制整数的加数各长 2 个字节,分别存于寄存器 R0、R1和 R2、R3(高位在前),结果存于寄存器 R4、R5 中。试编写求和程序,并问和是几位的?MOV R0,#01

21、HMOV R1,#01HMOV R2,#10HMOV R3,#10Hmov a,R0add A,R1MOV R4,AMOV A,R2ADDC A,R3MOV R5,A和是 16 位的13-12 将上题改为无符号十进制整数(BCD 码),其它要求同上。MOV R0,#01HMOV R1,#01HMOV R2,#10HMOV R3,#10Hmov a,R0add A,R1DAMOV R4,A9MOV A,R2ADDC A,R3DA MOV R5,A和是 16 位的13-13 设两个字节无符号二进制整数减一个字节无符号二进制整数,被减数存于 R2、R3 中,减数存于 R4,并将差存于 R5、R6 中

22、。试编出程序。MOV R2,#01HMOV R3,#01HMOV R4,#10Hmov a,R2subb A,R4MOV R5,AMOV A,R3SUBB A,0MOV R6,A13-14 试编写一段程序,将片内 RAM 20H 单元与片内 RAM 30H 单元交换数据。MOV A,20HXCH A,30HMOV A,30HXCH A,20H13-15 在上题基础上,将程序功能扩展到片内 RAM 20H2FH 与片内 RAM 30H3FH 各自对应单元(20H 与 30H,21H 与 31H,2FH 与 3FH)交换数据参照 131413-16 编写一段能实现约 1 秒钟延时的软件延时程序。D

23、M: MOV R5,#10 ;TMDM0: MOV R6,#200 ;TMDM1: MOV R7,#50 ;TMNOP ;TMNOP ;TMNOP ;TMDJNZ R7,$ ;2TMDJNZ R6,DM1 ;2TMDJNZ R5,DM0 ;2TMRET ;2TMEND13-17 试用流程图说明下段程序实现的功能。ORG 9000HLP0: MOV R0,#35HMOV R1,#3AHMOV R3,#05HCLR C10LP1: MOV A,R0ADDC A,R1MOV R0,AINC R0INC R1DJNZ R3,LP1LP2: SJMP LP2END初始赋值 R 0 , R 1 ,R 3

24、作为循环次数R 3 5R 0 和 R 1 中的内容相加 , 结果放入 R 0 中R O 指针往下一个单元 ; R 1 指针往下一个单元 ;NY等待13-18 将片内 RAM 22H 单元存放的以 ASC码表示的数,转换为十六进制数后,存于片内 RAM 21H 单元中。ORG 0000HAJMP LM0ORG 0030HLM0: MOV A,22HCJNE A,#41H, LM3LM3: JNC LM1SUBB A,#30HSJMP LM2LM1: SUBB A,#37HLM2: MOV 21H,ARETEND13-19 设被减数存于(R2)、减数存于(R3)中,结果存于累加器(A)。试通过具体

25、指令分析程序所实现功能。BCDSUB:MOV A,#9AHCLR CSUBB A,R3 ;减数 求补11ADD A,R2DA ARETEND 13-20 编程求和:-65+36=?设加数和被加数分别存于片内RAM 的30H、31H 地址中和数存于片内RAM的41H 、40H地址中。因为原数x=65=41H,X补码=28|x|=100H |41H|=BFH所以扩成16 位后变为FFBFH;因为原数y=36=24H ,Y补码=24HORG 0900HMOV R0,#30H ;加数存放单元MOV R1,#40H ;和数存放单元ACALL SQADD ;转加法子程序SJMP ORG 0950HSQAD

26、D: MOV R2,#00H ;高位先全令其为00HMOV R3,#00HMOV A,R0 ;取加数JNB ACC.7,POS1 ;若正数,则转 POS1,确认(R2)=00HMOV R2,#0FFH ;若负数,(R2)=FFH( 即全1)POS1: INC R0MOV B,R0JNB B.7,POS2 ;若正数,则转POS2,确认(R3)=00HMOV R3,#0FFH ;若负数,(R3)=FFH(即全1)POS2: ADD A,B ;加低8位MOV R1,A ;存入和的低8 位,在片内RAM的40H 地址中INC R1 ;(R1)=(R1)+1=41HMOV A,R2ADDC A,R3 ;

27、再加进位MOV R1,A ;存入和的高8 位,在片内RAM的41H 地址中RETEND第 14 章14-1 8051 单片机 P0P3 口结构有何不同?作通用 I/O 口输入数据使用时,应注意什么?P1 口、P2 口、P3 口为准双向口,P0 口为三态双向口。P0 口在需要进行外部ROM、RAM 等扩展时,采用分时复用的方式;P1 口是一个准双向口,只作通用的I/O 口使用;P2 口也是一个准双向口,可作为 IO 口和地址数据总线;P3 口是一个多功能的准双向口。第一功能是作通用的 I/O 口使用,其功能和原理与 P1口相同。第二功能是作控制和特殊功能口使用。1214-2 什么是对 I/O 口

28、的“读-修改-写”操作?“读-修改-写”类指令的端口输出:如 CPL P0.0 指令执行时,单片机内部产生“读锁存器”操作信号,使锁存器 Q 端的数据送到内部总线,在对该位取反后,结果又送回 P0.0 的端口锁存器并从引脚输出。之所以是“读锁存器”而不是“读引脚” ,是因为这样可以避免因引脚外部电路的原因而使引脚的状态发生改变而造成的误读。如外部接一个驱动晶体管的情况。14-3 8051 单片机内部设有几个定时/计数器?它们是由哪些特殊功能寄存器组成?两个定时/计数器。定时/计数器 T0 由特殊功能寄存器 TH0、TL0(字节地址分别为 8CH 和 8AH)构成,定时/计数器 T1 由特殊功能

29、寄存器 TH1、TL1(字节地址分别为 8DH 和 8BH)构成。其内部还有一个 8 位的定时器方式寄存器 TMOD 和一个8 位的定时器控制寄存器 TCON。这些寄存器之间是通过内部总线和控制逻辑电路连接起来的。TMOD 主要是用于选定定时器的工作方式,TCON 主要是用于控制定时器的启动和停止。14-4 定时/计数器用作定时器时,其定时时间与哪些因素有关?作计数器时,对外界计数频率有何限制?定时与时钟频率,定时器的控制器的工作方式相关。计数器则要求输入信号的电平应在跳变后至少一个机器周期内保持不变,以保证在给定的电平再次变化前至少被采样一次,那么外界计数频率不能超过系统时钟频率。14-5

30、简述定时器四种工作方式的特点,如何选择和设定?表 14-1 工作方式选择M1M0 方式 说明 最大计数次 数 最大定时时间 fosc=6MHz00 0 13位定时/计数器 213=8192 81922s=16.384ms01 1 16位定时/计数器 216=65536 655362s=131.072ms10 2自动装入时间常数的8位定时/计数器 28=256 2562s=0.512ms11 3对 T0分为两个8位计数器;对T1在方式3时停止工作 28=256 2562s=0.512ms14-6 当定时器 T0 用作模式 3 时,由于 TRl 位已被 T0 占用,如何控制定时器T1 的开启和关闭

31、?当定时器 T0 处于工作方式 3 时,定时/计数器 Tl 可定为方式 0、方式 l 和方式2。可以在 TOMD 中设置开启和关闭。14-7 使用一个定时器,如何通过软、硬件结合的方法,实现较长时间的定时?定时器实现最大时间定时,再由软件计数。14-8 8051 单片机定时/计数器作定时和计数时,其计数脉冲分别由谁提供?定时器的脉冲由系统时间给,计数脉冲由外部计数器给.1314-9 8051 单片机定时器的门控制信号 GATE 设置为 1 时,定时器如何启动?(GATE)=1 时,用外部中断引脚(INT1 或 INT0)上的高电平来启动定时/计数器运行。14-10 设 8051 单片机的 fo

32、sc=12MHz,要求用 T0 定时 150s,分别计算采用定时方式 l 和方式 2 时的定时初值。方式 1 的初值(2 16-X)110-6s=15010 -6s则(TH1)=0FFH,(TL1)=6AH。方式 2 的初值(2 8-X)110-6s=15010 -6s则 (TL1)=6AH。14-11 设 8051 单片机的 fosc6MHz,问定时器处于不同工作方式时,最大定时范围分别是多少?方式 0 16.384ms方式 1 131.07ms方式 2 0.512ms方式 3 0.512ms14-12 以定时/计数器 1 进行外部事件计数。每计数 1000 个脉冲后,定时/计数器 1 转为

33、定时工作方式。定时 10ms 后,又转为计数方式,如此循环不止。假定单片机晶振频率为 6MHz,请使用方式 l 编程实现。JISHU: MOV TMOD #D0HMOV TH1,#03H ;写入初值MOV TL1,#E8HSETB TR1LOOP: JNB TF1,LOOP ;(TF1)=1,定时器溢出,程序跳转LP: CLR TF1 ;清溢出标志位DINGSHI: MOV TMOD #10HMOV TH1,# 0ECH ;写入初值MOV TL1,# 7HSETB TR1LOOP1: JNB TF1,LOOP1 ;(TF1)=1,定时器溢出,程序跳转LP: CLR TF1 ;清溢出标志位JMP

34、 JISHI14-13 8051 单片机 P1 口上,经驱动器接有 8 个发光二极管,若 fosc6MHz,试编写程序,使这 8 个发光管每隔 2s 循环发光(要求用 T1 定时)。ORG 2000H14MOV TMOD,01H ;采用定时器 T0,工作方式 1MOV R7,#14HMOV R0,#FEH 点灯LOOP1:MOV TH0,#3CH ;写入初值MOV TL0,#0B0HSETB TR0 ;启动 T0LOOP: JNB TF0,LOOP ;(TF0)=1,定时器溢出,程序跳转CLR TF0MOV A,R0MOV P2,ARL AMOV R0,ADJNZ R7,LOOP1RETEND

35、14-14 8051 单片机的 P1 口接 8 个发光二极管(正极通过电阻接+5V),根据 P3.0和 P3.1 的电平编程,且满足下列要求:(1) 当 P3.0 为低电平时,点亮其中的一个发光二极管;(2) 当 P3.0 为高电平、P3.1 为低电平时,点亮全部发光二极管;(3) 当 P3.0、P3.1 都为高电平时,发光二极管按 4 个一组,每隔 50ms 轮流反复点亮(由 T0 定时,fosc6MHz)。1. L1:MOV A,P3ANL A,#01HJNZ A,L1MOV P3,#FEH2. L1:MOV A,P3ANL A,#03HSUBB A,#01HJNZ A,L1MOV P3,

36、#FFH3 L1:MOV A,P3ANL A,#03HSUBB A,#03HJNZ A,L115延时程序可参照 141314-15 已知 8051 单片机的 fosc=6MHz,请利用 T0 和 P1.0 输出矩形波。矩形波高电平宽 50s,低电平宽度 300s。参照例 14.1 高电平的初值为 FFE7,低电平初值为 FF6AORG 2000HMOV TMOD,10H ;采用定时器 T1,工作方式 1MOV TH1,#0FFH ;写入初值MOV TL1,#6AHSETB TR1 ;启动 T1LOOP: JNB TF1,LOOP ;(TF1)=1,定时器溢出,程序跳转LP: CLR TF1 ;

37、清溢出标志位MOV TH1,#0FFH ;重新装入初值MOV TL1,#E7HCPL P1.0 ;P1.0 取反SJMP LOOPEND14-16 已知 8051 单片机的 fosc12MHz,用 T1 定时。试编程由 P1.0 和 P1.1引脚分别输出周期为 2ms 和 500s 的方波。参照例 14.1 500us 初值为 FE0C 先输出 500us 方波,然后用软件计数输出 2ms的方波ORG 2000HMOV TMOD,10H ;采用定时器 T1,工作方式 1MOV TH1,#0FEH ;写入初值MOV TL1,#0CHMOV R1,#02HSETB TR1 ;启动 T1LOOP:

38、JNB TF1,LOOP ;(TF1)=1,定时器溢出,程序跳转LP: CLR TF1 ;清溢出标志位MOV TH1,#0FEH ;重新装入初值MOV TL1,#0CHCPL P1.1 ;P1.0 取反DEC R1JNZ LOOP16CPL P1.0SJMP LOOPEND14-17 8051 单片机的定时器在何种设置下可提供三个 8 位定时/计数器?这时,定时器 1 可作为串行口波特率发生器。若波特率按9600bps,4800bps,2400bps,1200bps,600bps,100 bps 来考虑,则此时可选用的波特率是多少(允许存在一定误差)?设时钟频率为 12MHz。方式 3 下可提

39、供 3 个定时器。可选用9600bps,4800bps,2400bps,1200bps,600bps。14-18 简述串行口接收和发送数据的过程。发送电路由 SBUF(发送)和发送控制器等电路组成;接收电路由 SBUF(接收)、接收移位寄存器和接收控制器等组成。SBUF(发送) 和 SBUF(接收) 都是 8 位数据缓冲寄存器:SBUF(发送 )用于存放将要发送的数据,SBUF(接收) 用于存放串行口接收到的数据。CPU 可以通过执行 MOV 指令对它们进行存取。具体如下:(1) 具有两个物理上独立的接收、发送缓冲器 SBUF,它们占用同一地址 99H,可同时发送、接收数据。发送缓冲器只能写入

40、,不能读出;接收缓冲器只能读出,不能写入。(2) 串行发送与接收的速率与移位时钟同步,定时器 T1 作为串行通信的波特率发生器,T1 溢出率经 2 分频(或不分频)又经 16 分频作为串行发送或接收的移位时钟。移位时钟的速率即波特率。(3) 接收器是双缓冲结构,在前一个字节被从接收缓冲器读出之前,第二个字节即开始被接收。但当第二个字节接收完毕而前一个字节 CPU 未读取时,就会丢失前一个字节内容。(4) 串行口的发送:MOV SBUF ,A,一帧数据发送完毕, (TI)=1。(5) 串行口的接受:当一帧数据接收完毕,(RI)=1 ,MOV A,SBUF。(6) 串行口是一个可编程接口,由串行口

41、控制寄存器 SCON 和电源控制寄存器 PCON设置。14-19 设 fos=12MHz。试编写一段程序实现功能为:对定时器 T0 初始化,使之工作在方式 2,产生 200s 定时,并用查询 T0 溢出标志的方法,控制 P1.0 输出周期为 2ms 的方波。分析:输出周期是 2ms,则定时时间为 1ms,方式 2 的最大定时时间为 0.512ms,并且方式 2 有自动重新装入初值的有点,所以选用定时/计数器的方式 2 编程。首先在伪指令的定义起始地址部分要加入所采用中断的中断入口地址。另外要进行定时器所赋初值的计算。采用定时器 T0,设 T0 的初值为 X,则:(2 8X) 1106 s200 106 sX=38H参考程序如下:ORG 0000H17LJMP MAINORG 000BHDEC R5 MOV A,R5JZ D1RETIMOV R5 ,#05HCPL P1.0RETIORG 0100HMAIN: MOV TMOD, #02HMOV TL0, #38HMOV TH0, #00HMOV R5 ,#05HSETB TR0SETB ET0SETB EAHERE: AJMP HERE14-20 什么是串行异步通信,它有哪些作用?在异步通信中,被传送的信息通常是一个字符代码或一个字节数据,它们都以规定的相同传送格式(字符帧格式)一帧一帧地发送或接收

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报