单片机第四章答案
林立张俊亮版单片机原理及应用第四章答案
第四章习题
1.C语言的优点是什么?C程序的主要结构特点是什么?
答:C语言是一种高级语言,与51汇编语言相比,它代码紧凑,程序可读性强,编程工作量小,功能强,且容易掌握。
C程序以函数为单位,由一个主函数和若干个其他函数构成,主函数是程序的入口,其他函数由主函数直接或间接调用。程序可以由一个文件或多个文件组成。文件类型包括头文件和C语言源文件,也可以是汇编语言文件,C程序可与汇编语言混合编程。
2.C51语言的变量定义包含哪些关键因素?为何这样考虑?
答:C语言的变量定义格式如下:
[存储种类] 数据类型[存储类型] 变量名
存储种类有:自动型(auto)、外部型(extern)、静态型(static)、寄存器型(register)。
数据类型有:字符型(char),整型(int),长整型(long),浮点型(float),双精度型(double),还有二进制位型(bit),特殊功能寄存器型(sfr),SFR可位寻址的位类型(sbit)。
存储类型有:片内低128B RAM区(data)、片内可位寻址区(bdata),片内高128B RAM间接寻址区(idata),片外页RAM寻址区(pdata),片外64KB RAM 区(xdata)、程序ROM区(code)。
变量名由字母、数字和下划线组成,且第一个字符不能为数字。
C51语言比标准C语言多了存储类型,因为MCS-51单片机的存储结构中有四个物理存储空间(片内RAM、片内ROM,片外RAM,片外ROM),三个逻辑地址空间(片内RAM,片外RAM,ROM),而且有多种寻址方式(直接寻址、间接寻址、页面寻址、位寻址),所以在定义变量时,要根据其所在位置和寻址方式明确指定存储类型。
单片机微型计算机原理及接口技术课后习题答案第4章
单片机微型计算机原理及接口技术课后习题答案第4章
4-2 试述指令MOV A,R0和MOV A,@R0的区别
两条指令的目的操作数相同,两条指令的区别在于源操作数来源不同:MOV A,R0 指令的源操作数就是R0寄存器的内容;而MOV A,@R0 指令的源操作数是位于存储器单元内,且存储器单元的地址是R0寄存器的内容。
4-3 试述指令MOV A,20H和MOV A,#20H的区别
MOV A,20H 源操作数是直接寻址,20H表示源操作数所在存储器单元的地址。
MOV A,#20H 源操作数是立即数寻址,#20H是立即数,也就是源操作数。
4-4 说明一下指令中源操作数所在的存储器类型。
(1)MOV A,#30H; 立即数#30H,就是源操作数,存在于指令中,所以位于程序存储器。
(2)MOV A,30H; 30H是源操作数所在数据存储单元的地址,所以源操作数位于数据存储器。
(3)MOVC A,@A+DPTR;源操作数是变址寻址, 助记符MOVC表示源操作数位于程序存储器。
(4)MOVX A,@DPTR; 源操作数是寄存器间接寻址, 助记符MOVX表示源操作数位于外部数据存储器。
4-5 判断下列指令书写是否正确:
(1)MOV A,B; ✔
(2)MOV A,#3000H ; ✘,因为A是8位寄存器,而#3000H是16位数值,没法全部存到A里
(3)INC,#20H ; ✘只能INC A/direct/Rn/@Ri/DPTR
(4)MOV 5,A ; ✔,注意目的操作数是直接寻址方式,不是立即寻址
(5)MOV 30H,40H; ✔
单片机原理及应用第四章课后题答案
第四章作业答案
16.MCS-51单片机系统中,片外程序存储器和片外数据存储器共用16位地址线和8位数据线,为何不会产生冲突?
解:
数据存储器的读和写由RD和WR信号控制,而程序存储器由读选通信号PSEN控制,这些信号在逻辑上时序上不会产生冲突;程序存储器访问指令为MOVC,数据存储器访问指令为MOVX。程序存储器和数据存储器虽然共用16位地址线和8位数据线,但由于二者访问指令不同,控制信号不同,所以两者虽然共处于同一地址空间,不会发生总线冲突。18.某单片机应用系统,需扩展2片8KB的EPROM和2片8KB的RAM,采用地址译码法,画出硬件连接图,并指出各芯片的地址范围。
解:
硬件连接电路图如图4.18所示。各芯片的地址范围为:
2764(1#):0000H~1FFFH 2764(2#):2000H~3FFFH
6264(1#):4000H~5FFFH 6264(2#):6000H~7FFFH
图4.18 4.18题硬件连接电路图
21.8255A的端口地址为7F00H~7F03H,试编程对8255A初始化,使A口按方式0输入,B口按方式1输出。
解:
程序如下:
ORG 0000H
LJMP START
ORG 0030H
START:MOV SP, #60H
MOV DPTR,#7F03H
MOV A,#10010100B
MOVX @DPTR,A
SJMP $
END
25.使用8255A或者8155的B端口驱动红色和绿色发光二极管各4只,且红、绿发光二极管轮流发光各1s,不断循环,试画出包括地址译码器、8255A或8155与发光管部分的接口
单片机原理及接口技术第四版答案
单片机原理及接口技术第四版答案
【篇一:《单片机原理及接口技术(第2版)张毅刚》第
4章习题及答案】
第4章 at89s51单片机的中断系统
思考题及习题4
1.外部中断1的中断入口地址为 ,定时器1的中断入口地址为。答:0013h;001bh
2.若(ip)=00010100b,则优先级最高者为,最低者为。
答:外部中断1,定时器t1
3.中断服务子程序与普通子程序有哪些相同和不同之处?
答:reti指令在返回的同时自动清除相应的不可寻址的优先级触发器,以允许下次中断,
而ret指令则没有这个操作。除了这一点两条指令不同外,其它操
作都相同。
4.下列说法正确的是。答:d
a. 各中断源发出的中断请求信号,都会标记在at89s51的ie寄存器中
b. 各中断源发出的中断请求信号,都会标记在at89s51的tmod寄
存器中
c. 各中断源发出的中断请求信号,都会标记在at89s51的ip寄存器中
d. 各中断源发出的中断请求信号,都会标记在at89s51的tcon与scon寄存器中
5.at89s51单片机响应外部中断的典型时间是多少?在哪些情况下,cpu将推迟对外部中断
请求的响应?
答:在一个单一中断的系统里,at89s51单片机对外部中断请求的
响应时间总是在3~8个机器周期之间。
在下述三种情况下,at89s51将推迟对外部中断请求的响应:
(1)at89s52正在处理同级或更高优先级的中断。
(2)所查询的机器周期不是当前正在执行指令的最后一个机器周期。(3)正在执行的指令是reti或是访问ie或ip的指令。
如果存在上述三种情况之一,at89s52将丢弃中断查询结果,将推
单片机原理及应用第四章课后题答案
单片机原理及应用第四章课后题答案
1、请简述单片机的主要特征?
A:单片机的主要特征有集成度高、成本低、功耗小、操作灵活等。
它的功能强大,它可以将一个复杂的控制系统整合到一块微处理器芯片中,具备计算机的编程及控制功能,可以执行任意的控制程序。
2、请描述I/O编程模式的不同之处?
A:I/O编程模式有三种:阻塞式I/O编程模式、中断式I/O编程模
式和重叠式I/O编程模式。
阻塞式I/O编程模式是当程序请求一个I/O操作时,程序会暂停执行,直到I/O操作完成为止;
中断式I/O编程模式是程序发出I/O操作请求后,可以继续执行其他
程序,当I/O操作完成时,单片机会发出中断信号,再次跳转到I/O程序
处执行;
重叠式I/O编程模式是当I/O操作完成前,程序可以在不同的I/O操
作之间重叠执行,从而提高了系统的执行效率。
3、请并发编程技术的特点?
A:并发编程技术的特点有:1、可以同时执行多个任务;2、可以节
约计算机资源;3、可以更有效的控制多任务,提高系统的运行效率等。
4、何谓单片机的微控制?
A:微控制指的是将系统中所有的控制功能有机地组合起来,实现系
统控制的一种技术。
单片机第4章习题答案
第4章习题答案
一、填空题
1.机器语言
2.机器汇编、手工汇编
3.AREA1=1000H、BUF=1004H、TIME=01H、ACK=1006H
4.(A)=4FH、(R0)=4BH、(R1)=E5H、(21H)=D8H、(22H)=4BH、(2FH)=E5H
二、简答题
1.什么叫伪指令?伪指令与指令有什么区别?
答:所谓伪指令又称为伪操作,它不象机器指令那样是在程序运行期间由计算机来执行的,它是在汇编程序对源程序汇编时,由汇编程序处理的操作,它们可以完成如数据定义、分配存储器、指示程序结束等功能。
2.汇编语言的格式是怎样的?
汇编语言语句格式为:
标号:操作码操作数;注释
3.MCS-51系列单片机有哪些伪指令?它们的用途是什么?
(1)编起始地址命令ORG
功能:规定此命令之后的程序或数据的存放起始地址。
(2)定义字节伪指令格式:[标号:] DB X1,X2,…,Xn
功能:从指定地址开始,存放若干字节数据。
(3)字定义伪指令格式:[标号:] DW Y1,Y2,…,Yn
功能:从指定地址开始,存放若干字数据。
(4)汇编结束伪指令END
功能:该伪指令指出结束汇编,即使后面还有指令,汇编程序也不处理。
(5)赋值伪指令格式:标号 EQU 表达式
功能:将表达式的值(数据或地址)赋给标号。
(6)位定义伪指令格式:[标号] BIT 位地址
功能:将位地址赋给标号。
4.汇编语言程序设计分为哪几个步骤?
答:汇编语言程序设计一般要经过以下几个步骤:
(1)分析问题,明确任务
(2)确定算法
(3)画出程序流程图
(4)编写源程序
单片机第4章习题参考答案.docx
第4章部分习题答案
作业:7、8、9、10、11、15、17、19、20
4.7设内部RAM 20H单元有两个非零的BCD数, 编写
求两个BCD数的积并把积送入21H单元的程
序。
ORG 1000H
MOV A, 20H
MOV B, A ; 保存
SWAP A
ANL A, #0FH ;取高4位
ANL B, #0FH ;取低4位
MUL AB
MOV B, #0AH
DIV AB ;转换成BCD码的形式
SWAP A
ORL A, B
MOV 21H, A
SJMP $
END
4.8已知从内部RAM BLOCK单元开始存放有一组带
符号数,数的个数存放在LEN单元。编写可
以统计正数和负数个数并分别存入NUM和
NUM+1单元的程序。
num org lOOOh data 30h
len data 20h
block data 40h
mov rO, #block
mov num, #00h ;保存正数个数
mov b, #00h ;保存负数个数loop: mov a, @r0
inc rO
jb acc.7, neg
inc num
sjmp next
neg: inc b
next: djnz len, loop
mov num+1, b
sjmp $
end 4.9设X为一无符号数,存放在内部RAM的VAX 单
元,Y存放在FUNC单元。编写满足如下关系
的程序:
X X>50
Y =(5X 50> X > 20
2X X<20
org 2000h
vax data 20h
func data 30h
mov a, vax
cjne a, # 32h, compl
单片机第四章课后答案
(2)所有从机初始化设置SM2=1,处于准备接收一帧地址信息的状态 如:MOV SCON,#0F0H;设串口为方式3,SM2=1,允许接收
(3)各从机接收到地址信息,因为RB8=1,则置中断标志RI,中断后,首先判断主 机送过来的地址信息与自己的地址是否相符,对于地址相符的从机,置SM2=0, 以接收主机随后发来的所有信息;对于地址不相符的从机,保持SM2=1的状态,
ALE
WE
VCC GND CE
A10 A9 A8
D7 D6 Q7 Q6
D5 D4 D3 D2 D1 D0
Q5 Q4 Q3 Q2
8031
G OE Q1
Q0
A7 A6 A5 A4 2817A A3 2K×8 A2 A1 A0 I/O7
74LS373
RD PSEN P1.0
&
3K
+5V
I/O0 OE RDY/BUSY
00000
00001 ……
00000000000
…… …… 11111111111
(7)EPEOM的使用 存储器扩展电路是单片机应用系统的功能扩展部分,只有当应 用系统的软件设计完成了,才能把程序通过特定的编程工具(一般 称为编程器或EPROM固化器)固化到2716中,然后再将2716插到用 户板的插座上。 当上电复位时,PC=0000H,自动从2716的0000H单元取指令, 然后开始执行指令。 如果程序需要反复调试,可以用紫外线擦除器先将2716中的内 容擦除,然后再固化修改后的程序,进行调试。 如果要从EPROM中读出程序中定义的表格,需用查表指令
单片机四五章答案
第三章
1.在基址加变址寻址方式中,以作为变址寄存器,以或作为基址寄存器。
答:A,PC,DPTR。
2.指令格式是由和组成,也可仅由组成。
答:操作码,操作数,操作码。
3.假定累加器A中的内容为30H,执行指令
1000H:MOVC A,@A+PC
后,把程序存储器单元的内容送入累加器A中。
答:1031H。
4.在AT89C51单片机中,PC和DPTR都用于提供地址,但PC是为访问存储器提供地址,而DPTR是为访问存储器提供地址。
答:程序,数据。
5.在寄存器间接寻址方式中,其“间接”体现在指令中寄存器的内容不是操作数,而是操作数的。
答:地址。
6.已知程序执行前有(A) = 02H,(SP) = 52H,(51H) = FFH,(52H) = FFH。下述程序执行后,(A) = ,(SP) = ,(51H) = ,(52H) = ,(PC) = 。POP DPH
POP DPL
MOV DPTR,#4000H
RL A
MOV B,A
MOVC A,@A+DPTR
PUSH Acc
MOV A,B
INC A
MOVC A,@A+DPTR
PUSH Acc
RET
ORG 4000H
DB 10H,80H,30H,50H,30H,50H
答:(A)=50H,(SP)=50H,(51H)=30H,(52H)=50H,(PC)=5030H。
7.假定(A) = 83H,(R0) = 17H,(17H) = 34H,执行以下指令后,(A) = 。ANL A,#17H
ORL 17H,A
XRL A,@R0
CPL A
答:(A)=0CBH。
第4章思考题及习题4参考答案
第4章思考题及习题4参考答案
一、填空
1.外部中断1的中断入口地址为。定时器T1的中断入口地址为。
答:0013H;001BH
2.若(IP)=00010100B,则优先级最高者为,最低者为。
答:外部中断1,定时器T1
3.AT89S52单片机响应中断后,产生长调用指令LCALL,执行该指令的过程包括:首先把的内容压入堆栈,以进行断点保护,然后把长调用指令的16位地址送入,使程序执行转向中的中断地址区。
答:PC、PC、程序存储器
4.AT89S52单片机复位后,中断优先级最高的中断源是。
答:外部中断0
5.当AT89S52单片机响应中断后,必须用软件清除的中断请求标志是。
答:串行中断、定时器/计数器T2中断
二、单选
1.下列说法错误的是()。
A. 同一级别的中断请求按时间的先后顺序响应
B. 同一时间同一级别的多中断请求,将形成阻塞,系统无法响应
C. 低优先级中断请求不能中断高优先级中断请求,但是高优先级中断请求能中断低优
先级中断请求
D. 同级中断不能嵌套
答:B
2.在AT89S52的中断请求源中,需要外加电路实现中断撤销的是()。
A. 电平方式的外部中断请求
B.跳沿方式的外部中断请求
C.外部串行中断
D.定时中断
答:A
3.中断查询确认后,在下列各种AT89S52单片机运行情况下,能立即进行响应的是()。
A.当前正在进行高优先级中断处理
B.当前正在执行RETI指令
C.当前指令是MOV A,R3
D.当前指令是DIV指令,且正处于取指令的机器周期
答:C
4.下列说法正确的是()。
A. 各中断源发出的中断请求信号,都会标记在AT89S52的IE寄存器中
单片机 第四章答案
CLR P1.0
;设置方波的起始状态
MOV TL1, #0A1H
MOV TH1, #0FEH ;送初值,保证定时时间为350us
SETB P1.0
SETB TR1
;启动定时器
LOOP:JNB TF1, $
;查询是否溢出,
CLR TF1
;清溢出标志,以便下次判断
JNB P1.0,N0 ;现在为低电平时,150us定时到,转移
7. 根据定时/计数器0方式1逻辑结构图,分析门控位GATE取不同 值时,启动定时器的工作过程。
8. 用方式0设计两个不同频率的方波,P1.0输出频率为200Hz, P1.1输出频率为 100Hz,晶振频率12MHz。
5ms
10ms
解:① TMOD初始化: GATE=0 , C/T=0, M1M0=00B
中断程序结构框架
20.利用定时/计数器T0从P1.0输出周期为1s,脉宽为20ms的正 脉冲信号,晶振频率为12MHz。试设计程序。参照【例4-6】
解:因方式2是8位计数器,其最大定时时间为:256×1 s = 256 s,为实现1 s延时,
可选择定时时间为200 s,再循环5000次。定时时间选定后,可确定计数值为200,则定
第4章 80C51的定时/计数器与中
断系统
思考题与习题
[思考题与习题]
1. 80C51单片机的定时/计数器的定时和计数两种功能各有什么 特点?脉冲源不同
单片机第四章答案
单片机第四章习题答案
选择题
1-5 BACAA, 6-10 BAADA, 11-14 CCAD
问答题
1.MCS-51系列单片机定时计数器的定时功能和计数功能有什么不同?分别应用在什么场合?
答:当定时/计数器设置为定时工作方式时,计数器对内部机器周期计数,每过一个机器周期,计数器增1,直至计满溢出。定时器的定时时间与系统的振荡频率紧密相关,如果单片机系统采用12M晶振,则计数周期为:,这是最短的定时周期,适当选择定时器的初值可获取各种定时时间。
当定时/计数器设置为计数工作方式时,计数器对来自输入引脚T0(P3.4)和T1(P3.5)的外部信号计数,外部脉冲的下降沿将触发计数,检测一个由1到0的负跳变需要两个机器周期,所以,最高检测频率为振荡频率的1/24。计数器对外部输入信号的占空比没有特别的限制,但必须保证输入信号的高电平与低电平的持续时间在一个机器周期以上。
当需要准确计算时间时往往采用定时器的定时方式,而当要对一些外部事件计数时则采用定时器的计数方式。
2.软件定时与硬件定时的原理有何异同?
答:软件定时是通过编写一段延时程序来实现定时,这段延时程序不完成任何操作,只是通过一些空操作浪费掉一段时间。这样的软件定时往往浪费CPU的工作效率,并且定时不够准确,前面三章的各个任务中均采用了这种方法。
硬件定时是通过单片机的定时器来实现时间的计算,用户只需要对定时器的工作方式、初始值赋予合适的数值,启动定时器后,定时器将自动按照机器周期定时。这种由定时器实现的定时方式,定时时间准确、CPU的工作效率高。
第4章思考题及习题4参考答案
第4章思考题及习题4参考答案
一、填空
1.外部中断1的中断入口地址为。定时器T1的中断入口地址为。
答:0013H;001BH
2.若(IP)=B,则优先级最高者为,最低者为。
答:外部中断1,定时器T1
3.AT89S52单片机响应中断后,产生长调用指令LCALL,执行该指令的过程包括:首先把的内容压入堆栈,以进行断点保护,然后把长调用指令的16位地址送入,使程序执行转向中的中断地址区。
答:PC、PC、程序存储器
4.AT89S52单片机复位后,中断优先级最高的中断源是。
答:外部中断0
5.当AT89S52单片机响应中断后,必须用软件清除的中断请求标志是。
答:串行中断、定时器/计数器T2中断
二、单选
1.下列说法错误的是()。
A. 同一级别的中断请求按时间的先后顺序响应
B. 同一时间同一级别的多中断请求,将形成阻塞,系统无法响应
C. 低优先级中断请求不能中断高优先级中断请求,但是高优先级中断请求能中断低优
先级中断请求
D. 同级中断不能嵌套
答:B
2.在AT89S52的中断请求源中,需要外加电路实现中断撤销的是()。
A. 电平方式的外部中断请求
B.跳沿方式的外部中断请求
C.外部串行中断
D.定时中断
答:A
3.中断查询确认后,在下列各种AT89S52单片机运行情况下,能立即进行响应的是()。
A.当前正在进行高优先级中断处理
B.当前正在执行RETI指令
C.当前指令是MOV A,R3
D.当前指令是DIV指令,且正处于取指令的机器周期
答:C
4.下列说法正确的是()。
A. 各中断源发出的中断请求信号,都会标记在AT89S52的IE寄存器中
单片机原理及接口技术+梅丽凤第四章答案
第4章汇编语言程序设计
4-1解答:
ORG 0100H
MOV A,21H
ADD A,23H
MOV 25H,A
MOV A,20H
ADDC A,22H
MOV 24H,A
RET
4-2解答:
ORG 0200H
MOV A,51H
MOV B,#20
MUL AB
MOV 53H,A
MOV 52H,B
MOV A,50H
MOV B,#3
MUL AB
ADD A,53H
MOV 53H,A
MOV A,B
ADDC A,52H
MOV 52H,A
RET
4-3解答:
题图4-1 习题4-3流程图
ORG 0300H
MOV A,DATA
CJNE A,#20,LOP1
LOP1:JC LOP3
CJNE A,#50,LOP2
LOP2:JC LOP4
MOV B,#1
LJMP LOP5
LOP3:MOV B,#2
LJMP LOP5
LOP4:MOV B,#5
LOP5:MUL AB
MOV FUNC,A
RET
4-4解答:
ORG 0400H
MOV A,mun+1
JNB ACC.7,LOOP
CLR C
MOV A,num
SUBB A,#01H
CPL A
MOV num,A
MOV A,#num+1
SUBB A,#00H
CPL A
MOV num+1,A LOOP:RET
4-5解答:
ORG 0500H
MOV DPTR,#JPTAB
MOV A,R2
RL A
JMP @A+DPTR
JPTAB: AJMP KEY0
AJMP KEY1
AJMP KEY2
……
AJMP KEY15
KEY0:…
KEY1:…
KEY2:…
……
KEY15:…
4-6解答:
ORG 0600H
MOV R0,#40H
单片机4 7章参考答案
单片机4 7章参考答案
单片机4--7章参考答案
“单片机原理及应用”课程习题与解答
第4章
4-4:外部中断1所对应的中断入口地址为()h。
请问:0013h
4-5:下列说法错误的是:
a、各中断收到的中断请求信号,都会标记在mcs-51系统的ie寄存器中。
b、各中
断收到的中断请求信号,都会标记在mcs-51系统的tmod寄存器中。c、各中断收到的中
断请求信号,都会标记在mcs-51系统的ip寄存器中。d、各中断收到的中断请求信号,
都会标记在mcs-51系统的tcon与scon寄存器
中。答:abc
4-7:中断查阅证实后,在以下各种8031单片机运转情况中,能够立即展开积极响
应的就是:
a、当前正在执行高优先级中断处理
b、当前正在执行reti指令
c、当前指令是div
指令,且正处于取指令的机器周期d、当前指令是mova,r3答:d
4-8:8031单片机积极响应中断后,产生短调用指令lcall,继续执行该指令的过程
包含:首先把
()的内容压入堆栈,以进行断点保护,然后把长调用指令的16位地址送(),使
程序执行转向()中的中断地址区。答:pc、pc、程序存储器
4-9:编写成外部中断1为冲沿引爆的中断初始化程序。请问:
setbit1setbex1setbea
4-10:在mcs-51中,需要外加电路实现中断撤除的是:a、定时中断b、脉冲方式
的外部中断c、外部串行中断d、电平方式的外部中断答:d
4-12:以下观点恰当的就是:
a、同一级别的中断请求按时间的先后顺序响应。
b、同一时间同一级别的多中断请求,将形成阻塞,系统无法响应。
单片机第四章答案
。
第四章习题与思考答案
4-3外设端口有哪两种编址方法?各有什么特点?
答:微型计算机对 I/O 端口进行编址的方式有两种:单独编址和统一编址。
1.外设端口单独编址
特点:(1) 需要专用 I/O 指令,实现 CPU 和外设间数据传送。
(2)I/O端口地址的独立。
2.外设端口与存储器统一编址
特点: (1) 无需专用 I/O 指令
(2)I/O端口地址是内存地址中的一部分。
4-4 I/O 数据有哪四种传送方式?各有什么特点?
CPU 与外设之间的数据传送方式有无条件传输方式、查询
方式、中断方式和 DMA 方式。
1.无条件传输方式
无条件传送又称为同步传送或直接传送方式。CPU 在与外设进行数据交换时,外设随时处于准备好的状态,这样 CPU 不必查询外设的状态,也不必等待,而是直接进行数据的输入输出。
2.查询传输方式
查询传输方式也称为异步传输、条件传输方式。采用查询方式时, CPU 每次与外设进行数据传输前,都要先读取状态端口
的信息,查询外设是否准备就绪,只有在外设处于“就绪”状态时,才能向外设的数据端口发送数据或从其中读取数据,如果外设未就绪,就需要 CPU 原地循环等待外设完成准备工作,所以 CPU 的工作效率不高。
3.中断传输方式
在中断传输方式中,以外设为主动方,每次外设准备好就可以向 CPU 发出一次中断请求,使 CPU 暂停当前正在执行的程序,转去与外设进行一次数据传输工作,当完成了本次数据的输入或输出后,再回到原先被打断的地方继续执行原来的程序。中断方式可以大大提高 CPU 的效率和系统的实时性。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第四章习题与思考答案
4-3 外设端口有哪两种编址方法?各有什么特点?
答:微型计算机对I/O端口进行编址的方式有两种:单独编址和统一编址。
1.外设端口单独编址
特点:(1)需要专用I/O指令,实现CPU和外设间数据传送。
(2)I/O端口地址的独立。
2.外设端口与存储器统一编址
特点:(1)无需专用I/O指令
(2)I/O端口地址是内存地址中的一部分。
4-4 I/O数据有哪四种传送方式?各有什么特点?
CPU与外设之间的数据传送方式有无条件传输方式、查询方式、中断方式和DMA方式。
1.无条件传输方式
无条件传送又称为同步传送或直接传送方式。CPU在与外设进行数据交换时,外设随时处于准备好的状态,这样CPU不必查询外设的状态,也不必等待,而是直接进行数据的输入输出。
2.查询传输方式
查询传输方式也称为异步传输、条件传输方式。采用查询方式时,CPU每次与外设进行数据传输前,都要先读取状态端口的信息,查询外设是否准备就绪,只有在外设处于“就绪”状态时,才能向外设的数据端口发送数据或从其中读取数据,如果外设未就绪,就需要CPU原地循环等待外设完成准备工作,所以CPU的工作效率不高。
3.中断传输方式
在中断传输方式中,以外设为主动方,每次外设准备好就可以向CPU发出一次中断请求,使CPU暂停当前正在执行的程序,转去与外设进行一次数据传输工作,当完成了本次数据的输入或输出后,再回到原先被打断的地方继续执行原来的程序。中断方式可以大大提高CPU的效率和系统的实时性。
4.DMA方式
DMA方式即直接存储器存取方式,是一种在DMA控制器的控
制下实现的外设与存储器之间的直接数据传输方式。在整个DMA 传输过程中,是不需要CPU参与的,完全是通过硬件逻辑电路用固定的顺序发地址和读写信号来实现的,数据不需要经过CPU而是在外设和存储器之间高速传输。
4-5 8051内部的并行I/O口有哪些?各有什么功能?
1.P0口
P0口的第一功能是作为通用I/O口使用。
P0口的第二功能是作为地址(低8位地址)/数据总线的复用口。
2.P1口
P1口的第一功能是作为通用I/O口使用
3.P2口
P2口的第一功能是通用I/O口
P2口的第二功能是作为地址总线,输出高8位地址信号,与P0口输出的低8位地址组合,共同完成外部存储器单元16位地址信号的输出。
4.P3口
P3口的第一功能是通用I/O口,且各引脚有不同的第二功能。
4.8 中断处理的过程是怎样的?
所谓中断是指CPU在正常执行程序的过程中,由于某种随机发生的事件使它暂停当前正在执行的程序,转而去执行另外的一段程序(中断服务程序),在这段程序完成后自动返回被打断的程序处继续执行的过程。
CPU与外设之间一个完整的可屏蔽中断传输过程包括:中断请求、中断响应、中断处理和中断返回。
4.9 8051单片机有几个中断源?各自对应的中断标志是什么?对应的中断服务子程序入口地址是什么?IE寄存器的作用是什么?
8051单片机提供5个中断源,其中2个外部中断,2个定时器/计数器中断,1个串行口中断。
外部中断INT0/ INT1以各自引脚上输入低电平或负跳变信
号作为中断触发事件。当检测到外部中断请求时,外部中断的标志IE0/IE1被置为1
定时器/计数器中断是由8051内部的定时器/计数器计满溢出产生的。T0或T1计满溢出时,中断标志TF0或TF1被置1.
串行口中断包括发送中断和接收中断, 当串行口接收完一组数据时,串行口接收中断标志RI被置 1; 当串行口发送完一组数据时,串行口发送中断标志TI被置 1。
IE寄存器:通过中断允许寄存器IE可以对中断实现两级控制。每个中断源都对应有各自的中断屏蔽位,当中断屏蔽位为1时允许中断,当中断屏蔽位为0时禁止中断;IE寄存器还有一个总中断允许位EA,对整个中断系统进行开中断或关中断的控制。
4-10 MCS-51单片机的中断系统有几级中断优先级?IP寄存器的作用是什么?
2级:高级中断优先级和低级中断优先级。IP寄存器是中断优先级寄存器,用于选择各个中断源的中断优先级。其各位的定义参见图4-12。
4-11 MCS-51单片机中断响应的条件有哪些?如何进行中断响应的操作?
✧当前没有同级或高优先级的中断正在被服务。
✧CPU应保证执行完当前正在执行的指令。
✧如果当前正在执行的指令是RETI或任何访问IE、IP寄存器
的指令,则应至少再执行一条其他指令。
中断响应条件满足时,硬件系统产生一个硬件长调用LCALL。
硬件长调用LCALL操作将当前程序计数器PC的值推入堆栈保存起来,并将不同中断源对应的中断入口地址转入PC。
4-12 MCS-51单片机内部定时器有几种工作方式?如何通过定时器方式控制寄存器进行设置?
工作方式控制寄存器TMOD用来设定定时器/计数器T0和T1的工作方式。其中M1M0两位可以选择4种方式:方式0、方式1、方式2和方式3。具体设置的方法见图4-18。
4-13试比较MCS-51内部定时器在4种工作方式下的异同。
方式0是13位计数器方式,以T0为例,13位计数器由TH0的8位和TL0中的低5位组成,TL0的高3位不用,当计数器计满溢出时,由硬件将TF0标志置1。由C/T控制位选择作为定时器还是计数器工作。当GATE=0时,只要TR0置位,定时器即开始工作;当GATE=1时,TR0置1后,只有INT0上出现高电平信号时,T0才开始工作。
方式1是16位计数器方式,由TH0的8位与TL0的8位组成16位计数器,其它工作过程与方式0相同。
方式2是8位自动重装载计数器方式。在计数器计满溢出时,可以自动重新装入计数初值,循环计数。而方式0和方式1都不具备自动重装载的功能。
T0和T1的以上3种方式是完全相同的,而方式3下T0和T1是不相同的。如果设置T1为方式3,则T1停止工作。T0设置为方式3作为两个独立的8位计数器工作。
4-14设单片机时钟为12MHz,请分别计算定时器工作在方式0和方式1时定时2ms所需要的定时器初值。
(1)初值H
-
=
-
=
=
8192
N
x1830
6192
2000
213=
(2)初值H
-
=
=
-
=
216=
65536
N
x830
63536
2000
F