单片机课后习题与答案

单片机课后习题与答案
单片机课后习题与答案

第1部分答案

1-1 简述冯·诺依曼型计算机的主要特征。

1、采用二进制代替十进制运算

2、存储程序工作方法

3、计算机硬件系统的构成

1-2 计算机硬件系统由哪些部件组成?

计算机硬件系统由运算器、控制器、存储器、输入设备和输出设备五个部分。1-3 填空:

(1)100D=01100100=64H

(2)03CH=00111100B=60D

1-4 写出下列各数的原码、反码和补码(用二进制数表示)。

21 -21 59 -59 127 -127 1 -1

21 原码:00010101

反码:00010101

补码:00010101 -21 原码:10010101 反码:11101010

补码:11111011

59原码:00111011

反码:00111011

补码:00111011

-59原码:10111011

反码:11000100

补码:11000101

127原码:01111111

反码:01111111

补码:01111111

-127 原码:11111111

反码:10000000

补码:10000001

1原码:00000001

反码:00000001

补码:00000001

-1原码:1000001

反码:11111110

补码:11111111

1-5 用十进制数写出下列补码的真值:

1FH 69H 89H FCH 97H CDH B3H 10H

1FH的真值:31D

69H的真值:105D

89H的真值:-119D

FCH的真值:-4D

97H的真值:-105D

CDH的真值:-51D

B3H的真值:-77D

10H的真值:16D

1-6 已知X和Y,求(X+Y)补。

(1)X=31D,Y=55D (X+Y)补= 01010000B

(2)X=46D,Y=-81D (X+Y)补=11010001B

(3)X=-54D,Y=93D (X+Y)补=00100111B

(4)X=-23D,Y=-67D (X+Y)补=10100110B

(5)X=75D,Y=89D (X+Y)补=10100100B

1-7 写出下列各数的8421BCD码。

1234 5678

1234的BCD码:0001001000110100

5678的BCD码:0101011001111000

1-8 简述单片机的主要特点。

1、具有优异的性能价格比

2、集成度高、体积小、可靠性高

3、控制功能强

4、低电压、低功耗

第2部分答案

1、MCS-51单片机内部包含哪些主要部件?

①8位CPU

②4KB的程序存储器(掩膜ROM)

③128B的数据存储器

④片外程序存储器最大寻址能力64KB

⑤片外数据存储器最大寻址能力64KB

⑥32根输入/输出线

⑦1个全双工异步串行接口

⑧2个16位定时/计数器

⑨5个中断源,2个中断优先级

2、在功能上、工艺上、程序存储器的配置上,MCS-51单片机有哪些种类?

工艺:HMOS工艺和CHMOS工艺。

类型:基本型和增强型。

配置:片内无程序存储器、掩膜程序存储器ROM、EPROM。

3、简要说明MCS-51与AT89C51的主要区别是什么?

AT89C51单片机内部有FLASH存储器

4、MCS-51单片机的P0~P3口在结构上有何不同?

P0:数据总线和低8位地址总线

P1:通用I/O接口

P2:高8位地址线

P3:多功能I/O接口

5、单片机的片内、片外存储器如何选择?

当EA为低电平时,C P U直接访问外部程序存储器

当EA为高电平时,C P U要先对内部0~4K程序存储器访问,然后自动延至外部超过4K的程序存储器。

6、片机的晶振频率为12MHz,则单片机的机器周期为多少?

1T机器=12T振=12/f OSC=12/12×10-6=1us

7、状态字寄存器各位的含义如何?

PSW的各位定义为:

CY:进行标志位(D7位)。在进行加、减运算时,如果操作结果使累加器A中最高位D7向前有进位或借位,则CY=1,否则CY=0。在位操作中,CY作位累加器C使用。

AC:辅助进行位(D6位)。在加减运算中,当A中的D3位向D4位有进位或借位时,

AC=l,否则AC=0。通常在二-十进制调整时使用。 F0、F1:用户标志位(D6、D1位)。这两个是供用户定义的标志位,用户可根据需要对F0、F1赋予一定的含义,由用户用软件方法对其置位或复位,用以控制用户程序的转向。

RS1、RS0:工作寄存器区选择控制位(D4、D3位)。用于设定哪一组工作寄存器为当前正在工作的工作寄存器组,即对相同名称的R0~R7改变其物理地址,由用户通过软件方式加以选择。RS1、RS0的取值与选用工作寄存器的关系如表2-7示。单片机在开机或复位后,RS1和RS0总是为零状态,也说是说,选择0区为当前工作寄存器组,故单片机复位后的工作寄存器R0~R7的物理地址为00H ~07H 。

OV :溢出标志位。用于指示累加器A 在算术运算过程中是否发生的溢出。当运算结果超出了8位数能表示的范围,即-128~+127,则OV 自动置1,否则OV=0。

在加法运算中,OV=l 表示运算结果是错误的,OV=0表示运算正确;在乘法运算中,OV=l 表示乘积超过255,即乘积分别在B 与A 中,OV=0表示乘积只在A 中;在除法运算中,OV=l 表示除数为0,除法不能进行,OV=0表示除数不为0,除法可以正常进行。

P :奇偶标志位。每条指令执行完毕后,由硬件根据A 中1的数目对P 位自动置位。若A 中1的数目为奇数,则P=1,若A 中1的数目为偶数,则P=0。

8、MCS-51单片机的控制信号有哪些?作用如何?

①PSEN (29脚):外部程序存储器读选通信号。

②ALE/PROG (30脚):地址锁存允许/编程信号。8051单片机可寻 ③EA /V PP (31脚):外部程序存储器访问允许/编程电压输入端。 ④RST/V PD (9脚):复位信号/备用电源输入端。

9、单片机内部数据存储器是怎样划分的?作用如何?

10、AT89C51单片机有多少特殊功能寄存器?

21

11.什么叫堆栈?堆栈指示器SP的作用是什么?单片机初始化后SP中内容是什么?在程序设计时,为什么要对SP重新赋值?

堆栈就是设置在片内RAM中的一段存储区域,它遵循先入后出的原则。

SP就是一个用来指示栈顶位置的8位寄存器,它指示出堆栈顶部在内部RAM块中的位置。

SP初始化07H,使得堆栈事实上由08H单元开始。

考虑到08H~1FH分属于工作寄存器区1~3,若程序设计要用到这些区,则最好把SP 值改到通用RAM区,即2FH或更大值。但是,如果堆栈指针初始化时设置在这个区域,就要留出足够的字节单元作为堆栈区,以防止在数据存储时,破坏了堆栈的内容。

12、数据指针DPTR和程序计数器PC都是16位寄存器,它们有什么不同之处?

①数据指针DPTR 数据指针DPTR是一个16位的寄存器,由2个8位特殊功能寄存

器DPH和DPL拼装而成。DPH作DPTR的高8位,DPL作DPTR的低8位。因此,DPTR 既可作为一个16位寄存器来使用,也可以作为二个独立的8位寄存器DPH和DPL使用。DPTR用作地址指针用来存放片内、片外ROM和片外RAM的地址,可寻址范围为64K地址空间寻址。

②程序计数器PC 程序计数器PC是一个16位加1计数器,用来存放将要执行的指

令地址,编码范围为0000H~FFFFH共64K。

13、8031单片机在应用中,P2和P0口能否直接作为输入输出口连接开关、指

示灯之类的外围设备?为什么?

不能,8031单片机芯片内无程序存储器, P0口需用作数据总线和低8位地址总线来扩展外部程序存储器。

14、AT89系列单片机的复位方式有几种?复位后单片机的状态如何?

有两种复位方式:手动按钮复位和上电复位

在SFR中,除了端口锁存器、堆栈指针SP和串行口的SBUF外,其余寄存器全部清零,端口琐存器的复位值为0FFH,堆栈指针值为07H,SBUF内为不定值。内部RAM的状态不受复位影响,在系统启动时,RAM的内容是不定的。

15、AT89系列单片机有哪几种省电方式?

有两种省电方式:空闲方式和掉电方式

第3部分答案

1、简述下列基本概念:指令、指令系统、程序、汇编语言指令

指令:指示计算机执行某种操作的命令。

指令系统:指一台计算机所具有的全部指令的集合。

程序:各种指令的有序组合。

汇编语言指令:用助记符形式书写的指令,汇编语言指令由操作码和操作数两部分组成。

2、MCS-51单片机有那几种寻址方式?这几种寻址方式是如何寻址

有七种寻址方式:

① 立即寻址

② 直接寻址

③ 寄存器寻址

④ 寄存器间接寻址

⑤ 变址寻址

⑥ 相对寻址

⑦ 位寻址

3、DA A指令有什么作用?怎样使用?

DA A ;这条指令是进行BCD码运算时,跟在ADD或ADDC指令之后,将相加后存放在累加器中的结果进行修正。

修正的条件和方法为:

若(A0~3)>9或(AC)=1,则(A0~3)+06H→(A0~3);

若(A4~7)>9或(CY)=1,则(A4~7)+06H→(A4~7)。

若以上二条同时发生,或高4位虽等于9 ,但低4位修正后有进位,则应加66H修正。4、已知A=C9H,B=8DH,CY=1。执行指令“ADDC A,B”结果如何?执行指令

“SUBB A,B”结果又如果?

A=56H, B=8DH, CY=0;

A=3CH, B=8DH, CY=1.

5、若需访问特殊功能寄存器和片外数据存储器,就采用那些寻址方式?

寄存器间接寻址.

6、在片内RAM中,已知(30H)=38H,(38H)=40H,(40H)=48H,(48)H=90H,

试分析下段程序中各条指令的作用,说出按顺序执行完指令后的结果:MOV A,40H ;把40单元的内容送往累加器A

MOV R1,A ;把累加器A的内容送往R1

MOV P1,#0F0H ;把立即数F0送往P1口

MOV @R1,30H ;把30单元的内容送往以R1的内容为地址的单元MOV DPTR,#1234H ;把立即数1234送往DPTR

MOV 40H,38H ;把38单元的内容送往40单元

MOV R1,30H ;把30单元的内容送往R1

MOV 90H,R1 ;把R1的内容送往90单元

MOV 48H,#30H ;把立即数30送往48单元

MOV A,@R1 ;把以R1的内容作为地址送往累加器A

MOV P2,P1 ;把P1口的内容送往P2口

7、试说明下段程序中每条指令的作用,当指令执行完后,R0中的内容是什么?

MOV R0, #0AFH

XCH A, R0

SWAP A

XCH A, R0

(R0)=0FAH

8、把累加器A中的低4位送到外部RAM的2000H单元中,试编程序。

ANL A,#OFH

MOV DPTR,#2000H

MOVX @DPTR,A

9、利用乘法指令编写15H×33H的程序,将乘积的高8 位存入31H单元,低8

位存入30H单元

MOV A,#15H

MOV B,#33H

MUL A,B

MOV 31H ,B MOV 30H ,A

10、编程将片内35H ~55H 单元中的内容送入到以3000H 为首的存储区中。

M : MOV R0,#35H

MOV R1,#21H MOV DPTR ,#3000H LOOP :MOV A ,@R0

MOVX @DPTR,A INC R0 INC DPTR DJNZ R1,LOOP

RET

11、设5AH 单元中有一变量X ,请编写计算下述函数式的程序,结果存入5B 单元。

Y=??

???>≤≤+<-154115108

1012

2X X X X X

UAR DATA 5AH

FUNC DATA 5BH STATR :MOV A ,VAR

CJNE A ,#0AH ,L1 L4:LCALL SQU

ADD A ,#08H LJMP COM L1:INC L2

LCALL SQUARE CLR C

SUBB A ,#01H LJMP COM L2:CJNE A ,#0FH ,L3 LJMP L4 L3:JNC L5 LJMP L4 L5:MOV A ,#41H COM :MOV FUNC ,A RET SQU :MOV A ,VAR MOV B ,A MUL AB

RET

12、从20H 单元开始有一无符号数据块,其长度在20H 单元中,求出数据块中

最小值,并存入21H 单元。

MIN: MOV R0,#21H

MOV R2,#20H

MOV A,R2

MOV R1,A

DEC R2

MOV A,@R1

LP0: MOV R3,A

INC R1

CLR C

SUBB A,@R1

JC LP1

MOV A,@R1

LP1: MOV A,R3

LP2: DJNZ R2,LP0

MOV @R0,A

RET

第4部分习题答案

1、什么是中断、中断源和中断优先级?

中断是指中央处理器CPU正在处理某件事情的时候,外部发生了某一事件,请求CPU 迅速去处理,CPU暂时停止当前的工作,转入处理所发生的事件,处理完以后,再回到原来被停止的地方,继续原来的工作。这样的过程称为中断。

中断源是指产生中断的请求源。

一般计算机系统允许有多个中断源,当几个中断源同时向CPU请求中断,要求服务的时候,就存在CPU优先响应哪一个中断源请求的问题,一般计算机根据中断源(所发生的实时事件)的轻重缓急排队,优先处理最紧急事件的中断请求,于是便规定每一个中断源都有一个中断优先级别。

2、中断响应时间是否为确定不变的?为什么?

答:不是确定不变的。

INT电平在每一个机器周期的S5P2被采样并锁存到IE0、IEl中,这个新置0

INT和1

入的IE0、IEl状态等到下一个机器周期才被查询电路查询到。如果中断被激活,并且满足响应条件,CPU接着执行一条硬件子程序调用指令以转到相应的服务程序入口,该调用指令本身需两个机器周期。这样,在产生外部中断请求到开始执行中断服务程序的第一条指令之间,最少需要三个完整的机器周期。

如果中断请求被前面列出的三个条件之一所阻止,则需要更长的响应时间。这样,在

一个单一中断的系统里,外部中断响应时间总是在3~8个机器周期之间。

3、中断响应后,是怎样保护断点和保护现场的?

响应中断时,先置位相应的优先级状态触发器(该触发器指出CPU开始处理的中断优先级别),然后执行一条硬件子程序调用,使控制转移到相应的入口,清0中断请求源申请标志(TI和RI除外)。接着把程序计数器的内容压入堆栈(但不保护PSW),将被响应的中断服务程序的入口地址送程序计数器PC。

4、AT89C51有几个中断源?有几级中断优先级?各中断标志是如何产生的?又是如何清除的?响应中断时,各中断源中断入口地址是多少?

AT89C51单片机有5个中断源,具有2级中断优先级。

中断源入口地址

外部中断0 0003H

定时器T0 000BH

外部中断1 0013H

定时器Tl 001BH

串行口中断 0023H

5、试编写一段对中断系统初始化的程序,使之允许INT0、INT1、T0和串行口中断,且使串行口中断为高优先级中断。

6、单片机片内定时器与计数器的主要区别是什么?

定时器实际上也是工作在计数方式下,只不过对固定频率的脉冲计数,由于脉冲周期也固定,由计数值可以计算出计数时间,有定时的功能;

计数器是对外部输入的非固定频率的脉冲计数,由于脉冲周期无规律,就无法计算时间,只能计数脉冲个数。

7、若TMOD=B6H,T/C0和T/C1分别工作在什么方式?

8、设晶振频率f

=12MHz,AT89C51定时器0的方式0、方式1、方式2的最osc

大定时时间分别为多少?

方式0 13位定时器最大定时间隔=213×1μS=8.192ms

方式1 16位定时器最大定时间隔=216×1μS=65.536ms

方式2 8位定时器最大定时间隔=28×1μS=256μS

9、设晶振频率=6MHz,利用定时器0的方式1在P1.0产生一串50Hz的方波。定时器溢出时采用中断方式处理。

解:T=1/F=1/50=0.02=20ms

(216-N)×2us=10000

216-N=5000

N=216-5000=60536

N=EC78H

ORG 0000H

LJMP START

ORG 000BH

AJMP DS90

ORG 0030H

START: MOV SP,#60H

MOV TMOD,#01H

MOV TH0,#0EC,

MOV TL0,#78H

SETB ET0

SETB EA

SETB TR0

SJMP $

DS90: CPL P1.0

RETI

10、并行数据通信与串行数据通信各有什么特点?分别适用于什么场合?

基本的通信方式有两种:a.并行方式,数据的各位同时传送;b.串行方式,数据一位一位顺序传送,

并行通信通过并行输入/输出接口进行,数据有多少位就要有同样数量的传送线。并行通信的优点是处理速度快,缺点是传输线多。因此并行传输适用于近距离传输、处理速度快的场合。

串行通信借助于串行输入/输出接口实现,只要一条传输线。故串行通信节省传送线,特别是当位数多和长距离传送时,这个优点就更为突出。

11、串行异步通信的数据帧格式是怎样的:这种通信方式的主要优缺点是什

么?

异步通信这种方式在传送数据时,用一个起始位表示一个字符的开始,用一个停止位表示字符的结束,如图所示。由起始位到停止位的所有位构成一个字符的全部信息,称为一帧。每一帧包括以下几部分:

(1)起始位它标志传送数据的开始,一般为低电平,占一位。

(2)数据位要传送的字符,一般是7位(ASCII码),由低位到高位传送。

(3)奇偶校验位为了校验串行传送的正确性,一般都设有奇偶校验位,占一位。

(4)停止位

异步通信的特点是传送数据以帧为单位,每帧都有一定的格式。都是以起始位开始,以停止位结束,每帧的长度预先选定。当线路不发送数据时处于停止位电平。

第5部分习题答案

1、8031单片机为核心,对其扩展16KB的程序存储器,画出硬件电路并给出存储器的地址分配表。

电路图:

8031引脚:P2.7P2.6 P2.5 P2.4 P2.3 P2.2 2.1P2.0P0.7……P0.0

地址线:A15A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0

27128:0 0 0 0 0 0 0 0 0 0

0 0 1 1 1 1 1 1 1 (1)

地址为:0000H~3FFFH

2、采用统一编址的方法对8031单片机进行存储器扩展。要求用一片

2764、一2864和一片6264,扩展后存储器的地址应连续,试给出电路图及地址分配表。

电路图:

8031引脚:P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0 P0.7……P0.0

地址线:A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0

2764:0 0 0 0 0 0 0 0 0 0

|

0 0 0 1 1 1 1 1 1 (1)

地址:0000H~1FFFH

2864: 0 0 1 0 0 0 0 0 0 0

|

0 0 1 1 1 1 1 1 1 (1)

地址:2000H~3FFFH

3、用8255A扩展并行I/O口,其中A口输入,B口输出,画出电路

连接图,并给出8255A的初始化程序。

电路图:

(2)MCS-51引脚:P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0 P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0.1 P0.0

地址线:A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A2 A1 A0

8255A地址:

A口:1 1 0 1 1 1 1 1 1 1 1 1 1 1 0 0 [DFFCH]

B口:1 1 0 1 1 1 1 1 1 1 1 1 1 1 0 1 [DFFDH]

C口:1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 0 [DFFEH]

控制口:1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 [DFFFH]

(3)程序:MOV DPTR,#DFFFH MOV A,@DPTR

MOV A,#90H INC DPTR

MOVX @DPTR,A MOVX @DPTR,A

MOV DPTR,#DFFCH

4.用8255A扩展电路设计4路抢答器。要求A口输入四路抢答信号,

B口输出四路抢答指示(用LED发光二极管)和声音提示。

程序:

MOV DPTR, #7FFFH

MOV A, #98H

MOVX @DPTR, A

NO: MOV DPTR, #7FFCH

MOVX A, @DPTR

JB ACC.4, NO

LCALL YS10MS

JB ACC.4, NO

JNB ACC.4, $

ZERO: MOV DPTR, #7FFCH

MOVX A, @DPTR

JB ACC.0, ONE

LCALL YS5MS

JB ACC.0, ONE

LCALL LAMP

LJMP NO

ONE: JB ACC.1, TWO

LCALL YS5MS

JB ACC.1, TWO

LCALL LAMP

LJMP NO

TWO: JB ACC.2, THR

LCALL YS5MS

JB ACC.2, THR

LCALL LAMP

LJMP NO

THR: JB ACC.3, ZERO

LCALL YS5MS

JB ACC.3, ZERO

LCALL LAMP

LJMP NO

LAMP:ANL A, #0FFH

MOV DPTR, #7FFDH

MOVX @DPTR , A

RET

5、如图2-10所示8031与AD0809的接口电路,把P3.0改成P3.2,请采用中断的方法编写A/D转换程序。

ORG 0000H

AJMP MAIN

ORG 0013H

AJMP INT1

MAIN:MOV DPTR,#0000H

MOV SP1,#60H

SETB IT1

SETB EX1

SETB EA

MOV R0,#30H

MOV R2,#08H

MOVX @DPTR,A

SJMP $

INT1: MOV A,@DPTR

MOV @R0,A

INC R0

INC DPTR

DJNZ R2,LOOP

CLR EA

LJMP LOOP1

LOOP: MOVX @DPTR,A

LOOP1: RETI

END

6、如图2-16所示两路异步信号电压输出接口电路,如果要求输出单路正弦波,电压变化的幅值为-5~+5V,请编写实现上述要求的程序。

解:产生的正弦波可以采用查表法。假设正弦波的幅值为5V,一个周期中的表示点为N,那么第1点角度为0o,对应的正弦值为5sin0o,第二点的角度为360o/N,对应的正弦值为5sin(360o/N)。

0.122=(D-128)*5/128 D=83H

V=Vmaxsinωt

ORG 0000H

LJMP START

ORG 0030H

START:MOV R5,#00H

SIN: MOV A R5

MOV DPTR,#TAB

MOVC A,@A+DPTR

MOV DPTR,#0BFFFH

MOVX @DPTR A

INC R5

SJMP SIN

TAB: DB 80H 83H 86H 89H……

END

第6部分习题答案

1 、输入/输出通道分为哪些类型?它们各有什么作用?

输入通道分为:模拟输入通道和开关量输入通道。

模拟量输入通道作用:把传感器转换后的电信号经过适当的调理,然后转换成数字量输入计算机。

开关量输入通道的作用:接受外部设备的状态逻辑信号,并对输入的状态信号采取转换,保护,滤波,隔离等措施。

输出通道分为:模拟量输出通道和开关量输出通道。

模拟量输出通道:把数字量转换成适合于执行机构的模拟量。

开关量输出通道:主要是滤波,电平转换,隔离和功率的驱动。

2 、静态显示和动态显示的区别是什么?

静态显示:系统在每一次显示输出后,能保持显示不变,仅存在待显示数字需要改变时,才更新其数字显示器中锁存的内容,这种显示占用CPU时间少,显示稳定可靠。

缺点是,当显示位数较多时,占用I/O较多。

动态显示:CPU需定时地对每位LED显示器进行扫描,每位LED显示器分时轮流工作,每次只能使一位LED显示,但由于人眼视觉暂留现象,仍感觉所有的LED显示器都同时显示。这种显示的优点是使用硬件少,占用I/O少,缺点是占用CPU时间长,只要不执行显示程序,就立刻停止显示。

3 、如图2-2所示的静态显示器接口电路,编写一位极性和三位十进制数字的静态显示程序,并根据小数点状态信息点亮相应位的小数点。

static: MOV R5, #40H

MOV R0, #31H

MOV R2, #04H

MOV DPTR, #TAB

MOV R1, 30H

LOOP: MOV A, @R0

MOVC A, @A+DPTR

MOV R4, A

MOV A, R1

JNB ACC.3, LOOP1

MOV A, R4

ANL A, #7FH

MOV R4, A

LOOP1: MOV A, R1

RL A

MOV R1, A

MOV A, R4

MOV P2, R5

MOVX @R0, A

MOV P2, #0FFH

INC R5

DJNZ R2, LOOP

RET

4、试用89C51单片机、按钮开关和LED显示器等器件,设计一个四路抢答

器,请画出硬件电路,并编写软件程序。

5 、89C51单片机的P3口接一个共阴极的数码管,P1口接4×4的键盘,每个键的键值依次是0~F,要求任意按下一个键,则在数码管上显示该键的键值,请编写一段程序完成上述任务。

PROGROMM: LCALL KEY

LCALL DISPLAY

RET

Key: ACALL K0

CJNE A, #0FH, LK1

RET

LK1: ACALL YS20ms

ACALL K0

CJNE A, #0FH, LK2

RET

LK2: MOV R2, #0EFH

MOV R4, #00H

MOV A, R2

MOV P1, A

MOV A, P1

JB ACC.0 LONE

MOV A, #00H

AJMP KN

LONE:JB ACC.1, LTW0

MOV A, #04H

AJMP KN

LTW0:JB ACC.2, LTHR

MOV A, #08H

AJMP KN

LTHR: JB ACC.3, NEXT

MOV A, #00CH

KN: ADD A, R4

RET

K0:MOV P1,#0FH

MOV A,P1

RET

NEXT: INC R4

MOV A, R2

JNB ACC.7, KND

RL A

MOV R2, A

AJMP LK4

KND: RET

T20ms: MOV R7, #18H

Tm: MOV R6, #0FFH

Tm6: DJNZ R6, Tm6

DJNZ R7, Tm

RET

DISPLAY: MOV DPTR, #TAB

MOVC A, @A+DPTR

MOV P3, A

RET

TAB: DB 0C0H, 0F9H, 0A4H, 0B0H, 99H DB 92H, 82H, 0F8H, 80H, 90H

DB 88H,83H,0C6H,0A1H,86H,8EH

6、简述SSR的结构和工作原理。

固态继电器是一个四端有源器件,其输入控制端可与TTL及CMOS电平兼容,其结构一般由耦合电路、整形放大电路、开关电路和吸收电路四部分构成。耦合电路由光电耦合器组成,作用是耦合控制信号同时实现隔离;整形放大电路的作用是将光电管接收到的控制信号进行整形放大用于触发电子开关;开关电路的作用是使电子开关导通与负载构成回路;吸收电路的作用是用于防止从负载电源传来的尖峰、浪涌电压对开关器件的冲击。固态继电器根据使用场合分为单向直流型和双向交流型两种

单片机课后习题解答

练习练习练习 第二章单片机结构及原理 1、MCS-51单片机内部包含哪些主要功能部件?它们的作用是什么? 答:(1)一个8bit CPU是微处理器的核心,是运算和逻辑计算的中心。 (2)片内震荡器及时钟电路:提供标准时钟信号,所有动作都依据此进行。 (3)4K ROM程序存贮器:存贮程序及常用表格。 (4)128B RAM 数据存贮器:存贮一些中间变量和常数等。 (5)两个16bit定时器/计数器:完全硬件定时器 (6)32根可编程I/O口线:标准8位双向(4个)I/O接口,每一条I/O线都能独立地作输入或输出。 (7)一个可编程全双工串行口。 (8)五个中断源。 2、什么是指令?什么是程序? 答:指令是规定计算机执行某种操作的命令。 程序是根据任务要求有序编排指令的集合。 3、如何认识89S51/52存储器空间在物理结构上可以划分为4个空间,而在逻辑上又可以划分为3个空间? 答:89S51/52存储器空间在物理结构上设有4个存储器空间:片内程序存储器、片外程序存储器、片内数据存储器、片外数据存储器。在逻辑上有3个存储器地址空间:片内、片外统一的64KB程序存储器地址空间,片内256B数据存储器地址空间,片外64KB的数据存储器地址空间。 4、开机复位后,CPU使用的是哪组工作寄存器?他们的地址是多少?CPU如何确定

和改变当前工作寄存器组? 答:开机复位后,CPU使用的是第0组工作寄存器,地址为00H~07H,CPU通过改变状态字寄存器PSW中的RS0和RS1来确定工作寄存器组。 5、什么是堆栈?堆栈有何作用?在程序设计时,有时为什么要对堆栈指针SP重新赋值?如果CPU在操作中要使用两组工作寄存器,SP应该多大? 答:堆栈是一个特殊的存储区,主要功能是暂时存放数据和地址,通常用来保护断点和现场。堆栈指针SP复位后指向07H单元,00H~1FH为工作寄存器区,20H~2FH 为位寻址区,这些单元有其他功能,因此在程序设计时,需要对SP重新赋值。如果CPU在操作中要使用两组工作寄存器,SP应该至少设置为0FH。 6、89S51/52的时钟周期、机器周期、指令周期是如何分配的?当振荡频率为8MHz 时,一个单片机周期为多少微秒? 答:时钟周期为时钟脉冲频率的倒数,他是单片机中最基本的、最小的时间单位。机器周期是指完成一个基本操作所需要的时间,一个机器周期由12个时钟周期组成。指令周期是执行一条指令所需要的时间,由若干个机器周期组成。 若fosc=8MHz,则一个机器周期=1/8×12μs=μs 7、89S51/52扩展系统中,片外程序存储器和片外数据存储器共处同一地址空间为什么不会发生总线冲突? 答:访问片外程序存储器和访问数据存储器使用不同的指令用来区分同一地址空间。 8、程序状态字寄存器PSW的作用是什么?常用状态标志有哪些位?作用是什么? 答:程序状态字PSW是8位寄存器,用于存放程序运行的状态信息,PSW中各位状态通常是在指令执行的过程中自动形成的,但也可以由用户根据需要采用传送指令加以改变。各个标志位的意义如下: ):进位标志位。 (C y (AC):辅助进位标志位,又称为半进位标志位。

单片机课后答案

答:中断是指计算机在执行某一程序的过程中,由于计算机系统内、外的某种原因而必须终止原程序的执行,转去完成相应的处理程序,待处理结束之后再返回继续执行被终止原程序的过程。中断源指向 CPU 提出中断申请的设备,包括中断请求信号的产生及该信号怎样被CPU 有效地识别,要求中断请求信号产生一次,只能被CPU 接收处理一次,即不能一 次中断申请被CPU 多次响应。当 CPU 正在执行中断服务程序时,又有中断优先级更高的中断申请产生,CPU 就会暂停原来的中断处理程序而转去处理优先级更高的中断请求,处理完毕后再返回原低级中断服务程序,这一过程称为中断嵌套.中断优先级指在实际应用系统中往往有多个中断源,且中断申请是随机的,有时还可能会有多个中断源同时提出中断申请,但CPU 一次只能响应一个中断源发出的中断请求,CPU 响应哪个中断请求,就需要用软件或硬件安排一个优先顺序,即中断优先级排队。 6-2 MCS-51 单片机提供了几个中断源有几级中断优先级别各中断标志是如何产生的又如何清除这些中断标志各中断源所对应的中断矢量地址是多少 答:(1)MCS-51 单片机提供了5 个中断源: INT0 、INT1 、T0、T1、串行口。 (2)MCS-51 系列单片机有两个中断优先级,每一个中断请求源均可编程为高优先级中 断或低优先级中断,从而实现两级中断嵌套。 (3)外部中断可以设置边沿触发或者电平触发,靠软件置位。边沿触发进入中断程序后硬件自动清中断标志。电平触发需要软件清除中断标志位,还需在中断响应后把中断请求信号引脚从低电平强制改变为高电平。 (4)定时器T0、T1 计数溢出产生中断,进入中断程序后由硬件自动清除标志位TF0 或TF1。(5)串行口发送完成或者接收到数据就触发中断,由于是两个中断标志共享一个中断向量,所以需要在中断程序里由软件判断是发送中断还是接受中断,并且只能由软件清除中断标志位。使用软件清除中断标志位的方法是: CLR TI ;清TI 标志位 CLR RI ;清RI 标志位 (6)各中断源对应的中断矢量地址分别为: 中断源中断矢量 外部中断 0 0003H 定时器T0 中断000BH 外部中断1 0013H 定时器T1 中断001BH 串行口中断0023H 定时器中断T2(仅52 系列有) 002BH 6-3 外部中断源有电平触发和边沿触发两种触发方式,这两种触发方式所产生的中断过程有何不同怎样设定 答:采用中断电平触发方式时,中断请求标志IT0=0,CPU 在每个机器周期的S5P2 期间采样,一旦在( INT0 )引脚上检测到低电平,则有中断申请,使IE0 置位(置1),向CPU 申请中断。在电平触发方式中,在中断响应后中断标志位IE0 的清0 由硬件自动完成,但由于CPU 对( INT0 )引脚没有控制作用,使中断请求信号的低电平可能继续存在,在以后的机器周期采样时又会把已清0 的IE0 标志位重新置1,所以, 在中断响应后必须采用其它方法撤消该引脚上的低电平,来撤除外部中断请求信号,否则有可能再次中断造成出错。采用边沿触发方式时,IT0=1,CPU 在每个机器的S5P2 期间采样,当检测到前一周期为高电平,后一周期为低电平时,使标志IE0 置1,向CPU 申请中断,此标志位一直保持到CPU 响应中断后,才由硬件自动清除。在边沿触发方式中,为保证CPU 在两个机器周期内检测到由高到低的负跳变,高电平与低电平的持续时间不得少于一个机器周

单片机原理与应用教程第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. 简述微型计算机硬件系统组成。

单片机课后习题答案

习题答案 习题0 1.单片机是把组成微型计算机的各功能部件即(微处理器(CPU))、(存储器(ROM 和RAM))、(总线)、(定时器/计数器)、(输入/输出接口(I/O口))及(中断系统)等部件集成在一块芯片上的微型计算机。 2.什么叫单片机?其主要特点有哪些? 将微处理器(CPU)、存储器(存放程序或数据的ROM和RAM)、总线、定时器/计数器、输入/输出接口(I/O口)、中断系统和其他多种功能器件集成在一块芯片上的微型计机,称为单片微型计算机,简称单片机。 单片机的特点:可靠性高、便于扩展、控制功能强、具有丰富的控制指令、低电压、低功耗、片内存储容量较小、集成度高、体积小、性价比高、应用广泛、易于产品化等。 3. 单片机有哪几个发展阶段? (1)第一阶段(1974—1976年):制造工艺落后,集成度低,而且采用了双片形式。典型的代表产品有Fairchild公司的F8系列。其特点是:片内只包括了8位CPU,64B的RAM 和两个并行口,需要外加一块3851芯片(内部具有1KB的ROM、定时器/计数器和两个并行口)才能组成一台完整的单片机。 (2)第二阶段(1977—1978年):在单片芯片内集成CPU、并行口、定时器/计数器、RAM和ROM等功能部件,但性能低,品种少,应用范围也不是很广。典型的产品有Intel 公司的MCS-48系列。其特点是,片内集成有8位的CPU,1KB或2KB的ROM,64B或128B的RAM,只有并行接口,无串行接口,有1个8位的定时器/计数器,中断源有2个。片外寻址范围为4KB,芯片引脚为40个。 (3)第三阶段(1979—1982年):8位单片机成熟的阶段。其存储容量和寻址范围增大,而且中断源、并行I/O口和定时器/计数器个数都有了不同程度的增加,并且集成有全双工串行通信接口。在指令系统方面增设了乘除法、位操作和比较指令。其特点是,片内包括了8位的CPU,4KB或8KB的ROM,128B或256B的RAM,具有串/并行接口,2个或3个16位的定时器/计数器,有5~7个中断源。片外寻址范围可达64KB,芯片引脚为40个。代表产品有Intel公司的MCS-51系列,Motorola公司的MC6805系列,TI公司的TMS7000系列,Zilog公司的Z8系列等。 (4)第四阶段(1983年至今):16位单片机和8位高性能单片机并行发展的时代。16位机的工艺先进,集成度高,内部功能强,运算速度快,而且允许用户采用面向工业控制的专用语言,其特点是,片内包括了16位的CPU,8KB的ROM,232B 的RAM,具有串/并行接口,4个16位的定时器/计数器,有8个中断源,具有看门狗(Watchdog),总线控制部件,增加了D/A和A/D转换电路,片外寻址范围可达64KB。代表产品有Intel公司的MCS-96系列,Motorola公司的MC68HC16系列,TI公司的TMS9900系列,NEC公司的783××系列和NS公司的HPC16040等。然而,由于16位单片机价格比较贵,销售量不大,大量应用领域需要的是高性能、大容量和多功能的新型8位单片机。 近年来出现的32位单片机,是单片机的顶级产品,具有较高的运算速度。代表产品有Motorola公司的M68300系列和Hitachi(日立)公司的SH系列、ARM等。 4.在实际应用中,如何选择单片机的类型? 选择原则:主要从指令结构、运行速度、程序存储方式和功能等几个方面选择单片机。 MCS-51为主流产品。 Motorola是世界上最大的单片机厂商。品种全、选择余地大、新产品多。其特点是噪声低,抗干扰能力强,比较适合于工控领域及恶劣的环境。 Microchip单片机是市场份额增长较快的单片机。它的主要产品是PIC系列8位单片机。其特点是运行速度快,低价位,适用于量大、档次低、价格敏感的产品。 美国德州仪器(TI)公司生产的MSP430系列单片机是一种特低功耗的Flash微控制器。主要用于三表及超低功耗场合。 1

单片机课后习题答案

单片机课后习题答案 1.89C51单片机内包含哪些主要逻辑功能部件? 答:80C51系列单片机在片内集成了以下主要逻辑功能部件: (l)CPU(中央处理器):8位(2)片内RAM:128B(3)特殊功能寄存器:21个(4)程序存储器:4KB (5)并行I/O口:8位,4个(6)串行接口:全双工,1个(7)定时器/计数器:16位,2个(8)片内时钟电路:1个 2.89C51的EA端有何用途? 答:/EA端接高电平时,CPU只访问片内flash Rom并执行内部程序,存储器。/EA端接低电平时,CPU只访问外部ROM,并执行片外程序存储器中的指令。/EA端保持高电平时,CPU执行内部存储器中的指令。 3.89C51的存储器分哪几个空间?如何区别不同空间的寻址? 答:ROM(片内ROM和片外ROM统一编址)(使用MOVC)(数据传送指令)(16bits地址)(64KB)片外RAM(MOVX)(16bits地址)(64KB)片内RAM (MOV)(8bits地址)(256B) 4.简述89C51片内RAM的空间分配。 答:片内RAM有256B,低128B是真正的RAM区,高128B是SFR(特殊功能寄存器)区。 5.简述布尔处理存储器的空间分配,片内RAM中包含哪些可位寻址单元。 答:片内RAM区从00H~FFH(256B) 其中20H~2FH(字节地址)是位寻址区对应的位地址是00H~7FH 6. 如何简捷地判断89C51正在工作? 答:用示波器观察8051的XTAL2端是否有脉冲信号输出(判断震荡电路工作是否正常?)ALE(地址锁存允许)(Address Latch Enable)输出是fosc的6分频 用示波器观察ALE是否有脉冲输出(判断8051芯片的好坏?) 观察PSEN(判断8051能够到EPROM 或ROM中读取指令码?) 因为/PSEN接外部EPROM(ROM)的/OE端子OE=Output Enable(输出允许) 7. 89C51如何确定和改变当前工作寄存器组? 答:PSW(程序状态字)(Program Status Word)中的RS1和RS0 可以给出4中组合,用来从4组工作寄存器组中进行选择PSW属于SFR(Special Function Register)(特殊功能寄存器) 9.读端口锁存器和“读引脚”有何不同?各使用哪种指令? 答:读锁存器(ANLP0,A)就是相当于从存储器中拿数据,而读引脚是从外部拿数据(如MOV A,P1这条指令就是读引脚的,意思就是把端口p1输入数据送给A)传送类MOV,判位转移JB、JNB、这些都属于读引脚,平时实验时经常用这些指令于外部通信,判断外部键盘等;字节交换XCH、XCHD算术及逻辑运算 ORL、CPL、ANL、ADD、ADDC、SUBB、INC、DEC控制转移CJNE、DJNZ

单片机课后习题答案

1.1 计算机经过了哪些主要发展阶段? 解:单片机的发展大致经历了四个阶段: 第一阶段(1970—1974年),为4位单片机阶段; 第二阶段(1974—1978年),为低中档8位单片机阶段; 第三阶段(1978—1983年),为高档8位单片机阶段; 第四阶段(1983年至今),为8位单片机巩固发展阶段及16位单片机、32位单片机推出阶段。 1.2 写出下列机器数的真值: (1)01101110 (2)10001101 (3)01011001 (4)11001110 解:(1)01101110的真值=+110 (2)10001101的真值=+141或-115 (3)01011001的真值=+89 (4)11001110的真值=+206或-50 说明:机器数是指计算机中使用的二进制数,机器数的值称为真值。机器数可表示为无符号数也可表示为带符号数,其中计算机中的带符号数一般为补码形式。10001101若为无符号数。则其真值为+141;若为带符号数,由于最高位(符号位)为1.所以为负数(补码形式),则其真值为-115。 1.4 写出下列二进制数的原码、反码和补码(设字长为8位)。 (1)010111 (2)101011 (3)-101000 (4)-111111 解:(1) [x]原=00010111 [x]反= 00010111 [x]补= 00010111 (2)[x]原=00101011 [x]反= 00101011 [x]补= 00101011 (3)[x]原=10101000 [x]反= 11010111 [x]补= 11011000 (4)[x]原=10111111 [x]反= 11000000 [x]补=11000001 1.5 已知X=10110110,Y=11001111,求X 和Y 的逻辑与、逻辑或和逻辑异或。 解:10000110X Y ?= 11111111X Y += 01111001X Y ⊕= 1.6 已知X 和Y ,试计算下列各题的[]X Y +补和[]-X Y 补(设字长为8位)。 (1)X=1011 Y=0011 (2)X=1011 Y=0101 (3)X=1001 Y=-0100 (4)X=-1000 Y=0101 (5)X=-1100 Y=-0100 解:(1)X 补码=00001011 Y 补码=00000011 [X+Y]补=00001110 [X-Y]补=00001000 (2)X 补码=00001011 Y 补码=00000101 [X+Y]补=00010000 [X-Y]补=00000110 (3)X 补码=00001001 Y 补码=11111100 [X+Y]补=00010000 [X-Y]补=00000110

单片机课后习题答案解析

一)填空题 1. 十进制数14对应的二进制数表示为(1110B),十六进制数表 示为(0EH)。十进制数-100的补码为(9CH),+100的补码为(64H)。 2. 在一个非零的无符号二进制整数的末尾加两个0后,形成一个新的无符号二进制整数,则新数是原数的(4)倍。 3. 8位无符号二进制数能表示的最大十进制数是(255)。带符号二进制数11001101转换成十进制数是(-51)。 4. 可以将各种不同类型数据转换为计算机能处理的形式并输送到计算机中去的设备统称为(输入设备)。 5. 已知字符D的ASCII码是十六进制数44,则字符T的ASCII码是十进制数(84)。 6. 若某存储器容量为640KB,则表示该存储器共有(655360)个存储单元。 7. 在计算机中,二进制数的单位从小到大依次为(位)、(字节)和(字),对应的英文名称分别是(bit)、(Byte)和(Word)。 8. 设二进制数A=10101101,B=01110110,则逻辑运算A∨B=(11111111),A ∧B=(00100100),A⊕B=(11011011)。 9. 机器数01101110的真值是(+110),机器数01011001的真值是(+89),机器数10011101的真值是(+157或-115),机器数10001101的真值是(+206或-50)。(二)单项选择题 1. 用8位二进制补码数所能表示的十进制数范围是(D) (A)-127 ~ +127 (B)-128 ~ +128 (C)-127 ~ +128 (D)-128 ~ +127 2. 下列等式中,正确的是(B) (A)1 KB = 1024×1024 B (B)1 MB = 1024×1024 B (C)1 KB = 1024 M B (D)1 MB = 1024 B 3. 程序与软件的区别是(C) (A)程序小而软件大(B)程序便宜而软件昂贵 (C)软件包括程序(D)程序包括软件 4. 存储器中,每个存储单元都被赋予惟一的编号,这个编号称为(A) (A)地址(B)字节(C)列号(D)容量 5. 8位二进制数所能表示的最大无符号数是(B) (A)255 (B)256 (C)128 (D)127 6. 下列4个无符号数中,最小的数是(B) (A)11011001(二进制)(B)37(八进制) (C)75(十进制)(D)24(十六进制) 7. 下列字符中,ASCII码最小的是(B) (A)a (B)A (C)x (D)X 8. 下列字符中,ASCII码最大的是(C) (A)a (B)A (C)x (D)X 9. 有一个数152,它与十六进制数6A相等,那么该数是(B) (A)二进制数(B)八进制数(C)十进制数(D)十六进制数 第2章80C51单片机的硬件结构 (一)填空题

单片机应用技术课后习题参考答案

1 习题1答案 1.2 填空题 (1)单片级应用系统是由硬件系统、软件系统组成的 (2)除了单片机和电源外,单片机最小系统包括时钟电路、复位电路 (3)除了电源和电线引脚外,XTAL1、XTAL2、RST、EA引脚信号必须连接相应电 路 (4)51系列单片机的存储器主要有4个物理存储空间,即片内数据存储器、片内程序存储器、片外数据存储器、片外程序存储器 (5)51系列单片机的XTAL1和XTAL2引脚是时钟电路 (6)51系列单片机的应用程序一般存放在程序存储器 (7)片内RAM低128单元,按其用途划分为工作寄存器组、位寻址区、用户RAM区(8)但振荡脉冲频率为12MHz时,一个机器周期为1us,当振荡脉冲频率为6MHz时,一个机器周期为2us (9)51系列单片机的复位电路有两种,即上电复位电路、按键复位电路 (10)输入单片机的复位信号需延续2个机器周期以上的高电平即为有效。 1.3 (4)什么是机器周期?机器周期和晶振频率有何关系?当晶振频率为6MHz时,机器周期是多少? 答: 规定一个机器周期的宽度为12个振荡脉冲周期,因此机器周期就是振荡脉冲的十二分频。 当振荡脉冲频率为6 MHz时,一个机器周期为2 μs。 (5)51系列单片机常用的复位方法有哪几种?画电路图并说明其工作原理。 答: (a)上电复位电路(b)按键复位电路 单片机常见的复位电路 图(a)为上电复位电路,它是利用电容充电来实现的。在接电瞬间,RST端的电位

与VCC相同,随着充电电流的减少,RST的电位逐渐下降。只要保证RST为高电平的时间大于两个机器周期,便能正常复位。 图(b)为按键复位电路。该电路除具有上电复位功能外,若要复位,只需按图(b)中的RESET键,此时电源VCC经电阻R1、R2分压,在RST端产生一个复位高电平。 习题3 答案 3.2 填空题 (2)用C51编程访问51单片机的并行I/O口是,可以按字节,寻址操作,还可以按位操作(4)C51中定义一个可位寻址变量FLAG访问P3口的P3.1引脚的方法是s bit FLAG=P3^1; (10)下面的while循环执行了无限次空语句。 i=3; While(i!=0); (15)在以下的数组定义中,关键字“code”是为了把tab数组存储在程序存储器ROM中 Unsigned char code b[]={}; 3.3 上机操作题 (1) //xiti3_3_1.c——第三章习题3.3上机操作题(1) #include void delay(unsigned char i); //延时函数声明 void main() //主函数 { while(1){ P1=0x55; //按状态1的方式点亮8个LED delay(200); //延时 P1=0xaa; //按状态2的方式点亮8个LED delay(200); //延时 } } void delay(unsigned char i) //延时函数参见任务1程序ex1_1.c (2) //xiti3_3_2.c——第三章习题3.3上机操作题(2) #include //包含头文件REG51.H void delay(unsigned char i); //延时函数声明 void main() //主函数 { unsigned char i,l,r; while(1){ l=0x10; // 高4位灯的位置初值为00010000B r=0x08; // 低4位灯的位置初值为00001000B

单片机课后习题答案部分筛选

第一章 2单片机具有哪些特点 (1)片内存储容量越来越大。 (2抗干扰性好,可靠性高。 (3)芯片引线齐全,容易扩展。 (4)运行速度高,控制功能强。 (5)单片机内部的数据信息保存时间很长,有的芯片可以达到100年以上。 第二章 6. 如何简捷地判断89C51正在工作? 答:用示波器观察8051的XTAL2端是否有脉冲信号输出(判断震荡电路工作是否正常?) ALE(地址锁存允许)(Address Latch Enable)输出是fosc的6分频用示波器观察ALE是否有脉冲输出(判断 8051芯片的好坏?) 观察PSEN(判断8051能够到EPROM 或ROM中读取指令码?) 因为/PSEN接外部EPROM(ROM)的/OE端子 OE=Output Enable(输出允许) 9. 读端口锁存器和“读引脚”有何不同?各使用哪种指令? 答:读锁存器(ANL P0,A)就是相当于从存储器中拿数据,而读引脚是从外部拿数据(如MOV A,P1 这条指令就是读引脚的,意思就是把端口p1输入数据送给A) 传送类MOV,判位转移JB、JNB、这些都属于读引脚,平时实验时经常用这些指令于外部通信,判断外部键盘等;字节交换XCH、XCHD算术及逻辑运算 ORL、CPL、ANL、ADD、ADDC、SUBB、INC、DEC控制转移CJNE、DJNZ都属于读锁存器。 13. 内部RAM低128字节单元划分为哪3个主要部分?各部分主要功能是什么? 答:片内RAM低128单元的划分及主要功能: (l)工作寄存器组(00H~lFH) 这是一个用寄存器直接寻址的区域,内部数据RAM区的0~31(00H~lFH),共32个单元。它是4个通用工作寄存器组,每个组包含8个8位寄存器,编号为R0~R7。 (2)位寻址区(20H~2FH) 从内部数据RAM区的32~47(20H~2FH)的16个字节单元,共包含128位,是可位寻 址的RAM区。这16个字节单元,既可进行字节寻址,又可实现位寻址。 (3)字节寻址区(30H~7FH) 从内部数据RAM区的48~127(30H~7FH),共80个字节单元,可以采用间接字节寻址 的方法访问。 15. 开机复位后,CPU使用的是哪组工作寄存器?它们的地址是什么?CPU如何确定和改变当前工作寄存器组?

单片机原理及应用课后习题参考答案1~6章(DOC)

《单片机原理及应用》习题答案 第一章计算机基础知识 1-1 微型计算机主要由哪几部分组成?各部分有何功能? 答:一台微型计算机由中央处理单元(CPU)、存储器、I/O接口及I/O设备等组成,相互之间通过三组总线(Bus):即地址总线AB、数据总线DB和控制总线CB来连接。 CPU由运算器和控制器组成,运算器能够完成各种算术运算和逻辑运算操作,控制器用于控制计算机进行各种操作。 存储器是计算机系统中的“记忆”装置,其功能是存放程序和数据。按其功能可分为RAM和ROM。 输入/输出(I/O)接口是CPU与外部设备进行信息交换的部件。 总线是将CPU、存储器和I/O接口等相对独立的功能部件连接起来,并传送信息的公共通道。 1-3 什么叫单片机?其主要由哪几部分组成? 答:单片机(Single Chip Microcomputer)是指把CPU、RAM、ROM、定时器/计数器以及I/O接口电路等主要部件集成在一块半导体芯片上的微型计算机。 1-4 在各种系列的单片机中,片内ROM的配置有几种形式?用户应根据什么原则来选用? 答:单片机片内ROM的配置状态可分四种: (1)片内掩膜(Mask)ROM型单片机(如8051),适合于定型大批量应用产品的生产; (2)片内EPROM型单片机(如8751),适合于研制产品样机; (3)片内无ROM型单片机(如8031),需外接EPROM,单片机扩展灵活,适用于研制新产品; (4)EEPROM(或Flash ROM)型单片机(如89C51),内部程序存储器电可擦除,使用更方便。 1-5 写出下列各数的另两种数制的表达形式(二、十、十六进制) 1-6 写出下列各数的BCD参与: 59:01011001,1996:0001100110010110,4859.2:0100100001011001.0010

51单片机练习题

一.闪烁灯 1.实验任务 如图4.1.1所示:在端口上接一个发光二极管L1,使L1在不停地一亮一灭,一亮一灭的时间间隔为秒。 2.电路原理图 图4.1.1 3.系统板上硬件连线 把“单片机系统”区域中的端口用导线连接到“八路发光二极管指示模块”区域中的L1端口上。 4.程序设计内容 (1)延时程序的设计方法 作为单片机的指令的执行的时间是很短,数量大微秒级,因此,我们要 求的闪烁时间间隔为秒,相对于微秒来说,相差太大,所以我们在执行 某一指令时,插入延时程序,来达到我们的要求,但这样的延时程序是 如何设计呢下面具体介绍其原理:

如图4.1.1所示的石英晶体为12MHz,因此,1个机器周期为1微秒机器周期微秒 MOV R6,#20 2个 2 D1: MOV R7,#248 2个22+2×248=49820× DJNZ R7,$ 2个2×248(498 DJNZ R6,D1 2个2×20=40 10002 因此,上面的延时程序时间为。 由以上可知,当R6=10、R7=248时,延时5ms,R6=20、R7=248时,延时10ms,以此为基本的计时单位。如本实验要求秒=200ms,10ms×R5 =200ms,则R5=20,延时子程序如下: DELAY: MOV R5,#20 D1: MOV R6,#20 D2: MOV R7,#248 DJNZ R7,$ DJNZ R6,D2 DJNZ R5,D1 RET (2).输出控制 如图1所示,当端口输出高电平,即=1时,根据发光二极管的单向导 电性可知,这时发光二极管L1熄灭;当端口输出低电平,即=0时,发 光二极管L1亮;我们可以使用SETB指令使端口输出高电平,使用CLR 指令使端口输出低电平。 5.程序框图

单片机课后习题答案--胡汉才编

单片机部由哪几部分电路组成各部分电路的主要功能是什么 解:单片机部由CPU、存储器和I/O接口等电路组成。CPU的主要功能是对二进制数进行算术和逻辑运算、执行指令(从ROM中取指令,对指令译码,发各种控制信号使CPU和其他部分协调一致的工作,完成指令的功能),存储器由ROM和RAM组成,ROM的主要功能是存储单片机应用系统的程序,RAM的主要功能是存储实时数据或作为通用寄存器、堆栈、数据缓冲区。I/O接口的主要功能是负责单片机和外设、外部存储器间的通信。 第二章 存在的错别字问题:“振荡”写出“推荡”;“芯片”写成“蕊片”。 、程序状态字PSW各位的定义是什么 解:PSW的各位定义如下: @ Cy:进位标志位;AC:辅助进位位; F0:用户标志位;RS1、RS0:寄存器选择位; OV:溢出标志位;P:奇偶标志位; PSW1:未定义。 、什么叫堆栈8031堆栈的最大容量是多少MCS51堆栈指示器SP有多少位,作用是什么单片机初始化后SP中的容是什么 解:堆栈:符合“先进后出”或“后进先出”存取规律的RAM区域。 8031堆栈的最大容量是128B; 】 MCS-51堆栈指针SP有8位,作用是存放栈顶(/栈低)地址; 单片机初始化后(即单片机复位后)SP中的容是07H。 存在的问题:1、堆栈的定义中,未答出“RAM区域”,而用了“部件”; 2、只说了“单片机初始化后(即单片机复位后)SP中的容是栈底地址”,未说明具体值07H; 3、8031堆栈的最大容量错成128M或256B。 、数据指针DPTR有多少位,作用是什么 解:数据指针DPTR有16位;作用是存放ROM或外部RAM的地址。 | 、8051片RAM容量有多少可以分为哪几个区各有什么特点 解:8051的片RAM容量有128B;分为三个区:工作寄存器区、位寻址区和便笺区; 存在的问题:1、8051的片RAM容量错成256B。 、8051的特殊功能寄存器SFR有多少个可以位寻址的有哪些 解:8051的SFR有21个,可位寻址的有11个:ACC、B、PSW、IP、P3、IE、P2、SCON、P1、TCON 和P0。 存在的问题:SFR有21个错成了26个;可位寻址的SFR中多了一个T2CON,个别同学甚至在T2CON 用了一个“+”号。 :

单片机课后习题参考答案

单片机课后习题答案 1.26解:单片机内部由CPU、存储器和I/O接口等电路组成。CPU的主要功能是对二进制数进行算术和逻辑运算、执行指令(从ROM中取指令,对指令译码,发各种控制信号使CPU和其他部分协调一致的工作,完成指令的功能),存储器由ROM和RAM组成,ROM的主要功能是存储单片机应用系统的程序,RAM的主要功能是存储实时数据或作为通用寄存器、堆栈、数据缓冲区。I/O接口的主要功能是负责单片机和外设、外部存储器间的通信。 2.3、解:PSW的各位定义如下: PSW7PSW6PSW5PSW4PSW3PSW2PSW1PSW0 Cy AC F0RS1RS0OV_P Cy:进位标志位;AC:辅助进位位; F0:用户标志位;RS1、RS0:寄存器选择位; OV:溢出标志位;P:奇偶标志位; PSW1:未定义。 2.4、解:堆栈:符合“先进后出”或“后进先出”存取规律的RAM区域。 8031堆栈的最大容量是128B; MCS-51堆栈指针SP有8位,作用是存放栈顶(/栈低)地址; 单片机初始化后(即单片机复位后)SP中的内容是07H。 2.5、解:数据指针DPTR有16位;作用是存放ROM或外部RAM的地址。 2.7、解:8051的片内RAM容量有128B;分为三个区:工作寄存器区、位寻址区和便笺区; 2.8、解:8051的SFR有21个,可位寻址的有11个:ACC、B、PSW、IP、P3、IE、P2、SCON、P1、TCON和P0。 2.11、解:8051和片外RAM/ROM连接时,P0口用来分时地传送片外RAM/ROM的低8位地址信号和8位数据信号,P2口用来传送片外RAM/ROM的高8位地址信号;因为P0口在访问片外RAM/ROM的一个机器周期内,要先传送地址信号,后传送数据信号,所以P0口需要片外地址锁存器。 2.12、解:8051的ALE线用于锁存P0口输出的片外RAM/ROM的低8位地址;8051不和片外RAM/ROM相连时,ALE线上输出脉冲的频率是fosc/6(fosc是8051的时钟频率),该脉冲信号可用作外部时钟源或作为定时脉冲源使用。 2.13、解:PSEN:片外ROM的选通线; R D:片外RAM的读选通线; W R:片外RAM的写选通线。

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

第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替换。对

单片机课后习题答案-第一至三章

第一章 一、计算题 1、①(10000111)2(87)16②(0 .101) 2(0.A) 16 ③(101111.1011) 2(2F.B) 16 2、①(430)10 (1AE) 16②(0.6875)10 (0.B) 16 ③(110.851563)10(6E.DA0008637BD058) 16 3、①(11101010110)2(1878)10 ②(1001000.0101101) 2(72.351563) 10 ③(0.010101) 2(0.328125) 10 4、①00011100B ②10000000B ③11110000B 5、原码反码补码 ①0010 0110 0010 0110 0010 0110 ②0100 0000 0100 0000 0100 0000 ③1111 0000 10001111 1001 0000 6、X Y X+Y X-Y ①00100110 00110111 01100101 10001001 真值101 -9 ②01001110 00001111 01011101 00111111 真值93 63 ③10110011 01100001 00101110 01101100s 真值46 108 7、(863) 10(895) 10(365) 10 8、414235H 434F4D5055544552H 5374756479H 二、问答题 1、什么是数制?为什么微型计算机要采用二进制?十六进制数能为计算机执行么?为什么要学习十六进制数。 答:数制就是计数方式,计算机中采用二进制是由计算机所使用的逻辑器件所决定。这种逻辑器件是具有两种状态的电路(触发器)好处是运算法则简单、实现方便,两个状态的系统具有稳定性。计算机中的数只能用二进制表示,十六进制适合于读写方便需要。 2、单片机的发展状况如何?它有哪些应用?试举例说明。 答:1971年微处理器研制成功。1974年,美国仙童公司研制出世界第一台单片微型计算机F8。该机由两块集成电路芯片组成,具有与众不同的指令系统,深受民用电器及仪器仪表领域的欢迎和重视。从此单片机开始迅速发展,应用领域也不断扩大。 目前,单片机正朝着高性能和多品种方向发展,但以MCS-51为主的8位单片机仍然占据着单片机的主导地位。单片机的应用日益广泛,如应用在仪器仪表、家用电器和专用装备的智能化以及过程控制等方面,单片机在人们的日常生活和工作中正扮演着越来越重要的角色。 (1)工业控制。单片机可以构成各种工业控制系统、数据采集系统等。如数控

单片机课后重要习题答案

8051芯片需要外扩4KB程序存储器,要求地址范围为1000~1FFFH,以便和内部程序存储器地址相衔接。所用芯片除了地址线和数据线外,只有一个片选控制端/CS,画出扩展系统的连接图。 解: 8 5 1 EA 地P2.4 P2.3 P2.2 P2.1 P2.0 P0.7~P0.0 ALE /PSEN 2732 /CE A11 A10 A9 A8 A7~A0 D7~D0 /OE 74LS373 G 在图中,若因某种原因,、、误接为、、,这时所接的EPROM寻址区是如何分布的?解: 误接后,A10,A9,A8则分别与,,相接, ~ * * 0 0 0 * * * 00000000— * * 0 0 1 * * * 00000000— * * 0 1 0 * * * 00000000— * * 0 1 1 * * * 00000000— * * 1 0 0 * * * 00000000— * * 1 0 1 * * * 00000000— * * 1 1 0 * * * 00000000— * * 1 1 1 * * * 00000000— 所以地址分布为: 0000H~00FFH, 0800H~08FFH, 1000H~10FFH, 1800H~18FFH, 2000H~20FFH, 2800H~28FFH, 3000H~30FFH, 3800H~38FFH 编写程序,进行两个16位数的减法:6F5DH~13B4H,结果存至内部RAM的30H 和31H单元。30H单元存差的低8位。 解: MOV A, #5DH CLR C SUBB A, #0B4H MOV 30H, A

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

思考与练习题 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 )

相关文档
最新文档