您的当前位置:首页正文

自考《单片机与接口技术》试题及答案要点

2024-02-04 来源:好走旅游网
《单片机与接口技术》课程习题集

【说明】:本课程《单片机与接口技术》(编号为02613)共有单选题,多项选择题,判断改错题,简答题,综合设计题,编程题等多种试题类型。

一、单选题

1. 二进制数 110010010 对应的十六进制数可表示为( )。

A. 192H B. C90H C. 1A2H D. CA0H 2. 已知某数的BCD码为0111 0101 0100 0010 则其表示的十进制数值为( )。 A. 7542H B. 7542 C. 75.42H D. 75.42

3. -3 的补码是( )。

A. 10000011 B. 11111100 C. 11111110 D. 11111101 4. 十进制数 126 其对应的十六进制可表示为 ( )。

A. 8 F B. 8 E C. F E D. 7 E 5. 补码11111001对应的真值用十进制表示为( )。 A. 7 B. 13 C. -7 D. 34 6. PC 的值是( )。

A. 当前指令前一条指令的地址 B. 当前正在执行指令的地址 C. 下一条要执行指令的地址 D. 控制器中指令寄存器的地址 7. 程序计数器PC的寄存器位数是( )。

A. 2 B.8 C. 16 D. 32 8. 对程序计数器 PC 的操作( )。

A. 是自动进行的 B. 是通过传送进行的 C. 是通过加 1 指令进行的 D. 是通过减 1 指令进行的 9. 在程序状态字 PSW 中,奇偶校验位是( )。 A.

C

B.

AC

C.

OV D. P

10. 在 CPU 内部,反映程序运行状态或运算结果特征的寄存器是( )。 A. PC B. PSW A D. SP

C.

11. 当标志寄存器PSW的RS0和RS1分别为1和0时,系统选用的工作寄存器组为( )。 A. 组 0 B. 组 1 C. 组 2 D. 组 3

第 1 页 共 18 页

12. 8051 单片机中,唯一一个用户可使用的 16 位寄存器是( )。 A. PSW ACC D. PC

13. 8051的程序计数器PC为16位计数器,其寻址范围是( )。 A. 8K B. 16 K K D. 64 K

C.

32

B.

DPTR

C.

14. 8051 单片机中,唯一一个用户不能直接使用的寄存器是( )。 A. PSW B. DPTR PC D. B

15. INTEL 8051CPU 是 ( ) 位的单片机。

A. 16 B. 4 C. 8 准16

16. 数据指针 DPTR 访问的是( )。

A. CPU控制器 B. CPU运算器 器 D. 外部数据存储器

17. 单片机8051的XTAL1和XTAL2引脚是( )引脚。

A. 外接定时器 B. 外接串行口 断 D. 外接晶振

18. 8031复位后,PC与SP的值为( )。

A. 0000H,00H B. 0000H,07H 07H D. 0800H,00H

19. 单片机芯片 8031属于( )。

A.MCS-48系列 B.MCS-51系列 列 D.MCS-31系列

20. 8031 单片机中片内 RAM 共有( )字节 。 A. 128 B. 256 4K D. 64K

21. MCS-51 单片机复位后,从下列那个单元开始取指令( )。A. 0003H B. 000BH 0000H D.000CH

22. 对片外数据 RAM 单元读写数据须用( )。

A. MOV指令 B. MOVX指令 令 C. SJMP指令

23. MCS-51单片机的四个并行I/O中,其驱动能力最强的是( )A. P0 口 B. P1 口 第 2 页 共 18 页

C.

D. C. 外部程序存储 C. 外接中 C. 0003H, C.MCS-96系

C.

C.

C. MOVC指。

C. P2

口 D. P3 口

24. 当晶振频率是12MHz时,MCS-51单片机的机器周期是( )。 A. 1μs B. 1ms 2μs D. 2ms

C.

25. 工作寄存器区设定为 2 组,则( )。

A. RS1=0,RS0=0 B. RS1=0,RS0=1 C. RS1=1,RS0=0 D. RS1=1,RS0=1

26. 在 MCS-51 中,为实现 P0 口线的数据和低位地址复用,应使用( )。

A.地址锁存器 B.地址寄存器 C.地址缓冲器 D.地址译码器

27. 对程序存储器的读操作,只能使用( )。

A. MOV指令 B. PUSH指令 C. MOVX指令 D. MOVC指令

28. 在算术运算中,与辅助进位AC 有关的是( )。

A.二进制数 B.八进制数 C.十进制数 D.十六进制数

29. 在下列信号中不是给数据存储器扩展使用的是( )。 A. EA B. RD C. WR D. ALE

30. 累加器 A 的位地址为( )。 A. E7 H H D. 87H 31. 下列指令中正确的是( )。

B.

F7

H

C.

D7

A. MOV P2.1 , A B. JBC TF0 , L1 C. MOVX B , @DPTR D. MOV A , @R3 32. 下列指令中错误的是( )。

A . MOV A , R4 B . MOV 20H , R4 C . MOV R4 , R3 D . MO V @R4 , R3 33. LJMP 跳转空间最大可达到( )。 A. 2KB B. 128B D. 64KB

256B

C.

34. 设累加器A的内容为0C9 H,寄存器R2的内容为54H,CY=1,执行指令SUBB A,R2 后结果为( )。

A.(A)=74H B.(R2)=74H C.(A)=75H D.(R2)=75H

35. 设(A)=0C3H,(R0)=0AAH,执行指令ANL A,R0后,结果( )。

第 3 页 共 18 页

A.(A)=82H B.(A)=6CH C.(R0)=82 D.(R0)=6CH

36. 在堆栈操作中,当进栈数据全部弹出后,这时SP应指向( )。

A. 栈底单元 B. 7FH 单元 C. 栈底单元地址加1 D. 栈底单元地址减1 37. 单片机的堆栈指针 SP 始终是( )。

A. 指示堆栈底 B. 指示堆栈顶 C. 指示堆栈地址 D. 指示堆栈长度

38. 假定(A)=0C5H,执行指令:SWAP A后,累加器A的内容为( )。 A. 0CH B. C0H 5CH D. C5H

C.

39. 假定设置堆栈指针SP的值为37H,在进行子程序调用时把断点地址进栈保护后,SP的值为( )。 A. 36H 38H D. 39H

B.

37H

C.

40. MOV A ,20H 指令的寻址方式为( )。

A. 立接数寻址 B. 直接寻址 C. 寄存器寻址 D. 寄存器间接寻址

41. 在寄存器间接寻址中,指定寄存器中存放的是( )。

A. 操作数 B. 操作数地址 C. 转移地址 D. 地址偏移量

42. 8051 单片机共有( )中断源。

A. 4 B. 5 C. 6 D. 7 43. 各中断源发出的中断请求信号,都会标记在( )寄存器 。 A. TMOD/SCON

B.

TCON/PCON

C.

IE/TCON D. TCON/SCON

44. 帧格式为1个起始位,8个数据位,1个停止位的异步串行通信方式是( )。

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

45. 在数据传送过程中,数据由串行变为并行可通过( )实现。

A. 数据寄存器 B. 移位寄存器 C. 锁存器 D. A/D转换器

46. 执行返回指令,退出中断服务子程序,则返回地址来自( )。

第 4 页 共 18 页

A. ROM B. 程序计数器 C. 堆栈区 D. CPU寄存器

47. 8051 系统中,同一优先级的几个中断源中 优先权最高( )。 A. INT0 B. T0 C. INT1 D. T1

48. 外部中断 1的中断入口地址为( )。

A. 0003H B. 000BH C. 0013H D. 001BH

49. 在定时器操作中,选择其工作方式的寄存器是( )。 A. TMOD B. TCON C. IE D. SCON

50. N 位 LED 显示器采用动态显示方式时,需要提供的 I/O 线总数是( )。

8

A. 8+N B. 8 × N C. N D. N 二、多项选择题

51. 一个完整的微机系统由哪几大部分组成?( )

A. 硬件 B. 软件 C. 汇编语言 D. 教学软件 E. 输出设备 52. 以下属于计算机外部设备的有( )。

A. 输入设备 B. 输出设备 C. 外存设备 D. 设备总线 E. 信号总线

53. 单片机外总线包括( )

A. 数据总线 B. 地址总线 C. 控制总线 D. 设备总线 E. 信号总线

54. 单片机的基本结构主要由以下哪几部分组成?( )

A. 运算器 B. 控制器 C. 存储器 D. 输入设备 E. 输出设备 55. 物理上,MCS-51的四个存储空间分别是( )。

A. 片内程序存储器 B. 片外程序存储器 C. 片内数据存储器 D. 片外数据存储器 E. 存储器 56. 单片机的运算器包括( )。

A. 算术/逻辑部件 B. 累加器 C. 暂存寄存器 D. 程序状态寄存器 E. 存储器 57. 以下运算中对溢出标志 OV 有影响或受 OV 影响的运算是( )。 A. 逻辑运算 B. 符号数加法运算

C. 乘法运算 D. 除法运算 E. 符号数减法运算

第 5 页 共 18 页

58. 在 MCS-51 单片机的运算电路中,可为 ALU 提供数据的是( )。

A. 累加器A B. 暂存器 C. 寄存器B D. 状态寄存器PSW E. 控制器 59. MCS-51 的32个通用寄存器,是由以下哪些位控制分为四个寄存器区的?( ) A. RS1 B. RS0 C. CY D. AC E. OV 60. MCS-51常见的复位电路有( )。

A.上电复位电路 B.外部复位电路 C.上电外部复位电路 D.抗干扰复位电路 E.下拉复位电路 61. MCS-51常用的寻址方式有( )。

A. 立即寻址 B. 直接寻址 C. 寄存器寻址 D. 寄存器间接寻址 E. 变址寻址 62. 当前寄存器区可作地址寄存器的工作寄存器是( )。

A. R0 B. R1 C. R2 D. R3 E. R4

63. 汇编语言的语句格式中包括( )。

A. 标号 B. 操作码 C. 操作数 D. 注释 E. 语句

64. 单片机外部设备与CPU交换的信息种类有( )。

A. 数据信息 B. 状态信息 C. 控制信息 D. 脉冲信息 E. 串口信息 65. 单片机CPU与外部设备交换信息的方式有( )。 A. 无条件传送方式 B. 查询传送方式

C. DMA方式 D. 中断传送方式 E. 数据传送方式 66. 单片机中断源包括( )。

A. INT0 B. INT1 C. T0 D. T1 E. 串口中断

67. 单片机中断源中,属于外部中断源的是( )。

A. INT0 B. INT1 C. T0 D. T1 E. 串口中断

68. 单片机定时器可选的工作方式有( )。

A. 方式0 B. 方式1 C. 方式2 D. 方

第 6 页 共 18 页

————————

————————

————————

————————

式3 E. 方式4 69. 串口通信的传送方式有( )。

A. 单工方式 B. 半双工方式 C. 全双工方式 D. 握手方式 E. 双绞线方式 70. MCS-51的外部中断触发方式有( )。

A.脉冲边沿触发方式 B.电平触发方式

C.硬件触发方式 D.软件触发方式 E.外部触发方式 71. 消除键盘抖动常用的方式有( )。

A. 滤波电路 B. 双稳态电路 C. 软件方式 D. 触发方式 E. 电平触发方式

72. 中断处理的全过程包括以下哪几个阶段?

A. 中断请求 B. 中断响应 C. 中断服务 D. 中断返回 E. 中断标志

73. 以下与定时/计数器控制有关的寄存器是( )。

A. TCON B. TMOD C. IE D. SCON E. IP 74. 单片机中断矢量地址包括( )。

A. 0003H B. 000BH C. 0013H D. 001BH E. 0023H 75. 根据数据输入的过程,DAC0832联接方式有( )。

A. 二级缓冲器联接方式 B. 单级缓冲器联接方式

C. 直通联接方式 D. 三级缓冲器联接方式 E. 并口联接方式 三、判断改错题

76. 负数的反码与原码相同。( ) 更正:

77. 正数的反码与原码相同。( )

78. 补码的是使原码符号位不变,数值部分逐位求反,末尾加1所得。( ) 79. 程序计数器PC的内容可以通过内部数据总线得到修改。( ) 80. PC是维持一个机器有秩序执行程序的关键性寄存器。( ) 81. PSW是一个16位寄存器,它包含了程序状态信息。( ) 82. 程序存储器是用于存放程序代码的,也用于存放常数。( )

83. 堆栈是在CPU外部存储器中一个按先出后进原则组织的存储区域。( ) 84. 堆栈指针寄存器中的8位二进制数始终等于当前地址值。( )

第 7 页 共 18 页

85. 8031单片机内部有4KB的ROM空间。( )

86. MCS-51中堆栈指针寄存器的值可以由软件改变。( )

87. MCS-51设置有16位的程序计数器,可以寻址64KB的程序存储器。( ) 88. 程序存储器的作用是用于存放编好的程序和表格常数。( ) 89. 8051单片机内部设置有128B的内部数据存储器。( ) 90. P1口当作输入方式时,相应位的锁存器必须预写1。( ) 91. MOV A, 30H为立即寻址方式。( )

92. 8051在外扩程序存储器时,一般情况下EA接低电平。( ) 93. MCS-51单片机采用的是接口单独编址方式。( ) 94. MCS-51单片机共有五个中断优先级。( )

95. 从产生外部中断到开始执行中断程序至少需要四个完整的机器周期。( ) 96. MCS-51单片机串行接口是一个全双工串行通信接口。( ) 97. DAC0832是一个8位数/模转换器件。( ) 98. DAC的位数越高,分辨率越小。( )

99. ADC0809内部设有地址锁存器,可不加地址锁存器而直接与P0口相连。( )

100. 在单片机上使用LED作显示器时,如果位数为8个,则较适合使用动态的显示方式。( ) 四、简答题

101. 什么是单片机?

102. 单片机与其他常见微机(PC机)有什么不同?它有什么独特优点?

103. MCS-51单片机的EA信号有何功能?在使用8031时EA信号引脚应如何处理? 104. 简述MCS-51内外RAM差别及存取方法。 105. 简述单片机的性能特点。

106. 堆栈区与一般的数据存储区有何异同?其重要作用是什么? 107. 简述80C51单片机四个端口的带负载能力。

108. MCS-51引线中有多少I/O引线?他们和单片机对外的地址总线和数据总线有什么关系?简述8031单片机中P0、P1、P2、P3口的作用。 109. MCS-51单片机内部包括哪些主要部件?

110. 80C51单片机的存储器有哪几种类型?可以划分为哪几个部分? 111. 80C51如何确定和改变当前工作寄存器区? 112. 什么是中断?中断的作用是什么?

113. 单片机怎样管理中断?怎样开放和禁止中断?怎样设置优先级? 114. 简述单片机响应中断的条件。

115. 简述MCS-51单片机中断源及其矢量地址。 116. 简述并行通信和串行通信的特点。 117. 中断服务程序的设计要考虑哪些因素? 118. 简述中断初始化过程。

119. 简述MCS-51单片机中断响应过程。

第 8 页 共 18 页

————

120. 简述键盘处理程序流程。 五、综合设计题

121. 编写一程序,实现下图中逻辑运算电路。其中P3.1、P1.1、P1.0分别是单片机端口线上的信息,RS0、RS1是PSW寄存器的两个标志位,30H、31H是两个位地址,运算结果由P1.0输出。

122. 用定时器0以工作方式2,产生100us定时,在P1.0输出周期为200us连续方波。时钟晶振为6MHZ,请用查询方式编程。

123. 用定时器T1,工作方式0,在P1.0产生周期为500us的连续方波,时钟振荡频率为6MHZ,用查询方式编写程序。

124. 设T0工作在方式0,定时时间为1ms,在P1.0输出,周期为2ms的方波,时钟晶振为6MHZ,请用查询方式编程。

125. 利用定时器定0,循环点亮8个发光二极管,每个持续时间0.5s。试画出电路图并编写程序。 六、编程题

126. 设在片内RAM中,20H和21H单元各存放有一个8位数据,要求拼装一个新字节并送30H保存,其低5位取自20H单元中的低5位,高3位取自21H单元中的低3位。 127. R0低位有一个十六进制数,把它转换成ASCII码送入R0。 128. 设在外部RAM的3个连续存储单元ST1/ST2和ST3中,ST1和ST2存放着两个不带符号的二进制数,请找出其中的大数并存在ST3中。

129. 假设三个8位无符号数相加,其中一加数在内部RAM的50H,51H,52H,另一个数在内部RAM的53H,54H,55H相加之后放在50H,51H,52H单元中,进位存放在53H单元中,请编写程序。

130. 内存中有两个4字节无符号数相加,一个存放在30H——33H开始的单元中,一个存放在40H——43H开始的单元中,请编程求它们的和,结果放在30H——33H中。 131. 外RAM2000H单元开始存放的8个数据传送到片内RAM50H的单元中。 132. 将1000H单元内容拆开,高位送1001H单元,低位送1002H单元。

133. 8255并行接口芯片,A口工作在方式0输入,B口方式1输出,C口高位为输出,低位为输入,设控制寄存器地址为3BH,请确定控制字并初始化编程。

134. 要在某一位输出一个开关量信号,对该位的置1/置0操作必须成对使用,要使PC6输出一个负跳变信号,设控制寄存器地址为03H,请编出8255初始化程序。

135. 试编程对8155进行初始化。要求对计数脉冲进行分频,既计数1000后,电平状态变化,并重新置数以连续方波。设PA口为输入,PB口为输出,PC口为输入,禁止中断,命令状态寄存器地址为FD00H。

答案

一、单选题

第 9 页 共 18 页

1. A2. B3. B4. D5. C6. C7. C8. A9. D10. B11. B12. B13. D14. C15. C16. D17. D 18. B19. B20. A21. C22. B23. A24. A25. C26. A27. D28. C29. A30. A31. B32. D 33. D34. B35. A36. A37. B38. D39. D40. B41. B42. B43. D44. B45. B46. C47. A 48. C49. A50. A 二、多项选择题

51. AB52. ABC53. ABC54. ABCDE55. ABCD56. ABCD57. BCDE58. ABC59. AB60. ABCD 61. ABCDE62. AB63. ABCD64. ABC65. ABCD66. ABCDE67. AB68. ABCD69. ABC70. AB 71. ABC72. ABC73. ABC74. ABCDE75. ABC 三、判断改错题

76. ×更正:负数的反码是将其原码除符号位外,按位求反。(或负数的反码与原码不定相同)77. √78. √79. √80. √81. ×更正:PSW是一个8位寄存器,它包含了程序状态信息82. √83. ×更正:堆栈是在CPU外部存储器中一个按先进后出原则组织的存储区域。84. ×更正:堆栈指针寄存器中的8位二进制数始终等于堆栈的顶部地址值。 85. ×更正:8051单片机内部有4KB的ROM空间(或8031内部没有程序存储器)。 86. √87. √88. √89. √90. √91. ×更正:MOV A, 30H为直接寻址方式(或MOV A, #30H为直接寻址方式)。92. ×更正:8051在外扩程序存储器时,一般情况下EA接高电平。 93. ×更正:MCS-51单片机采用的是统一编址方式。94. ×更正:MCS-51单片机共有两个中断优先级(或MCS-51单片机共有五个中断源)。95. ×更正:从产生外部中断到开始执行中断程序至少需要三个完整的机器周期。96. √97. √98. √99. √100. √ 四、简答题

101. 单片机就是在一片硅片上集成了中央处理器、随机存储器、只读存储器、中断系统、定时/计数器和多种I/O口的微型计算机系统,该系统不带外部设备。从组成和功能上看,它已经具备了计算机系统的基本属性,所以也可以称其为单片微型计算机,简称单片机。 (1) 102. 主要由三点不同:一是CPU、存储器和I/O接口这几部分集成在一片芯片上;

二是存储器设计采用了哈佛结构,将程序存储器和数据存储器在物理上分开;三是供位处理和位控制的资源丰富、I/O接口完善。

(2) 优点:集成度高、价格低廉、性能/价格比高;程序存储器和数据存储器在物理上分

开,可使程序不受干扰,抗干扰能力强;布尔处理能力强,适于工业控制。 (1) 103. (1) EA是访问外部程序存储器ROM的控制信号。 (2) 当EA为低电平(接地)时,CPU只执行外部程序存储器中的程序。当EA为高电平且

PC值小于0FFFH(4K)时,CPU执行内部程序存储器的程序,但当PC的值超出4K

第 10 页 共 18 页

————

时(对8051/8751/8951)将自动转去执行片外程序存储器内的程序。

(3) 8031单片机无片内ROM,必须外接程序存储器,因此,8031的EA必须接地(低电平)。

(1) 104. 内部RAM集成在单片机中,片外RAM在单片机外部; (2) 内部RAM的存取时间短,片外RAM的存取时间长;

(3) 内部RAM由MOV进行数据传送,片外RAM由MOVX进行数据传送; (4) 内部RAM有位寻址空间,片外RAM无位寻址空间; (5) 内部RAM有256字节,片外RAM可扩展64KB; (6) 堆栈空间设在内部RAM,片外RAM无此功能.

105. 集成度高,结构紧凑、可靠性高,数据处理能力强,功耗小、成本低。

106. 堆栈区与一般存储区相同之处是:他们都属于存储器的一部分,都能存放数据。 其主要不同之处是对数据的存取规则有异:一般存储区使用随即读/写规则,二堆栈使用先进后出(或后进先出)规则。堆栈采用这种特殊规则后,可以圆满完成子程序调用或中断调用,多级子程序嵌套等功能。堆栈区内的存储单元也可以使用随即读/写指令,但在这种情况下已经不把该单元当作堆栈看看待了。

107. P0口的每一位口线可以驱动8个LSTTL负载。在作为通用I/O口时,由于输出驱动电路是开漏方式,由集电极开路(OC门)电路或漏极开路电路驱动时需外接上拉电阻;当作为地址/数据总线使用时,口线输出不是开漏的,无需外接上拉电阻。P1、P2、P3口的每一位能驱动4个LSTTL负载。他们的输出驱动电路没有内部上拉电阻,所以可以方便地由集电极开路(OC门)电路或漏极开路电路所驱动,而无须外接上拉电阻。

108. 共有32根I/O线,其中部分引线在单片机外扩对象时,将代替地址总线和数据总线的功能,这32根I/O引线均匀分布于P0、P1、P2和P3口,若没有单片机外扩要求,则4个并行口都是纯粹的I/O口,但当单片机有外扩任务时,则P0口将作为8位数据总线,P2和P0口将作为16位地址总线,P3口的一部分作为读/写等控制总线信号,此时只有P1口保留作为单纯的I/O口。

109. MCS-51单片机包括中央处理器CPU、数据存储器RAM、只读存储器ROM、并行输入输出口P1~P3口、串行口、并行口、定时/计数器、中断系统及特殊功能寄存器等8个部件。

110. 80C51单片机的存储器按功能可以划分为两大类:随机存储器(RAM)和只读存储器(ROM)。可以划分为以下五部分:片内程序存储器、片外程序存储器、片内数据存储器、特殊功能寄存器、片外数据存储器。

111. 在选择工作寄存器区时,可通过对特殊功能寄存器中的程序状态寄存器PSW的RS1和RS0的状态设置,来选择哪一组工作寄存器作为当前的工作寄存器组。单片机复位时,当前工作寄存器默认为0组。

(1) 112. 当CPU正在处理某事件时,外界发生了更为紧急的请求,要求CPU暂停当前的

工作,转而去处理这个紧急事件,处理完毕,CPU再回到原来被中断的地方,继续原来的工作,这样的过程称为中断。

第 11 页 共 18 页

(2) 中断作用:(1)分时操作 (2)实时处理 (3)故障处理

(1) 113. 正在进行的中断过程,不能被新的同级或低优先级的中断请求中断;正在执行

的低优先级服务程序能被高优先级中断请求所中断;CPU同时接受到几个中断请求时,首先响应优先级最高的中断请求。

(2) 对各中断源的中断开放或关闭是由内部的中断允许寄存器IE的各位来进行两级控

制的,指各个中断源的允许控制位与一个中断允许总控位EA配合实现对中断请求的控制。

(3) 中断优先级控制寄存器IP也是一个特殊功能寄存器,用户可通过程序对各状态位进

行设定,完成对中断优先级的控制。 (1) 114. 有中断源请求;

(2) 中断允许寄存器IE的EA位及各相应位为1; (3) 无同级或高级中断正在服务;

(4) 现行指令执行到最后一个机器周期且已结束;

(5) 若现行指令为RETI或需访问特殊功能寄存器IE或IP的指令时,执行完该指令且至

少再执行一条指令。 115. 外部中断0(0003H);定时器T0中断(000BH);外部中断1(0013H);定时器T1中断(001BH);串行口中断(0023H)。

116. 并行通信的特点是:控制简单、传输速度快;由于传输线较多,长距离传送时成本高且接收方的各位同时接收存在困难。串行通信的特点是,传输线少,长距离传送时成本低,且可以利用电话网等现成的设备,但数据的传送控制比并行通信复杂。

117. ①在中断入口地址处设置一条跳转指令,转移到中断服务程序的实际入口处;②保护现场;③中断服务主体程序;④若是外中断电平触发方式,应有中断信号撤除操作;若是串行收发中断,应有对RI、TI清0指令;⑤恢复现场;⑥中断返回。

118. ⑴设置堆栈指针SP;⑵定义中断优先级(IP);⑶选择外中断触发方式(TCON);⑷开放相应中断允许(IE);⑸安排好等待中断或中断发生前主程序应完成的操作内容,如设置计数器、串行口的有关参数等。

(1) 119. 置相应的优先级触发器状态为1,指明了CPU正在响应的中断优先权的级别,

并屏蔽所有同级或更低级的中断请求,允许更高级的中断请求;

(2) 执行一个硬件生成子程序调用指令,使控制转到相应的中断入口向量地址,并清除

中断源的中断请求标志(TI或RI除外);

(3) 保护断点,将被中断程序的断点地址(PC的值)压入堆栈进行保护,以便从中断服务

程序返回时能继续执行该程序。

120. 判断键盘中有无键按下;消除抖动;求键号;等待闭合键的释放。 五、综合设计题

第 12 页 共 18 页

121.

程序如下: ORG 0000H MOV C,P3.1 ANL C,P1.1

CPL C MOV 20H,C ;暂存数据 MOV C,30H ORL C,/31H ANL C,RS1 ANL C,20H ANL C,RS0

MOV P1.0,C ;输出结果 SJMP $

6

122. 答:(1)计算机器周期:Tm=12/focs=12/6*10=2us

8

(2)to=(2—X)*Tm

-68-6

200/2*10=(2—X)*2*10

8

100=(2—X)*2 X=256—50=216 TH0= 0D8H TL0= 0D8H

MOV TMOD, #02H MOV TL0,# 0D8H MOV TH0,# 0D8H SETB TR0

LOOP: JBC TF0, NEXT SJMP LOOP

NEXT:MOV TL0,# 0D8H MOV TH0,# 0D8H CPL, P1.0 SJMP LOOP

6

123. 答:(1)计算机器周期:Tm=12/focs=12/6*10=2us

13

(2)to=(2—X)*Tm

第 13 页 共 18 页

500/2*10=(2—X)*2*10

13

250=(2—X)*2 13

X=2—125=8067 TH1=0FCH TL1=03H

MOV TMOD, #00H MOV TL1,#03H MOV TH1,#0FCH SETB TR0

LOOP: JBC TF0, NEXT

SJMP LOOP

NEXT: MOV TL1,#03H

MOV TH1,#0FCH CPL, P1.0 SJMP LOOP

13

124. 答:t=(2—TO初值)*机器周期

-3136

1*10=(2—X)*12/6*10

-3136

1*10=(2—X)*2*10

133(2—X)=0.5*10 13

X=2—500=8192—500=7692

TL0=0CH TH0=0F0H TMOD=00H

MOV TMOD, #00H MOV TL0,#0CH MOV TH0,#0F0H SETB TR0

LOOP: JBC TF0, NEXT

SJMP LOOP

NEXT: MOV TL0,#0CH

MOV THP,#0F0H CPL, P1.0 SJMP LOOP

125. 答:假设单片机晶振频率为12MHZ,那么模式1最多能定时65.526ms,对于1秒的定时,必须设置一个软件计数器,进行软硬结合进行定时。假定让定时器定时50ms,软件计数器R7初值为10,这样定时中断10次就是0.5秒,0.5秒后才让P1闪一次,如此循环。

第 14 页 共 18 页

-6136

ORG 0000H

SJMP MAIN ORG 000BH SJMP ISO_T0 ORG 0030H MAIN: MOV TMOD,#01H MOV TH0,#3CH MOV TL0,#0B0H SETB TR0 MOV R7,#0A

MOV A,#11111110H SJMP $

ISO_T0:MOV TH0,#3CH MOV TL0,#0B0H DJNZ R7,NEXT RL A MOV P1,A NEXT:RETI END

这里假设晶振频率为12MHZ,定时器定时50ms。则定时初值为

T0216-50000us/1us65536-50000155363CB0H。

六、编程题

126. 答:MOV 30H,20H ;20H单元中的数据送入30H单元

ANL 30H,#00011111B ;屏幕高3位

MOV A,21H ;21H单元中的数据送入A

SWAP A ;将A中的数据高低3位交换,循环左移4次 RL A ;将A中数据再循环左移1次 ANL A,#11100000B ;屏蔽A中数据的低5位

第 15 页 共 18 页

ORL 30H,A ;完成拼装 127. 答:ORG 0100H

MOV A,R0 ;取转换值 ANL A,#0FH ;屏蔽高4位 ADD A,#03H ;计算偏移量 MOVC A,@A+PC ; 查表 MOV R0,A ;存结果 SIMP $

ASCTAB:DB ‘0’,‘1’,‘2’,‘3’

DB ‘4’,‘5’,‘6’,‘7’ DB ‘8’,‘9’,‘A’,‘B’ DB ‘C’,‘D’,‘E’,‘F’

END

128. 答:START:CLR C ;进位位清0 MOV DPTR,#ST1 ;设置数据指针 MOVX A,@DPTR ;取第一个数 MOV R7,A ;暂存R7

INC DPTR ;数据指针加1 MOVX A,@DPTR ;取第二个数

SUBB A,R7 ;比较两数的大小 JNC BIG1 ;第二个数大转移 XCH A,R7 ;第一个数大送A BIG0: INC DPTR ;数据指针加1 MOVX @DPTR,A ;存大数 RET

BIG1: MOVX A,@DPTR ;第二个数送A 129. 答:MOV R0 ,50H

MOV R1 ,53H MOV A ,@R0 ADD A,@R1 MOV @R0 ,A INC R0 INC R1

MOV A , @R0 ADDC A, @R1 MOV @R0 ,A INC R0 INC R1

MOV A ,@R0

第 16 页 共 18 页

ADDC A, @R1 MOV @R0 , A MOV 00H ,C

130. 答:MOV R2,#04H ;字节长度→R2 MOV R0,#30H ;一个加数首地址→R0 MOV R1,#40H ;另一个加数首地址→R1 CLR C ;清进位位 L1:MOV A,@R0 ;取一个加数

ADDC A,@R1 ;两个加数带进位相加 DAA ;十进制调整 MOV @R0,A ;存放结果

INC R0 ;指向下一个字节 INC R1

DJNZ R2,L1 ;字节长度减l,没加完,转L1,继续相加 END ;全加完,返回

131. 答: MOV R2,#08H ;数据块长度→R2 MOV R1,#50H ;数据块目的地址→R1 MOV DPTR,#2000H ;数据块源地址→DPTR LOOP:MOVX A,@DPTR ;传送一个数据 MOV @R1,A

INC DPTR ;指向下一个数据 INC R1

DJNZ R2,LOOP ;长度减1,没传送完,转LOOP,继续传送 RET ;传送完,返回 132. 答:ORG 0100H MOV DPTR ,#1000H MOVX A,@DPTR MOV B, A ;(1000)→A→B SWAP A ;交换

ANL A, #0FH ;屏蔽高位 INC DPTR

MOVX @DPTR ,A ;送1001H INC DPTR MOV A ,B

ANL A, #0FH ;(1000)内容屏蔽高位 MOVX @DPTR ,A ;送1002H LOOP: SJMP LOOP END

133. 答: D7 D6 D5 D4 D3 D2 D1 D0

第 17 页 共 18 页

1 0 0 1 0 1 0 1 控制字为:95H

MOV DPTR,#003BH MOV A, #95H MOVX @DPTR,A

134. 答:MOV DPTR, #0003H

MOV A, #0CH

MOVX @DPTR, A; PC6置“0” MOV A, #0DH MOVX @DPTR, A; PC6置“1” 135. 答:M1M2=01初值1000=03E8H 命令字 11000010 C2H MOV DPTR, #FD00H MOV A, #C2H MOVX @DPTR, A MOV DPTR, #FD04 MOV A,#0E8H MOVX @DPTR, A INC DPTR MOV A, #43H MOVX @DPTR, A

第 18 页 共 18 页

因篇幅问题不能全部显示,请点此查看更多更全内容