《单片微型机原理、应用与实验-习题手册》

更新时间:2024-07-02 03:37:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

《单片微型机原理、应用与实

验》 习题手册

计算机与信息工程学院

控制教研室 2005年5月

练习题部分

2-4章练习题

一、 空题

1. 在单片机机内部包含有计算机的基本功能部件( 中央处

理器CPU ),( 存贮器 ),( I/O接口 ),给单片机配上适当的( 外围设备 )和(软件 ),便构成了一个单片机应用系统。

2.根据单片机内部程序存贮类型的不同可分为以下五种单片机:( ROM )、( 无ROM )、(EPROM )、( E*2PROM )、( falsh memory )。 3.单片机典型的三种复位电路为:( 上电自动复位 )、(人工复位 )、( 系统自动复位 )

4.乘除法指令需4个机器周期,需(48)个时钟周期,对于时钟频率为6M的CPU执行时间为( 8 )μS

5.内部ROM中不同的区域从功能和用途划分为三个区域( 工作寄存器区 )、( 位寻址区 )、( 堆栈或数据缓冲区 )。特殊功能寄存器(SFR)离散地分布在( 80——FFH )地址中。

6.MCS-51中典型的8051单片机有5个中断源:2个是(——INT0 )、( ——INT1)上输入的外部中断源;3个内部中断源,它们是( 定时器/计数器T0 、T1溢出中断源 )和( 串行口发送接收中断源 )。这些中断源分别锁存在( TCON )、(SCON )的相应位中。 7.单片机汇编语言常用的伪指令有:( 定位伪指令 )、(定义字节伪指令 )、(字定义伪指令 )、(字或字节赋值伪指令 )、(位赋值伪指令 )、(汇编结束伪指令 )。

8.MCS-51指令操作数的寻址方式有五种:( 立即数寻址 )、(直接寻址 )、(寄存器寻址 )、(寄存器间接寻址 )、( 基寄存器加变址寄存器间接寻址 )。

9.按功能分类,MCS-51指令系统可分为( 数据传送指令 )、( 算术运算指令 )、(逻辑运算指令 )、( 位运算指令 )、(控制转移指令 )五种。

10.单片机汇编语言中能用在分支和循环程序设计的指令有( 无条件转移指令 )、( 条件转移指令 )两类,其中用于循环指令中最常用的两条指令为:( 比较不相等转移指令

第 2 页 共 32 页

)、( 减一不为零转移指令 )

11.单片机汇编语言中调用和返回指令有( 短调用ACALL )、( 长调用LCALL )、( 子程序返回RET )、( 中断返回RETI )。

12.MCS-51单片机采用12MHz晶振时,ALE引脚正脉冲频率为( 2)。

13.若由程序设定RS1、RS0=11,则工作寄存器R0-R7的直接地址为( 18-1FH )。

14. MCS-51位寻址区范围为( 20-2F ),共( 128)个位地址。

15.MCS-8051系列单片机字长是(8 )位,有(40 )根引脚,96系列字长是( 16)位。单片机的特点有(体积小、价格低、功能全 )。

16.8051单片机的存储器的最大特点是(指令存储器与数据存储器

分开编址 ),Px并行口的地址是与( 数据 )存储器统一编址的,或者说属于该存储器 17.LE信号的作用是( 低8位地址锁存 )。

18.8051复位后,PC=(0 )H。若希望从片内存储器开始执行,EA

脚应接( 高 )电平,PC值超过( 0FFF)H时,8051会自动转向片外存储器继续取指令执行。

19.令JB 0A7H,ABC的作用是( 若P2口的第七位为1则跳转到

ABC )。(0A7H是P2.7的地址) 20.10、将CY与A的第0位的非求或的指令是( ORL

C,/ACC.0 ),若原A=0,执行后A=(0 )。

21.MCS—51单片机外部中断请求信号有电平方式和(边沿触发方

式 ),在电平方式下,当采集到INT0、INT1的有效信号为( 0 )时,激活外部中断。 22.MCS-51单片机的CPU包括了( 控制器)和( 运

算器 )两部分电路。

23.MCS-51单片机的PSEN引脚是(外部程序存储器 )选

通信号

二、判断题(正确的在题后括号内写“对”,错误的写“错”并写出原因。)

1、 ACALL调用范围和AJMP的转移范围是一样的。(T)

2、 MCS-51单片机内部高128个字节特殊寄存器区都是可位寻址区。(F)

3、 直接寻址方式是访问特殊寄存器的唯一方法。(T) 4、 END表示指令执行到此结束(F)。 5、 单片机是面向控制的。(F)

第 3 页 共 32 页

6、 各中断源对应的中断服务程序的入口地址是任意设定(F) 7、 .判断以下各条指令是否正确(LL1和PROC为标号)

(1)MOVX @R0,B F (2)MOV A,30H T (3)MOVX A,30H F (4)ADDC A,R7 T (5) JBC P0,LL1 F (6)ANL #99H ,36H F (7)MOV C,ACC.0 T (8)ORL P1.0,P3.1 F (9)JC A,R1 F (10)ACALL PROC T

8、 指出下列指令哪些是非法的?

⑴ MOV 70H,@R1 ⑵ MOV R1,@A ⑶ MOV R2,80H ⑷ MOV A,DPTR ⑸ MOV 44H,55H ⑹ MOV P1.0,A ⑺ XCH A,@R3 ⑻ XCHD A,70H

⑼ MOVX A,@DPTR ⑽ MOVX 70H,@R ⑾ MOVC A,@A+PC

⑿ MOVC 70H,@A+DPTR ⒀ ADD A,30H ⒁ ADC 70H,@R1 ⒂ INC @R1 ⒃ DA 70H ⒄ CPL A ⒅ CPL R1 ⒆ RLC A ⒇ RRC 70H

三、程序分析

1.阅读下列程序段,写出每条指令执行后的结果,并说明此程序段完成什么功能?

MOV R1,#30H ;(R1)= 30H MOV A,#64H ;(A)= 64H

第 4 页 共 32 页

ADD A,#47H ;(A)= ABH (CY)= 0 (AC)= 0 DA A ;(A)= 11H ,(CY)= 1 (AC)= 1 MOV @R1,A ;(R1)= 30H ,(30H)= 11H 2.指出下列指令采用何种寻址方式:

INC R0

ANL 50H,#66 ANL A,@R0 MOV A,#70H MOVC A,@A+PC MOVC A,@A+DPTR

3.说明MCS—51单片机的下列各条指令中源操作数的寻址方式(可直接在每条指令后面书写)

1.ANL A,20H 2.ADDC A, 3.JZ rel 4.CLR C

5.RRA

4. 阅读程序,指出程序功能,并给循环体内指令加上注释。

MOV R0,#31H MOV R3,#3 MOV R1,#00H MOV R2,#00H

LOOP: MOVX A,@R0 ADDC A, R2 MOV R2, A JNC LOOP1 INC R1

LOOP1:INC R0

DJNZ R3,LOOP

5. 分析下面程序所完成的功能

MOV R0,#20H MOV R7,#06H CLR A

LOOP: MOVX @R0,A INC R0 DJNZ, R7,LOOP 6. 分析下面程序所完成的功能 MOV DPTR,#3000H CLR A

第 5 页 共 32 页

MOVC A,@A+DPTR MOV R7 ,A

7.完成下列求最大值程序 MOV R0,#20H MOV R7,#08H MOV A,@R0 DEC R7 LOOP:INC R0

MOV 2AH,@R0 ( )A,2AH,CHK CHK:JNC LOOP1 ( )

LOOP1:DJNZ( ),LOOP MOV 2BH,A RET

2.最大值放在()单元

3.若变为求最小值,则应改变的指令是()改为()。 8.程序分析题

设在MCS-51单片机片内RAM中,(20H)=40H,(40H)=22H,(22H)=10H,P1=0CFH,当下列程序执行完毕后,各单元的内容分别为多少?请填入给定的各个寄存器及片内单元中。

MOV R0,#20H MOV A,@R0 MOV R1,A MOV B,@R1 MOV P3,P1 MOV R3,22H MOV @R3,20H (A)= (B)= (R0)= (R1)= (P1)= (P3)= (20H)= (22H)=

四、问答题

1. 请画出单片机基本系统结构图?(P35) 2. 8051片上硬件的内部资源有哪些?(P37)

3. 什么叫机器周期?它与时钟周期的关系如何?(P44) 4. 什么叫中断?MCS-51中断优先级分为几级?(P51~P54)

5. 8051有哪几个中断源?哪些是内部中断源?哪些是外部中断源?

(P51~P54)

6. 简述堆栈概念及其存取原则?(P48、P68)

第 6 页 共 32 页

7. 请说出程序状态字(PSW)各位的名称及含义?(P64)

8.已知A = 0F8H,当执行ADD A,#0A9H指令后,PSW中的OV、CY、AC、P各为多少?若是有符号数,A中的结果用十进制表示是多少? 9. 如果想将中断服务程序放置在程序存储区的任意区域,在程序中应该

作何种设置?请举例加以说明。 五、编程题

1.从内部RAM30H单元开始,有10个单字节数据。试编一个程序,把其中的正数、负数分别送40H和50H开始的内部RAM单元。

2编写一段子程序,将二位压缩的BCD码转换为二进制数,入口、出口均是A。若是非法的BCD码,则A返回值为255。

答 案:

一、添空题

1.中央处理器(CPU) 存贮器(memory) (I/O)接口电路 外围设备 软件

2.ROM型 EPROM型 E2PROM型 Flash Memory型 无ROM型

3.上电自动复位 人工复位 系统复位 4.48 8

5.工作寄存器区 位寻址区 堆栈或数据缓冲区 80H~0FFH

6.INT0 INT1 定时器/计数器T0、T1的溢出中断源 串

行口的发送接收中断 TCON SCON

7.定位伪指令 定义字节伪指令 字定义伪指令 字或字节赋

值伪指令 位赋值伪指令 汇编结束伪指令 8.寄存器寻址 直接寻址 寄存器间接寻址 立即寻址 基

寄存器加变寄存器间接寻址 9.数据传送指令 算术运算指令 逻辑运算指令 位操作指令

控制转移指令

10.无条件转移指令 条件转移指令 比较不相等转移指令 减

1不为0转移指令

11.短调用指令(ACALL) 长调用指令(LCALL) 从子程

序返回指令(RET) 从中断返回指令(RETI) 12.2

第 7 页 共 32 页

13.18~1FH

14.20H~27h 128

15. 8 40 16 体积小、价格低、功能全 16.指令存储器与数据存储器分开编址 数据 17.低8位地址锁存 18.0 高 0FFF

19.若P2口的第7位为1则跳转到ABC 20.ORL C,/ACC.0 0 21.边沿方式 低电平 22.运算器 控制器 24.外部程序存储器

二、判断题

1、○ 2、×3、○ 4、× 5、× 6、× 7、×○×○××○××○ 8、○×○×○×○×○×○×○×○×○×○×○×○×○×○×

三、程序分析

1. MOV R1,#30H ;(R1)= 30H

MOV A,#64H ;(A)= 64H

ADD A,#47H ;(A)= ABH (CY)= 0 (AC)= 0 DA A ;(A)= 11H ,(CY)= 1 (AC)= 1 MOV @R1,A ;(R1)= 30H ,(30H)= 11H

此程序段完成的功能:求两个BCD码数(64H和47H)的和,并将结果放在内部RAM的30H单元。 2. 寄存器寻址 直接寻址 寄存器间接寻址 立即寻址 基寄存

器加变寄存器间接寻址 基寄存器加变寄存器间接寻址 3. 直接寻址 立即寻址 相对寻址 位寻址 寄存器寻址 4. 程序,指出程序功能,并给循环体内指令加上注释。

LOOP: MOVX A,@R0 ;取一个加数 ADDC A, R2 ;单字节数相加 MOV R2, A ;和低位送R2 JNC LOOP1 ;无进位转移 INC R1 ;有进位高位加1

LOOP1:INC R0 ;指向下一单元

DJNZ R3,LOOP ;次数减1,不为0转移

功能: 存储在外部数据存储器31H开始的3个字节数相加,结果低字节送R2,高字节送R1。 5.下面程序所完成的功能

第 8 页 共 32 页

请将片外RAM20H-25单元清零程序 6. 分析下面程序所完成的功能

将ROM 3000H单元内容送R7 7.完成下列求最大值程序

CJNE MOV A,2AH R7 2BH JNC LOOP1 JC LOOP1

8.程序分析题 (A)=40H (B)=22H (R0)=20H (R1)=40H (P1)= 0CFH (P3)=0CFH (20H)=40H (22H)=40H 四、问答题

8. OV:0、CY:1、AC:1、P:1 A:-95

9. 如果要将中断服务程序放置在程序存储区的任意区域,在程序中要通

过在中断地址区的对应地址上设置跳转指令才可实现对中断服务程序的执行。 例如:外部中断0的中断服务程序INTOP放置在程序存储区的任意区域,此时,通过以下方式,可实现对中断服务程序的执行:(4分)

ORG 0003H

JMP INTOP 五、编程题

1.从内部RAM30H单元开始,有10个单字节数据。试编一个程序,把其中的正数、负数分别送40H和50H开始的内部RAM单元。

MOV R0,#30H MOV R1,#40H MOV A,#50H MOV R7,#10

LOOP: MOV 20H,@R0

JB 20H.7,FSHU

ZSHU: MOV @R1,20H

INC R1 INC R0 SJMP NEXT

FSHU: XCH A,R1

MOV @R1,20H XCH A,R1 INC A INC R0

NEXT: DJNZ R7,LOOP

第 9 页 共 32 页

2、编写一段子程序,将二位压缩的BCD码转换为二进制数,入口、出口均是A。若是非法的BCD码,则A返回值为255。 SUBP:MOV R1,A

ANL A, #0F0H SWAP A

CJNE A, #10, NEXT1

NEXT1:JNC ERROR

MOV B, #10 MUL AB XCH A, R1 ANL A, #0FH CJNE A, #10,NEXT2

NEXT2:JNC ERROR

ADD A, R1 RET

ERROR:MOV A,#255 RET

第 10 页 共 32 页

第七章

一、填空题

习题答案

1、 程序;数据;64KB

2、 低位地址/数据;高位地址 3、 EA

4、 MOV;MOVX;MOVC;MOVC 5、 片选(或选片) 6、 端口(或口) 7、 三态控制 8、 缓冲;锁存 9、 数据;控制 10、 256;RAM;14;定时器/计数器 11、 转换结束 12、 定时传送;查询;中断 13、 计数;双积分;逐次逼近;并行

二、选择题

1、B; 2、A; 3、C; 4、B; 5、B; 6、D; 7、C; 8、A; 9、C

三、问答题

2、主程序为 ORG AJMP ORG AJMP ORG START:LCALL MOV MOV MOV SETB MOV MOV MOVX

0000H START 0013H CINT1 1000H DELAY R0,#20H R4,#08H R2,#00H IT1

IE,#84H P2,R2 @R1,A

第 26 页 共 32 页

LOOP: JNB SJMP DONE: ACALL SJMP 中断服务程序: CINT1: CLR MOVX MOV INC INC MOV MOVX DJNZ CLR LOOP1:RETI END 3、

EX1,DONE LOOP DELAY START P2.7 A,@R1 @R0,A R0 R2

P2,R2 @R1,A R4,LOOP1 EX1

第 27 页 共 32 页

1、INT1 P2.0 P2.1 P2.2 P2.3 P2.4 P2.5 P2.6 P2.7 MCS-51 P0.0 ~ P0.7 ALE WR RD PSEN 27256 373 A0 ~A7 6264 A0 ~A7 A8~A12 D0~D7 CS 8255 A0 A1 D0~D7 CS WR RD CE OE WE OE 第 28 页 共 32 页

第八章

一、填空题

单片机的输入/输出设备接口

1、在多位LED显示器接口电路的控制信号中,必不可少的是( 段)控信号和( 位)控信号。

2、键扫描口的输出为11111101时,键输入口的读出为1101,第一行的首键号为8,则闭合键的键号为(9 )。

二、选择题

1、 为给扫描法工作的键盘提供接口电路,在接口电路中只需要B A、一个输入口 B、一个输入口和一个输出口 C、一个输出口 D、两个输入口和一个输出口

2、 在LED显示中,为了输出位控和段控信号,应使用指B A、MOV B、MOVX C、MOVC D、XCH

三、问答题

1、 如何在一个4×4的键盘中使用扫描法进行被按键的识别? 2、 什么是按键抖动?CPU消除按键抖动的方法是什么?

3、 什么叫显示缓冲区?显示缓冲区一般放在哪里?显示缓冲区通常存放

的是什么?

4、 什么是LED显示器的静态显示方式和动态显示方式?如何实现? 5、 试画出8031通过外接一片8155和一个4×8键盘、6位LED显示器的

接口逻辑。8155的PA口为输出口,作为键扫描口和6位显示器的扫描口;PB口作为显示器的段数据口;8155的C口为输入口,作为键输入口。已知8031内部RAM的20H、21H、22H单元中有六位BCD码(20H中为高两位)。请编出能在下图中自右到左显示出来的程序。

第 29 页 共 32 页

第八章

一、填空题

1、 段;位;

2、9

习题答案

二、选择题

1、B;

2、B

三、问答题

1、

X3 X2 X1 X0 12 8 4 0 13 9 5 1 14 10 6 2 15 11 7 3 +5V Y0 Y1 Y2 Y3

图 4×4键盘结构

如果把行线X0~X3接到单片机的输入口,列线Y0~Y7接到单片机的输出口。则在单片机的控制下,先使列线Y0为低电平,其余三根列线Y1、Y2、Y3都为高电平,读行线状态。如果X0、X1、X2、X3都为高电平,则Y0这一列没有键闭合。如果读出的行线状态不全为高电平,则低电平的行线和Y0相交的键闭合。如果Y0这一列上没有键闭合,接着使列线Y1为低电平,用同样的方法检查Y1这一列上有无键闭合。以此类推,最后使列线Y3为低电平,其余列线为高电平,检查Y3这一列上是否有键闭合。这种逐行逐列地检查键盘状态的过程称为对键盘的一次扫描。

2、 按键抖动:按键的闭合和断开过程中的抖动。

去抖方法:为了保证CPU对键的闭合仅作一次处理,必须去除抖动。判别到键盘上有键闭合后,延迟一段时间再判别键盘的状态,若仍有键闭合,则认为键盘上有一个键处于稳定的闭合期,对键盘进行扫描。否则,认为是键的抖动。

第 30 页 共 32 页

本文来源:https://www.bwwdw.com/article/z69.html

Top