1《单片机原理与接口技术》模拟试题(1)一、填空(每题2分,共10分)1、在定时器工作方式0下,计数器的宽度为13位,若系统晶振频率为6MHZ,则最大定时时间为16384μs。2、设(SP)=60H,指令ACALLDIS指令地址为3020H,执行这个指令后,(SP)=62H,(61H)=20H。3、异步串行数据通信有单工、半双工和全双工三种数据通路形式。4、在MCS-51中,PC和DPTR都用于提供地址,但PC是为了访问程序存储器提供地址,而DPTR是为了访问程序、外部数据存储器提供地址。5、已知(A)=59H,执行指令INCA后,(A)=5AH,继续执行DAA后,(A)=60H。二、选择题(每小题2分,共10分)1、寻址空间为外部程序存储器所用的指令是(C):A.MOVXB.MOVC.MOVCD.ADDC2、在中断响应后必须用软件清零的是(B).A.TF1B.TIC.IE1D.TF03、七段共阳极发光两极管显示字符‘P’,段码应为(D):A.67HB.73HC.8EHD.76HE.90H4、PC的值是(C)A.当前指令前一条指令的首地址B.当前正在执行指令的首地址C.下一条指令的首地址D.控制器中指令寄存器的地址5、在MCS-51中需要外加电路实现中断撤除的是(B)A.定时中断B.脉冲触发方式的外部中断C.串行中断D.电平触发方式的外部中断三、指令题(每小题4分,共16分)1、将外部ROM的2030H单元的内容传送到外部RAM的2000单元。MOVDPTR,#2030HCLRAMOVCA,@A+DPTRMOVDPTR,#2000HMOVX@DPTR,A2、实现P1.0=P1.1∨/P1.2。MOVC,P1.1ORLC,/P1.2MOVP1.0,C3、已知某端口地址为2FFFH,将该端口的内容读到片内RAM20H中。MOVDPTR,#2FFFHMOVXA,@DPTRMOV20H,A4、将累加器第1、3、5位求反。(用一条指令)XRLA,#2AH四、填写下表(每空2分,共10分)指令寻址方式CLR40H位寻址PUSHACC寄存器间址寻址或直接寻址MOVCA,@A+PC变址寻址SJMP$相对寻址MOVX@DPTR,A寄存器寻址五、读程序(每小题5分,共10分)21、设(A)=38H,R0=28H,(28H)=18H,执行下列程序后,(A)=0D7HANLA,#27HXRLA,28HORLA,@R0CPLA2、设(A)=38H,(20H)=49H,PSW=00H,(B)=02H,填写以下中间结果。SETBCSUBBA,20H(A)=0EFH(CY)=1(AC)=1RRCA(A)=0F7H(CY)=1(P)=1MULAB(A)=0EEH(B)=01H(OV)=1六、简答题(共14分)1、简述SJMP、AJMP和LJMP的异同点。(6分)sjmp:相对寻址方式转移指令,短转移指令,转移范围为当前PC的值的-128~127字节。Ajmp:绝对转移指令,转移范围为当前PC值所在的页面2K范围内。Ljmp:长转移指令。转移范围为64K,与当前PC值无关2、简述中断的全过程(8分)(1)中断申请:外部中断请求信号是通过对芯片引脚P3.2和P3.3采样的结果来设置TCON寄存器中断响应标志位的状态。定时中断和串行中断是直接置位TCON和SCON中各自的中断请求标志位。CPU在状态S6按优先级顺序对中断标志位进行查询。若有标志位为“1”,则在下一个机器周期的S1状态进行中断响应。(2)中断响应:首先将相应中断的优先触发器置“1”,然后将程序计数器PC的内容压入堆栈以保护断点地址,再将系统设定的中断入口地址装入PC。(3)中断处理:执行相应的中断服务程序(4)中断返回:执行到RETI,将相应中断的优先触发器复位,再从堆栈中弹出断点地址送入程序计数器PC,返回断点处重新执行被中断的主程序。七、编程题(10分)已知晶振频率为12MHz,在P1.7引脚上输出周期为400微秒的等宽矩形波。用中断方式实现.1、确定工作方式2、计算定时常数3、写出完整程序,并作适当注释。解:设定T0为工作方式2,TMOD=00000010B=02H,定时常数为X,则(28-X)×10-6=200×10-6X=256-200=56=38H程序如下:ORG0000HIN0:CPLP1.7SJMPMAINRETIORG000BHENDSJMPIN0MAIN:MOVTMOD,#02HMOVTH0,#38HMOVTL0,#38HSETBEASETBET0SETBTR0八、读图题(20分)阅读下列硬件图,补齐连接线(5分),并回答问题(各5分):31、ALE、PSEN、WR、RD的功能ALE作地址锁存的选通信号,以实现低八位地址的锁存,PSEN信号作扩展程序存储器的读选通信号WR、RD作为扩展数据存储器和I/O端口的读写选通信号。2、图中各芯片的功能74LS373:地址锁存器,用来锁存P0口发送的地址低8位2764:容量为8KB的程序存储器(EPROM),用来存储程序6264:容量为8KB的数据存储器(RAM),用来存储数据8031:不含程序存储器的8位单片机芯片,是不带I/O设备的微型计算机3、2764、6264的地址范围2764:0E000H~0FFFFH6264:0D000H~0EFFFH《单片机原理与接口技术》模拟试题(2)一、填空(每题2分,共10分)1、MCS-51单片机片内有5个中断源,其中2个外部中断源。2、设定T1为计数器方式,工作方式2,则TMOD中的值为60H(高位为6即可)。3、若IT1=0,当引脚P3.2为低电平的时候,INT0的中断标志位IE0才能复位。4、在接口电路中,把已经编址并能进行读写操作的寄存器称为端口。5、在单片机中,为实现数据的I/O传送,可使用三种控制方式,即无条件传送方式、查询方式和中断方式二、选择题(每小题2分,共10分)1、寻址空间为数据程序存储器所用的指令是(A):A.MOVXB.MOVC.MOVCD.ADDC42、执行中断返回指令,从堆栈弹出地址送给(C).A.AB.CYC.PCD.DPTR3、七段共阴极发光两极管显示字符‘H’,段码应为(E)A.67HB.6EHC.91HD.76HE.90H4、在串行通信中,8031中发送和接收的寄存器是(B)。A.TMODB.SBUFC.SCOND.DPTR5、波特的单位是(B)A.字符/秒B.位/秒C.帧/秒D.字节/秒三、指令题(每小题4分,共16分)1、将20H单元清零MOV20H,#00H或CLRAMOV20H,A2、将片外RAM2000H中的低字节与片内20H中的低字节交换。MOVDPTR,#2000HXCHDA,@R0MOVR0,#20HMOVX@DPTR,AMOVX@DPTR,A3、已知某端口地址为2FFFH,将片内RAM20H的内容写到该端口中。MOVA,20HMOVXDPTR,#2FFFHMOVX@DPTR,A4、把DPTR的内容压入堆栈PUSHDPHPUSHDPL四、填写下表(每空2分,共10分)指令寻址空间5CLR40H位寻址区PUSHACC片内RAM(数据存储器)MOVCA,@A+PC(ROM)程序存储器SJMP$(ROM)程序存储器MOVX@DPTR,A外部RAM(数据存储器)五、读程序(每小题5分,共10分)1、设(A)=38H,R0=28H,(28H)=18H,执行下列程序后,(A)=0E7HORLA,#27HANLA,28HXCHDA,@R0CPLA2、设(A)=38H,(20H)=49H,PSW=00H,(B)=02H,填写以下中间结果。SETBCADDCA,20H(A)=82H(CY)=0(AC)=1RLCA(A)=04H(CY)=1(P)=1MULAB(A)=08H(B)=00H(OV)=0六、简答题(共14分)1、简述子程序调用和执行中断服务程序的异同点。(8分)相同点:均能中断主程序执行本程序,然后再返回断点地址继续执行主程序。不同点:(1)中断服务程序入口地址是固定的,子程序调用入口地址是用户自己设定的。(2)中断服务子程序返回指令除具有子程序返回指令所具有的全部功能之外,还有清除中断响应时被置位的优先级状态、开放较低级中断和恢复中断逻辑等功能。(3)中断服务子程序是在满足中断申请的条件下,随机发生的;而子程序调用是用户主程序事先安排好的。2、已知晶振频率为6MHz,在P1.0引脚上输出周期为500微秒的等宽矩形波,若采用T1中断,工作方式2,试写出中断初始化程序(6分)MOVTMOD,#20HSETBET16MOVTL1,#06HSETBTR0MOVTH1,#06HSJMP$SETBEA七、编程题(10分)将内部RAM20H为首的16个单元的8位无符号数排序写出程序,并作适当注释SORT:MOVR0,#20HMOVR7,#07HCLRTR0;交换标志位复位LOOP:MOVA,@R0MOV2BH,AINCR0MOV2AH,@R0CLRCSUBBA,@R0;比较前后两个数JCNEXT;MOV@R0,2BHDECR0MOV@R0,2AHINCR0SETBTR0;置交换标志位有效NEXT:DJNZR7,LOOPJBTR0,SORT;若交换标志位有效,继续进行HERE:SJMP$