1、《单片机原理及应用》模拟试卷一 一. 选择题 (正确答案在序号前打√,每小题2分,共30分) 1、 下列有关MCS-51中断优先级控制的叙述中,错误的是D (A)低优先级不能中断高优先级,但高优先级能中断低优先级 (B)同级中断不能嵌套 (C)同级中断请求按时间的先后顺序响应 (D)同时同级的多中断请求,将形成阻塞,系统无法响应 2、 外中断初始化的内容不包括A (A)设置中断响应方式 (B)设置外中断允许 (C)设置中断总允许 (D)设置中断方式 3、 执行中断返回命令,要从堆栈弹出断点地址,以便去执行被中断了的主程序。从堆栈弹出的
2、断点地址送给C (A)A (B)CY (C)PC (D)DPTR 4、 在MCS-51中,需要外加电路实现中断撤除的是D (A)定时中断 (B)脉冲方式的外部中断 (C)串行中断 (D)电平方式的外部中断 5、 中断查询,查询的是B (A)中断请求信号 (B)中断标志位 (C)外中断方式控制位 (D)中断允许控制位 6、 在下列寄存器中,与定时/计数控制无关的是C (A)TCON(定时控制寄存器) (B)TMOD(工作方式控制寄存器) (
3、C)SCON(串行控制寄存器) (D)IE(中断允许控制寄存器) 7、 下列定时/计数硬件资源中,不是供用户使用的是C (A)高8位计数器TH (B)低8位计数器TL (C)定时器/计数器控制逻辑 (D)用于定时/计数控制的相关寄存器 8、 在工作方式0下计数器是由TH的全部8位和TL的5位组成,因此其计数范围A是 (A)1~8192 (B)0~8191 (C)0~8192 (D)1~4096 9、 与定时工作方式1和0比较,定时工作方式2不具备的特点是B (A)计数溢出后能自动重新加载计数初值 (B)增加计数器位数 (C)提高定时精度
4、D)适于循环定时和循环计数应用 10. 假定设置堆栈指针SP的值为37H,在进行子程序调用时把断点地址进栈保护后,SP的值为D (A) 36H (B)37H (C)38H (D)39H 11.假定(A)=83H,(R0)=17H,(17H)=34H,执行以下程序段A ANL A,#17H ORL 17H,A XRL A,@R0 CPL A 后,A的内容为 (A)CBH (B)03H (C)EBH (D)C8H 12.串行通信的传送速率单位是波特,而且波特的单位是B (A)字符/秒 (B)位/
5、秒 (C)帧/秒 (D)帧/分 13.三态缓冲器的输出应具有三种状态,其中不包括B (A)高阻抗状态 (B)低阻抗状态 (C)高电平状态 (D)低电平状态 14. 为给扫描法工作的键盘提供接口电路,在接口电路中只需要B (A)一个输入口 (B)一个输入口和一个输出口 (C)一个输出口 (D)两个输入口和一个输出口 15.内部RAM中的位寻址区定义的位是给D (A)位操作准备的 (B)移位操作准备的 (C)控制转移操作准备的 (D)以上都对 二. 填空题 (每空1分,共24分) 1.假定外部
6、数据存储器2000H单元的内容为80H,0000H单元的内容为90H,执行下列指令后,累加器A中的内容为( 80H )。 MOV P2,#20H MOV R0,#00H MOVX A, @ R0 2.假定(SP)=60H,(ACC)=30H,(B)=70H,执行下列指令: PUSH ACC PUSH B 后,SP的内容为( 62H ),61H单元的内容为( 30H ),62H单元的内容为( 70H )。 3.设A=01××××××B,×表示随机状态,为1或0,执行指令ORL A,#03H后A=( 01
7、××××11B ) 4.假定(A)=0FFH,(R3)=0FH,(30H)=0F0H,(R0)=40H,(40H)=00H。执行指令: INC A INC R3 INC 30H INC @R0 后,累加器A的内容为( 00H ), 40H的内容为( 01H )。 5.在MCS—51中PC和DPTR都用于提供地址,但PC是为访问( 程序 )存储器提供地址,而DPTR是为访问( 数据 )存储器提供地址。 6.MCS-51可提供( 程序 )和( 数据 )两种存储器、最大存储空间可达( 64KB
8、 )的两个并行存储器扩展系统。 7.扩展存储器而构造系统总线,应以P0口的8位口线作为( 低位地址/数据 )线,以P2口的口线作为( 高位地址 )线。 8、设A=58H,执行指令ADD A,#99H 后,A=( 0F1H ),C=( 0 ),再执行指令DA A后A=( 57H ),C=( 1 ) 。 9、计算延时程序的执行时间。(设时钟f=12MHz) 源程序 指令周期(M) 指令执行次数 DELAY:MOV
9、R6,#64H 1 ( 1 ) I1: MOV R7,#0FFH 1 ( 100 ) I2: DJNZ R7,I2 2 ( 100*255 ) DJNZ R6,I1 2 ( 100 ) RET 2 ( 1 ) 延时时间t=(1×1+1×100+2×100×255+2×100+2×1)×T=
10、51.3 ms 三. 简答题 (每小题5分,共10分) 1. 单片机复位的作用是什么?有几种复位方法?复位后单片机的状态如何(写出PC、PSW、SP、DPTR、P0、P1、P2、P3寄存器的状态值)? (1) 复位的作用是使CPU和系统中其它部件都处于一个确定的初始状态,并从这个状态开始工作。 (2)复位方法有上电自动复位和按键手动复位 (3)复位后单片机的状态为:PC=0000H、PSW=00H、SP=07H、DPTR=0000H、P0、P1、P2、P3各为FFH 2.何为单片机的中断系统?80C51单片机有几个中断源?CPU响应中断时,中断入
11、口地址各是多少? (1)中断:程序执行过程中,允许外部或内部事件通过硬件打断程序的执行,使其转向为处理外部或内部事件的中断服务程序中去;完成中断服务程序后,CPU继续执行原来被打断的程序。 (2) 80C51单片机有5个中断源,分别是INT0、INT1、T0、T1和串行中断。 (3)CPU响应中断时,中断入口地址如下: 中断源 入口地址 INT0 0003H INT1 000BH T0 0013H T1 001BH 串行中断 0023H 四. 编程题 (每小题8分,共16分) 1. 设
12、在内RAM 40H开始的存储区有若干个字符和数字, 已知最后一个为字符“$“(并且只有一个,试统计这些字符数字的个数,结果存入30H单元中。 参考程序: ORG 0000H START: MOV R1,#40H ;R1作为地址指针 CLR A ;A作为计数器 LOOP: CJNE @R1,#24H,NEXT ;与“$”号比较,不等转移 SJMP NEXT1 ;找到“$“结束循环 NEXT: INC A ;计数器加1 INC R1 ;指针加1 SJMP
13、 LOOP ;循环 NEXT1: INC A ;再加入”$”这个字符 MOV 30H,A ;存结果 END 2. 试编一程序,分别统计在内部RAM的30H~50H单元的数据区中奇数和偶数的个数,并将奇数和偶数的个数分别存放在51H和52H单元中。 参考程序: ORG 0000H MOV 51H ,#0H MOV 52# ,#0H MOV R1 ,#30H MOV R0 ,#20H MOV A,@R1 INC R1 ANL A , #01H JZ LOOP1
14、 INC 51H SJMP LOOP2 LOOP1: INC 52H LOOP2: DJNZ R0 , LOOP3 RET 五. 编程设计题(每小题10分,共20分) 1.用8XX51的P1口接8个LED发光二极管,由 INT0接一消抖按键开关,开始P1.0的LED亮,以后由INT0按键每中断一次,下一个LED亮,顺序下移,且每次只一个LED亮,周而复始。请编制程序。 参考程序: ORG 0000H AJMP MAIN ORG 0003H RL A ;中断服务
15、 MOV P1,A RETI MAIN: MOV A,#0FFH MOV P1,A ;第一灯亮 SETB EA SETB EX0 ;允许INT0外部中断 SETB IT0 ;中断触发方式为下降沿触发 SJMP $ ;等待中断 2. 如图示,为应用串行口扩展并行静态显示电路,试编一子程序将内RAM中50H、51H单元内容(0~9)分别在数码管上显示出来(只要求编写发送子程序)。 LED数码管为共阳顺序,其0~9的字段码分别为C0H、F9H、A4H、B0H、99H、92H、82H、F8H、80H、90H。 参考程序: DIR2: SETB P3.5 MOV R2,#02H MOV R1,#50H MOV DPTR,#TAB LP: MOV A,@R1 MOVC A,@A+DPTR MOV SBUF,A JNB TI,$ CLR TI INC R1 DJNZ R2,LP CLR P3.5 RET TAB: DB 0C0H、F9H、A4H、B0H、99H、92H、82H、F8H、80H、90H。 第 5 页 共 5 页






