当前位置:文档之家› 单片机原理课后习题参考答案

单片机原理课后习题参考答案

单片机原理课后习题参考答案
单片机原理课后习题参考答案

第2章部分习题参考解答

1、试述MCS-51单片机内部有哪些主要逻辑部件并说出其功能,画出片内结构图。

MCS-51单片机的内部除包含CPU外,还包含程序存储器、数据存储器、定时器/计数器、并行I/O接口、串行I/O接口、总线控制逻辑和中断控制逻辑等逻辑部件,其结构框图如图所示:

其中,CPU是单片机的最核心部分,它是整个单片机的控制和指挥中心,完成所有的计算和控制任务。振荡器和时序逻辑,产生CPU工作所需要的内部时钟。中断控制逻辑用来应付一些临时到达的突发事件,并能保证当有多个突发事件发生时,CPU能够有序地为这些事件进行服务,所有突发事件服务完成后CPU 还能继续以前的工作。并行I/O接口和串行I/O接口作为CPU与外部设备通信的信息传输通道。程序存储器用于存放单片机的程序。数据存储器用于存放内部待处理的数据和处理后的结果。定时器/计数器主要是完成对外部输入脉冲的计数或者根据内部的时钟及定时设置,周期性的产生定时信号。64K总线控制逻辑,用于产生外部64KB存储空间的有关读写控制信号。

2、MCS-51单片机有4个8位并行口(P0、P1、P2、P3),哪个口可作为地址/数据利用总线?

P0口可作为地址/数据复用总线口。

3、P0口作为通用I/O口使用时,在输出状态下应注意什么?在输入状态下应注意什么?

P0口作为通用I/O口使用时,输出级是漏极开路的,因此在输出状态下外部应加上拉电阻。在输入状态下应先向端口锁存器写入1,这样引脚便处于悬浮状态,可作高阻抗输入。

5、MCS-51单片机的最大寻址空间是多少?为什么?

MCS-51单片机,程序存储器空间采用片内、片外统一编址的方式,共有64KB,地址范围为000OH~FFFFH。片内有256字节数据存储器地址空间,地址范围为00H~FFH。片外数据存储器空间有64KB,其地址范围也是000OH~FFFFH。

7、MCS-51单片机片内低128字节的RAM中,分了几个基本区域?说出这些区域的名称。

MCS-51系列单片机片内低128字节的RAM包含:工作寄存器区(00H: 1FH)、可位寻址区(20H: 2FH)、通用RAM区(30H: 7FH)3个组成部分。

8、片内和片外数据存储器地址重叠的区域是哪些地址?

片内与片外数据存储器空间的低地址部分(000OH~OOFFH)是重叠的,MCS-51单片机有MOV和MOVX两种指令,用以区分片内、片外RAM空间,当使用MOV指令时,访问的是片内区域,当使用MOVX 指令时,访问的是片外区域。

9、访问程序存储器的片外空间,是通过什么方式实现的?

程序存储器空间的片内、片外选择通过单片机的引脚EA来实现,当EA接低电平时,程序存储器空间的64KB全部由片外实现,当EA接高电平时,程序存储器空间的前4KB(MCS-52是8KB)由片内实现,对于片内没有的高地址空间部分单元,不管EA引脚接的是高电平还是低电平都由片外实现。片外程序存储器空间和片外数据存储器空间,采用的外部地址总线和数据总线是相同的,不同的是控制总线,程序存储空间的读信号PSEN,而数据存储空间的读信号为。

10、说出程序状态字寄存器(PSW)各位的含义。

PSW的位结构如下表所示。

?Cy:高位进位标志位,当ALU的算术运算过程中有进位或借位时,Cy=1;否则,Cy=0。同时,

该位还可以用作位累加器,这时一般只用“C”表示。

?AC:辅助进位标志,当ALU的算术运算过程中低4位向高4位有进位或借位时,AC=1;否则,

AC=0。该位常用于BCD码的调整。

?F0:用户标志位。

?RS1、RS0:选择工作寄存器组位,用于选择内部数据存储器区内4组工作寄存器中的某一组。具

体选择情况见寄存器介绍部分。

?OV:溢出标志位,当ALU的算术运算过程中有溢出时,OV =1;否则,OV =0。

?P:奇偶校验标志位,根据累加器ACC中1的个数由硬件置位或清除,当累加器ACC中有奇数

个1时P=1;否则,P=0。

?PSW.1:保留位,无定义。

11、在MCS-51单片机的工作时序中,一个机器周期包含几个状态周期、几个振荡周期?

一个机器周期包含6个状态周期、12个振荡周期。

12、单片机复位后,程序计数器PC指向哪个地址?

PC=0000H

第3章部分习题参考解答

1、写出MCS-51单片机汇编指令的指令格式,并简单举例。

MCS-51单片机的汇编指令格式如下:

[标号:] 操作码[目的操作数][,源操作数] [ ;注释]

操作码表示该指令所实现的操作功能,一般由2~5个英文字母表示。例如ORL,ADD,LCALL等。

操作数表示参与操作的数据来源和目的单元。操作数可以是一个立即数,也可以是一个内存单元或者是一个寄存器单元。

操作码和第一个操作数之间一般用一个或几个空格隔开,而操作数与操作数之间用逗号隔开。

操作数可以有1个,2个,3个或没有。

如果需要对指令进行注释说明的话,在最后一个操作数后加一个分号,分号后面是注释。

如:MOV A , 60H ; (60H)→A

标号由1~8个字母或数字构成,以字母开头以“:”结尾,标号可有可无,它仅仅代表了该指令所在的地址,便于源程序编写过程中使用该地址。

2、指出下面程序每个语句的寻址方式。

目的操作数原操作数

MOV A,P1 寄存器寻址直接寻址

MOV A,#40H 寄存器寻址立即寻址

MOV 80H,A 直接寻址寄存器寻址

MOV A,R5 寄存器寻址寄存器寻址

MOV @R0,A 寄存器间接寻址寄存器寻址

MOVX A,@DPTR 寄存器寻址寄存器间接寻址

MOVC A,@A+DPTR 寄存器寻址基址+变址寻址

MOV 74H,#80H 直接寻址立即寻址

3、写出下面程序被执行后,各数据存储器地址中的内容。

MOV 40H,#33H

MOV 41H,#44H

MOV A,40H

MOV 50H,A

MOV A,41H

MOV 51H,A

(40H)=33H,(41H)=44H,(50H)=33H,(51H)=44H

4、设置堆栈指针SP中内容为60H,编写程序,将上题中数据存储器50H、51H的内容压栈后,分别将栈内数据弹出到DPTR寄存器中。

MOV SP, #60H

PUSH 50H

PUSH 51H

POP DPL

POP DPH

5、访问片内、外数据存储器,都用什么指令?

访问片内数据存储器的数据传送指令用MOV,访问片外数据存储器的数据传送指令用MOVX。

6、下面的指令语句对吗?为什么?

MOV R0,#0400H ;不对,R0是8位寄存器源操作数超过了8位

MOV 100H,A ;不对,片内数据存储器用8位地址访问,目的操作数的地址超过了8位。

MOV @R2,A ;不对,能够用于间接寻址的只能是R0或R1

MOVX @R1,A ;对,R1做为间址寄存器来提供寻址存储器的低8位,高8位由P2提供

7、查表指令MOVC A,@A+DPTR 所查的表数据是在程序存储区还是数据存储区?

程序存储区。

9、使用位操作指令完成下列操作。

⑴将P1.1置“1”。

SETB P1.1

⑵将ACC.7置“1”。

SETB ACC.7

10、编写程序,将40H为首的8个单元内容,依次反序送入到60H为首的8个单元中去。

MOV R0,#47H ;40H开始的8字节数据中最后一个单元的地址

MOV R1,#60H

MOV R2,#8

LOOP:MOV A,@R0

MOV @R1,A

DEC R0

INC R1

DJNZ R2,LOOP

SJMP $

11、两个四位压缩类型BCD码数,被加数放在30H和31H内存单元中,加数放在32H和33H内存单元中,所求的和放在34H和35H中。位数排列按高位在低地址,低位在高地址的顺序,编写此加法程序。

MOV PSW,#00H ;取0组工作寄存器

MOV R0,#31H

MOV R1,#33H

SETB RS0 ;取1组工作寄存器

MOV R0,#35H

CLR RS0

MOV R2,#02H

CLR C ;清除进位标志,准备进行带进位加

LOOP: MOV A,@R0

ADDC A,@R1

DA A

SETB RS0 ;取1组工作寄存器

MOV @R0,A

DEC R0

CLR RS0 ;恢复0组工作寄存器

DEC R0

DEC R1

DJNZ R2,LOOP

SJMP $

13、写出ACALL和LCALL两个调用指令的调用范围,试写出这两条指令执行时,CPU的操作过程。

ACALL的调用范围是包括调用指令下一条指令的第一个字节所在的2KB范围的程序存储器空间。

ACALL调用指令的执行过程是:PC加2(本指令代码为两个字节)获得下一条指令的地址,并把该断点地址(当前的PC值)入栈,然后将断点地址的高五位与11位目标地址(指令代码第一字节的高3位,以及第二字节的八位)连接构成16位的子程序入口地址,使程序转向子程序。调用子程序的入口地址和ACALL 指令的下一条指令的地址,其高五位必须相同。因此子程序的入口地址和ACALL指令下一条指令的第一个字节必须在同一个2KB范围的程序存储器空间内。

LCALL调用指令的目标地址以16位给出,允许子程序放在64KB空间的任何地方。

指令的执行过程是把PC加上本指令代码数(三个字节)获得下一条指令的地址,并把该断点地址入栈(断点地址保护),接着将被调子程序的入口地址(16位目标地址)装入PC,然后从该入口地址开始执行子程序。

14、分析下列程序,说出此程序完成什么样的功能。

MOV P1,#0FFH

LOOP:

MOV R7,#03H ;该指令1个机器周期 1

LOOP1:

MOV R6,#0FFH ;该指令1个机器周期 2

DJNZ R6,$ ;该指令2个机器周期 3

DJNZ R7,LOOP1 ;该指令2个机器周期 4

CPL P1.0 ;该指令1个机器周期 5

JMP LOOP ;该指令2个机器周期 6

END

该程序的功能是从P1.0引脚输出连续方波,方波的周期为(11+(12+23×255+24)×3+15+26)×2个机器周期

15、试编写程序,完成对十个数从大到小的排序(建议用气泡排序法)。十个源字节数据放在30H为首的内存区域,排序后的目标数据放在50H为首的区域。

如果不破坏30H开始存放的源字节数据,可以把从30H开始的数据先传送到50H开始的数据区,然后对50H开始的数据进行排序。

如果不需考虑30H开始存放的数据使用后的顺序,则可先对30H开始存放的数据进行排序,然后再传送到50H开始的数据区中。

现根据第1种情况进行编程。

MOV R0,#30H

MOV R1,#50H

MOV R2,#10

LOP1: MOV A,@R0

MOV @R1,A

INC R0

INC R1

DJNZ R2,LOP1

MOV R2,#9

LOP4: MOV R0,#50H

MOV R1,#51H

MOV A,R2

MOV R3,A

LOP3: MOV A,@R0

CLR C

SUBB A,@R1

LOP2: JC NEXT

MOV A,@R0

XCH A,@R1

MOV @R0,A

NEXT: INC R0

INC R1

DJNZ R3,LOP3

DJNZ R2,LOP4

SJMP $

第4章部分习题参考解答

1、MCS-51单片机中,有几个16位定时/计数器?其实际用途?

MCS-51单片机中,有2个16位定时/计数器。

可以用定时器在规定的时间对温度、湿度、流量、转速等参数进行检测采样,用于环境检测、工业控制;或者利用定时器按一定的周期产生方波信号进行输出;还可以通过计数器对脉冲进行计数,用于信息的采集处理领域等。

2、通过对定时/计数器中的哪个特殊寄存器进行工作模式设置?试叙述几种工作模式功能。

通过特殊寄存器TMOD对定时/计数器进行工作模式设置。

工作方式0,为13位的定时/计数器。

工作方式1,为16位定时器/计数器。

工作方式2,为8位自动重装定时器/计数器。

工作方式3,只有定时器/计数器T0具有此工作方式,为两个8位定时器/计数器。

3、门控制信号GATE为1时,外部中断引脚INTx在什么状态下启动计数?

GA TE为1时,在外部中断引脚INTx=1、TRx=1时启动定时器/计数器。

5、定时/计数器作为计数器时,对外界技术频率有什么要求(假定时钟频率为12MHz)?

当定时/计数器设置为计数工作方式时,计数器对来自输入引脚T0和T1的外部脉冲信号计数,在每个机器周期的S5P2期间采样外部脉冲,若前一个机器周期采样到高电平,后一个机器周期采样到低电平,则将触发计数器加1,更新的计数值将在下一个机器周期的S3P1期间装入计数器。因此,单片机检测一个从高电平到低电平的下降沿需要2个机器周期,要使下降沿能被检测到,需要保证被采样高、低电平至少维持一个机器周期的时间,即外部输入信号的频率不超过晶振频率的1/24。当晶振频率为12MHz时,最高计数频率不超过0.5MHz,即计数脉冲的周期要大于2微秒。

6、定时/计数器在何种设置下可提供3个8位定时器?当T0运行在模式3下,TH0作为定时器使用时,其启动和关闭受谁的控制?

定时器/计数器T0工作在方式3下,定时器/计数器T1工作在方式2下,可提供3个8位定时器。当T0运行在方式3下,TH0作为定时器使用时,其启动和关闭受TR1的控制。

7、当定时/计数器T0被设置为模式3时,怎样使T1启动运行?又怎样使其停止运行?

当定时/计数器T0被设置为模式3时,定时/计数器T1只要设置好工作方式、时间常数初值,然后用控制位C/T切换其为定时或计数功能就可以使T1运行,若想停止它的运行,只要把它的工作方式设置为方式3即可,因为定时器T1没有方式3,将它设置为方式3就使它停止工作。

8、时钟频率为12MHz。要求定时值分别为:0.1ms、1ms、10ms;定时/计数器T0分别工作在模式0、模式1、模式2,其定时初值各为多少?

方式0时,0.1ms定时的计数值为100,时间常数初值为:TH0=0FCH,TL0=1CH

方式0时,1ms定时的计数值为1000,时间常数初值为:TH0=0E0H,TL0=18H

方式0时,最长的定时时间只能到8.192ms

方式1时,0.1ms定时的计数值为100,时间常数初值为:TH0=0FFH,TL0=9CH

方式1时,1ms定时的计数值为1000,时间常数初值为:TH0=0FCH,TL0=18H

方式1时,10ms定时的计数值为10000,时间常数初值为:TH0=0D8H,TL0=0F0H

方式2时,0.1ms定时的计数值为100,时间常数初值为:TH0=9CH,TL0=9CH

方式2时,最长的定时时间只能到0.256ms

9、时钟频率为12MHz。编写程序完成从P1.0输出占空比为1:4,频率为1000Hz的脉冲波型。

1000Hz周期为1ms,则高电平持续时间为1ms/4=0.25ms=250us。用T0实现250um定时,采用工作方式2,定时时间常数为256-250=6。

从P1.0输出占空比为1:4,频率为1000Hz的脉冲波型,既P1.0持续250us的高电平,250us×3的低电平。

采用查询方式实现:

MOV TMOD,#02H

MOV TH0,#06H

MOV TL0,#06H

SETB TR0

LOP2: SETB P1.0

JNB TF0,$

CLR TF0

CLR P1.0

MOV R0,#03H

LOP1: JNB TF0,$

CLR TF0

DJNZ R0,LOP1

JMP LOP2

采用中断方式实现:

ORG 0000H

LJMP MAIN

ORG 000BH

LJMP T0S

ORG 0030H

MAIN: MOV SP,#60H

MOV TMOD,#02H

MOV IE,#82H

MOV R0,#03H

MOV TH0,#06H

MOV TL0,#06H

SETB TR0

SETB P1.0

SJMP $

T0S: JNB P1.0,T01

CLR P1.0

SJMP EXIT

T01: DJNZ R0,EXIT

SETB P1.0

MOV R0,#03H

EXIT: RETI

10、编写程序。时钟频率为12MHz,使用T1,由P1.0、P1.1分别输出周期为500μs和2ms的方波。

用T1实现250um定时,采用工作方式2,定时时间常数为256-250=6。

P1.0每250us改变状态一次,P1.1每250us×4改变状态一次。

ORG 0000H

LJMP MAIN

ORG 001BH

LJMP T1S

ORG 0030H

MAIN: MOV SP,#60H

MOV TMOD,#20H

MOV IE,#88H

MOV R0,#04H

MOV TH1,#06H

MOV TL1,#06H

SETB TR1

SETB P1.0

SETB P1.1

SJMP $

T1S: CPL P1.0

DJNZ R0,EXIT

CPL P1.1

MOV R0,#04H

EXIT: RETI

15、半双工通信和全双工通信的区别?

半双工是指数据传输可以沿两个方向,但需要分时进行。全双工是指数据可以同时进行双向传输。

16、使用哪个特殊功能寄存器来确定串行口的工作方式?MCS-51单片机串行口有几种工作方式?各工作方式的波特率如何确定?

SCON 用来设定串行口的工作方式、接收/发送控制以及设置状态标志;MCS-51单片机串行口有4种工作方式。

方式0的波特率由振荡器的频率所确定,波特率为fosc/12; 方式2时的波特率由振荡器的频率(fosc )和SMOD 位所确定,即:

2

232f SMOD

osc ?=波特率

方式1和3时的波特率由定时器T1和T2的溢出率和SMOD 所确定。 32

21SMOD

T ?=溢出率波特率

17、晶振为11.059MHz ,工作于方式1,波特率为1200b/s ,用定时器/计数器T1作为波特率发生器,写出其方式字和计数初值。

T1工作在方式2下,其方式字为20H

由串行口方式1的32

21SMOD

T ?=溢出率波特率,取SMOD =0,可计算出T1的溢出率=38400。

则T1的计数值为11.0592/(38400×12)=24,T1的初值为232或0E8H 。

18、串行口按工作方式1进行串行数据通信。晶振为11.059MHz ,波特率为4800b/s ,请编写具有收发功能的串口通信程序(两种接收方式):

a 、以查询方式接收数据。

b 、以中断方式接收数据。

将接收数据放到30H 为首的片内存储区中。 设T1工作在方式2下,其方式字为20H

由串行口方式1的32

21SMOD

T ?=溢出率波特率,取SMOD =0,可计算出T1的溢出率=153600。

则T1的计数值为11.0592/(153600×12)=6,T1的初值为250或0FAH 。

二者之间的通信约定如下:

(1)当1号机发送时,先发送一个0E1H联络信号,2号机收到后回答一个0E2H应答信号,表示同意接收。

(2)当1号机收到应答信号0E2H后,开始发送数据,每发送一个数据字节都计算校验和,假定数据块长度为16个字节,一个数据块发送完毕后立即发送校验和。

(3)2号机接收数据并转存到数据缓冲区,每接收到一个数据字节便计算一次校验和,当收到一个数据块后,再接收1号机发来的校验和,并将它与2号机求出的校验和进行比较。若两

者相等,说明接收正确,2号机回答00H;若两者不相等,说明接收不正确,2号机回答0FFH,请求重发。

(4)1号机接到00H后结束发送。若收到的答复非零,则重新发送数据一次。

a、以查询方式接收数据。

1号机程序清单如下:

ASTART:MOV TMOD,#20H ;定时器1置为方式2

MOV TH1,#0FAH ;装载定时器初值,波特率4800

MOV TL1,#0FAH

MOV PCON,#00H

SETB TR1 ;启动定时器

MOV SCON,#50H ;设定串口方式1,且准备接收应答信号ALOOP1:MOV SBUF,#0E1H ;发联络信号

JNB TI,$ ;等待一帧发送完毕

CLR TI ;允许再发送

JNB RI,$ ;等待2号机的应答信号

CLR RI ;允许再接收

MOV A,SBUF ;2号机应答后,读至A

XRL A,#0E2H ;判断2号机是否准备完毕

JNZ ALOOP1 ;2号机未准备好,继续联络

ALOOP2:MOV R0,#30H ;2号机准备好,设定数据块地址指针初值

MOV R7,#10H ;设定数据块长度初值

MOV R6,#00H ;清校验和单元

ALOOP3:MOV SBUF,@R0 ;发送一个数据字节

MOV A,R6

ADD A,@R0 ;求校验和

MOV R6,A ;保存校验和

INC R0

JNB TI,$

CLR TI

DJNZ R7,ALOOP3 ;整个数据块是否发送完毕

MOV SBUF,R6 ;发送校验和

JNB TI,$

CLR TI

JNB RI,$ ;等待2号机的应答信号

CLR RI

MOV A,SBUF ;2号机应答,读至A

JNZ ALOOP2 ;2号机应答“错误”,转重新发送

RET ;2号机应答“正确”,返回

2号机接收程序清单如下:

BSTART:MOV TMOD,#20H

MOV TH1,#0FAH

MOV TL1,#0FAH

MOV PCON,#00H

SETB TR1

MOV SCON,#50H ;设定串口方式1,且准备接收BLOOP2:JNB RI,$ ;等待1号机的联络信号

CLR RI

MOV A,SBUF ;收到1号机信号

XRL A,#0E1H ;判是否为1号机联络信号

JZ BLOOP1 ;是1号机联络信号,准备接收数据

MOV SBUF,#0FFH ;不是1号机联络信号,回送错误标志

JNB TI,$

CLR TI

SJMP BLOOP2

BLOOP1:MOV SBUF,#0E2H ;是1号机联络信号,发应答信号

JNB TI,$

CLR TI

MOV R0,#30H ;设定数据块地址指针初值

MOV R7,#10H ;设定数据块长度初值

MOV R6,#00H ;清校验和单元

BLOOP3:JNB RI,$

CLR RI

MOV A,SBUF

MOV @R0,A ;接收数据转储

INC R0

ADD A,R6 ;求校验和

MOV R6,A

DJNZ R7,BLOOP3 ;判数据块是否接收完毕

JNB RI,$ ;完毕,接收1号机发来的校验和

CLR RI

MOV A,SBUF

XRL A,R6 ;比较校验和

JNZ ERROR ;校验和不相等,跳至发错误标志

MOV SBUF,#00H ;校验和相等,发正确标志

SJMP END1

ERROR:MOV SBUF,#0FFH ;要求重新发送数据

END1:JNB TI,$

CLR TI

RET

b、以中断方式接收数据。

1号机程序同上。

2号机接收程序清单如下:

ORG 0000H

LJMP BSTART

ORG 0023H

LJMP SIOS

ORG 0030H

BSTART:MOV TMOD,#20H

MOV TH1,#0FAH

MOV TL1,#0FAH

MOV PCON,#00H

SETB TR1

MOV IE,#90H ;开放CPU、串行口中断

MOV SCON,#50H ;设定串口方式1,且准备接收

SJMP $ ;等待中断接收中断

ORG 0100H

SIOS:PUSH PSW

PUSH ACC

MOV A,SBUF ;收到1号机信号

XRL A,#0E1H ;判是否为1号机联络信号

JZ BLOOP1 ;是1号机联络信号,准备接收数据

MOV SBUF,#0FFH ;不是1号机联络信号,回送错误标志

JNB TI,$

CLR TI

SJMP EXIT

BLOOP1:MOV SBUF,#0E2H ;是1号机联络信号,发应答信号

JNB TI,$

CLR TI

MOV R0,#30H ;设定数据块地址指针初值

MOV R7,#10H ;设定数据块长度初值

MOV R6,#00H ;清校验和单元

BLOOP2:JNB RI,$

CLR RI

MOV A,SBUF

MOV @R0,A ;接收数据转储

INC R0

ADD A,R6 ;求校验和

MOV R6,A

DJNZ R7,BLOOP2 ;判数据块是否接收完毕

JNB RI,$ ;完毕,接收1号机发来的校验和

CLR RI

MOV A,SBUF

XRL A,R6 ;比较校验和

JNZ ERROR ;校验和不相等,跳至发错误标志

MOV SBUF,#00H ;校验和相等,发正确标志

SJMP END1

ERROR:MOV SBUF,#0FFH ;要求重新发送数据

END1:JNB TI,$

CLR TI

EXIT:POP ACC

POP PSW

RETI

20、简述中断的基本概念。

中断是指CPU正在处理某任务的过程中, 由于计算机系统内、外的某种原因,发生的某一事件请求CPU 及时处理,CPU暂时中止当前的工作,自动转去处理所发生的事件。处理完该事件后,再返回到原来被中止的断点处继续工作,这样的过程称为中断。

21、MCS-51单片机可以响应几个中断源?有几个中断优先级?说出各中断源的中断矢量地址。

MCS-51单片机可以响应5个中断源,有2个中断优先级,各中断源的中断矢量地址是:

INT0:0003H、T0:000BH、INT1:0013H、T1:001BH、串行口:0023H。

22、在执行中断服务程序后,用什么指令完成返回到中断点发生处?

在执行中断服务程序后,用RETI中断返回指令返回到中断点发生处。

23、外部中断有哪两种触发方式?对哪个特殊功能寄存器的哪个位进行设置,从而确定外部中断的触发方式?

电平触发方式和边沿触发方式两种。对TCON寄存器中的ITx置0为电平触发方式,置1为边沿触发方式。

24、说出在中断系统硬件确定的自然优先级的排列顺序(由高到低)。

自然优先级的排列顺序是:INT0、T0、INT1、T1、串行口。

25、MCS-51单片机有五个中断源,但只能设置两个中断优先级,因此,在中断优先级安排上受到一定的限制。试问以下几种中断优先顺序的安排(级别由高到低)是否可能:若可能,则应如何设置中断源的中断级别:否则,请简述不可能的理由。

(1)定时器0,定时器1,外中断0,外中断1,串行口中断。

可以。T0,T1设置为高优先级,其它中断源为低优先级。IP=00001010B (2)串行口中断,外中断0,定时器0,外中断1,定时器1。

可以。串行口设置为高优先级,其它中断源为低优先级。IP=00010000B (3)外中断0,定时器1,外中断1,定时器0,串行口中断。

不可以。因为在同级中,T1的优先级低于INT1的优先级,因此要使T1的优先级高于INT1的优先级,只能把T1设置为高优先级,INT1设置为低优先级,一旦INT1设置为低优先级,那么它的优先级将总是低于T0的优先级的。

(4)外中断0,外中断1,串行口中断,定时器0,定时器1 。

可以。INT0、INT1和串行口均设置为高优先级,其它中断源为低优先级。IP=00010101B (5)串行口中断,定时器0,外中断0,外中断1,定时器1。

可以。串行口、T0设置为高优先级,其它中断源为低优先级。IP=00010010B (6)外中断0,外中断1,定时器0,串行口中断,定时器1 。

不可以。同级中INT1的优先级低于T0的优先级,所以只能把INT0设置为高优先级,T0为低优先级,但这时同样为低优先级的串行口的优先级是不可能比T1的优先级高的。

(7)外中断0,定时器1,定时器0,外中断1,串行口中断。

可以。INT0、T1设置为高优先级,其它中断源设置为低优先级。IP=00001001B

第5章部分习题参考解答

1、简述单片机最小系统的构成。

使单片机能运行的最少器件构成的系统,就是最小系统。对于无ROM的单片机芯片如8031必须扩展ROM,复位、晶振电路;而对于有ROM芯片:89C51等,不必扩展ROM,只要有复位、晶振电路即可。

2、单片机系统的扩展一般包含哪几个方面的内容?

单片机系统的扩展一般包含以下几方面的内容:

①外部程序存储器的扩展;

②外部数据存储器的扩展;

③输入/输出接口的扩展;

④管理功能器件的扩展(如定时/计数器扩展、中断扩展、通信接口扩展等)。

3、系统的三总线,是指哪三总线?每组总线都是有哪些引脚组成?

系统的三总线是指根据总线中各信号线在器件连接中所起的作用不同,将这些信号线分成了三类:地址总线、数据总线和控制总线。其中:

(1)地址总线:用于实现计算机与外部器件之间地址信号的传递,一方面实现了将这些不同的外部器件分别编入了单片机的不同的外部空间单元,另一方面也能实现计算机对这些不同的空间单元访问时形成对这些器件的寻址。

(2)数据总线:用于实现计算机与外部器件之间的数据信号的传递。

(3)控制总线:用于实现计算机与外部器件之间的控制信号的传递。

对于MCS-51系列单片机, 其三总线由下列通道口的引脚组成:

地址总线由两部分组成,P2口提供地址总线的高8位, P0口分时提供地址总线的低8位。数据总线由P0口提供。控制总线有ALE、PSEN、EA、以及P3 口提供扩展系统时的控制RD、WR信号等。

地方琐琐碎碎琐琐碎碎琐琐碎碎琐琐碎碎琐琐碎碎琐琐碎碎琐琐碎碎琐琐碎碎ssss

4、MCS-51单片机的P0口为什么要连接8位锁存器?

当单片机系统有外扩的存储器或I/O端口时,P0口分时复用为低8位地址和数据总线,所以P0口提供的低8位地址需要外部电路进行锁存。

5、用P0、P2作为地址线,选11位地址线时,寻址范围?选13位地址线时,寻址范围?选16位地址

线时,寻址范围?

选16位地址线中的低11位地址线时,其寻址范围是211=2KB;选低13位地址线时,其寻址范围是213=8KB;选16位地址线时,其寻址范围是216=64KB。

6、画出含锁存器(74LS373)的MCS-51最小系统连线电路图。

7、设计并画出MCS-51扩展一片并口I/O 8255A和一片数存6264的系统连线图,采用译码法选址(译码器74LS138)。

要求:(1)写出访问6264的地址。

(2)写出访问 8255A的地址,并写出8255A 控制字寄存器地址和A、B、C扩展口寄存器地址。

(3)试编写将读出的A口数据写到B口的实例程序(数据放在1000H起始的地址)。

(1)访问6264的地址为0000H-1FFFH。

(2)访问8255A的地址为2000H-3FFFH,8255A最低的地址为:控制字寄存器2003H,A、B、C口寄存器

地址为2000H、2001H、2002H。

(3)设A、B口工作方式0,A口输入,B口输出,C口输出(本题不用),则方式控制字为10010000B=90H

MOV A,#90H

MOV P2,#20H ;P2口提供访问8255A地址的高8位

MOV R0,#03H

MOVX @R0,A ;写8255A方式控制字MOV R0,#00H

MOVX A,@R0 ;读A口

MOV R0,#01H

MOVX @R0,A ;写B口

MOV DPTR,#1000H

MOVX @DPTR,A ;保存数据到1000H

单片机原理及应用期末考试试卷及答案

苏州经贸职业技术学院 2009-2010学年第二学期 《单片机原理及应用》期终试卷(A) 班级:姓名:学号:成绩: 一﹑填空题(将正确答案填在题干的空白处。1分×35=35分) 1、十进制数-47用8位二进制补码表示为:11010001B。 2、89C51含4KB Flash ROM,128B的RAM,在物理上有4个独立的存储器 空间。 3、若8031单片机的晶振频率fosc=12MHz,则振荡周期为1/12us ,状态周期为1/6us ,机器周期为1us ,执行MUL AB指令需要时间为4us 。 4、假定A=85H,R0=20H,(20H)=0AFH。执行指令:ADD A,@R0后,累加器 A的内容34H ,CY的内容1 ,AC的内容1 ,OV的内容1 。 5、假定DPTR的内容为8100H,累加器A的内容为40H,执行下列指令: MOVC A,@A+DPTR 后,送入A的是程序存储器8140H 单元的内容。 6、PSW中RS1 RS0=10H时,R2的地址为12H 。 7、ROM在物理上分为片内ROM 和片外ROM ,在逻辑上两者统一编址。 8、MCS-51单片机当EA=1时,首先使用的是片内程序存储器,存储容量超过4KB时开始使用外部程序存储器;EA=0时,则仅仅使用片外程序存储器。 9、MCS—51单片机访问片外存储器时,利用ALE 信号锁存来自P0 口的低8位地址信号。 10、欲使P1口的高4位输出1,而低4位不变,应执行一条ORL P1,#0F0H指令。 11、12根地址线可选4KB个存储单元,32KB存储单元需要15 根地址线。 12、设80C51 fosc=12MHz,定时器工作在方式0,则最大定时时间为8192μs。 13、异步串行数据通讯有单工、半双工和全双工共三种传送方式。 14、51单片机的中断系统最多可以有 2 个嵌套。 15、8031单片机指令MOV是访问内RAM ,最大范围为256B ,MOVX是访问外RAM ,最大范围为64KB,MOVC是访问ROM ,最大范围为64KB 。 二、单项选择(1分×15=15分) 1、MCS-51上电复位后,SP的内容是(B) (A)00H (B)07H (C)60H (D)70H 2、80C51是(C)

单片机原理及应用习题答案第三版

单片机原理及应用习题 答案第三版 集团标准化工作小组 [Q8QX9QT-X8QQB8Q8-NQ8QJ8-M8QMN]

第一章习题参考答案 1-1:何谓单片机与通用微机相比,两者在结构上有何异同 答:将构成计算机的基本单元电路如微处理器(CPU)、存储器、I/O接口电路和相应实时控制器件等电路集成在一块芯片上,称其为单片微型计算机,简称单片机。 单片机与通用微机相比在结构上的异同: (1)两者都有CPU,但通用微机的CPU主要面向数据处理,其发展主要围绕数据处理功能、计算速度和精度的进一步提高。例如,现今微机的CPU都支持浮点运算,采用流水线作业,并行处理、多级高速缓冲(Cache)技术等。CPU的主频达到数百兆赫兹(MHz),字长普遍达到32位。单片机主要面向控制,控制中的数据类型及数据处理相对简单,所以单片机的数据处理功能比通用微机相对要弱一些,计算速度和精度也相对要低一些。例如,现在的单片机产品的CPU大多不支持浮点运算,CPU还采用串行工作方式,其振荡频率大多在百兆赫兹范围内;在一些简单应用系统中采用4位字长的CPU,在中、小规模应用场合广泛采用8位字长单片机,在一些复杂的中、大规模的应用系统中才采用16位字长单片机,32位单片机产品目前应用得还不多。 (2) 两者都有存储器,但通用微机中存储器组织结构主要针对增大存储容量和CPU对数据的存取速度。现今微机的内存容量达到了数百兆字节(MB),存储体系采用多体、并读技术和段、页等多种管理模式。单片机中存储器的组织结构比较简单,存储器芯片直接挂接在单片机的总线上,CPU对存储器的读写按直接物理地址来寻址存储器单元,存储器的寻址空间一般都为64 KB。 (3) 两者都有I/O接口,但通用微机中I/O接口主要考虑标准外设(如CRT、标准键盘、鼠标、打印机、硬盘、光盘等)。用户通过标准总线连接外设,能达到即插即用。单片机应用系统的外设都是非标准的,且千差万别,种类很多。单片机的I/O接口实际上是向用

单片机原理习题及答案

习题 1. 何为“准双向I/O接口”?在MCS-51单片机的四个并口中,哪些是“准双向I/O接口”? 答:准双向I/O接口是能实现输入输出功能,但在使用时只能从输入和输出中选择一个。MCS-51单片机的四个并口中P1、P2、P3是准双向I/O接口。 2. 80C51单片机内部有几个定时/计数器?它们由哪些功能寄存器组成?怎样实现定时功能和计数功能? 答:80C51单片机内部有两个16位的可编程定时/计数器,由TH0,TL0,TH1,TL1,TMOD和TCON功能寄存器组成。通过TMOD中的C/T位选择对机器周期计数实现计数功能,选择对外部脉冲计数实现计数功能。 3. 定时/计数器T0有几种工作方式?各自的特点是什么? 答:有四种工作方式,特点见下表: M1 M0 工作方式方式说明 0 0 0 13位定时/计数器 0 1 1 16位定时/计数器 1 0 2 8位自动重置定时/计数器 1 1 3 两个8位定时/计数器(只有T0有) 4. 定时/计数器的四种工作方式各自的计数范围是多少?如果要计10个单位,不同的方式初值应为多少? 答:有四种方式。方式0计数范围:1~8192;方式1计数范围:1~65536;方式2计数范围:1~256;方式3计数范围:1~256。 如果计10个单位,方式0初值为:8192-10=8182;方式1初值为:65536-10=65526;方式2初值为:256-10=246;方式2初值为:256-10=246。 5. 设振荡频率为12MHz,如果用定时/计数器T0产生周期为100ms的方波,可以选择哪几种方式,其初值分别设为多少? 答:只能选择方式1,初值为65536-50000=15536。

单片机原理及应用在线考试试题答案

中国石油大学(北京)远程教育学院期末考核 《单片原理及应用》 说明:共100分,每题20分,在下题中任选5题。 1.MCS-51的时钟周期、机器周期、指令周期是如何分配的?当振荡频率为10MHz时,一 个机器周期为多少毫秒? 参考第二章第四节。MCS-51典型的指令周期为一个机器周期,每个机器周期由6个状态周期组成,每个状态周期由2个时钟周期(振荡周期)组成。一个机器周期=6×一个状 态周期=12×一个时钟周期=12× 答: 为使单片机能够完成取指、译码、执行指令等操作,需要为单片机提供时钟信号以产生必要的时序。单片机振荡电路中的振荡信号对应的周期叫振荡周期(时钟周期)。对振荡周期12分频后得到的信号周期叫做机器周期,即12个时钟周期,是1个机器周期。一个机器周期宽度为6个状态周期,并依次表示为S1~S6。每个状态周期由2个时钟周期(振荡周期)组成。Mcs51单片机的111条指令,执行时,所花费的时间,称为指令周期。 一个机器周期=6×一个状态周期=12×一个时钟周期=12×=12×1/10=1.2 us=0.0012ms 2.指出下列指令中画线的操作数的寻址方式? MOV R0, #55H ;立即寻址 MOV A, 2AH ;直接寻址 MOV A, @R1 ;寄存器间接寻址 MOV @R0, A ;寄存器寻址 ADD A, R7 ;寄存器寻址 MOVX A, @DPTR ;寄存器间接寻址 MOV DPTR, #0123H ;立即寻址 MOVC A, @A+DPTR ;基址加变址寻址 INC DPTR;寄存器寻址 参考第三章第二节指令寻址方式 3.外部RAM中从1000H到10FFH有一个数据区,现在将它传送到外部RAM中2500H单元 开始的区域中,编程完成上述功能。 参考第三章第三节数据传送类指令和第六章第二节外部存储器扩展 START: MOV R0,#00H MOV DPTR,#1000H LOOP: MOVX A,@DPTR MOV DPH,#25H MOVX @DPTR,A MOV DPH,#10H

单片机原理及应用课后答案

第1章单片机概述参考答案 1.1 答:微控制器,嵌入式控制器 1.2 答:CPU、存储器、I/O口、总线 1.3 答:C 1.4 答:B 1.5 答:微处理器、微处理机和CPU它们都是中央处理器的不同称谓,微处理器芯片本身不是计算机。而微计算机、单片机它们都是一个完整的计算机系统,单片机是集成在一个芯片上的用于测控目的的单片微计算机。 嵌入式处理器一般意义上讲,是指嵌入系统的单片机、DSP、嵌入式微处理器。目前多把嵌入式处理器多指嵌入式微处理器,例如ARM7、ARM9等。嵌入式微处理器相当于通用计算机中的CPU。与单片机相比,单片机本身(或稍加扩展)就是一个小的计算机系统,可独立运行,具有完整的功能。而嵌入式微处理器仅仅相当于单片机中的中央处理器。为了满足嵌入式应用的特殊要求,嵌入式微处理器虽然在功能上和标准微处理器基本是一样的,但在工作温度、抗电磁干扰、可靠性等方面一般都做了各种增强。 1.6 答:MCS-51系列单片机的基本型芯片分别:8031、8051和8071。它们的差别是在片内程序存储器上。8031无片内程序存储器、8051片内有4K字节的程序存储器ROM,而8751片内有集成有4K字节的程序存储器EPROM。 1.7 答:因为MCS-51系列单片机中的"MCS"是Intel公司生产的单片机的系列符号,而51系列单片机是指世界各个厂家生产的所有与8051的内核结构、指令系统兼容的单片机。 1.8 答:相当于MCS-51系列中的87C51,只不过是AT89S51芯片内的4K字节Flash存储器取代了87C51片内的4K字节的EPROM。 1.9 单片机体积小、价格低且易于掌握和普及,很容易嵌入到各种通用目的的系统中,实现各种方式的检测和控制。单片机在嵌入式处理器市场占有率最高,最大特点是价格低,体积小。 DSP是一种非常擅长于高速实现各种数字信号处理运算(如数字滤波、FFT、频谱分析等)的嵌入式处理器。由于对其硬件结构和指令进行了特殊设计,使其能够高速完成各种复杂的数字信号处理算法。广泛地用于通讯、网络通信、数字图像处理,电机控制系统,生物信息识别终端,实时语音压解系统等。这类智能化算法一般都是运算量较大,特别是向量运算、指针线性寻址等较多,而这些正是DSP的长处所在。与单片机相比,DSP具有的实现高速运算的硬件结构及指令和多总线,DSP处理的算法的复杂度和大的数据处理流量以及片内集成的多种功能部件更是单片机不可企及的。 嵌入式微处理器的基础是通用计算机中的CPU,它的地址总线数目较多能扩展较大的存储器空间,所以可配置实时多任务操作系统(RTOS)。RTOS是嵌入式应用软件的基础和开发平台。正由于嵌入式微处理器能运行实时多任务操作系统,所以能够处理复杂的系统管理任务和处理工作。因此,广泛地应用在移动计算平台、媒体手机、工业控制和商业领域(例如,智能工控设备、ATM机等)、电子商务平台、信息家电(机顶盒、数字电视)以及军事上的应用。 1.10 广义上讲,凡是系统中嵌入了"嵌入式处理器",如单片机、DSP、嵌入式微处理器,都称其为"嵌入式系统"。但多数人把 "嵌入"嵌入式微处理器的系统,称为"嵌入式系统"。目前"嵌入式系统"还没有一个严格和权威的定义。目前人们所说的"嵌入式系统",多指后者。 第2章 AT89S51单片机的硬件结构 1.答:AT89S51单片机的片内都集成了如下功能部件:(1)1个微处理器(CPU);(2)128

单片机原理与应用 习题答案

习题解答 第三章 3-1 已知A=7AH,R0=30H(30H=A5H),PSW=80H,SP=65H,试分析下面每条指令的执行结果及对标志位的影响。 (1)ADD A,@R0;01111010+=1,00011111,(A)=1FH,Cy=1 , AC=0,OV=0,P=1 (2)ADD A,#30H;01111010+00110000=,(A)=AAH,Cy=0,AC=0,OV=1,P=0 (3)ADDC A,30H;01111010++1=1,00100000,(A)=20H,Cy=1,AC=1,OV=0,P=1 (4)SUBB A,@R0;0101-1=1,,(A)=D4H,Cy=1,AC=0,OV=1,P=0 (5)DA A;01111010+00000110=,(A)=80H,Cy=0,其他无变化 (6)RLC A;(A)=B=F5H,Cy=0,AC=0,OV=0,P=0 (7)RR A;(A)=00111101B=3DH,Cy=1,AC=0,OV=0,P=1 《 (8)PUSH 30H;SP=66H,(66H)=A5H (9)POP B;SP=64H,(B)=(65H) (10)XCH A,@R0;(A)=A5H,(30H)=7AH,Cy=1,OV=0,AC=0,P=0 3-4 试分析在执行完下面的程序段后,A,R0,R1,R7,SP以及片内RAM的一些单元中内容各是什么 MOV SP,#65H MOV R7,#5 MOV R0,#30H MOV R1,#40H LOOP:MOV A,@R1 PUSH ACC $ MOV A,@R0 MOV @R1,A INC R0 INC R1 DJNZ R7,LOOP 结果:(A)=(34H),(R0)=34H,(R1)=44H,(R7)=0,SP=70H ,(70H)=(44H),(30H)=(40H),…(34H)=(44H)。 3-5 已知SP=62H,(62H)=50H,(61H)=30H,问执行指令RET后,PC=,SP=并解释。 答:执行指令RET,从堆栈中弹出地址值给PC,栈指针减2,(62H),(61H)中的内容分别弹出PC=5030H,SP=60H 3-7 试编程求出片外RAM从2000H开始的连续20个单元的平均值,并将结果存入内部RAM20H单元。 MOV DPTR,#2000H ) ACALL AVG 子程序名:AVG 子程序功能:求20个无符号数平均值子程序 子程序入口:(DPTR)=数据区首地址指针

单片机原理及应用试卷和答案(三套试卷和答案)

试卷一 一、填空题(20分,每小题2分) 1、-19D的二进制的补码表示为11101101B。 2、89C51含4KB掩膜ROM,128B的RAM,在物理上有4个独立的存储器空间。 3、通过堆栈操作实现子程序调用,首先要把PC 的内容入栈,以进行断点保护。调 用返回时再进行出栈操作,把保护的断点弹回 PC。 4、74LS138是具有3个输入的译码器芯片,其输出作为片选信号时,最多可以选中8 块芯片。 5、PSW中RS1 RS0=10H时,R2的地址为12H。 6、假定DPTR的内容为8100H,累加器A的内容为40H,执行下列指令: MOVC A,@A+DPTR 后,送入A的是程序存储器8140H单元的内容。 7、设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单元。 8、在中断系统中,T0和T1两引脚扩展成外部中断源时,计数初值应当是(TH)=(TL)= 0FFH。 9、12根地址线可寻址4KB存储单元。 二、选择题(10分,每小题1分) 1、MCS-51响应中断时,下面哪一个条件不是必须的(C) (A)当前指令执行完毕(B)中断是开放的 (C)没有同级或高级中断服务(D)必须有RETI 2、执行PUSH ACC指令,MCS-51完成的操作是(A) (A)SP+1→SP,(ACC)→(SP);(B)(ACC)→(SP),SP-1→SP (C)SP-1→SP,(ACC)→(SP);(D)(ACC)→(SP),SP+1→SP 3、89C51是(C) (A)CPU (B)微处理器 (C)单片微机(D)控制器 4、关于MCS-51的堆栈操作,正确的说法是(C) (A)先入栈,再修改栈指针(B)先修改栈指针,再出栈 (C)先修改栈指针,再入栈(D)以上都不对

单片机原理和应用习题答案解析(第三版)

第一章习题参考答案 1-1:何谓单片机?与通用微机相比,两者在结构上有何异同? 答:将构成计算机的基本单元电路如微处理器(CPU)、存储器、I/O接口电路和相应实时控制器件等电路集成在一块芯片上,称其为单片微型计算机,简称单片机。 单片机与通用微机相比在结构上的异同: (1)两者都有CPU,但通用微机的CPU主要面向数据处理,其发展主要围绕数据处理功能、计算速度和精度的进一步提高。例如,现今微机的CPU都支持浮点运算,采用流水线作业,并行处理、多级高速缓冲(Cache)技术等。CPU的主频达到数百兆赫兹(MHz),字长普遍达到32位。单片机主要面向控制,控制中的数据类型及数据处理相对简单,所以单片机的数据处理功能比通用微机相对要弱一些,计算速度和精度也相对要低一些。例如,现在的单片机产品的CPU大多不支持浮点运算,CPU还采用串行工作方式,其振荡频率大多在百兆赫兹范围内;在一些简单应用系统中采用4位字长的CPU,在中、小规模应用场合广泛采用8位字长单片机,在一些复杂的中、大规模的应用系统中才采用16位字长单片机,32位单片机产品目前应用得还不多。 (2) 两者都有存储器,但通用微机中存储器组织结构主要针对增大存储容量和CPU对数据的存取速度。现今微机的内存容量达到了数百兆字节(MB),存储体系采用多体、并读技术和段、页等多种管理模式。单片机中存储器的组织结构比较简单,存储器芯片直接挂接在单片机的总线上,CPU对存储器的读写按直接物理地址来寻址存储器单元,存储器的寻址空间一般都为64 KB。 (3) 两者都有I/O接口,但通用微机中I/O接口主要考虑标准外设(如CRT、标准键盘、鼠标、打印机、硬盘、光盘等)。用户通过标准总线连接外设,能达到即插即用。单片机应用系统的外设都是非标准的,且千差万别,种类很多。单片机的I/O接口实际上是向用户提供的与外设连接的物理界面。用户对外设的连接要设计具体的接口电路,需有熟练的接口电路设计技术。 另外,单片机的微处理器(CPU)、存储器、I/O接口电路集成在一块芯片上,而通用微机的微处理器(CPU)、存储器、I/O接口电路一般都是独立的芯片 1-4 IAP、ISP的含义是什么? ISP:In System Programable,即在系统编程。用户可以通过下载线以特定的硬件时序在线编程(到单片机内部集成的FLASH上),但用户程序自身不可以对内部存储器做修改。 IAP:In Application Programable,即在应用编程。用户可以通过下载线对单片机进行在线编程,用户程序也可以自己对内部存储器重新修改。 1-6 51单片机与通用微机相比,结构上有哪些主要特点? (1)单片机的程序存储器和数据存储器是严格区分的,前者为ROM,后者为RAM; (2)采用面向控制的指令系统,位处理能力强; (3)I/O引脚通常是多功能的; (4)产品系列齐全,功能扩展性强; (5)功能是通用的,像一般微处理机那样可广泛地应用在各个方面。 1-7 51单片机有哪些主要系列产品? (1)Intel公司的MCS-51系列单片机:功能比较强、价格比较低、较早应用的单片机。此系列三种基本产品是:8031/8051/8751; (2)ATMEL公司的89系列单片机:内含Flash存储器,开发过程中可以容易地进行

单片机原理期末考试试题_附答案

单片机原理期末考试试 题_附答案 This model paper was revised by LINDA on December 15, 2012.

单片机原理及应用期末考试试题汇总 1、单片机是将微处理器、一定容量的 RAM 和ROM以及(I/O)口、定时器等电路集成在一块芯片上而构成的微型计算机。 2、单片机89C51片内集成了(4)KB的FLASH ROM,共有(5)个中断源。 3、两位十六进制数最多可以表示(256)个存储单元。 4、89C51是以下哪个公司的产品( C ) A、INTEL B、AMD C、ATMEL D、PHILIPS 5、在89C51中,只有当EA引脚接(高)电平时,CPU才访问片内的Flash ROM。 6、是非题:当89C51的EA引脚接低电平时,CPU只能访问片外ROM,而不管片内是否有程序存储器。T 7、是非题:当89C51的EA引脚接高电平时,CPU只能访问片内的4KB空间。F 8、当CPU访问片外的存储器时,其低八位地址由(P0)口提供,高八位地址由(P2)口提供,8位数据由(P0)口提供。9、在I/O口中,(P0)口在接LED时,必须提供上拉电阻,(P3)口具有第二功能。10、是非题:MCS-51系列单片机直接读端口和读端口锁存器的结果永远是相同的。F 11、是非题:是读端口还是读锁存器是用指令来区别的。T 12、是非题:在89C51的片内RAM区中,位地址和部分字节地址是冲突的。F 13、是非题:中断的矢量地址位于RAM区中。F 14、MCS-51系列单片机是属于(B)体系结构。 A、冯诺依曼 B、普林斯顿 C、哈佛 D、图灵 15、89C51具有?( 64?) KB的字节寻址能力。 16、是非题:在89C51中,当CPU访问片内、外ROM区时用MOVC指令,访问片外

单片机原理与应用试题及答案

单片机原理与应用试题 及答案 https://www.doczj.com/doc/367516406.html,work Information Technology Company.2020YEAR

单片机原理与应用试卷及答案 一、填空题 1、10110110B 作为无字符数时,十进制数值为182;作为补码时,十进制数值为—74. 2、原码01101011B 的反码为01101011B ;补码为01101011B 。 3、由8051的最小系统电路除芯片外,外部只需要复位电路和时钟(晶振)电路,如果由8031的最小系统,还需要扩展外部ROM 电路。 4、若已知8051RAM 的某位地址为09H ,则该位所处的单元地址为21H 。 5、C51语言中,指令#define ADC XBYTE[OXFFEO]能够正确编译的前提是包含头文件absacc.h ,该指令的作用是定义一个外部地址单元为OXFFEO 。 二、选择题 1、程序和常数都是以(二进制)的形式存放在单片机程序的存储器中。 2、下列哪一个选项的指令语句不是任何时候都可以被C51正确编译(uchar; k=ox20) 3、当PSW 的RS0和RS1位分别为1和0时,系统选用的寄存器组为(1组) 4、若某存储器芯片地址线为12根,那么它的存储容量为(4KB ) 5、已知T osc =12MHZ ,TH1=177,TL1=224,TMOD=ox10,则从定时器启动到正常溢出的时间间隔为(20ms ) 三、简答题 答:①新建工程项目②配置工程项目属性③创建源文件④将源文件加入项目⑤保存项目 3、PSW 寄存器有何作用其各位是如何定义的 4、 答:标志寄存器PSW 是一个8位的寄存器,它用于保存指令执行结果的状态,以供工程查询和判别。 C (PWS.7):进位标志位 AC (PWS.6):辅助进位标志位 FO (PWS.5):用户标志位 RS1、RS0(PWS.4、PWS.3 PSW DOH

单片机原理及应用习题答案

思考与练习题1 1.1单项选择题 (1)单片机又称为单片微计算机,最初的英文缩写是( D ) A.MCP B.CPU C.DPJ D.SCM (2)Intel公司的MCS-51系列单片机是( C )的单片机。 A.1位 B.4位 C.8位 D.16位 (3)单片机的特点里没有包括在内的是( C ) A.集成度高 B.功耗低 C.密封性强 D.性价比高 (4)单片机的发展趋势中没有包括的是( B ) A.高性能 B.高价格 C.低功耗 D.高性价比 (5)十进制数56的二进制数是( A ) A.00111000B B.01011100B C.11000111B D.01010000B (6)十六进制数93的二进制数是( A ) A.10010011B B.00100011B C.11000011B D.01110011B (7)二进制数11000011的十六进制数是( B ) A. B3H B.C3H C.D3H D.E3H (8)二进制数11001011的十进制无符号数是( B ) A. 213 B.203 C.223 D.233 (9)二进制数11001011的十进制有符号数是( B ) A. 73 B.-75 C.-93 D.75 (10)十进制数29的8421BCD压缩码是( A ) A.00101001B B.10101001B C.11100001B D.10011100B (11)十进制数-36在8位微机中的反码和补码是( D ) A.00100100B、11011100B B.00100100B、11011011B C.10100100B、11011011B D.11011011B、11011100B (12)十进制数+27在8位微机中的反码和补码分别是( C ) A.00011011B、11100100B B.11100100B、11100101B C.00011011B、00011011B D.00011011B、11100101B (13)字符9的ASCII码是( D ) A.0011001B B.0101001B C.1001001B D.0111001B (14)ASCII码1111111B的对应字符是( C ) A. SPACE B.P C.DEL D.{ (15)或逻辑的表达式是( B ) A.A?B=F B. A+B=F C. A⊕B=F D.(A?B)=F (16)异或逻辑的表达式是( C ) A.A?B=F B. A+B=F C. A⊕B=F D.(A?B)=F (17)二进制数10101010B与00000000B的“与”、“或”和“异或”结果是( B ) A.10101010B、10101010B、00000000B B.00000000B、10101010B、10101010B C.00000000B、10101010B、00000000B D.10101010B、00000000B、10101010B (18)二进制数11101110B与01110111B的“与”、“或”和“异或”结果是( D ) A.01100110B、10011001B、11111111B B.11111111B、10011001B、01100110B C.01100110B、01110111B、10011001B D.01100110B、11111111B、10011001B (19)下列集成门电路中具有与门功能的是( D ) A.74LS32 B.74LS06 C.74LS10 D.74LS08

单片机原理试题库答案

单片机原理及应用复习题及答案 一、选择题(在每个小题四个备选答案中选出一个或几个正确答案,填在题的括号中) 1、80C51基本型单片机内部程序存储器容量为(C)。 (A)16KB (B)8KB (C)4KB (D)2KB 2、在80C51单片机应用系统中,可以作为时钟输出的是(C)引脚。 (A)EA(B)RST (C)ALE (D)PSEN 3、在80C51的4个并行口中,能作为通用I/O口和高8位地址总线的是(C)。 (A)P0 (B)P1 (C)P2 (D)P3 4、当优先级的设置相同时,若以下几个中断同时发生,(D)中断优先响应。 (A)并口(B)T1 (C)串口(D)T0 5、在80C51中,要访问SFR使用的寻址方式为(AB)。 (A)直接寻址(B)寄存器寻址(C)变址寻址(D)寄存器间接寻址 6、以下的4条指令中,不合法的指令为(D)。 (A)INC A (B)DEC A (C)INC DPTR (D)SWAP ACC 7、当需要扩展一片8KB的RAM时,应选用的存储器芯片为(B)。 (A)2764 (B)6264 (C)6116 (D)62128 8、若想扩展键盘和显示,并希望增加256字节的RAM时,应选择(A)芯片。 (A)8155 (B)8255 (C)8253 (D)8251 9、80C51单片机要进行10位帧格式的串行通讯时,串行口应工作在(B )。 (A)方式0 (B)方式1 (C)方式2 (D)方式3 10、80C51复位初始化时未改变SP的内容,第一个入栈的单元地址为(A)。 (A)08H (B)80H (C)00H (D)07H 11、MCS—51单片机的复位信号是( A )有效。 A.高电平 B.低电平 C.脉冲 D.下降沿 12、若MCS-51单片机使用晶振频率为6MHz时,其复位持续时间应该超过( B )。 A.2μs B.4μs C.8μs D.1ms 13、若PSW.4=0,PSW.3=1,要想把寄存器R0的内容入栈,应使用( D )指令。 A.PUSH R0 B.PUSH @R0 C.PUSH 00H D.PUSH 08H 14、能够用紫外光擦除ROM中程序的只读存储器称为( C )。 A.掩膜ROM B.PROM C.EPROM D.EEPROM 15、在片外扩展一片2764程序存储器芯片要( B )地址线。 A.8根 B.13根 C.16根 D.20根 16、定时器/计数器工作方式1是( D )。 A.8位计数器结构 B.2个8位计数器结构 C.13位计数结构 D.16位计数结构 17、设MCS-51单片机晶振频率为12MHz,定时器作计数器使用时,其最高的输入计数频率应为 ( C ) A.2MHz B.1MHz C.500KHz D.250KHz 18、已知1只共阴极LED显示器,其中a笔段为字形代码的最低位,若需显示数字1,它的字形代码应为( A )。 A.06H B.F9H C.30H D.CFH

单片机原理及应用教程第3版习题课后答案

《单片机原理及应用程序》(第三版)习题参考答案 第一章 1. 为什么计算机要采用二进制数?学习十六进制数的目的是什么? 在计算机中,由于所采用的电子逻辑器件仅能存储和识别两种状态的特点,计算机部一切信息存储、处理和传送均采用二进制数的形式。可以说,二进制数是计算机硬件能直接识别并进行处理的惟一形式。十六进制数可以简化表示二进制数。 2. (1) 01111001 79H (2) 0.11 0.CH (3) 01111001.11 79.CH (4) 11101010.101 0EA.AH (5)01100001 61H (6) 00110001 31H 3. (1) 0B3H (2)80H (3) 17.AH (4) 0C.CH 4. (1)01000001B 65 (2) 110101111B 431 5. (1) 00100100 00100100 00100100 (2) 10100100 11011011 11011100 (5) 10000001 11111110 11111111 6. 00100101B 00110111BCD 25H 7. 137 119 89 8.什么是总线?总线主要有哪几部分组成?各部分的作用是什么? 总线是连接计算机各部件之间的一组公共的信号线。一般情况下,可分为系统总线和外总线。 系统总线应包括:地址总线(AB)控制总线(CB)数据总线(DB) 地址总线(AB):CPU根据指令的功能需要访问某一存储器单元或外部设备时,其地址信

息由地址总线输出,然后经地址译码单元处理。地址总线为16位时,可寻址围为216=64K,地址总线的位数决定了所寻址存储器容量或外设数量的围。在任一时刻,地址总线上的地址信息是惟一对应某一存储单元或外部设备。 控制总线(CB):由CPU产生的控制信号是通过控制总线向存储器或外部设备发出控制命令的,以使在传送信息时协调一致的工作。CPU还可以接收由外部设备发来的中断请求信号和状态信号,所以控制总线可以是输入、输出或双向的。 数据总线(DB):CPU是通过数据总线与存储单元或外部设备交换数据信息的,故数据总线应为双向总线。在CPU进行读操作时,存储单元或外设的数据信息通过数据总线传送给CPU;在CPU进行写操作时,CPU把数据通过数据总线传送给存储单元或外设9.什么是接口电路? CPU与接口电路连接一般应具有哪些信号线?外部设备与接口电路连接一般应具有哪些信号线? CPU通过接口电路与外部输入、输出设备交换信息, 一般情况下,外部设备种类、数量较多,而且各种参量(如运行速度、数据格式及物理量)也不尽相同。CPU为了实现选取目标外部设备并与其交换信息,必须借助接口电路。一般情况下,接口电路通过地址总线、控制总线和数据总线与CPU连接;通过数据线(D)、控制线(C)和状态线(S)与外部设备连接。 10. 存储器的作用是什么?只读存储器和随机存储器有什么不同? 存储器具有记忆功能,用来存放数据和程序。计算机中的存储器主要有随机存储器(RAM)和只读存储器(ROM)两种。随机存储器一般用来存放程序运行过程中的中间数据,计算机掉电时数据不再保存。只读存储器一般用来存放程序,计算机掉电时信息不会丢失。 11.某存储器的存储容量为64KB,它表示多少个存储单元?64×1024 12. 简述微型计算机硬件系统组成。

单片机原理与应用习题和答案

“单片机原理及应用”课程习题与解答 第一章 1-3:单片机与普通计算机的不同之处在于其将(cpu )(I/O口)和(存储器)三部分集成于一块芯片上。 答:CPU、存储器、I/O口 1-8:8051与8751的区别是:(部程序存储器不同) A、部数据存储但也数目的不同 B、部数据存储器的类型不同 C、部程序存储器的类型不同 D、部的寄存器的数目不同 答:C 第二章 2-4:在MCS-51单片机中,如果采用6MHz晶振,1个机器周期为()。 答:2us。 析:机器周期为振荡周期的1/6。 2-6:部RAM中,位地址为30H的位,该位所在字节的字节地址为()。 答:26H 2-7:若A中的容为63H,那么,P标志位的值为()。 答:0 析:P为奇偶校验位,因为A中1的个数为偶数,所以P=0。 2-8:判断下列说法是否正确: A、8031的CPU是由RAM和EPROM所组成。运算器和控制器组成 B、区分片外程序存储器和片外数据存储器的最可靠的方法是看其位于地址围的低端还是高端。通过 引脚指令 C、在MCS-51中,为使准双向的I/O口工作在输入方式,必须保证它被事先预置为1。 D、PC可以看成使程序存储器的地址指针。 答:错、错、对、对 2-9:8031单片机复位后,R4所对应的存储单元的地址为(04H),因上电时PSW=(00H)。这时当前的工作寄存器区是(0)组工作寄存器区。 答:04H、00H、0 2-11:判断以下有关PC和DPTR的结论是否正确? A、DPTR是可以访问的,而PC不能访问。 B、它们都是16位的存储器 C、它们都有加1的功能。Pc无 D、DPTR可以分为两个8位的寄存器使用,但PC不能。 答:对、对、错、对 2-13:使用8031芯片时,需将/EA引脚接(低)电平,因为其片无(程序)存储器。 答:低、程序 2-14:片RAM低128个单元划分为哪3个主要部分?各部分的主要功能是什么? 答:工作寄存器区、位寻址区、数据缓冲区 2-15:判断下列说法是否正确 A、程序计数器PC不能为用户编程时直接使用,因为它没有地址。 B、部RAM的位寻址区,只能供位寻址使用,而不能供字节寻址使用。都能

单片机原理及应用试题库答案

《单片机原理及应用》试题库 一、填空题 1.单片机就是把(CPU)、( 输入/输出)、和( 存储器)等部件都集成在一个电路芯片上,并具备一套功能完善的( 指令系统),有的型号同时还具备( AD )和( DA )等功能部件,其简称为( 微处理器)或(微控制器)。 2.Intel公司典型的单片机有( MCS-51系列)和( MCS-96系列)。 3.单片机具有体积( 下)、重量( 轻)、价格( 低)、功耗( 小)、控制功能强、运算速度快、运用灵活、易于产品化、抗扰能力( 强)等特点,故在国民经济建设、军事及家用电器等领域均得到了广泛的应用。 4.微处理器本身不是计算机,它是微型计算机的核心部件,又称它为(CPU )。它包括两个主要部分:(运算器)、(控制器)。 5.当扩展外部存储器或I/O口时,P2口用作(地址线的高8位)。 6.MCS-51单片机内部RAM区有( 4 )个工作寄存器区。 7.MCS-51单片机内部RAM区有(128 )个位地址。 8.89C51单片机片内RAM中位寻址区的地址范围是(20H—2FH ),工作寄存器区的地址范围是(00H—1FH ),片内程序存储器中寻址区的地址范围是(0000H—07FFH )。 9.MCS-51有( 4 )个并行I\O口。 10.MCS-51的堆栈是软件填写堆栈指针临时在(30H—7FH )内开辟的区域. 11.MCS-51片内(20H—2FH )范围内的数据存储器,既可以字节寻址又可以位寻址。 12.程序状态标志字寄存器PSW中的PSW.7的含义是(进位和借位标志位);PSW.0的含义是(奇偶校验位)。 13.若不使用89C51片内的程序存储器,引脚(EA’)必须接地。 14.MCS-51中凡字节地址能被(0和8 )整除的特殊功能寄存器均能寻址。 15.MCS-51有4组工作寄存器,它们的字节地址范围是(00H—1FH )。 16.当MCS-51引脚(ALE )信号有效时,表示从P0口稳定地送出了低8位地址. 17.在单片机的RESET端出现(两个机器周期以上的高电平时),便可以可靠复位,复位后的程序指针PC指向(0000H )地址。 18.MCS-51系列单片机有:(外部中断0), (外部中断1 ), (定时/计数器T0溢出中断), (定时/计数器T1溢出中断), (串行口)等5个中断请求源。 39.KeiL C51软件中,工程文件的扩展名是__UV2______,编译连接后生成可烧写的文件扩展名是__hex_______。

单片机原理及应用(第三版)张毅刚-课后习题答案完整版

第1章思考题及习题1参考答案 一、填空 1. 除了单片机这一名称之外,单片机还可称为或。答:微控制器,嵌入式 控制器. 2.单片机与普通微型计算机的不同之处在于其将、、和三部分,通 过内部连接在一起,集成于一块芯片上。答:CPU、存储器、I/O口、总线 3. AT89S52单片机工作频率上限为MHz。答:33 MHz。 4. 专用单片机已使系统结构最简化、软硬件资源利用最优化,从而大大降低和提 高。答:成本,可靠性。 二、单选 1. 单片机内部数据之所以用二进制形式表示,主要是 A.为了编程方便 B.受器件的物理性能限制 C.为了通用性 D.为了提高运算速度 答:B 2. 在家用电器中使用单片机应属于微计算机的。 A.辅助设计应用B.测量、控制应用 C.数值计算应用D.数据处理应用

答:B 3. 下面的哪一项应用,不属于单片机的应用范围。 A.工业控制B.家用电器的控制C.数据库管理D.汽车电子设备 答:C 三、判断对错 1. STC系列单片机是8051内核的单片机。对 2. AT89S52与AT89S51相比,片内多出了4KB的Flash程序存储器、128B的RAM、1 个中断源、1个定时器(且具有捕捉功能)。对 3. 单片机是一种CPU。错 4. AT89S52单片机是微处理器。错 5. AT89C52片内的Flash程序存储器可在线写入,而AT89S52则不能。错 6. 为AT89C51单片机设计的应用系统板,可将芯片AT89C51直接用芯片AT89S51替换。对 7. 为AT89S51单片机设计的应用系统板,可将芯片AT89S51直接用芯片AT89S52替换。对 8. 单片机的功能侧重于测量和控制,而复杂的数字信号处理运算及高速的测控功能则是DSP 的长处。对 四、简答

单片机原理与接口技术习题答案

单片机原理与接口技术习题答案 习题与思考题1 1-2 单片微型计算机与一般微型计算机相比较有哪些区别?有哪些特点? 答:与通用微型计算机相比,单片机的硬件上,具有严格分工的存储器ROM和RAM和I/O端口引脚具有复用功能;软件上,采用面向控制的指令系统和硬件功能具有广泛的通用性,以及品种规格的系列化。单片机还具备体积小、价格低、性能强大、速度快、用途广、灵活性强、可靠性高等特点。 1-4 单片机的几个重要指标的定义。 答:单片机的重要指标包括位数、存储器、I/O口、速度、工作电压、功耗和温度。 习题与思考题2 2-2 MCS-51单片机的EA、ALE和PSEN端的功能是什么? 答:ALE——ALE为地址锁存允许信号,在访问外部存储器时,ALE用来锁存P0送出的低8位地址信号。 PSEN——外部程序存储器的读选通信号。当访问外部ROM时,PSEN产生负脉冲作为外部ROM的 选通信号;在访问外部RAM或片内ROM时,不会产生有效的PSEN信号。PSEN可驱动8个LSTTL 门输入端。 EA——访问外部程序存储器控制信号。对8051和8751,它们的片内有4KB的程序存储器。当EA为 高电平时,CPU访问程序存储器有两种情况:一是访问的地址空间在0~4K范围内,CPU访问片内 程序存储器;二是访问的地址超出4K时,CPU将自动执行外部程序存储器的程序。对于8031,EA 必须接地,只能访问外部ROM。 2-3 程序计数器(PC)有多少位?它的主要功能是什么? 答:程序计数器有16位,它的功能和一般微型计算机的相同,用来存放下一条要执行的指令的地址。当按照PC 所指的地址从存储器中取出一条指令后,PC会自动加l,即指向下一条指令。 2-5 MCS-51单片机如何实现工作寄存器组R0~R7的选择? 答:每个工作寄存器组都可被选为CPU的当前工作寄存器,用户可以通过改变程序状态字寄存器(PSW)中的RS1、RS0两位来任选一个寄存器组为当前工作寄存器。 RS1RS0寄存器组R0R1R2R3R4R5R6R7 000组00H01H02H03H04H05H06H07H 011组08H09H0AH0BH0CH0DH0EH0FH 102组10H11H12H13H14H15H16H17H 113组18H19H1AH1BH1CH1DH1EH1FH 2-6 单片机复位后,各特殊功能寄存器中的初始化状态是什么? 答: 特殊功能寄存器初始状态特殊功能寄存器初始状态ACC00H TMOD00H PC0000H TCON00H PSW00H TL000H SP07H TH000H DPTR0000H TL100H P0~P30FFH TH100H IP xx000000B B00H IE0x000000B SCON00H PCON0xxx0000B SBUF不定

单片机原理及应用试题及答案

广西工学院 2002 — 2003 学年第 2 学期课程考核试题考核课程单片机原理及应用考核班级自动化00级 学生数 145 印数 150 考核方式闭卷考核时间 120 分钟 一.填空题(每空1分,共20分) 1、单片机与普通计算机的不同之处在于其将CPU 微处理器、存储 器和I/O口三部分集成于一块芯片上。 2、使用双缓冲方式的D/A转换器,可实现多路模拟信号的同时输出。习题11.4 3、通过堆栈操作实现子程序调用,首先就要把PC的内容入栈,以进行断点保 护。调用返回时,再进行出栈保护,把保护的断点送回到PC。习题2.17 4、在基址加变址寻址方式中,以累加器A作变址寄存器, 以DPTR或PC 作基址寄存器。3.3 5、假定累加器A中的内容为40H,执行指令 1000H:MOVC A,@A+PC 后,把程序存储器1041H单元的内容送入累加器A中。 6、在寄存器间接寻址方式中,其“间接”体现在指令中寄存器的内容不是操作 数,而是操作数的地址。3.10 7、假定A=83H,(R0)=17H,(17H)=0B5H,执行以下指令: ANL A,#17H ORL 17H,A XRL A,@R0 CPL A 后,A的内容为4BH 。 解析: ANL A,#17H ;A中83H与17H相与,(A)=03H ORL 17H,A ;(17H)中0B5H与(A)中03H相或,(17H)=B7H XRL A,@R0 A ;(A)中03H与(17H)中B7H异或,(A)=B4H

CPL A ;对A取反, A=4BH 8、已知程序执行前有A=01H,SP=42H,(41H)=FFH,(42H)=FFH。下述程序执行后: POP DPH POP DPL MOV DPTR,#3000H RL A MOV B,A MOVC A,@A+DPTR PUSH A MOV A,B INC A MOVC A,@A+DPTR PUSH A RET ORG 3000H DB 10H,80H,30H,80H,50H,80H 请问:A= 80H,SP= ,(41H)= ,(42H)= 。 9、在存储器扩展中,无论是线选法还是译码法,最终都是为了扩展芯片的片选端提供信号。 10、在MCS-51中,PC和DPTR都用于提供地址,但PC是为了访问程序存 储器提供地址,而DPTR是为访问数据存储器提供地址。 11、16KB RAM存储器的首地址若为3000H,则末地址为 H。 解析:1000H=0001 0000 0000 0000B=2^12=4K,16K就是4000H,即:0100 0000 0000 0000B=2^14 所以末地址为:7000H-1=6FFFH

相关主题
文本预览
相关文档 最新文档