51单片机基础知识试题题库(含答案) 下载本文

第1章 习题参考答案 一、填空题:

1、当MCS-51引脚ALE有效时,表示从P0口稳定地送出了 低8位 地址。

2、MCS-51的堆栈是软件填写堆栈指针临时在 片内 数据存储器内开辟的区域。

3、当使用8751且EA=1,程序存储器地址小于 1000H 时,访问的是片内ROM。

4、MCS-51系统中,当PSEN信号有效时,表示CPU要从 外部程序 存储器读取信息。

5、MCS-51有4组工作寄存器,它们的地址范围是 00H~1FH 。

6、MCS-51片内20H~2FH范围内的数据存储器,既可以字节寻址又可以 位 寻址。

7、PSW中RS1 RS0=10时,R2的地址为 12H 。 8、PSW中RS1 RS0=11时,R2的地址为 1AH 。 9、单片机系统复位后,(PSW)=00H,因此片内RAM寄存区的当前寄存器是第 0 组,8个寄存器的单元地址为 00H ~ 07H 。 10、PC复位后为 0000H 。

11、一个机器周期= 12 个振荡周期= 6 个状态周期。 12、PC的内容为 将要执行的指令地址 。

1

13、在MCS-51单片机中,如果采用6MHz晶振,1个机器周期为 2us 。

14、内部RAM中,位地址为30H的位,该位所在字节的字节地址为 26H 。

15、若A中的内容为63H,那么,P标志位的值为 0 。 16、8051单片机复位后,R4所对应的存储单元的地址为 04H ,因上电时PSW=

00H 。这时当前的工作寄存器区是第 0 工作寄存器区。 17、使用8031芯片时,需将/EA引脚接 低 电平,因为其片内无 程 序 存储器。

18、片内RAM低128个单元划分为哪3个主要部分: 工作寄存器区 、 位 寻址区 和 用户RAM区 。

19、通过堆栈操作实现子程序调用,首先就要把 PC 的内容入栈,以进行断点保护。

调用返回时,再进行出栈保护,把保护的断点送回到 PC 。 20、MCS-51单片机程序存储器的寻址范围是由程序计数器PC的位数所决定的,因为MCS

-51的PC是16位的,因此其寻址的范围为 64 KB。 21、MCS-51单片机片内RAM的寄存器共有 32 个单元,分为 4 组寄存器,每组 8

个单元,以R0~R7作为寄存器名称。

2

22、但单片机的型号为8031/8032时,其芯片引线EA一定要接 低 电平。 二、选择题:

1、当MCS-51复位时,下面说法正确的是( A )。 A、 PC=0000H B、 SP=00H C、 SBUF=00H D、 P0=00H

2、PSW=18H时,则当前工作寄存器是( D )。

A、 0组 B、 1组 C、 2组 D、 3组

3、MCS-51上电复位后,SP的内容应是( B )。

A、 00H B、 07H C、 60H D、 70H

4、当ALE信号有效时,表示( B )。

A、 从ROM中读取数据 B、 从P0口可靠地送出低8位地址

C、 从P0口送出数据 D、 从RAM中读取数据 5、MCS—51单片机的CPU主要的组成部分为( A )。 A、运算器、控制器 B、加法器、寄存器 C、运算器、加法器 D、运算器、译码器 6、单片机上电复位后,PC的内容和SP的内容为( B )。 A、0000H,00H B、0000H,07H C、0003H,07H D、0800H,08H

3

7、单片机8031的ALE引脚是( B )。

A、输出高电平 B、输出矩形脉冲,频率为fosc的1/6

C、输出低电平 D、输出矩形脉冲,频率为fosc的1/2

8、访问外部存贮器或其它接口芯片时,作数据线和低8位地址线的是( A )。

A、P0口 B、P1口 C、P2口 D、P0口 和 P2口

9、PSW中的RS1和RS0用来( A )。

A、选择工作寄存器区号 B、指示复位 C、选择定时器 D、选择工作方式

10、上电复位后,PSW的值为( D )。 A、1 B、07H C、FFH D、0

11、单片机上电复位后,堆栈区的最大允许范围是( B )个单元。

A、64 B、 120 C、128 D、256

12、单片机上电复位后,堆栈区的最大允许范围是内部RAM的( D )。

A、00H—FFH B、00H—07H C、07H—7FH D、08H—7FH

13、对于8031单片机,其内部RAM( D )。

4

A、只能位寻址 B、只能字节寻址 C、既可位寻址又可字节寻址 D、少部分能位寻址 14、8031 单片机若晶振频率为fosc=12MHz,则一个机器周期等于( C ) μS。

A、1/12 B、1/ 2 C、1 D、2 15、MCS—51单片机的数据指针DPTR是一个16位的专用地址指针寄存器,主要用来( B )。

A、存放指令 B、存放16位地址,作间址寄存器使用

C、存放下一条指令地址 D、存放上一条指令地址 16、ALU表示( D )。

A、累加器 B、程序状态字寄存器 C、计数器 D、算术逻辑部件

17、单片机上电后或复位后,工作寄存器R0是在( A )。 A、0区00H单元 B、0区01H单元 C、0区09H单元 D、SFR

18、单片机8051的XTAL1和XTAL2引脚是( D )引脚。 A、外接定时器 B、外接串行口 C、外接中断 D、外接晶振

19、8051单片机的VSS(20)引脚是( B )引脚。

A.主电源+5V B.接地 C.备用电源 D.访问片外存贮器

5

20、8051单片机的VCC(40)引脚是( A )引脚。 A.主电源+5V B.接地 C.备用电源 D.访问片外存贮器

21、8051单片机中,输入/输出引脚中用于专门的第二功能的引脚是( D )。

A、P0 B、P1 C、P2 D、P3

22、MCS—51复位后,程序计数器PC=( B )。即程序从( B )开始执行指令。

A、0001H B、0000H C、0003H D、0023H 23、MCS—51的专用寄存器SFR中的堆栈指针SP是一个特殊的存贮区,用来( C ),它是按后进先出的原则存取数据的。 A、存放运算中间结果 B、存放标志位 C、暂存数据和地址 D、存放待调试的程序 24、单片机的堆栈指针SP始终是指示( B )。

A、堆栈底 B、堆栈顶 C、堆栈地址 D、堆栈中间位置

25、MCS—51单片机复位后,专用寄存器ACC的状态是( C )。 A、0000H B、07H C、00H D、0FFH 26、当程序状态字寄存器PSW状态字中RS1和RS0分别为0和1 时,系统先用的工作寄存器组为( B )。

A、组0 B、组 1 C、组2 D、组3

6

27、8051单片机中,唯一一个用户可使用的16位寄存器是( D )。

A、PSW B、ACC C、SP D、DPTR 28、8051的程序计数器PC为16位计数器,其寻址范围是( D )。

A、8K B、16K C、32K D、64K 29、单片机应用程序一般存放在( B )中。

A、RAM B、ROM C、寄存器 D、CPU 三、判断题

1、当MCS-51上电复位时,堆栈指针SP=00H。( × ) SP=07H 2、PC存放的是当前正在执行的指令。( × ) 是将要执行的下一条指令的地址

3、MCS-51的特殊功能寄存器分布在60H~80H地址范围内。( × ) 80H~FFH

4、在MCS-51系统中,一个机器周期等于1.5us。( × ) 若晶振频率为8MHz,才可能为1.5us

5、8031的CPU是由RAM和EPROM所组成。( × ) CPU由运算器和控制器组成

6、PC可以看成使程序存储器的地址指针。( √ ) 7、判断以下有关PC和DPTR的结论是否正确?

A、DPTR是可以访问的,而PC不能访问。 ( √ ) B、它们都是16位的存储器。 ( √ )

7

C、它们都有自动加“1”的功能。 ( × )PC有自动加“1”的功能,而DPTR的 加“1”则需通过指令INC DPTR来完成。

D、DPTR可以分为两个8位的寄存器使用,但PC不能。( √ ) 8、程序计数器PC不能为用户编程时直接使用,因为它没有地址。( √ )

9、内部RAM的位寻址区,只能供位寻址使用,而不能供字节寻址使用。( × ) 位寻址区既可以供位寻址使用,又可以供字节寻址使 用。

10、8031共有21个特殊功能寄存器,它们的位都是可以用软件设置的,因此,是可以进行位寻址的。( × ) 特殊功能寄存器中其 单元地址能被8整除的才可以进行位寻址。 11、MCS—51单片机是高档16位单片机。( × )

12、MCS—51的产品8051与8031的区别是:8031片内无ROM。( √ )

13、8051的累加器ACC是一个8位的寄存器,简称为A,用来存一个操作数或中间结果。( √ )

14、8051的程序状态字寄存器PSW是一个8位的专用寄存器,用于存程序运行中的各种状态信息。( √ )

15、MCS—51的数据存贮器在物理上和逻辑上都分为两个地址空间:一个是片内的256字节的RAM,另一个是片外最大可扩充64K字节的 RAM。( √ )

8

16、单片机的复位有上电自动复位和按钮手动复位两种,当单片机运行出错或进入死循环时,可按复位键重新启动。( √ ) 17、单片机的一个机器周期是指完成某一个规定操作所需的时间,一般情况下,一个机器周期等于一个时钟周期组成。( × ) 18、单片机的指令周期是执行一条指令所需要的时间。一般由若干个机器周期组成。( √ )

19、单片机系统扩展时使用的锁存器,是用于锁存高8位地址。( × )

20、MCS—51单片机上电复位后,片内数据存储器的内容均为00H。( × )

21、MCS—51单片机的数据存贮器是指外部存贮器。( × ) 22、MCS—51单片机的特殊功能寄存器集中布置在片内数据存贮器的一个区域中。( √ )

23、当8051单片机的晶振频率为12MHZ时,ALE地址锁存信号端的输出频率为2MHZ的方脉冲。( √ ) 四、问答题

1、80C51 ROM空间中,0000H~0023H有什么用途?用户应怎样合理安排?

答:0000H~0023H是80C51系统专用单元,其中0000H为CPU复位地址,0003H~0023H是5个中断源中断服务程序入口 地址,用户不能安排其他内容。一般来讲,从0030H以后,用户可自由安排。

9

2、80C51如何确定和改变当前工作寄存器区?

答:80C51是根据程序状态字寄存器PSW中工作寄存器区选择控制位RS1、RS0(PSW.4、PSW.3)来确定和改变当前工作寄存器 区: RS1、RS0=00——0区 (00H~07H) RS1、RS0=01——1区 (08H~0FH) RS1、RS0=10——2区 (10H~17H) RS1、RS0=11——3区 (18H~1FH)

3、简述读外ROM和读写外RAM用到的控制信号。 答:读外ROM的控制线有3条: ①ALE:控制锁存低8位地址信号。 ②PSEN:控制外ROM输出。 ③EA:确定读外ROM。

读写外RAM控制信号分别为: ①RD:控制外RAM输出。 ②WR:控制外RAM输入。 第2章 习题参考答案 一、填空题

1、指令格式是由 操作码 和 操作数 所组成,也可能仅由 操作码 组成。

2、若用传送指令访问MCS-51的程序存储器,它的操作码助记符应为 MOVC 。

3、若用传送指令访问MCS-51的片内数据存储器,它的操作码助

10

记符应为 MOV 。

4、若访问MCS-51的片外数据存储器,它的操作码助记符应为 MOVX 。

5、累加器(A)=80H,执行完指令ADD A,#83H后,进位位C= 1 。

6、执行ANL A,#0FH指令后,累加器A的高4位= 0000 。

7、JZ rel的操作码地址为1000H,rel=20H,它的转移目的地址为 1022H 。

8、JBC 00H,rel 操作码的地址为2000H,rel=70H,它的转移目的地址为 2073H 。

9、累加器(A)=7EH,(20H)= #04H,MCS-51执行完ADD A,20H指令后PSW.0= 0 。

10、MOV PSW,#10H是将MCS-51的工作寄存器置为第 2 组。 11、指令LCALL 37B0H,首地址在2000H,所完成的操作是 2003H 入栈, 37B0H →PC。

12、MOVX A,@DPTR源操作数寻址方式为 寄存器间接寻址 。

13、ORL A,#0F0H是将A的高4位置1,而低4位保持 不变 。 14、SJMP rel的指令操作码地址为0050H,rel=65H,那么它的转移目标地址为 00B7H 。

11

15、设DPTR=2000H,(A)=80H,则MOVC A,@A+DPTR的操作数的实际地址为 2080H 。

16、MOV C,20H源寻址方式为 位 寻址。

17、在直接寻址方式中,只能使用 8 位二进制数作为直接地址,因此其寻址对象只限于 片 内RAM 。 18、在寄存器间接寻址方式中,其“间接”体现在指令中寄存器的内容不是操作数,而是操作数的 地址 。 19、在变址寻址方式中,以 A 作变址寄存器,以 PC 或 DPTR 作 基址寄存器。 20、假定累加器A中的内容为30H,执行指令 1000H:MOVC A,@A+PC

后,把程序存储器 1031H 单元的内容送入累加器A中。

21、MOVX A,@DPTR源操作数寻址方式为 寄存器间接寻址 。

22、下列程序段的功能: 交换A、B的内容。 PUSH ACC PUSH B POP ACC POP B

23、假定(SP)=60H,(ACC)=30H,(B)=70H,执行下列指令: PUSH ACC

12

PUSH B

后,SP的内容为 62H ,61H单元的内容为 30H ,62H单元的内容为 70H 。

24、假定(SP)=62H,(61H)=30H,(62H)=70H,执行下列指令:

POP DPH POP DPL

后,DPTR的内容为 7030H ,SP的内容为 60H 。 25、假定(A)=85H,(R0)=20H,(20H)=0AFH。执行指令: ADD A,@R0

后,累加器A的内容为 34H ,CY的内容为 1 ,AC的内容为 1 ,OV的内容为 1 。

26、假定(A)=85H,(20H)=0FFH,(CY)=1,执行指令: ADDC A,20H

后,累加器A的内容为 85H ,CY的内容为 1 ,AC的内容为 1 ,OV的内容为 0 。

27、累加器A中存放着一个其值小于或等于127的8位无符号数,CY清“0”后执行

RLC A指令,则A中数变为原来的 2 倍。 28、ORG 2000H LCALL 4000H ORG 4000H

13

ADD A,R2 执行完LCALL指令后,PC= 4000H 。 29、假定(A)=0FFH,(R3)=0FH,(30H)=0F0H,(R0)=40H,(40H)=00H。执行指令: INC A INC R3 INC 30H INC @R0

后,累加器A的内容为 00H ,R3的内容为 10H ,30H的内容为 0F1H ,40H 的内容为 01H 。 30、假定(A)=56,(R5)=67。执行指令: ADD A,R5 DA A

后,累加器A的内容为 00100011B ,CY的内容为 1 。 31、假定(A)=0FH,(R7)=19H,(30H)=00H,(R1)=40H,(40H)=0FFH。执行指令: DEC A DEC R7 DEC 30H DEC @R1

后,累加器A的内容为 0EH ,R7的内容为 18H ,30H的内容为 0FFH ,40H 的内容为 0FEH 。

32、假定(A)=50H,(B)=0A0H。执行指令:

14

MUL AB

后,寄存器B的内容为 32H ,累加器A的内容为 00H ,CY的内容为 0 ,OV的 内 容为 1 。

33、假定(A)=0FBH,(B)=12H。执行指令: DIV AB

后,累加器A的内容为 0DH ,寄存器B的内容为 11H ,CY的内容为 0 ,OV的 内容为 0 。

34、假定(A)=0C5H,执行指令: SWAP A 后,累加器A的内容为 5CH 。

35、假定addr11=00100000000B,标号qaz的地址为1030H。执行指令:

qaz:AJMP addr11

后,程序转移到地址 1100H 去执行。

36、假定A=83H,(R0)=17H,(17H)=34H,执行以下指令: ANL A,#17H ORL 17H,A XRL A,@R0 CPL A 后,A的内容为 0C8H 。

37、若单片机使用频率为6MHz的晶振,那么时钟周期为 0.334us ,机器周期为 2us 。

15

38、设SP=60H,片内RAM的(30H)=24H,(31H)=10H,在下列程序段注释中填写执行结果。

PUSH 30H ;SP= 61H ,(SP)= 24H PUSH 31H ;SP= 62H ,(SP)= 10H POP DPL ;SP= 61H ,DPL= 10H POP DPH ;SP= 60H ,DPH= 24H MOV A,#00H MOVX @DPTR,A

最后执行结果是 将0传送到外部数据存储器的2410H单元 。

39、在R7初值为00H的情况下,DJNZ R7,rel指令将循环执行 256 次。

40、欲使P1口的低4位输出0而高4位不变,则执行一条 ANL P1,#0F0H 指令。

41、欲使P1口的高4位输出1而低4位不变,则执行一条 ORL P1,#0F0H 指令。

42、DIV AB指令执行后,OV标志为1,则此指令执行前(B)= 00H 。

43、MUL AB指令执行后,OV标志为1,则(B)不为 00H 。 44、用一条指令 LJMP 1234H 可以取代下列4条指令:

MOV DPTR,#1234H

16

PUSH DPL PUSH DPH RET

45、要访问特殊功能寄存器,可以采用的寻址方式是 直接寻址 、 位寻 址 和 寄存器寻址 。

46、要访问片外RAM,应采用的寻址方式是 寄存器间接寻址 。

47、已知SP=25H,PC=2345H,(24H)=12H,(25H)=34H,(26H)=56H。问此时执行“RET”

指令后,SP= 23H ,PC= 3412H 。 第3章 习题参考答案 一、填空题

1、MCS-51有5个中断源,2个中断优先级,优先级由软件填写特殊功能寄存器 IP 加以选择。

2、外中断请求标志位是 IE0 和 IE1 。

3、 RETI 指令以及任何访问 IE 和 IP 寄存器的指令执行过 后,CPU不能马上响应中断。

4、8051单片机响应中断后,产生长调用指令LCALL,执行该指令的过程包括:首先把 PC

的内容压入堆栈,以进行断点保护,然后把长调用指令的16位地址送 PC ,使程序执

17

行转向 程序存储器 中的中断地址区。 二、选择题:

1、在中断服务程序中,至少应有一条( D )。

A、 传送指令 B、 转移指令 C、 加法指令 D、 中断返回指令

2、要使MCS-51能够响应定时器T1中断,串行接口中断,它的中断允许寄存器IE的内容应是( A )。 A、 98H B、 84H C、 42H D、 22H

3、MCS-51响应中断时,下列哪种操作不会发生( A ) A、 保护现场 B、保护PC C、找到中断入口 D、保护PC转入中断入口

4、MCS-51中断源有( A )

A、 5个 B、 2个 C、 3个 D、 6个

5、计算机在使用中断方式与外界交换信息时,保护现场的工作应该是( C )

A、 由CPU自动完成 B、 在中断响应中完成

C、 应由中断服务程序完成 D、 在主程序中完成 6、MCS-51的中断允许触发器内容为83H,CPU将响应的中断请求是( D )。

18

A、 INT0,INT1 B、 T0,T1 C、 T1,串行接口 D、 INT0,T0

7、若MCS-51中断源都编程为同级,当它们同时申请中断时,CPU首先响应( B )。

A、 INT1 B、 INT0 C、 T1 D、 T0

8、当CPU响应串行接口中断时,程序应转到( C )。 A、 0003H B、 0013H C、 0023H D、 0033H

9、执行MOV IE,#03H后,MCS-51将响应的中断是( D )。 A、 1个 B、 2个 C、 3个 D、 0个

10、外部中断1固定对应的中断入口地址为( C )。 A、 0003H B、 000BH C、 0013H D、 001BH

11、MCS-51单片机可分为两个中断优先级别,各中断源的优先级别设定是利用寄存器( B )。

A、 IE B、 IP C、 TCON D、 SCON

12、( C )非单片机系统响应中断的必要条件。 A、 TCON或SCON寄存器内的有关中断标志位为1 B、 IE中断允许寄存器内的有关中断允许位置1

19

C、 IP中断优先级寄存器内的有关位置1 D、 当前一条指令执行完

13、各中断源发出的中断请求信号,都会标记在MCS-51系统中的( B )。

A、 TMOD B、 TCON/SCON C、 IE D、 IP

14、执行返回指令时,返回的断点是( C )

A、 调用指令的首地址 B、 调用指令的末地址

C、 调用指令下一条指令的首地址 D、 返回指令的末地址

15、中断查询确认后,在下列各种8051单片机运行情况中,能立即进行响应的是:( D ) A、 当前正在执行高优先级中断处理 B、 当前正在执行RETI指令

C、 当前指令是DIV指令,且正处于取指令的机器周期 D、当前指令是MOV A,R3

16、当CPU响应外部中断0 INT0的中断请求后,程序计数器PC的内容是( A )。

A、0003H B、000BH C、0013H D、001BH 17、当CPU响应外部中断1 INT1的中断请求后,程序计数器PC的内容是( C )。

20

A、0003H B、000BH C、0013H D、001BH 18、MCS—51单片机在同一级别里除串行口外,级别最低的中断源是( C )。

A、外部中断1 B、定时器T0 C、定时器T1 D、串行口

19、MCS—51单片机在同一级别里除INT0外,级别最高的中断源是( B )。

A、外部中断1 B、定时器T0 C、定时器T1 D、外部中断0

20、当外部中断0发出中断请求后,中断响应的条件是( C )。 A、SETB ET0 B、SETB EX0 C、MOV IE,#81H D、MOV IE,#61H

21、当定时器T0发出中断请求后,中断响应的条件是( C )。 A、SETB ET0 B、SETB EX0 C、MOV IE,#82H D、MOV IE,#61H

22、外部中断0 的入口地址是( A )。 A、0003H B、000BH C、0013H D、001BH

24、MCS—51单片机CPU开中断的指令是

( A )。 A、SETB EA B、SETB ES C、CLR EA D、SETB EX0

21

25、MCS—51单片机外部中断0开中断的指令是( B ) A、SETB ETO B、SETB EXO C、CLR ETO D、SETB ET1

26、MCS—51单片机外部中断1和外部中断0的触发方式选择位是( C )。

A、TR1和TR0 B、IE1和IE0 C、IT1和IT0 D、TF1和TF0

27、8031单片机共有5个中断入口,在同一级别里,5个中断源同时发出中断请求时,程序计数器PC的内容变为( B )。 A、000BH B、0003H C、0013H D、001BH

28、MCS—51单片机响应中断的过程是( D )。 A、断点PC自动压栈,对应中断矢量地址装入PC B、关中断,程序转到中断服务程序 C、断点压栈,PC指向中断服务程序地址

D、断点PC自动压栈,对应中断矢量地址装入PC,程序转到该矢量地址,再转至中断服务程序首地址

29、执行中断处理程序最后一句指令RETI后,( D )。 A、程序返回到ACALL的下一句 B、程序返回到LCALL的下一句

C、程序返回到主程序开始处 D、程序返回到响应

22

中断时的下一句

30、MCS—51单片机响应中断矢量地址是( C )。 A、中断服务程序的首句地址 B、中断服务程序的出口地址

C、中断服务程序的入口地址 D、主程序等待中断指令的地址

31、一主程序中有一句LP:SJMP LP,功能指令为等待中断,当发生中断且中断返回后,( D )。

A、返回到主程序开始处 B、返回到该句的下一条指令处

C、返回到该句的上一条指令处 D、返回到该句 32、一中断子程序的最后一句不是RETI而是RET,中断返回后( A )。

A、返回到主程序中ACALL或LCALL的下一句 B、返回到主程序中响应中断时一句的下一句

C、返回到主程序开始处 D、返回到0000H处 33、外部中断源1的向量地址为( C )。

A、0003H B、000BH C、0013H D、002BH 34、对定时器控制寄存器TCON中的IT1和IT0位清0后,则外部中断请求信号方式为( A )。

A、低电平有效 B、高电平有效 C、脉冲上跳沿有效 D、脉冲后沿负跳有效

23

三、多项选择题

1、MCS—51单片机控制寄存器TCON的作用是( ABCE )等。 A、定时/计数器的启、停控制 B、定时器的溢出标志 C、外部中断请求标志

D、确定中断优先级 E、选择外部中断触发方式

2、8031单片机上电复位后,内容为0的寄存器是( ABCDE )。 A、R0,R1 B、R7 C、ACC D、B E、TMOD、TCON

3、MCS—51的中断系统的相关控制有( ACDE )。 A、特殊功能寄存器TCON、SCON B、模式控制寄存器TMOD C、中断允许控制寄存器IE D、中断优先级寄存器IP E、中断顺序查询逻辑

4、CPU响应中断的条件包括( ACDE )。

A、现行指令运行结束 B、保护现场 C、有中断请求

D、申请中断的中断源中断允许位为1 E、已开放CPU中断

5、MCS—51的中断源是( ABCDE )。

A、外部输入中断源0(P3.2) B、外部输入中断源1(P3.3)

C、T0的溢出中断源 D、串行口发送和/接收中断源 E、T1

24

的溢出中断源

6、MCS—51单片机外部中断源的中断请求方法可以是( BD )。

A、高电平触发 B、低电平触发 C、上升沿触发 D、下降沿触发

E、一串脉冲头朝下的连续矩形波触发

7、下列哪些是8051单片机的中断矢量地址( ABDE )。 A、0003H B、000BH C、0007H D、0013H E、001BH

8、 8051单片机的IE寄存器的用途是( BCE )。 A、确定中断方式 B、确定CPU中断的开放或禁止 C、定时器中断的开放或禁止 D、定时器溢出标志 E、选择外部中断的开放或禁止

9、下述条件中,能封锁主机对中断的响应的条件是( ABC )。 A、一个同级或高一级的中断正在处理时 B、当前周期不是执行当前指令的最后一个周期 C、当前执行的指令是RETI指令或对IE或IP寄存器进行读/写的指令

D、当前执行的指令是一长跳转指令 E、一个低级的中断正在处理时

四、判断题

25

1、MCS-51的5个中断源优先级相同。 ( × ) 2、MCS-51外部中断0的入口地址是0003H。 ( √ ) 3、各中断发出的中断请求信号,都会标记在MCS-51系统的IE寄存器中。( × )

4、各中断发出的中断请求信号,都会标记在MCS-51系统的TMOD寄存器中。( × )

5、各中断发出的中断请求信号,都会标记在MCS-51系统的IP寄存器中。( × )

6、各中断发出的中断请求信号,都会标记在MCS-51系统的TCON与SCON寄存器中。( √ )

7、 同一级别的中断请求按时间的先后顺序响应。( √ ) 8、 同一时间同一级别的多中断请求,将形成阻塞,系统无法响应。( × )

9、 低优先级中断请求不能中断高优先级中断请求,但是高优先级中断请求能中断低优先级中断请求。( √ ) 10、 同级中断不能嵌套。( √ )

11、8051单片机对最高优先权的中断响应是无条件的。( × ) 12、中断初始化时,对中断控制器的状态设置,只可使用位操作指令,而不能使用字节操作指令。( × )

13、MCS—51单片机系统复位后,中断请求标志TCON和SCON中各位均为0。( √ )

14、MCS—51单片机的中断允许寄存器的IE的作用是用来对各

26

中断源进行开放或屏蔽的控制。( √ )

15、用户在编写中断服务程序应在中断入口矢量地址存放一条无条件转移地址,以防止中断服务程序容纳不下。( √ ) 16、若要在执行当前中断程序时禁止更高优先级中断,应用软件关闭CPU中断,或屏蔽更高级中断源的中断,在中断返回时再开放中断。( √ )

17、如设外部中断0中断,应置中断允许寄存器IE的EA位和EX0位为1。( √ )

18、外部中断0中断的入口地址是0003H。( √ ) 19、 8051单片机允许5个中断源请求中断,都可以用软件来屏蔽,即利用中断允许寄存器IE来控制中断的允许和禁止。( √ ) 五、问答题

1、 什么叫中断嵌套?中断嵌套有什么限制?中断嵌套与子程序嵌套有什么区别?

答:高优先级中断“中断”正在执行的低优先级中断,这就是中断嵌套。

中断嵌套只能高优先级“中断”低优先级,低优先级不能“中断“高优先级,同一优先级之间也不能相互“中断”。 中断嵌套与子程序嵌套的区别:

①子程序嵌套是在程序中事先安排好的;中断嵌套是随机发生的。

27

②子程序嵌套无次序限制,中断嵌套只允许高优先级“中断”低优先级。

2、 为什么一般情况下,在中断入口地址区间要设置一条跳转指令,转移到中断服务程序的实际入口处?

答:由于80C51相邻两个中断入口地址间只有8字节的空间,8个字节只能容纳一个有3~8条指令的极短程序。一般情况中中断服务程序均大大超 出8个字节长度。因此,必须跳转到其他合适的地址空间。

4、根据下列已知条件,试求中断开关状态。

①IE=93H; ②IE=84H; ③IE=92H; ④IE=17H

解:①IE=93H=10010011B:INT0、T0、串行口开中断,其余关中断;

②IE=84H=10000100B:INT1开中断,其余关中断; ③IE=92H=10010010B:T0、串行口开中断,其余关中断; ④IE=17H=00010111B:关中断。 5、按下列要求设置IP:

①INT1、串行口为高优先级,其余为低优先级; ②T1为高优先级,其余为低优先级; ③T0、T1为低优先级,其余为高优先级; ④串行口为低优先级,其余为高优先级。 解:

28

①INT1、串行口为高优先级,其余为低优先级:IP=00010100B; ②T1为高优先级,其余为低优先级:IP=00001000B; ③T0、T1为低优先级,其余为高优先级:IP=00010101B; ④串行口为低优先级,其余为高优先级:IP=00001111B。 6、根据下列已知条件,试求中断优先级状态。

①IP=16H; ②IP=ECH; ③IP=03H; ④IP=1FH

解:①IP=16H =00010110B:INT1、T0、串行口为高优先级,其余为低优先级;

②IP=ECH =11101100B:INT1、T1为高优先级,其余为低优先级; ③IP=03H =00000011B:INT0、T0为高优先级,其余为低优先级; ④IP=1FH =00011111B:全部为高优先级,相当于未设置优先级。 7、要求80C51五个中断源按下列优先顺序排列,判是否有可能实现?若能,应如何设置中断源的中断优先级别?若不能,试述理由。

①T0、T1、INT0、INT1、串行口 ②串行口、INT0、T0、INT1、T1 ③INT0、T1、INT1、T0、串行口 ④INT0、INT1、串行口、T0、T1 ⑤串行口、T0、INT0、INT1、T1 ⑥INT0、INT1、T0、串行口、T1

解:①T0、T1、INT0、INT1、串行口:能。T0、T1为高优先级,

29

其余为低优先级。

②串行口、INT0、T0、INT1、T1:能。串行口为高优先级,其余为低优先级。

③INT0、T1、INT1、T0、串行口:不能。80C51只有两个中断优先级。当设置INT0、T1为高优先级时,INT1、T0、串行口 处于同一低优先级,而T0的优先权在排在INT1之前,INT1无法优先T0。

④INT0、INT1、串行口、T0、T1:能。INT0、INT1、串行口为高优先级,其余为低优先级。

⑤串行口、T0、INT0、INT1、T1:不能。80C51只有两个中断优先级。当设置串行口为高优先级后,T0、INT0、INT1、T1 处于同一低优先级,而INT0的优先权排在T0前面,T0无法优先INT0。 ⑥INT0、INT1、T0、串行口、T1:不能。80C51只有两个中断优先级。当设置INT0、INT1为高优先级后,T0、串行口、T1 处于同一低优先级,而T1的优先权排在串行口前面,串行口无法优先T1。

8、试编写一段对中断系统初始化的程序,使之允许INT0、INT1、T0、串行接口中断,且使T0中断为高优先级中断。 解: MOV IE,#97H MOV IP,#02H

9、 若规定外部中断1为边沿触发方式,低优先级,在中断服务程序将寄存器B的内容左循环一位,B的初值设为02H,按要

30

求补充完整主程序与中断服务程序。 ORG 0000H LJMP MAIN ORG 0013H LJMP WB ORG 0100H MAIN:SETB EA

SETB EX1 CLR PX1 SETB IT1 MOV B,#02H WAIT:SJMP WAIT WB:MOV A,B RL A MOV B,A

RETI 第4章 习题参考答案 一、填空题

1、当定时器T0工作在方式3时,要占用定时器T1的 TR1 和 TF1 两制位。

2、在定时器T0工作方式3下,TH0溢出时, TF1 标志将被硬件置1去请断。

31

3、在定时器T0工作方式3下,欲使TH0停止工作,应执行一条 CLR TR1 指令。

4、使用定时器/计数器1设置串行通信的波特率时,应把定时器/计数器1设定式 2

,即 自动重新加载 方式。

5、当计数器产生计数溢出时,把定时器/计数器的TF0(TF1)位置“1”。对

溢出的处理,在中断方式时,该位作为 中 断标志 位使用;在查询方式该位作 状态 位使用。

6、在定时器工作方式1下,计数器的宽度为16位,如果系统晶振频率为6MH

最大定时时间为 131.072ms ,若系统晶振频率为12MHz,则最大定时为 65.536ms 。

7、8051单片机内部设有两个16位定时器/计数器,即 T0 和 T1 。8、T0由两个8位特殊功能寄存器 TH0 和 TL0 组成,T1由 TH1 和 TL1 组成。

9、定时时间与定时器的 工作方式 、 计数初值 及 振荡周期关。

10、MCS-51的定时器/计数器作计数器时计数脉冲由外部信号通过引脚 P3.4 和 P3.5 提 供。

11、MCS-51的定时器/计数器T0的门控信号GATE设置为1时,只有 INT0

脚为高电平且由软件使 TR0 置1时,才能启动定时器/计数器T0工作。

12、当T0为方式 3 ,T1为方式 2 的时候,8051单片机的定时器可提个8位定时器/ 计数器。

32

二、选择题

1、在下列寄存器中,与定时/计数控制无关的是( C ) A、 TCON B、 TMOD C、 SCON D、 IE

2、在工作方式0下,计数器是由TH的全部8位和TL的5位组成,因此其计数是( A )

A、 1~8192 B、 0~8191 C、 0~8192 D、 1~4

3、如果以查询方式进行定时应用,则应用程序中的初始化内容应包括( D A、 系统复位、设置工作方式、设置计数初值 B、 设置计数初值、设置中断方式、启动定时 C、 设置工作方式、设置计数初值、打开中断 D、 设置工作方式、设置计数初值、禁止中断

4、与定时工作方式1和0比较,定时工作方式2不具备的特点是( B ) A、 计数溢出后能自动重新加载计数初值 B、 增加计数器位数 C、 提高定时精度 D、 适于循环定时和循环计数应用

5、要想测量INT0 引脚上的一个正脉冲宽度,那么特殊功能寄存器TMOD的内以为( A )。

A、 09H B、 87H C、 00H D、 80H 6、使用定时器T1时,有几种工作方式( C )

A、 1种 B、 2种 C、 3种 D、 47、8031单片机的定时器T1用作定时方式时是( B )。

A、由内部时钟频率定时,一个时钟周期加1 B、由内部时钟频率定时,一器周期加 1

33

C、由外部时钟频率定时,一个时钟周期加1 D、由外部时钟频率定时,一器周期加1

8、8031单片机的定时器T0用作计数方式时是( C )。

A、由内部时钟频率定时,一个时钟周期加1 B、由内部时钟频率定时,一器周期加 1

C、由外部计数脉冲计数,下降沿加1 D、由外部计数脉冲计数,一个机器加1

9、8031单片机的定时器T1用作计数方式时计数脉冲是( A )。

A、外部计数脉冲由T1(P3.5)输入 B、外部计数脉冲由内部时钟频率提 C、外部计数脉冲由T0(P3.4)输入 D、由外部计数脉冲计数 10、8031单片机的定时器T0用作定时方式时是( D )。 A、由内部时钟频率定时,一个时钟周期加1 B、由外部计数脉冲计数,一个机器周期加 1 C、外部定时脉冲由T0(P3.4)输入定时 D、由内部时钟频率计数,一个机器周期加1

11、8031单片机的机器周期为2μs,则其晶振频率fosc为( C )MHz. A、1 B、2 C、6 D、12

12、用8031的定时器T1作定时方式,用模式1,则工作方式控制字为( C A、01H B、05H C、10H D、50H

13、用8031的定时器T1作计数方式,用模式2,则工作方式控制字为( A A、60H B、02H C、06H D、20H

14、用8031的定时器T1作定时方式,用模式1,则初始化编程为( C )。

34

A、MOV TMOD,#01H B、MOV TMOD,#50H C、MOV TMOD,#10H D、MOV #02H

15、用8031的定时器T1作定时方式,用模式2,则工作方式控制字为( D

A、60H B、02H C、06H D、2

16、用8031的定时器T1作定时方式,用模式2,则初始化编程为( B )。

A、MOV TMOD,#06H B、MOV TMOD,#20H C、MOV TMOD,#10H D、MOV #60H

17、启动定时器0开始计数的指令是使TCON的( B )。

A、TF0位置1 B、TR0位置 1 C、TR0位置0 D、TR1位置0 18、启动定时器1开始定时的指令是( D )。

A、CLR TR0 B、CLR TR 1 C、SETB TR0 D、SETB TR1 19、使8031的定时器T0停止计数的指令是( A )。

A、CLR TR0 B、CLR TR1 C、SETB TR0 D、SETB TR1 20、使8031的定时器T1停止定时的指令是( B )。

A、CLR TR0 B、CLR TR1 C、SETB TR0 D、SETB TR1 21、使8031的定时器T1停止计数的指令是使TCON的( D )。

A、TF0位置1 B、TR0位置 1 C、TR0位置0 D、TR1位置0

22、8031的定时器T0作计数方式,用模式1(16位计数器)则应用指令( 初始化编程。

A、MOV TMOD ,#01H B、MOV TMOD ,10H C、MOV TMOD ,#05H D、MOV TCON ,#05H 23、下列指令判断若定时器T0计满数就转LP的是( D )。

35

A、JB T0,LP B、JNB TF0,LP C、JNB TR0, LP D、JB TF0,LP 24、下列指令判断若定时器T0未计满数就原地等待的是( B )。 A、JB T0,$ B、JNB TF0,$ C、JNB TR0,$ D、JB TF0,$

25、当CPU响应定时器T1的中断请求后,程序计数器PC的内容是( D )。A、0003H B、000BH C、0013H D、001BH

26、用8031的定时器T0作计数方式,用模式1(16位),则工作方式控制字为( A、01H B、02H C、04H D、05H

27、用8031的定时器T0作定时方式,用模式2,则工作方式控制字为( B

A、01H B、02H C、04H D、0

28、8031的定时器T0作定时方式,用模式1(16位计数器)则应用指令( 初始化编程。

A、MOV TMOD ,#01H B、MOV TMOD ,01H C、MOV TMOD ,#05H D、MOV TCON ,#01H

29、用定时器T1方式1计数,要求每计满10次产生溢出标志,则TH1、TL1的值是( A )。

A、FFH、F6H B、F6H、F6H C、F0H 、F0H D、FFH、F30、启动定时器0开始定时的指令是( C )。

A、CLR TR0 B、CLR TR1 C、SETB TR0 D、SETB TR1

31、MCS—51单片机的两个定时器作定时器使用时TMOD的D6或D2应分别为(

A、D6=0,D2=0 B、D6=1,D2= 0 C、D6=0,D2=1 D、D6=1,D32、MCS—51单片机的TMOD模式控制寄存器是一个专用寄存器,用于控制T1的操作模式及工作方式,其中C/T表示的是( C )。

36

A、门控位 B、操作模式控制位 C、功能选择位 D、启33、8031单片机晶振频率fosc=12MHz,则一个机器周期为( B )μS。 A、12 B、 1 C、2 D、3 34、MCS—51单片机定时器溢出标志是( D )。

A、TR1和TR0 B、IE1和IE 0 C、IT1和IT0 D、TTF0

35、用定时器T1方式2计数,要求每计满100次,向CPU发出中断请求,TH1的初始值是( A )。

A、9CH B、20H C、64H D、A0H

36、MCS—51单片机定时器T1的溢出标志TF1,若计满数产生溢出时,如不用方式而用查询方式,则应( B )。

A、由硬件清零 B、由软件清零 C、由软件置于 D、可不

37、MCS—51单片机定时器T0的溢出标志TF0,若计满数产生溢出时,其值为( A、00H B、FFH C、1 D、计数值

38、MCS—51单片机定时器T0的溢出标志TF0,若计满数在CPU响应中断后(

A、由硬件清零 B、由软件清零 C、A和B都可以 D、随态

39、8051单片机计数初值的计算中,若设最大计数值为M,对于模式1下的M( D )。

A、M=213=8192 B、M=28= 256 C、M=24=16 D、M=216=三、多项选择题

1、MCS—51单片机内部设置有两个16位可编程的定时器/计数器,简称定时器

37

和T1,它们的( ABE )等均可通过程序来设置和改变。

A、工作方式 B、定时时间 C、量程 D、启动方式 E、计间

2、8051单片机定时器T0作定时用,采用模式1,编程时需有下列步骤( ACD

A、TMOD初始化 B、选择电平触发还是边沿触发 C、置入计数初D、启动定时器 E、串行计数是否溢出及转移

3、MCS—51单片机中定时/计数器的工作模式有( ABCE )。

A、8位自动重装计数器 B、13位计数器 C、16位计数器 D、位计数器

E、两个独立的8位计数器

4、用8031的定时器T1作定时方式,用模式2,则初始化编程为( BD )A、置TMOD为05H B.置TMOD为20H C.置TMOD为02H D、置TH0、TL0相同初值,以后不须重新置数 E、置TH0、TL0相同初值,以后须重新置数 四、判断题

1、特殊功能寄存器SCON,与定时器/计数器的控制无关。( √ ) 2、特殊功能寄存器TCON,与定时器/计数器的控制无关。( × ) 3、特殊功能寄存器IE,与定时器/计数器的控制无关。 ( × ) 4、特殊功能寄存器TMOD,与定时器/计数器的控制无关。( × )

5、在MCS—51单片机内部结构中,TMOD为模式控制寄存器,主要用来控制定的启动与停止。( × )

6、在MCS—51单片机内部结构中,TCON为控制寄存器,主要用来控制定时器

38

动与停止。( √ )

7、MCS—51单片机的两个定时器的均有两种工作方式,即定时和计数工作方式( √ )

8、MCS—51单片机的TMOD模式控制寄存器不能进行位寻址,只能用字节传送设置定时器的工作方式及操作模式。( √ )

9、MCS—51单片机系统复位时,TMOD模式控制寄存器为00H。( √ ) 10、启动定时器T0工作,可使用SETB TR0启动。( √ )

11、指令JNB TF0,LP的含义是:若定时器T0未计满数,就转LP。( √ )

12、 若置8031的定时器/计数器T1于定时模式,工作于方式2,则工作方式20H。( √ )

13、 若置8031的定时器/计数器T1于计数模式,工作于方式1,则工作方式50H。( √ )

14、当8031的定时器T0计满数变为0后,溢出标志位(TCON的TF0)也变为( × ) 五、解答题

1、按下列要求设置TMOD。

①T0计数器、方式1,运行与INTO有关;T1定时器、方式2,运行与INT1无

②T0定时器、方式0,运行与INTO有关;T1计数器、方式2,运行与INT1有

③T0计数器、方式2,运行与INTO无关;T1计数器、方式1,运行与INT1有

④T0定时器、方式3,运行与INTO无关;T1定时器、方式2,运行与INT1无解:①TMOD=00101101B=2DH; ②TMOD=11101000B=E8H

39

③TMOD=11010110B=D6H ④TMOD=00100011B=23H

2、已知TMOD值,试分析TO、T1工作状态。

①TMOD=93H; ②TMOD=68H; ③TMOD=CBH; ④TMO解:①TMOD=93H=10010011B,T1定时器,方式1,运行与INT1有关; T0定时器,方式3,运行与INT0无关。 ②TMOD=68H=01101000B,T1计数器,方式2,运行与INT1无关; T0定时器,方式0,运行与INT0有关。 ③TMOD=CBH=11001011B;T1计数器,方式0,运行与INT1有关; T0定时器,方式3,运行与INT0有关。 ④TMOD=52H=01010010B;T1定时器,方式1,运行与INT1无关; T0定时器,方式2,运行与INT0无关。 3、试归纳小结80C51定时/计数器4种工作方式的特点。

答:①方式0是13位计数器,最大计数值213=8192,计数范围比方式1小,计时初值比较麻烦,容易出错,与方 式1比较无任何优点。

②方式1是16位计数器,最大计数值为216=65536,计数范围大,适用于定时较大的应用场合。

③方式2是8位计数器,最大计数值是28=256,缺点是计数范围小,优点是定值可自动恢复,适用于需要重复定时, 而定时范围还不大的应用场合。

④方式3是8位计数器,仅适用于T0,T1无方式3。T0方式3时,被拆成两个

的8位计数器TH0、TL0:TL0使用T0原有的控制寄存 器组成一个8位的定时

器;TH0借用T1的TF1、TR1,只能对机内机周脉冲计数,组成另一个8位定时

40

T0方式3时T1方式2作串行口波特率 发生器。

4、如何判断T0、T1定时/计数溢出?

答:判断T0、T1定时/计数溢出的方法有两种:

① 查询方式。不断查询T0、T1溢出标志TF0、TF1:TF0或TF1=0时,未TF0或TF1=1时,溢出。

② 中断方式。T0、T1定时/计数溢出时,在CPU、T0、T1中断开放前提下能产生中断。

第5章 习题参考答案 一、填空题

1、在串行通信中,有数据传送方向为 单工 、 半双工 和 全双工 三种方式。

2、要串口为10位UART,工作方式应选为 方式1 。 3、用串口扩并口时,串行接口工作方式应选为方式 0 。 4、计算机的数据传送有两种方式,即 并行数据传

送 和 串行数据传 送 方式,其中具有成本低特点的是 串行数据传送 方式。

5、串行通信按同步方式可分为 异步 通信和 同步 通 信。

6、异步串行数据通信的帧格式由 起始 位、 数据 位、 奇偶校验 位和

41

停止 位组成。

7、串行接口电路的主要功能是 串行 化和 反串行 化,把 帧中格式信息滤除而保留数据位的操作是 反串行 化。

8、专用寄存器“串行数据缓冲寄存器”,实际上是 发送缓冲 寄存器和 接 收缓冲 寄存器的总称。

9、MCS-51的串行口在工作方式0下,是把串行口作为 同步移位 寄存器来使用。这样,在串入 并出移位寄存器的配合下,就可以把串行口作为 并行输出 口使用,在并入串出移位寄存器的配合下,就可以把串行 口作为 并行输入 口使用。

10、在串行通信中,收发双方对波特率的设定应该是 约定 的。

11、使用定时器/计数器设置串行通信的波特率时,应把定时器/计数器1设定作方式 2 , 即 自动重新加载 方式。

12、某8031串行口,传送数据的帧格式为1个起始位(0),7个数据位,1个偶校验位和1个停止位(1)组成。当该串行口每分钟传送 1800个字符时,则波特率应为 300b/s 。 解答:串口每秒钟传送的字符为:1800/60=30个字符/秒 所以波特率为:30个字符/秒×10位/个字符=300b/s

42

13、8051单片机的串行接口由发送缓冲积存器SBUF、 接收缓冲寄存器SBUF 、

串行接口控制寄存器SCON、定时器T1构成的 波特率发生器 等部件组成。

14、当向SBUF发“写”命令时,即执行 MOV SBUF,A 指令,即向发送缓冲寄存器 SBUF装载并开始由 TXD 引脚向外发送一帧数据,发送完后便使发送中断标志位 TI 置 “1”。

15、在满足串行接口接收中断标志位 RI=0 的条件下,置允许接收位 REN=1 ,

就会接收一帧数据进入移位寄存器,并装载到接收SBUF中,同时使RI=1,当发读SBUF命令时,即指令 MOV A, SBUF 指令,便由接收缓冲寄存器SBUF取出信息同过8051内部总线送CPU。

16、若异步通信接口按方式3传送,已知其每分钟传送3600个字符,其波特率为 660b/s 。

17、 8051中SCON的SM2是多机通信控制位,主要用于方式 2 和方式 3 ,若置 SM2=1,则允许多机通信。 18、TB8是发送数据的第 9 位,在方式2或方式3中,根据发送数据的需要由软件置位或复位。它在许多通信协议中可用作 奇偶校验位 ,在多机通信中作为发送 地址帧或数据帧 的标志位。

43

19、 RB8是接收数据的第 9 位,在方式2或方式3中,它或是约定的 奇偶校验位 ,或 是约定的地址/数据标识位。 20、串行口方式0是 同步移位寄存器 方式,方式1、2、3是异步通信方式。 二、选择题

1、串行通信的传送速率单位波特,而波特的单位是( B ) A、 字符/秒 B、 位/秒 C、 帧/秒 D、 帧/分

2、帧格式为1个起始位、8个数据位和1个停止位的异步串行通信方式是( B )

A、 方式0 B、 方式1 C、 方式2 D、 方式3

3、通过串行口发送或接收数据时,在程序中应使用( A ) A、 MOV指令 B、 MOVX指令 C、 MOVC指令 D、 SWAP指令

4、在下列所列特点中,不属于串行工作方式2的是( C ) A、 11位帧格式 B、 有第9数据位

C、 使用一种固定的波特率 D、 使用两种固定的波特率

5、以下有关第9数据位的说明中,错误的是( C ) A、 第9数据位的功能可由用户定义

44

B、 发送数据的第9数据位内容在SCON寄存器的TB8位中预先准备好

C、 帧发送时使用指令把TB8位的状态送入发送SBUF D、 接收到的第9数据位送SCON寄存器的RB8中 6、串行工作方式1的波特率是( D ) A、 固定的,为时钟频率的1/12 B、 固定的,为时钟频率的1/32 C、 固定的,为时钟频率的1/64

D、 可变的,通过定时器/计数器的溢出率设定

7、当MCS-51进行多机通信时,串行接口的工作方式应选择( C )

A、 方式0 B、 方式1 C、 方式2 D、 方式0或方式2

8、用MCS-51串行接口扩展并行I/O口时,串行接口工作方式应选择( A )

A、 方式0 B、 方式1 C、 方式2 D、 方式3

9、MCS—51单片机串行口发送/接收中断源的工作过程是:当串行口接收或发送完一帧数据时,将SCON中的( A ),向CPU申请中断。

A、RI或TI置1 B、RI或TI置 0 C、RI置1或TI置0 D、RI置0或TI置1

45

10、MCS—51单片机串行口接收数据的次序是下述的顺序( B )。

(1)接收完一帧数据后,硬件自动将SCON的RI置1 (2)用软件将RI清零

(3)接收到的数据由SBUF读出 (4)置SCON的REN为1,外部数据由RXD(P3.0)输入

A、(1)(2)(3)(4) B、(4)(1)(2)(3) C、(4)(3)(1)(2) D、(3)(4)(1)(2) 11、MCS—51单片机串行口发送数据的次序是下述的顺序( A )。

(1)待发送数据送SBUF (2)硬件自动将SCON的TI置1

(3)经TXD(P3.1)串行发送一帧数据完毕 (4)用软件将TI清0

A、(1)(3)(2)(4) B、(1)(2)(3)(4) C、(4)(3)(1)(2) D、(3)(4)(1)(2) 12、8051单片机串行口用工作方式0时,( C )。 A、数据从RXD串行输入,从TXD串行输出 B、数据从RXD串行输出,从TXD串行输入 C、数据从RXD串行输入或输出,同步信号从TXD输出 D、数据从TXD串行输入或输出,同步信号从RXD输出 13、MCS—51的串行数据缓冲器SBUF用于( B )。

46

A、存放运算中间结果 B、存放待发送或已接收到的数据

C、暂存数据和地址 D、存放待调试的程序 三、多项选择题

1、下列哪些属于8031单片机串行通讯时接收数据的过程( ABCDE )。

A、SCON初始化 B、从RXD串行输入数据 C、RI置位 D、软件RI清零 E、从SBUF读数据

2、下列哪些属于8031单片机串行通讯时发送数据的过程( ABCDE )。

A、SCON初始化 B、数据送SBUF C、从TXD发送数据 D、置TI为1 E、软件TI清零 四、判断题

1、串行口通信的第9数据位的功能可由用户定义。( √ ) 2、发送数据的第9数据位的内容在SCON寄存器的TB8位预先准备好的。( √ )

3、串行通讯发送时,指令把TB8位的状态送入发送SBUF。( × ) 4、串行通讯接收到的第9位数据送SCON寄存器的RB8中保存。( √ )

5、串行口方式1的波特率是可变的,通过定时器/计数器T1的

47

溢出设定。( √ )

6、 要进行多机通信,MCS-51串行接口的工作方式应选为方式1。( × )方式2和方式3

7、 MCS-51的串行接口是全双工的。( √ )

8、串行口的中断,CPU响应中断后,必须在中断服务程序中,用软件清除相应的中断标志位,以撤消中断请求。( √ ) 9、串行口数据缓冲器SBUF是可以直接寻址的专用寄存器。( √ ) 五、问答题

1、 已知fosc、SMOD和波特率,试求串行方式1和T1定时初值。

①fosc=12MHz,SMOD=0,bit/s=2400; ②fosc=6MHz,SMOD=1,bit/s=1200; ③fosc=11.0592MHz,SMOD=1,bit/s=9600; ④fosc=11.0592MHz,SMOD=0,bit/s=2400; 解:①fosc=12MHz,SMOD=0,bit/s=2400;

T1初值=256-(2SMOD/32)*fosc/(12*波特 率)≈256-13.02=243=F3H ②fosc=6MHz,SMOD=1,bit/s=1200;

T1初值=256-(2SMOD/32)*fosc/(12*波特 率)≈256-26.04=230=E6H ③fosc=11.0592MHz,SMOD=1,bit/s=9600;

T1初值=256-(2/32)*fosc/(12*波特 率)≈256-3=250=FAH ④fosc=11.0592MHz,SMOD=0,bit/s=2400;

48

SMOD

T1初值=256-(2SMOD/32)*fosc/(12*波特 率)≈256-12=244=F4H 2、 串行缓冲寄存器SBUF有什么作用?简述串行口接收和发送数据的过程。

答:串行缓冲寄存器SBUF有两个:一个是串行发送缓冲寄存器,另一个是串行接收缓冲寄存器,用同一个特殊功能寄存器名SBUF和同一单元地址 99H。接收缓冲寄存器还具有双缓冲结构,以避免在数据接收过程中出现帧重叠错误。

在完成串行初始化后,发送时只需将发送数据输入SBUF,CPU将自动启动和完成串行数据的发送;接收时CPU将自动把接收到的数据存入SBUF,用户只 需从SBUF中读取接收数据。 第678章 习题参考答案 一、填空题

1、MCS-51外扩ROM、RAM或I/O时,它的地址总线是 P0、P2 口。

2、12根地址线可寻址 4 KB存储单元。

3、微机与外设间传送数据有 程序传送 、 中断传送 和 DMA传送 三种传送方式。

4、 74LS138是具有3个输入的译码器芯片,其输出作为片选信号时,最多可以选中 8 块芯片。

5、74LS273通常用来作简单 输出 接口扩展;而74LS244则常用来作简单 输入 接口扩展。

49

6、并行扩展存储器,产生片选信号的方式有 线选 法和 译码 法两种。

7、在存储器扩展中,无论是线选法还是译码法,最终都是为了扩展芯片的 片选 端提供 信号。

8、起止范围为0000H-3FFFH的存储器的容量是 16 KB。 9、11根地址线可选 2KB 个存储单元,16KB存储单元需要 14 根地址线。

10、32KB RAM存储器的首地址若为2000H,则末地址为 9FFF H。

11、假定一个存储器有4096个存储单元,其首地址为0,则末地址为 0FFFH 。

12、除地线公用外,6根地址线可选 64 个地址,11根地址线可选 2048 个地址。

13、单片机扩展的内容有 程序存储器扩展 、 数据存储器扩展 及 I/O口的扩展 等。 二、选择题

1、 当8031外扩程序存储器8KB时,需使用EPROM2716( C )

A、 2片 B、 3片 C、 4片 D、 5片

2、 某种存储器芯片是8KB*4/片,那么它的地址线根数是( C )

50