《单片机原理及应用综合习题及答案(共49页).doc》由会员分享,可在线阅读,更多相关《单片机原理及应用综合习题及答案(共49页).doc(49页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上综合习题一一、填空题 1、单片机的发展大致可分为 个阶段。2、单片机与普通计算机的不同之处在于其将 、 和 3部分集成于一块芯片之上。3、单片机的存储器设计采用哈佛结构,它的特点是 。4、CPU主要由 器和 器组成。CPU中的 用来处理位操作。5、第四代计算机所采用的主要器件是 。6、MCS-51系列单片机中,片内无ROM的机型是 ,有4KB ROM的机型是 ,而有4KB EPROM的机型是 。7、32的补码为 B,补码B代表的真值为 D。8、原码数DFH= D,原码数6EH= D。9、100的补码= H,100的补码= H。10、在8031单片机内部,其RAM高端1
2、28个字节的地址空间称为 区,但其中仅有 个字节有实际意义。11、通常单片机上电复位时PC= H、SP= H、通用寄存器则采用第 组,这一组寄存器的地址范围是从 H H。12、若PSW为18H,则选取的是第 组通用寄存器。13、8031单片机复位后R4所对应的存储单元地址为 H,因上电时PSW= H。14、若A中数据为63H,那么PSW的最低位(即奇偶位P)为 。15、在微机系统中,CPU是按照 来确定程序的执行顺序的。16、堆栈遵循 的数据存储原则,针对堆栈的两种操作为 和 。17、在8031单片机中,使用P2、P0、口传送 信号,且使用了P0口来传送 、信号,这里采用的是 技术。18、使用
3、8031单片机时需将EA引脚接 电平,因为其片内无 存储器,8031片外可直接寻址的存储空间达 KB。19、8位机中的被码数80H和7FH的真值分别为 和 。20、配合实现“程序存储自动执行”的寄存器是 ,对其操作的一个特别之处是 。21、MCS-51单片机PC的长度为 位;SP的长度为 位,数据指针DPTR的长度为 位。二、单选题 1、电子计算机技术在半个世纪中虽有很大进步,但至今其运行仍遵循着一位科学家提出的基本原理。这位科学家是:( )(A)牛顿 (B)爱国斯坦 (C)爱迪生 (D)冯诺伊曼2、用晶体管作为电子器件制成的计算机属于:( )(A)第一代 (B)第二代 (C)第三代 (D)第
4、四代3、通常所说的主机是指:( )(A)运算器和控制器 (B)CPU和磁盘存储器(C)CPU和主存 (D)硬件和软件4、计算机能直接识别的语言是:( )(A)汇编语言 (B)自然语言(C)机器语言 (D)高级语言5、在CPU中,控制器的功能是:( )(A)进行逻辑运算 (B)进行算术运算(C)分析指令并发出相应的控制信号 (D)只控制CPU的工作6、所谓“裸机”是指:( )(A)单片机 (B)单板机(C)只装备操作系统的计算机 (D)不装备任何软件的计算机7、下列数据中有可能是八进制数的是:( )(A)764 (B)238 (C)396 (D)7898、下列4种不同进制的无符号数中最小的数是:
5、( )(A)B (B)37O(八进制数) (C)75 (D)2AH9、PC是:( )(A)一根硬件信号线 (B)一个可由用户直接读写的8位RAM寄存器(C)一个不可寻址地特殊功能寄存器 (D)一个能自动加1计数的ROM存储单元10、在CPU内部贩映程序运行状态或反映运算结果的一些特征寄存器是:( )(A)PC (B)PSW (C)A (D)SP三、判断说明题 1、在微机性能指标中,CPU的主频越高,其运算速度越快。( )2、微型计算机与一般计算机的主要区别是体积小、重量轻、耗电少、价格便宜。( )3、在MCS-51系统中,一个机器周期等于1us。 ( )4、所有的十进制小数都能准确地转换为二进
6、制小数。 ( )5、调用子程序及返回与堆栈有关。 ( )6、PC可以看做是指令存储区的地址指针。 ( )7、SP内装的是栈顶首址的内容。 ( )8、如果指令系统中不给用户提供PUSH、POP指令的话,则设立堆栈毫无意义。 ( )9、在MCS-51系统中,PUSH、POP动作每次仅处理一个字节。10、所有计算机系统的堆栈都是向地址高端逐渐生长的,即均为“向上生成”堆栈。 ( )四、简答题 1、请叙述微处理器P、微机C和微机系统CS三者之间的区别。2、单片机与其他常见微机(如PC机)有什么不同?它有什么独特优点?3、堆栈区与一般的数据存储区有何异同?其重要作用是什么?4、如果程序中要用到两组工作寄
7、存器,试问SP的初值应如何设定?习题一 答案一、填空题 1、 三;2、 CPU、存储器、I/O;3、将程序存储空间和数据存储空间在物理上分开;4、运算器、控制器、布尔处理器;5、中大规模以上集成电路;6、8031、8051、8751;7、 、38;8、63、110;9、64、9C; 10、特殊功能寄存器区或SFR、21; 11、0000、07、0、0007; 12、3(从第0组排起);13、04、00; 14、0; 15、程序计数器PC; 16、先进后出(或后进先出)、PUSH、POP;17、地址、数据、总线复用;18、低、程序、128(因程序和数据空间均可达64KB);19、128、127;
8、 20、PC、每取完一字节指令后PC内容会自动加1;21、16、8、16。二、单选题 1、D 2、B 3、C 4、C 5、C 6、D 7、A 8、B 9、C 10、B三、判断说明题 1. 错误,并非所有计算机系统的堆栈都向上生成,有的计算机系统设计为向下生成。 2. 正确(主频即做一次加法或寄存器间传送的时间,主频越高,运算速度越快。) 3. 错误。微型计算机的最大不同时;运算器和控制器集成在一块集成电路芯片上。 4. 错误。若晶振频率变化,则机器周期也将变化,只有在fosc=12MHZ的情况下机器周期才会等于1us。 5. 错误。十进制小数不一定能准确地转换为二进制小数,例如1 / 7。 6
9、. 正确。 7. 正确。 8. 错误。SP内装的是栈顶地址本身。 9. 错误。即使没有PUSH、POP指令,也要设立堆栈以完成子程调用及中断调用等功能。 10. 正确。 四、简答题 1、运算器、控制器合称为中央处理单元(CPU)或处理器;若这两部分集成在同一块集成电路硅片上,则称为微处理器(uP)或MPU。微机 uC包括微处理器uP之外,还含有存储器和I/O接口。微机系统ucs除包括微机uC硬件之外,还包含系统软件和应用软件。2、主要有三点不同:一是CPU、存储器和I/O接口这几部分集成在一片芯片上;二是存储器设计采用了哈佛结构,将程序存储器和数据存储器在物理上分开;三是供位处理和位控制的资源
10、丰富、I/O接口完善。优点:集成度高、价格低廉,性能/价格比高;程序存储器和数据存储器在物理上分开,可使程序不受干扰,抗干扰能力强;布尔处理能力强,适于工业控制。 3、堆栈区与一般存储区相同之处是:它们都属于存储器的一部分,都能存放数据。其主要不同之处是对数据的存取规则有异:一般存储区使用随机读/写规则,而堆栈使用先进后出(或后进先出)规则。堆栈采用这种特殊规则后,可以圆满完成子程序调用或中断调用,多级子程序嵌套等功能。当然,堆栈区内的存储单元也可以使用随机读/写指令,但在那种情况下已经不把该单元当做堆栈看待了。4、这要看程序中用到的是哪两组通用寄存器。如果是第01组,即要占用片内RAM的00
11、H0FH单元,那么就要将上电或复位时自动生成的SP=07H的状态,用指令改设为0FH。 若程序中用到的是第23组,则SP应被改设为1FH。习题二一、填空题 1、指令格式由 和 这两部分组成。 2、寻址方式分为对 的寻址和对 的寻址两大类。 3、访问8031片处数据存储器采用的是 寻址方式。 4、设A=55H,R5=AAH,则执行ANL A,R5指令后的结果是A ,R5= 。 5、判断并填写下列指令的字节数: 指令类型 字节数 指令类型 字节数 MOVC A,A+DPTRMOV dir, #data,ACLR bitMOV R,AMOV A,#dataMOV Rn,APUSH directZNC
12、DPTRMOV dir1, dir26、计算机的主机包括 A 。指令由 B 解释。设某条指令中的操作数(或操作数地址)部分为x,地址为x的主存单元内容为y,地址为y的主存单元内容主z。如果用直接寻址方式。参与操作的数据为 C;如果用立即寻址方式,参与操作的数据为 D ;如果用间接寻址方式,参与操作的数据为 E 。 供选择的答案: A:运算器和控制器 CPU和磁盘存储器 硬件和软件 CPU 和主存 B:编译程序 解释程序 控制器 运算器 CE: x x+y y y+Z Z x+z7、一般情况下,指令由 A 和操作数地址码两部分组成。利用堆栈进行运算的指令可以不设置 B 。浮点运算指令对用于 C
13、的计算机是十分必要的,而十进制运算指令对有大量I / O数据的用于 D 的计算机更为合适。移位指令属于 E 类指令。 供选择的答案 A、B:指令码 地址码 操作码 校验码 C、D:事务处理 科学计算 工业控制 辅助教学 E: 输入/输出 传送 运算 控制 请选择并填写答案:A为 、B为 、C为 、D为 、E为 。二、判断下列指令是否合乎规定(合乎规定在题后打“”,不合乎规定的打“”。) 1、MOV R0,R1 ( ) 2、DEC DPTR ( ) 3、CPL 30H ( ) 4、CPL R5 ( ) 5、RLC R0 ( ) 6、MOV A, R3 ( )7、MOVXA, R1 ( )8、PU
14、SH DPTR ( ) 9、MOV PC,#2000H ( ) 10、MOVA, 30H ( ) 11、MOVC,30H ( ) 12、MOV F0, C ( ) 13、MOV F0, ACC.3 ( ) 14、CPL F0 ( )三、简答题 1、什么是指令?什么是指令系统? 2、举例说明MCS-51指令系统中的任意5种寻址方式。 3、简述MOVX和MOVC指令的异同之处。四、阅读并分析程序(根据各题具体要求填写答案) 1、以下程序段执行后,A= ,(30H)= 。 MOV 30H,#0AVH MOV A, #0D6H MOV R0, #30H MOV R2, #5EHANL A, R2ORL
15、 A,R0SWAP A CPL A XRL A, #0FEHORL 30H, A 2、以下程序段执行后, (40H)= , (41H)= 。 CLR C MOV A, #56H SUBB A, #0F8HMOV 40H, A MOV A, #78H SUBB A, #0EH MOV 41H, A 3、设内部RAM中59H单元的内容为50H,写出当执行下列程序段后寄存器A、R0和内部RAM中50H,51H单元的内容为何值? MOV A,59HMOV R0,A MOV A,#00HMOV R0, A MOV A, #25H MOV 51H, A MOV 52H, #70H4、设堆栈指针SP中的内容
16、为60H,内部RAM中30H和31H单元的内容分别为24H和10H,执行下列程序段后,61H,62H,30H,31H,DPTR及SP中的内容将有何变化? PUSH 30H PUSH 31H POP DPL POP DPH MOV 30H,#00HMOV 31H,#0FFH5、设A=40H, R1=23H, (40H)=05H。执行下列两条指令后,累加器A和R1以及内部RAM中40H单元的内容各为何值? XCH A,R1XCHD A,R1五、简单编程题 1、试编写一个程序,将内部RAM中45H单元的高4位清0。低4位置1。 2、试编写一个拼字程序(例如将05H和06H拼为56H),设原始数据放在
17、片外数据区的7001H单元和7002H单元中,按顺序拼装后的单字节数放入7002H。习题二 答案 一、填空题1、操作码、操作数或操作数地址;2、 指令、数据;3、 寄存器间接;4、 4、0、AAH;5、如下表:指令类型 字节数指令类型字节数MOVCA,A+DPTR1MOV dir, #data3,A1CLR bit2SETBC1MOV A,#data2MOV Rn,A1PUSH direct2INC DPTR1MOV dir1,dir236、A=、B=、C=、D=、E=7、A=、B=、C=、D=、E=二、判断下列指令是否合乎规定,且说明理由1、,通用寄存器间不能互传。 2、,指令系统中没有提供
18、这条指令。3、。 4、,CPL对字节类地址的操作只允许A。 5、,循环移位只能对A操作。 6、,这种间接寻址方式只允许用R0或R1。 7、。 8、,16位数据无法一次送入堆栈。 9、,PC是不可寻址的SFR。 10、。11、。 12、。 13、,普通位地址内容不能互传。 14、。三、简答题1、指令是控制计算机进行某种操作的命令;指令系统是指一台计算机中所有指令的集合。2、5种寻址方式举例如下:立即寻址:MOV A, #20H直接寻址:MOV A,20H寄存器寻址:MOV A,R0寄存器间接寻址:MOVX A,DPTR变址寻址:MOVC A,A+DPTR3、MOVX和MOVC指令的相同之处;都是
19、数据传送类指令。不同之处:MOVX是在A累加器与片外数据存储器之间双向传送数据的指令;而MOVC则是将程序存储器中内容读入A累加器的指令。四、阅读并分析程序1、A=6EH(30H)=EEH2、(40H)=5EH、(41H)=69H 3、A=25H、R0=50H、(50H)=00H、(51H)=25H 4、(61H)=24H、(62H)=10H、(30H)=00H、(31H)=FFH、DP、TR=2410H、SP=60H 5、A=25H、R1=40H、(40H)=03H五、简单编程1、方法1:用交换指令MOV A,#0FHXCH A,45H方法2:用传送指令MOV 45H;#0FH2、设7001
20、H单元放置的是高位数据,7002H单元放置的是低位数据,两个原始数据都不超过0FH。则程序段如下:MOV DPTR, #7001H MOVX A, DPTR SWAP A INC DPTR MOVX A, DPTR ORL A, B MOVX DPTR, A习题三 一、简答题 1、MCS-51指令集中有无“程序结束”指令?上机调试时怎样实现“程序结束”功能? 2、简述转移指令AJMP target、SJMP shortlable、LJMP target及JMPA+DPTR 的应用场合.二、阅读并分析程序(根据各题具体要求填写答案) 1、已知程序执行前有(40H)=88H,问: 程序执行后(40
21、H)= 。 归纳出该子程序完成的是何种功能。 MOV A,40H JNB ACC.7,GOCPL A INC A MOV 40H, A GO:RET2、阅读程序并回答问题。设:R0=20H、R1=25H、(20H)=80H、(21H)=90H、(22H)=A0H、(25H)=A0H、(26H)=6FH、(27H)=76H,程序如下: CLR C MOV R2,#3LOOP:MOV A,R0ADDC A, R1MOV R0, A INC R0INC R1DJNZ R2, LOOP JNC NEXT MOV R0, #01HSJMP $NEXT: DEC R0SJMP $程序执行后: (20H)=
22、 (21H)= (22H)= (23H)= Cy= A= R0= R1= 3、试用箭头标明如下程序段的执行路线,简要说明理由,并填写程序执行后的结果(已知A=0AH)。 ADD A,#0F4HJBOV,GOEJNB ACC. 7, GOP CPL A SETB 20H. 0RET GOP:CLR 20H. 0RETGOE:MOV A, #0FFHRET 程序执行后:A= H, 20H.0= 。 4、请填写程序执行结果。已知执行前有A=02H、SP=40H、(41H)=FFH、(42H)=FFH,程序如下: POP CPH POP DPL MOV DPTR,#3000HRL A MOV B,A
23、MOVC A, A+DPTR PUSH ACC MOV A, B INC A MOVC A, A+DPTR PUSH ACC RET ORG 3000H DB 10H, 80H, 30H, 80H, 50H, 80H, 程序执行后: A= H、SP= H、(42H)= H、PC= H?5、下述程序执行后,请问SP= A= B= ? MOV SP, #40H MOV A, #30H LCALL SUBR ADD A, #10H BACK: MOV B, A L1: SJMP L1SUBR: POP DPH POP DPL MOV DPTR, #AGI PUSH DPL PUSH DPH RET
24、6、计算下面子程序中指令的偏移量和程序执行的时间(系统晶振频率12MHZ)。 7B0F MOV R3,#15 ;1M 7CFF DL1: MOV R4,#255 ;1M 8B90 DL2: MOVP1, R3 ;2MDC DJNZ R4, DL2 ;2MDB DJNZ R3, DL1 ;2M22 RET ;2M三、编写程序题 1、将片外数据存储器中7000H70FFH单元全部清零。 2、用移位指令编写双字节数据从高向低循环右移4位的子程序,设高8位数据在B寄存器中,低8位在A累加器中。 3、将10个单字节无符号数升序排序,排序前后的数据均置于内部RAM的50H59H单元内。习题三 答案一、简答
25、题1、没有这样的指令。但实现“程序结束”至少可以借助4种办法:用原地踏步指令SJMP $ 死循环。在最后一条指令后面设断点,用断点执行方式运行程序。用单步方式执行程序。在末条指令之后附加一条LJMP监控显示器程序首地址或LJMP 0000H,返回监控状态。2、它们都是程序无条件转移指令,其结果都是改变了PC的内容;但它们寻址过程和应用场合却有所区别:LJMP指令是直接将指令中的16位地址数据送入PC,可在64KB程序存储空间内随意转移(转移范围为64KB)。AJMP指令是将指令中包含的11位地址数据送入PC的低11位,可在该指令附近的当前2KB程序存储空间内转移。SJMP指令是将指令中的8位数
26、据与PC值相加后再送入PC,转移范围小,只能在该指令的前128字节和后127字节内转移(以该指令后一条指令为参照点)。JMP A+DPTR指令是将A内容与DPTR内容右对齐相加后,再送入PC中,与LJMP相似,也可以转移64KB的程序空间。在选用时,凡转移地址超过当前地址2KB的,只能用LJMP指令;凡转移地址在当前地址128 +127字节之间的,可以选用SJMP指令,其余范围可选取用AJMP指令。如果要实现“条件不同,则转移地址不同”的功能,用JMP A+DPTR指令将是最佳选择。二、阅读并分析程序1、(40H)=78H。该子程序的功能是对(40H)内的单字节符号数求补码。注:若只说出是“先
27、取反而后加1”,但无法归纳为对符号数求补码时,扣一半分。2、(20H)=20H、(21H)=00H、(22H)=17H、(23H)=01H、Cy=1、A=17H、R0=23H、R1=28H。3、ADD A,#0F4H JB OV, GOE ;无溢出,不转移 JNB ACC.7,GOP ;ACC.7=1,不转移 CPL A INCA SETB 20H.0 RETGOP:CLR 20H.0 RETGOE:MOV A,#0FFH RETZ程序执行后:A=02H、20H.0=14、A=80H、SP=40H、(41H)=50H、(42H)=80H、PC=8050H。5、SP=40H、a=30H、b=30
28、H。6、机器码填空为:FC和F8时间计算:1个机器周期在12MHZ晶振下的时间是1us. 程序总机器周期数=1+1+(2+2)255+215+2=15348 所以该程序执行时间为15.438ms。三、编写程序 1、方法1:用DPTR作为地址指针 MOV DPTR,#7000H CLR A MOV R0,ALOOP: MOVX DPTR,A INC DPTR DJNZ R0,LOOP ;还可以用GJNE A,DPL,LOOP(因为A=0) SJMP $方法2:P2预先锁存高8位地址,用R0作为地址指针MOV P2,#70HCLR AMOV R0,ALOOP: MOVX R0,ADJNZ R0,L
29、OOPSJMP $2、 PUSH 6FH ;保护现场PUSH PSWMOV 6FH,#4 ;从高向低右移4次计数器LOOP:MOV C,ACC.0 ;C被A的最低位刷新,送入高8位的最高位XCH A,B ;高低8位寄存器互换RRC A ; 高8位先右移,最低拉进入C中XCH A,B ;高低8位寄存器还原RRC A ;低8位右移,C补进最高位DJNZ 6FH,LOOP ;若右移不足4次,继续循环移位POP PSW ;恢复现场POP 6FHRET3、方法1 程序中用到的有关寄存器含义如下:R0存放数据块的地址指针,R2存放每轮比较次数,R3是每轮中的比较次数计数器。F0=PSW、4作为有无交换的标
30、志位。CLR F0MOV R2,#0AHLOOP2: MOV R0,#50H MOV 03H,02H ;即R3R2LOOP1: MOV A, R0 INC R0 CJNE A, B, $+3 JC NEXT MOV R0, A DEC R0 SETB F0EXT: DJNZ R3, LOOP1 JNB F0, DONE CLR R0 DJNZR2, LOOP2DONE: SJMP $方法2 CLR F0 ;清交换标志 MOV R7, #9 ;设置外循环计数器OUTSID: MOV R0,#50H ;R0指向数据区 MOV R6, 07HINSIDE: MOV A,R0 ;取一数据到A INC
31、R0 MOV B, R0 ;取下一步单元数据到B CJNE A, B, $+3 ;AR0? JC NEXCHG ;小于不交换 XCHA,R0 ;大于交换 DEC R0 MOV R0, A INC R0 SETB F0 ;置交换标志NEXCHG: DJNZ R6,INSIDE ;内循环结束? DEC R7 ;下次的内循环少一次 JBC F0, OUTSID ;交换发生继续外循环,并清交换标志 SJMP $ ;未交换结束循环习题四一、填空题 1、计算机对输入/输出设备的控制方式主要有三种。其中, A 方式硬件设计最简单,但要占用不少CPU的运行时间; B 方式的硬件线路最复杂,但可大大提高数据传送
32、效率;而 C 方式则介于上述两者之间。 AC:先进先出 后进先出 直接存储器访问 程序查询 高速缓存 系统总线 程序中断 逐行扫描 请选择并填写答案: A= B= C= 2、I/O端口与外部设备之间传送的信息可分为 类。 3、MCS51单片机系列有 个中断源。上电复位时,同级中断的优先级从 高至低为 、 、 、 、和 ,若IP=B, 优先级别最高者为 、最低者为 。 4、在MCS51单片机系统中,当某中断源发出中断请求,单片机予以响应时,它必须处于 和 两级开中断状态。 5、中断请求信号有 触发和 触发两种触发方式。 6、MCS51单片机8031中有 个 位的定时器/计数器,可以被设定的工作方
33、式有 种。 7、若系统晶振频率为12MHz,则TO工作于定时和计数方式时最高(计数)信号频率分别为 kHz和 kHz。 8、欲对300个外部事件计数,可以选用定时/计数器T1的模式 或模式 。 9、在串行通信中采用偶校验,若传送的数据为0A5H,则其奇偶校验位应为 (用“0”、“1”表示)。 10、在异步通信中若每个字符由11位组成,串行口每秒传送250个字符,则对应波特率为 。二、判断说明题(判错者请说明理由) 1、输入/输出设备必须通过I/O接口才能接到系统总线上和主机进行信息交换。 2、MCS51系统中的P0P3四个端口中,只有P1才是真正的I/O接口。 3、为使准双向的I/O口工作在输
34、入方式,必须保证它被预先置为“1”。 4、P1口最低位上接入了打印机的BUSY信号,则查看该信号的指令是MOV C, P1.0。 5、DMA方式在传送过程中,地址修改、字节计数等操作完全由硬件电路来实现。三、单项选择题(从四个备选答案中选出一个正确答案,并将其代号写在括号内) 1、外部中断1固定对应的中断入口地址为( )。 A、0003H B、000BH C、0013H D、001BH2、各中断源发出的中断请求信号,都会标记在MCS51系统中的( )。 A、TMOD B、TCON/SCON C、IE D、IP3、MCS51单片机可分为两个优先级别。各中断源的优先级别设定是利用寄存器( )。 A
35、、IE B、IP C、TCON D、SCON4、MCS51的并行I/O口信息有两种读取方法,一种是读引脚,还有一种是( )。 A、读锁存 B、读数据 C、读A累加器 D、读CPU5、MCS51的并行I/O口读-改-写操作,是针对该口的( )。 A、引脚 B、片选信号 C、地址线 D、内部锁存器 6、以下指令中,属于单纯读引脚的指令是( )。 A、MOV P1,A B、ORL P1,#0FH C、MOV C,P1.5 D、DJNZ P1,shortlable7、( )不属于微型机引入中断技术后的好处。 A、分时操作 B、实时处理 C、故障处理 D、高速传送数据 8、( )并非单片机系统响应中断的
36、必要条件。 A、TCON或SCON寄存器内的有关中断标志位置为1B、IE中断允许寄存器内的有关中断允许位置1C、优先级寄存器内的有关位置1D、当前一条指令执行完 四、简答题 1、程序查询方式与程序中断方式有何异同之处? 2、MOV P1,#0FFH这条指令应当理解为输出全“1”到P1口呢,还是理解为从P1口读引脚的预备动作? 3、MCS51单片机响应中断的典型时间为多少?在哪些情况下CPU将推迟对中断申请的响应? 4、单片机系统中的定时和计数功能有何区别?分别适用于什么场合?简述其工作原理。 5、串行数据传送的主要优点和用途是什么?五、写出完整源程序 利用8031单片机的P1.0端持续产生如图
37、41所示的方波,系统晶振频率为12MHz。要求软件时方法或定时器方法完成此题要求。 图41 第五题图 六、设计程序 请设计一个由单片机控制的大会发言限时器,例如限时15分钟。具体要求是:当发言者开始讲话时,主持人手动按下“开始”键(无锁按钮),15分钟后由微机控制发出提示信号(提示信号可自行设定)。假定单片机晶振频率选用6MHz,另可提供1Hz稳频脉冲源,请画出电路示意图,并用中断方式完成本题的程序设计。习题四 答案一、填空题1、A=、 B=、 C=。 2、3。 3、5,外部中断0、定时器0、外部中断1、定时器1和串行口;外部中断1、定时器1。 4、源允许、总允许。 5、电平、边沿。 6、2、
38、16、4。 7、1000、500。 8、0、1。 9、0。 10、2750。二、判断说明题1、正确。2、错误。P0P3都是真正的I/O口,只是当片外需要扩展存储器或其他外设时,其中3个才复用为三总线。3、正确。4、正确 此时要求读引脚。5 、正确。三、单项选择题1、C 2、B 3、B 4、A 5、D 6、C 7、D 8、C 四、简答题1、相同之处:都是由CPU通过程序来传送数据,都需要借助CPU工作;不同之处:直接程序传送(包括无条件传送和查询式I/O传送)方式对接口电路的要求很简单,但对传送信息的时间要求很严格,且占用了CPU的大量时间,效率低下。而中断传送方式可大大提高CPU利用率、允许多个外设并行工作,但硬件线路稍复杂。2、这要看P1口所接下来何种外设,也要看程序中的上下文,不能断然理解为前者或后者。若所接外设为单纯输出设备,则理解为送出全“1”信号;若所接外设为单纯输入设备,则理解为读并口数据之前的预备动作;若所接外设为输入/输出双向传输设备,则要根据程序流程及该指令之前的程序意图去理解。3、典型(也是最短)时间为3个机器周期。若出现以下情况将推迟对中断申请的响应:1)正在执行的中断服务级别很高(或同级);