单片机习题答案12文档格式.docx
- 文档编号:19284259
- 上传时间:2023-01-05
- 格式:DOCX
- 页数:10
- 大小:52.24KB
单片机习题答案12文档格式.docx
《单片机习题答案12文档格式.docx》由会员分享,可在线阅读,更多相关《单片机习题答案12文档格式.docx(10页珍藏版)》请在冰豆网上搜索。
10.89C51的程序存储器的寻址空间是多少,如何区别片内程序存储器和片外程序存储器的?
11.89C51的位寻址区在哪里,位寻址空间是多少?
12.什么是堆栈,什么是SP,89C51的堆栈位于什么地方,复位后堆栈指针初值是多少,一般将SP设置为多少?
进栈、出栈时堆栈指针将怎样变化?
13.单片机包括哪两种复位方式,在单片机应用系统中为何需要系统复位,复位后主要寄存器的状态如何?
14.89C51的P3口各引脚的第二功能是什么?
15.89C51有几种低功耗方式,如何进入和退出?
习题三
1.什么是指令,什么是指令系统?
2.89C51总共有多少条指令,分为哪几类?
3.89C51有哪些寻址方式,各自的寻址空间如何?
4.说明下列指令中源操作数采用的寻址方式。
MOVA,R7
MOVA,55H
MOVA,#55H
JMP@A+DPTR
MOV30H,C
MOVA,@R0
MOVXA,@R0
5.下列各条指令单独执行后,A中的结果是什么?
设(60H)=35H,(A)=19H,(R0)=30H,(30H)=0FH,(DPTR)=2000H,(2000H)=0AAH,(2019H)=23H。
(1)MOVA,#48H
(2)ADDA,60H
(3)ANLA,@R0
(4)XCHDA,@R0
(5)MOVXA,@DPTR
(6)MOVA,R0
(7)MOVCA,@A+DPTR
6.阅读下列程序段,写出每条指令执行后的结果。
(1)并说明此程序段完成什么功能?
MOVR1,#30H;
(R1)=
MOVA,#64H;
(A)=
ADDA,#47H;
POPDPL
MOVDPTR,#4000H
RLA
MOVB,A
MOVCA,@A+DPTR
PUSHA
MOVA,B
INCA
RET
ORG4000H
DB10H,80H,30H,50H,30H,50H
A=(
),SP=(
),(51H)=(
),(52H)=(
),PC=(
)。
8.假定累加器A中的内容为30H,执行指令
1000H:
MOVC
A,@A+PC
后,把程序存储器(
)单元的内容送入累加器A中。
9.试编写1个程序,将内部RAM中45H单元的高4位清0,低4位置1。
10.试编写程序,查找在内部RAM的30H~50H单元中是否有0AAH这一数据。
若有,则将51H单元置为“01H”;
若未找到,则将51H单元置为“00H”。
11.试编写程序,查找在内部RAM的20H~40H单元中出现“00H”这一数据的次数。
并将查找到的结果存入41H单元。
12.若SP=60H,标号LABEL所在的地址为3456H。
LCALL指令的地址为2000H,执行指令如下:
2000H:
LCALLLABEL后,堆栈指针SP和堆栈内容发生了什么变化?
PC的值等于什么?
如果将指令LCALL直接换成ACALL是否可以?
如果换成ACALL指令,可调用的地址范围是什么?
13.编写程序,进行两个16位数的减法:
6F5DH-13B4H,结果存入内部RAM的30H和31H单元,30H存差的低8位。
14.编写程序,进行两个16位数的加法:
6F5DH+13B4H,结果存入内部RAM的30H和31H单元,30H存和的低8位。
15.已知R3,R4中存有一个16位的二进制数,高位在R3中,低位在R4中。
请编程将其求补,并存回原处。
16.已知30H,31H中存有一个16位的二进制数,高位在前,低位在后。
请编程将其乘2,并存回原单元处。
17.内存中有2个四字节压缩的BCD码形式存放的十进制数,一个存放在30H~33H的单元中,一个存放在40H~43H的单元中。
请编程将求它们的和,结果存放在30H~33H中。
习题四
1.写出89C51单片机汇编指令的指令格式,并举例说明。
2.单片机的程序设计包括哪几个步骤?
3.单片机的分支结构程序指令有哪几条?
4.编程将片内40H~60H单元中的内容送到以3000H为首的存储区内。
5.已知内部RAM的20H和21H单元中各有一个无符号8位二进制数,试编程比较它们的大小,并把大数送到30H单元。
6.若从30H单元开始有100个数,编一个程序检查这些数,正数保持不变,负数取补后送回。
7.设在2000H~2004H单元中.存放有5个压缩BCD码,编程将它们转换成ASCII码,存放到以2005H为首地址的存储区中。
8.试编写一段延时程序,延时时长为1s。
设单片机的晶振频率为12MHz。
9.编程计算下列算式的程序
(1)23H+45H+ABH+03H=
(2)CDH+15H-38H-46H=
(3)1234H+8347H=
(4)AB123H-43ADCH=
10.设5AH单元中有一变量X,请编写计算下述函数式的程序,结果存入5B单元。
习题五
1.什么是中断?
在单片机中中断能实现哪些功能?
2.中断服务子程序和普通子程序有什么区别?
3.什么是中断优先级?
中断优先级处理的原则是什么?
4.什么是中断嵌套?
5.89C51有几个中断源,各中断标志如何产生的,又如何清0的?
CPU响应中断时,中断入口地址各是多少?
6.简述89C51单片机中断响应过程。
7.中断响应后,是怎样保护断点和保护现场的?
8.在89C51FlashROM中,应如何安排程序区?
9.试编写出外部中断1为边沿触发方式的中断初始化程序。
10.89C51有哪几种扩展外部中断源的方法?
各有什么特点?
11.当正在执行某一中断源的中断服务程序时,如果有新的中断请求出现,问在什么情况下可响应新的中断请求?
在什么情况下不能响应新的中断请求?
12.试编写一段对中断系统初始化的程序,允许INT0、INT1、T0、串行口中断,且使T0中断为高优先级。
13.在89C51中,需要外加电路实现中断撤除的是:
(1)定时中断
(2)脉冲方式的外部中断
(3)串行中断
(4)电平方式的外部中断
14.在89C51单片机中,外部中断有哪两种触发方式?
如何加以区别?
15.在89C51单片机的应用系统中,如果有多个外部中断源,怎样进行处理?
16.在89C51中,以下几种中断优先级顺序能否实现?
如可以,中断优先级应如何设置,若不行,请说明理由。
(1)定时器0,定时器1,外中断0,外中断1,串行口中断。
(2)串行口中断,外中断0,定时器0,外中断1,定时器1。
(3)外中断0,定时器1,外中断1,定时器0,串行口中断。
(4)外中断0,外中断1,串行口中断,定时器0,定时器1。
(5)串行口中断,定时器0,外中断0,外中断1,定时器1。
(6)外中断0,外中断1,定时器0,串行口中断,定时器1。
(7)外中断0,定时器1,定时器0,外中断1,串行口中断。
习题六
1.89C51单片机中的定时/计数器有什么实际用途?
2.89C51单片机内部有几个定时/计数器,他们有哪些专用寄存器?
3.定时/计数器用作定时器时,其计数脉冲由谁提供?
定时时间与哪些因素有关?
4.门控制信号GATE为1时,外部中断引脚
在什么状态下启动计数?
5.当定时器T0用作模式3时,由于TR1位已被T0占用,如何控制定时器T1的开启和关闭?
6.定时/计数器中的工作模式由哪个特殊寄存器设置?
试叙述几种工作模式功能。
7.定时器/计数器的工作模式2有什么特点?
适用于哪些应用场合?
8.时钟频率为12MHz。
要求定时值分别为0.1ms、1ms、10ms,定时/计数器T0分别工作在模式0、模式1、模式2,其定时初值各为多少?
9.当定时器T0用于模式3时,应该如何控制定时器T1的启动和关闭?
10设晶振频率fosc=12MHz,89C51定时器0的模式0、模式1、模式2的最大定时时间分别为多少?
11.已知89C51单片机系统时钟频率为24MHz,请利用定时器T0和P1.2输出矩形脉冲。
矩形波高电平宽度50µ
s,低电平宽度350µ
s。
12.设89C51单片机的晶振频率为6MHz,以计数器T1进行外部事件计数,每计数100个外部事件输入脉冲后,计数器T1转为定时工作方式,定时5ms后,又转为计数方式。
如此周而复始地工作,试编程实现。
13.设89C51单片机的晶振频率为12MHz,要求用定时器/计数器T0产生1ms的定时,试确定计数初值以及TMOD寄存器的内容。
14.定时器/计数器作为外部中断源使用时,需要如何初始化,以T0为例通过程序说明。
习题七
1.并行数据通信与串行数据通信各有什么特点?
分别适用于什么场合?
2.什么是串行异步通信?
它有哪些特征?
3.半双工通信和全双工通信的区别?
4.波特率的含义是什么?
5.某异步通信接口按方式3传送,已知其每分钟传送3600个字符,计算其传送波特率。
6.串行口异步通信时,ASCII码“3”的字符格式(10位)如何?
7.单片机的串行接口由哪些功能部件组成?
各有什么作用?
8.使用哪个特殊功能寄存器来确定串行口的工作方式?
MCS-51单片机串行口有几种工作方式?
各工作方式的波特率如何确定?
9.简述串行接口接收和发送数据的过程。
10.89C51单片机的串行口控制寄存器SCON的SM2,TB8,RB8有何作用?
11.简述利用串行口进行多机通讯的原理。
12.设晶振频率为11.0592MHz,串行口工作在方式1,波特率为4800b/s。
写出用T1作为波特率发生器的方式字并计算T1的计数初值。
13.为什么定时器T1用作串行口波特率发生器时,常选用工作方式2,若已知系统时钟频率和通信的波特率,则如何计算其初值?
14.已知定时器T1设置成方式2,用作波特率发生器,系统时钟频率为24MHz,求可能产生的最高和最低的波特率是多少?
15.设计一个单片机的双机通信系统,串行口工作在方式1,编写通信程序将甲机内部RAM30H~3FH存储区的数据块通过串行口传送到乙机内部RAM40H~4FH存储区中去。
16.利用89C51串行口控制8个发光二极管工作,要求发光二极管每隔1s交替的亮灭,画出电路并编写程序。
习题八
1.简述89C51系列单片机系统扩展时总线形成电路的基本原理,并说明各控制信号的作用。
2.单片机系统的扩展一般包含哪几个方面的内容?
3.系统的三总线,是指哪三总线?
每组总线都是有哪些引脚组成?
4.用P0、P2作为地址线,选11位地址线、13位地址线、16位地址线时,寻址范围各是多少?
5.问什么当P2作为扩展存储器的高8位地址后,不再适宜做通用I/O端口了?
6.解释在89C51系列单片机扩展多个芯片时,可能出现“地址不连续”或一个芯片有多个地址的现象?
7.简述地址译码和线选法的特点及应用场合。
8.8255A共有几种工作方式?
各适用于哪些场合?
9.8255A的A、B口工作于方式0,A口输输出,B口输输入,C口上半部输出,下半部输入,试编写其初始化程序。
10.简述在扩展I/O接口中单片机
和
引脚在控制接口电路中起什么作用?
11.89C51单片机外部程序存储器和数据存储器地址范围都是0000H~FFFFH,在实际使用时如何区分?
12.给89C51单片机扩展一片2716和6116,请画出系统连接图。
13.采用统一编址的方法对89C51单片机进行存储器扩展。
要求用一片2764、一片2864和一片6264,扩展后存储器的地址应连续,试给出电路图及地址分配表。
习题九
1.试说明非编码键盘的工作原理,为何要消除键抖动?
又为何要等待键释放?
2.说明矩阵式键盘按键按下的识别原理。
3.键盘有哪三种工作方式?
说明它们的工作原理和特点。
4.用89C51的P1口作8个按键的独立式按键接口,试画出其中断方式的接口电路及相应的键盘处理程序。
5.设计一个2*2行列式键盘并编写扫描子程序。
6.LED的静态显示方式与动态显示方式有何区别?
各有什么优缺点?
7.设计一个LED显示/键盘电路。
8.A/D转换器的性能指标有哪些?
9.分析A/D转换器产生量化误差的原因,1个8位的A/D转换器,当输入电压为0-5V时,其最大的量化误差是多少?
10.A/D转换器的种类有哪些?
11.用ADC0809的中断方式对8路模拟信号进行循环采集,各采集100个数据分别存入8个数据区中。
试画出应用系统的连接电路,并编写控制程序。
12.对于采用线反转法原理来编写识别某一按键按下并得到其键号的程序
13.DAC0832与8051单片机连接时有哪些控制信号?
其作用是什么?
14.89C51与DAC0832接口时,有哪三种连接方式?
各有什么特点?
各适合在什么场合使用?
15.在一个由89C51单片机与一片DAC0809组成的数据采集系统中,DAC0809的地址是7FF8H-7FFFH,试画出有关逻辑框图,并编写出每隔1min轮流采集一次8个通道的程序。
共采样100次,其采样值存入片外RAM3000H开始的存储单元中。
16.试用89C51单片机、按钮开关和LED显示器等器件,设计一个四路抢答器,请画出硬件电路
17.89C51单片机的P3口接一个共阴极的数码管,P1口接4×
4的键盘,每个键的键值依次是0~F,要求任意按下一个键,则在数码管上显示该键的键值,请编写一段程序完成上述任务。
习题十
1.C51的data、bdata、idata有什么区别?
2.定义变量a、b、c,a为内部RAM的可位寻址区的字符变量;
b为外部数据存储区浮点型变量;
c为指向int型xdata区的指针。
3.用C语言编制将内部RAM中40H单元和50H单元的数据相乘,结果存放到外部RAM1000H和1001H单元的程序。
4.用C语言编制将外部RAM的20H~30H单元的内容传送到内部RAM20H~30H单元。
5.用C语言编制求出内部RAM50H~5FH单元中的最大数,存入内部RAM60H单元中。
6.将下面汇编语言程序转换成等效的C语言程序。
ORG0030H
MOVP1,#04H
MOVR6,#0AH
MOVR0,#30H
CLRP1.0
SETBP1.3
ACALLTLC
SJMP$
TLC:
MOVA,#0
CLRP1.3
MOVR5,#08H
LOP:
MOVC,P1.2
RLCA
SETBP1.0
DJNZR5,LOP
MOV@R0,A
INCR0
DJNZR6,TLC
RET
END
7.用C语言编制实现对外部脉冲计数,当计到100时,从P1.1从引脚输出一个正跳变。
8.设系统时钟为6MHz,用ADC0809设计一个数据采集系统,要求8个通道的地址为7FF8H~7FFFH,每10ms采样一路模拟信号,每路信号采样8次,采集的数据存放于外部RAM2000H开始的单元中,试用C语言编制编制对8个通道采样一遍的程序。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 习题 答案 12
![提示](https://static.bdocx.com/images/bang_tan.gif)