王雷《单片机系统设计基础》课后答案.docx
- 文档编号:6880667
- 上传时间:2023-01-12
- 格式:DOCX
- 页数:21
- 大小:50.02KB
王雷《单片机系统设计基础》课后答案.docx
《王雷《单片机系统设计基础》课后答案.docx》由会员分享,可在线阅读,更多相关《王雷《单片机系统设计基础》课后答案.docx(21页珍藏版)》请在冰豆网上搜索。
王雷《单片机系统设计基础》课后答案
注黑体的题要重点掌握。
练习题一
1.选择
(1)单片机片内集成了基本功能单元(③)
①微处理器②运算器③中央处理单元
(2)工业自动化设备采用工控机实现自动控制,工控机属于(①)
①通用计算机②嵌入式计算机③微处理器
(3)单片机的英文缩写为(②)
①SCM②MCU③PCL
2.叙述单片机的含义
答:
利用大规模集成技术,将计算机的各个基本功能单元集成在一块硅片上,这块芯片就具有一台计算机的属性,因而被称为单片微型计算机,简称单片机。
3.叙述计算机发展的两大分支及其特点。
答:
计算机形成了通用计算机系统和嵌入式计算机系统两大分支。
通用计算机系统以高速数值计算为已任,不必兼顾控制功能,其数据总线宽度不断更新,通用操作系统不断完善,以突出发展海量、高速数值计算能力。
以单片机为代表的嵌入式系统,以面向对象控制为已任,不断增加控制功能,提高可靠性,降低成本,减小体积,改善开发环境。
4.叙述半导体工艺MOS、HMOS、CMOS和HCMOS的特点,说明新型单片机广泛采用HCMOS工艺的目的。
提示:
从速度、密度和功耗三个方面比较。
答:
HMOS工艺(高速MOS),即高密度短沟道MOS工艺,虽然有较高的集成度和速度,但其功耗较大。
HCMOS工艺,即互补金属氧化物的HMOS工艺,是CMOS和HMOS的结合,除了具有HMOS的高速高密度之外,还具有CMOS的低功耗的特点。
5.试述单片机应用系统低功耗设计的主要内容。
答:
(1)对于那些采用电池供电的单片机应用系统,降低功耗尤为必要。
降低功耗的重要手段是采用CMOS技术。
新型单片机广泛采用了HCMOS工艺,大大降低了功耗。
(2)降低单片机的工作电源电压也可降低功耗。
(3)选用低功耗的外围芯片及设备,也是降低功耗的措施之一。
过去单片机的外围扩展多采用74TTL芯片,其功耗较大。
为了降低功耗,应选用CMOS(HCMOS)工艺外围芯片。
6.MCS-51、80C51、80C51系列这三个概念有何区别?
答:
(1)MCS-51指Intel公司推出的利用HMOS或HCMOS工艺制造的一个单片机系列,它又分成51和52两个子系列,其中51子系列是基本型,而52子系列属于增强型。
每个子系列包含三种单片机。
一般MCS-51常指51子系列。
(2)80C51一般指MCS-51系列中采用HCMOS工艺的单片机。
(3)80C51系列包括Intel公司采用HCMOS工艺的MCS-51系列,也包括其它公司以80C51作为内核与MCS-51完全兼容的单片机。
7.单片机与经典电子技术在实施控制方法上有何不同?
答:
从前必须由模拟或数字等经典电子线路实现的控制功能,现在可以使用单片机通过软件方法实现。
这种以软件取代传统电子电路并能提高系统性能的控制技术,称为微控制技术。
8.填空单片机应用系统设计的主要内容包括:
外围扩展电路的硬件结构设计、低功耗设计、应用软件设计、抗干扰技术设计。
练习题二
1.填空80C51单片机内部基本组成包括CPU、存储器、中断系统、定时器/计数器、串行口和并行口。
2.填空分述80C51下列引脚的功能:
①RST的功能是在RST引脚上施加两个机器周期以上的高电平,将单片机复位。
②
的功能是片外程序存储器读选通信号,低电平有效。
③
/Vpp的功能是
是片内外程序存储器选择信号,当
为低电平,单片机只能从0000H单元开始执行片外程序存储器程序,当
为高电平,单片机只能从0000H单元开始执行片内程序存储器程序,当执行片内程序的地址超过0FFFH,便自动转向片外程序存储器中的程序继续执行。
Vpp为本引脚的第二功能,在对EPROM型单片机片内EPROM固化编程时,用于施加较高的编程电压。
④ALE/
的功能是ALE端总是不间断地连续输出一个正脉冲信号,其频率固定为晶振频率的1/6,ALE引脚输出的脉冲信号可作为地址锁存信号。
为本引脚的第二功能,在对EPROM型单片机片内EPROM固化编程时,作为编程脉冲输入端。
3.当使用80C31时,
引脚如何处理?
答:
将
引脚接地。
4.在80C51扩展系统中,片外ROM和片外RAM共同处于同一个地址空间,为什么不会发生总线冲突?
答:
因为它们的读选通信号线不同。
5.片内RAM低128个单元划分为哪三个部分?
各部分主要功能是什么?
答:
片内RAM低128个单元共划分为通用工作寄存器区、可位寻址区、以及用户RAM区等三部分。
地址为00H~1FH的32个单元是4组通用工作寄存器区,每个区含8个8位寄存器,为R0~R7,用户可以通过指令改变PSW中的RS1、RS0这二位来切换工作寄存器;地址为20H~2FH的16个单元可进行共128位的位寻址,也可以进行字节寻址;地址为30H~7FH的单元为用户RAM区,只能进行字节寻址。
6.位地址7CH与字节地址7CH有何区别?
位地址7CH具体在片内RAM中什么位置?
答:
位地址7CH是片内RAM可位寻址区20H~2FH这128个位中某一位的地址编号,而字节地址7CH是片内RAM低128个单元中某一个单元的地址。
位地址7CH位于字节2FH的b4位。
7.判断并填空根据下列SFR的地址,判断是否可位寻址?
①81H(否),其符号名称是SP;
②83H(否),其符号名称是DPH;
③80H(是),其符号名称是P0;
④98H(是),其符号名称是SCON;
⑤89H(否),其符号名称是TMOD;
8.填空为体现“面向控制”功能,80C51除了设置布尔处理器外,另一个硬件结构是SFR。
9.程序状态字PSW作用是什么?
常用的状态标志位有哪几位?
答:
PSW主要用作程序运行状态标志。
常用的状态标志位有CY、AC、OV、P。
10.填空若PSW的内容为18H,通用工作寄存器R0的地址是18H;R1的地址是19H;R5的地址是1DH;R7的地址是1FH。
11.程序计数器PC和数据指针DPTR有哪些异同?
答:
PC与DPTR的相同点是都是16位的;不同点是PC只能用来寻址程序存储空间,而DPTR常用来寻址片外数据存储空间,又可分为DPH、DPL两个8位的SFR。
12.填空
1当CPU从片外ROM中读取指令或常数表格时,
信号电平为低;在读取片内ROM指令或常数表格时,
信号电平为高;在访问片外RAM时,
信号电平为高。
2在访问片外RAM时,
或
信号电平为低,但
信号电平为高。
3在访问片外RAM情况下,ALE将丢失一个脉冲,ALE信号的作用是片外地址锁存器的锁存信号和外围芯片的定时脉冲。
13.计算当振荡频率为8MHz时,试计算:
1时钟周期为0.125μs;
2机器周期为1.5μs;
3执行一条最长的指令周期为6μs;
4ALE的周期为0.75μs。
14.比较8051与80C51外部时钟方式的不同,为什么?
答:
对于8051单片机,外部时钟工作方式时将片外振荡器信号接到XTAL2引脚,XTAL1引脚接地;对于80C51单片机,外部时钟工作方式时的片外振荡器信号接到XTAL1引脚,而XTAL2引脚悬空。
上述两种接法不同的原因,是因为8051的内部时钟电路由XTAL2上的信号驱动;80C51的内部时钟电路由XTAL1上的信号驱动。
15.复位的作用是什么?
有几种复位方法?
答:
复位是单片机的初始化操作。
其主要功能是将程序计数器PC初始化为0000H,使单片机从0000H单元开始执行程序。
有两种复位方法,一种是上电复位、一种是利用复位按钮复位。
16.SBUF、SP和P0~P3等特殊功能寄存器的复位值有什么特点?
答:
SBUF复位值不定,SP复位值为07H,P0~P3复位值为FFH。
17.80C51有几种低功耗方式?
如何实现?
答:
80C51有两种低功耗方式:
空闲方式和掉电方式。
用指令使PCON中IDL位置1,系统便可进入空闲方式。
空闲方式的退出有两种方法,即中断方式和硬件复位方式。
执行一条PCON寄存器的PD位置1的指令(是运行程序中的最后一条指令),单片机便可进入掉电方式。
退出掉电方式的唯一方法是硬件复位。
18.判断对PCON中的PCON.0位,若要置1或清0,采取的操作为:
①可采用位可寻址的位操作指令();
②可采用字节操作的方法(√);
③可采用位寻址的位操作或字节操作()。
19.80C51单片机的工作方式分为几种?
/Vpp和ALE/
引脚在程序执行方式和编程方式时作用有何不同?
(第二问略掉,答案可参见第2题填空。
)
答:
80C51具有四种工作方式:
程序执行方式、复位方式、低功耗方式和编程方式。
20.单片机外围扩展电路硬件结构设计的主要内容包括哪些?
(略)
练习题三
1.问答题
(1)80C51指令系统有哪几种寻址方式?
访问特殊功能寄存器采用什么寻址方式?
答:
80C51指令系统中字节操作中的寻址方式有:
寄存器寻址方式、直接寻址方式、寄存器间接寻址方式、立即寻址方式、相对寻址方式;位操作中的寻址方式有:
位直接地址寻址方式、位寄存器寻址方式。
(2)指令系统中的间接寻址范围是多少?
答:
64K。
(3)变址寻址主要用于什么场合?
其寻址范围是多少?
答:
查表,64K。
(4)相对寻址方式有什么特点?
其寻址范围是多少?
答:
相对寻址方式是指根据指令机器码中现的相对偏移量,从而计算出程序的转移目的地址。
转移目的地址可向前,或向后,rel的取值范围为-128~+127。
(5)CPU读程序存储器ROM、CPU读写片外RAM,以及片内RAM之间的信号传送的指令在操作助记符,寻址方式有什么不同?
答:
CPU读程序存储器ROM的指令操作助记符是MOVC,寻址方式为间接寻址;CPU读写片外RAM的指令操作助记符是MOVX,寻址方式为间接寻址;片内RAM之间信号传送的指令操作助记符是MOV,寻址方式为直接寻址。
(6)“DAA”指令的作用是什么?
怎样使用?
答:
用于对BCD码十进制加法运算结果的修正。
跟在ADD指令后即可。
(7)压栈指令和出栈指令的作用是什么?
SP如何变化?
答:
压栈指令:
将direct中的数据压入堆栈,SP变化方式如下所示:
PUSHdirect;(SP)←((SP)+1),(SP)←(direct)。
出栈指令:
将堆栈中的数据弹入direct中,SP变化方式如下所示:
POPdirect;(direct)←((SP)),(SP)←((SP)-1)。
(8)立即数为什么不能作目的操作数?
答:
因为一个立即数只存在于指令代码中,不能用它来定位一个存储单元。
2.判断下列指令是否正确。
(1)MOVR0,@R1错
(2)MOV#25H,A错
(3)MOVA,#25H对
(4)MOVA,@R2错
(5)MOV@R1,A对
(6)MOVXA,1234H错
(7)MOVXR0,@DPTR错
(8)MOVX@DPTR,A对
(9)PUSHDPTR错
(10)PUSHDPH对
(11)PUSHDPL对
(12)PUSHR7错
(13)PUSH07H对
(14)POPA错
(15)POPACC对
(16)通过加法实现2×A运算,判断下列指令的正误
●ADDA,A错
●ADDA,ACC对
(17)在程序存储器0010H处分别存放下列指令,判断其正误
●AJMP001AH对
●AJMP0800H错
●AJMP07FFH对
●AJMP0980H错
3.计算题
(1)已知如下一段程序:
2100HMOVCA,@A+PC;单字节
2101HRET;单字节
2102HNOP;单字节
DB……
试确定变址寄存器A的取值范围;计算所能读出的字节数的地址区间;利用该程序能否读出2200H单元的字节常数。
答:
A的取值范围为:
2-255;所能读出的字节数的地址区间为:
2103H-2200H;利用该程序能读出2200H单元的字节常数。
(2)在程序存储器2000H处存有“SJMPLOOP”指令,试求指令的机器码。
(略)
●当LOOPEQU2060H时;
●当LOOPEQU1FA2H时。
(3)在程序存储器2500H处存有“CJNEA,#25H,LOOP”指令,试求指令的机器码。
(略)
●当LOOPEQU2550H时;
●当LOOPEQU24B2H时。
(4)已知如下一段程序,试求“SJMPLOOP”的机器码。
(略)
ORG1000H
SJMPLOOP
……
RET
LOOPEQU0FA0H
(5)已知调用指令如下所示:
ORG1000H
MOVSP,#50H
LCALL5431H
NOP
NOP
RET
试写出执行“LCALL5431H”后,(51H)=?
(52H)=?
(PC)=?
答:
(51H)=06H,(52H)=10H,(PC)=5431H。
(6)已知绝对转移指令如下所示,试求“AJMPTRAN”的机器码。
(略)
ORG97FEH
AJMPTRAN
……
RET
TRANEQU9A00H
4.指令分析与编程
(1)已知(A)=7AH,(R0)=30H,(30H)=A5H,(PSW)=80H,请填写每条指令的执行结果(各指令互不影响)。
①XCHA,R0;(A)=30H
②XCHA,30H;(A)=A5H
③XCHA,@R0;(A)=A5H
④XCHDA,@R0;(A)=75H
⑤SWAPA;(A)=A7H
⑥ADDA,R0;(A)=AAH
⑦ADDA,30H;(A)=1FH
⑧ADDA,#30H;(A)=AAH
⑨ADDCA,30H;(A)=20H
⑩SUBBA,30H;(A)=D4H
⑾SUBBA,#30H;(A)=49H
(2)已知(A)=83H,(R0)=17H,(17H)=34H,试写出执行下列程序段后A的内容。
ANLA,#17H
ORL17H,A
XRLA,@R0
CPLA
结果:
(A)=CBH
(3)已知两个十进制数分别在内部RAM40H和50H单元开始存放(低位在前),其字节长度存放在内RAM30H单元。
编写程序实现两个十进制数求和,并把求和结果存放在40H开始的单元中。
答:
ORG0000H
MOVR0,#40H
MOVR1,#50H
MOVA,#40H
ADDA,30H
MOVR2,A
LCALLSJZA
MOVA,R2
MOVR0,A
JCOVER1
MOV@R0,#00H
SJMPOVER2
OVER1:
MOV@R0,#01H
SJMPOVER2
SJZA:
CLRC
SJZB:
MOVA,@R0
ADDCA,@R1
DAA
MOV@R0,A
INCR0
INCR1
DJNZ30H,SJZB
RET
OVER2:
NOP
END
(4)在外RAM中把8000H单元开始的30H字节数据传送到8100H开始的单元中去,用编程实现。
答案一:
ORG0000H
MOVR2,#00H
MOVR3,#80H
MOVR4,#00H
MOVR5,#81H
MOVR7,#30H
LOOP:
MOVDPL,R2
MOVDPH,R3
MOVXA,@DPTR
INCDPTR
MOVR2,DPL
MOVR3,DPH
MOVDPL,R4
MOVDPH,R5
MOVX@DPTR,A
INCDPTR
MOVR4,DPL
MOVR5,DPH
DJNZR7,LOOP
END
答案二:
ORG0000H
MOVDPTR,#8000H
MOVP2,#81H
MOVR0,#00H
MOVR7,30H
LOOP:
MOVXA,@DPTR
MOVX@R0,A
INCDPTR
INCR0
DJNZR7,LOOP
END
(5)若片外RAM的容量不超过256个字节,试编写程序将片外RAM50H中的内容传送到片内RAM30H单元中。
答:
ORG0000H
MOVDPTR,#0050H
MOVXA,@DPTR
MOV30H,A
END
或:
ORG0000H
MOVR0,#50H
MOVXA,@R0
MOV30H,A
END
(6)用两种方法将程序存储器20F0H单元中的常数读入累加器中,如下所示。
方法1:
2010HMOVA,#NNH
MOVCA,@A+PC
试写出NNH的具体值。
答:
由于“MOVA,#NNH”是2字节指令,“MOVCA,@A+PC”是1字节指令,因此PC中的值是2013H,20F0H-2013H=00DDH,NNH的具体值是DDH。
方法2:
MOVDPTR,#MMMMH
MOVA,#NNH
MOVCA,@A+DPTR
试写出NNH、MMMMH的具体值。
答:
MMMMH=20F0H,NNH=00H
练习题四
1.问答题
(1)什么是接口?
接口的基本功能是什么?
答:
CPU执行程序具有快速的特点,而一些外围设备,如键盘、显示器等处理数据却呈现慢速的特性。
为了使CPU和外围设备在信息传输和处理速度上匹配,在两者之间需要一种装置作媒介,这种媒介称为输入/输出(I/O)接口,简称接口。
接口的基本功能有:
输入/输出数据,扩展外部存儲器、D/A和A/D转换器、可编程I/O芯片等,作为三总线(AB,DB,CB)使用,作为串行通信线和外部中断输入线等。
(2)P1口、P0口、P2口和P3口具有什么特点?
答:
P1口的特点:
P1口为单功能口:
通用I/O口。
P1口由于有内部上拉电阻,引脚没有高阻抗状态,即引脚状态非0即1,称为准双向口。
作输出口时,通过上拉电阻R可以向外输出高电平,不需要再在片外接上拉电阻。
P1口读引脚时,必须先向输出锁存器写1。
P1口能驱动4个TTL负载。
CPU不占用P1口,完全由用户支配。
P0口的特点:
P0口为双功能口:
通用I/O口和地址/数据复用线。
一般情况下,如果P0已作地址/数据复用口,就不能再作通用I/O口使用。
当P0口作地址/数据复用口时,是一个真正的双向口。
外接ROM和RAM时,不需要片外接上拉电阻。
当P0口作通用I/O口时,需要在片外接上拉电阻,此时是一个准双向口。
为保证引脚的正确读入,应首先向锁存器写1.
P0口能驱动8个TTL负载。
P2口的特点:
P2口是双功能口:
通用I/O口功能和高8位地址口。
作为地址输出线时,与P0口输出的低8位地址一起构成16位地址线,可以寻址64KB的地址空间。
当P2口作为高8位地址输出口时,由于地址不是来自输出锁存器,因此输出锁存器的内容保持不变。
作通用I/O时,是准双向口。
作输入时,应先向锁存器写1。
P2口能驱动4个TTL负载。
P3口的特点:
P3口内部有上拉电阻,不存在高阻抗输入状态,为准双向口。
P3口作为第一功能通用输入,或作为第二功能的输出/输入,均需将相应位的锁存器置1。
实际应用中,由于上电复位后P3口锁存器自动置1,就可以进入功能操作。
在某位不作为第二功能使用时,可作为第一功能I/O口使用。
引脚的输入有两个缓冲器,第一功能的输入通过BUF2获取,第二功能的输入通过BUF3获取。
(3)P0口作通用I/O口时,应注意什么问题?
答:
当P0口作通用I/O口时,需要在片外接上拉电阻。
(4)并行I/O口在什么情况下为准双向口?
为什么?
答:
如果一个并行I/O口作为通用I/O口使用时为准双向口,因为此时I/O口的输出只有高、低两状态,没有高阻态,且读入数据时需先对I/O口置1。
(5)单片机对口进行读操作时,何时读锁存器?
何时读引脚?
答:
如果单片机对口进行的读操作是“读-修改-写”则为读锁存器,其它读操作为读引脚。
(6)试比较:
MOV A,P1;MOV P1,A;ANL P1,A指令操作过程有何不同?
答:
MOV A,P1为读引脚操作;MOV P1,A为写端口操作,ANL P1,A为读锁存器操作。
(7)80C51中断向量地址是怎样分配的?
答:
中断源
向量地址
外部中断0(
)
0003H
定时器0(T0)中断
000BH
外部中断1(
)
0013H
定时器1(T1)中断
001BH
串行口中断
发送中断
0023H
接收中断
(8)80C51共有几个中断源?
它们对中断请求是如何控制的?
答:
中断源是向CPU发出中断请求的来源,80C51共有6个中断源:
2个外部中断源、2个定时器/计数器溢出中断以及2个串行中断。
中断源申请中断时,要将相应的中断请求标志置位。
CPU查询到这些有效标志位,便响应中断。
单片机转入中断服务程序时,这些中断请求标志有的是由片内硬件自动清除,有的是由用户软件清除。
中断控制主要包括中断请求触发方式的选择,中断是否允许以及中断优先级的确定等。
(9)TCON中,哪些位用来表示中断标志、中断信号方式和启动定时器?
答:
TCON中的中断标志位有:
TF1、TF0、IE1、IE0;中断信号方式位有:
IT1、IT0;启动定时器位有:
TR1、TR0。
(10)SCON寄存器反映中断状态标志的是哪些位?
答:
SCON寄存器反映中断状态标志的是:
TI、RI。
(11)什么是中断优先级?
中断优先级处理的原则是什么?
答:
80C51单片机具有高、低两个中断优先级。
各中断源的优先级由IP寄存器有关位设定。
设定为1时为高优先级;设定为0时为低优先级。
中断优先级是为中断嵌套服务的。
80C51单片机中断优先级的控制原则是:
①低优先级中断请求不能打断高优先级的中断服务,但高优先级的中断请求可以打断低优先级的中断服务。
②如果一个中断请求已被响应,则同级的中断响应将被禁止,即同级的中断不能相互打断。
③如果同级的多个中断请求同时出现,则由单片机内部硬件直接查询,按自然响应顺序确定执行哪一个中断。
(12)对于外部中断方式,怎样进行有关控制器的初始化?
答:
IT0(或IT1)=1时,
(或
)信号为脉冲触发方式,脉冲负跳变有效;IT0(或IT1)=0时,
(或
)信号为电平触发方式,低电平有效。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机系统设计基础 王雷 单片机 系统 设计 基础 课后 答案
![提示](https://static.bdocx.com/images/bang_tan.gif)