单片机期末复习问题大纲doc.docx
- 文档编号:26303503
- 上传时间:2023-06-17
- 格式:DOCX
- 页数:16
- 大小:162.10KB
单片机期末复习问题大纲doc.docx
《单片机期末复习问题大纲doc.docx》由会员分享,可在线阅读,更多相关《单片机期末复习问题大纲doc.docx(16页珍藏版)》请在冰豆网上搜索。
单片机期末复习问题大纲doc
学习思考题1.MOVC是什么功能?
它采用的寻址方式是什么?
这类指令只限于访问ROM,常用语查表操作和指令跳转。
2•堆栈是什么?
51单片机堆栈一般是如何设置的?
51单片机的堆栈指针为什么一般不设置在07H?
堆栈是一种数据结构,它是只允许在其一端进行数据删除和数据插入操作的线性
表。
通常设置在内部RAM的30H〜7FH之间。
防止数据冲突现象出现。
3、判断下而指令的正误
MOV@R3,20H;@Ri是寄存器间接寻址只有RO,R1才有。
MOVXR2,@DPTR;读外部RAM只能是累加器A
MOVXA,@DPTR;
MOVXA,@A+DPTR;MOVX不用变址寻址
POPACC;
POPA;POP只能用直接RAM地址
PUSHACC;
PUSHA;POP只能用直接RAM地址
POPRO;SFR寄存器(书卩60)可以用名称入栈,通用寄存器只能用直接寻址
POP00H;
PUSHR2;同上
PUSH02H;
JZA,rel;判零转移指令的判断对象是A,无需再列明。
JZrel;
RLCB;只能对累加器A进行
MULRO,R1:
MUL指令只对A和B寄存器操作(P89)
MOVA,@R7;寄存器间接寻址只能是@对
MOVA,#100011;累加器A是八位的
MOVC@A+DPTR,A;不能以变址地址为目的操作数
MOVCA,@A+DPTR;
MOVXA,@200011;读外部RAM不能对直接地址操作
MOVX@3011,A;直接地址不能进行@操作
MOVC@DPTR,A;不能反过来
MOVCA,@DPTR必须加I:
A使得搜寻地址为DPTR-A?
4、下面是采用外部中断源0实验的内容,请回答相关问题。
ORGOOOOH
SJMPMAIN
ORG0003H;
LJMPINTERO
MAIN:
JBP1.3,MATN1;判断是屯平触发还是边沿触发
CLRTOON.0TCOX.0是设置触发方式,0为低电平触发,1为边沿触发(P126);TCOND7-DO:
TF1(定时/计数器中断中请标志位)-X-TFO-X-IE1-IT1(外部中断1触发方式选择位)-IEO-ITO
SJMPMAIN2
MATN1:
SETBTCON.0;中断初始化
MAIN2:
ORLIE,#81HIE是中断开关控制
(P128);D7-DO:
EA-X-X-ES-ET1-EX1-ETO-EXO
ORLIP,#02HIP是中断优先级设置(P129);D7-DO:
X-X-X-PS(串联中
断)-PTl-PXl-PTO-PXO
SJMPMATN
INTERO:
CLREA;中断处理程序
SETBPl.2
LCALLDELY
CLRPl.2
LCALLDELY
SETBEA
RETI
DELY:
MOVR6,#00H;延时
DELY1:
MOVR7,#OOH
DELY2:
DJNZR7,DELY2
DJNZR6,DELY1
RET
END
中断入口地址是多少?
0003H
怎么开关中断?
对TE寄存器进行赋值
怎么判断和设置两种中断触发方式?
TCOX.0是设置触发方式,当该位是0为低电平触发,1为下降沿触发
中断返回RETI与调用子程序返回RET有什么区别?
基木功能相同,但是RETI还要清除80C51单片机内部的中断优先级触发器,使得已申请的同级和较低级中断申请可以得到响应(P96)
要将外部中断0改为1要怎么改?
地址入口改为0013H,IE赋值为84H
延时程序的时间怎么计算?
先看指令的运行次数,再石指令需要的周期和周期的时间,然后再把每条指令的时间算出再相加。
中断标志位是什么?
TCON.1和TC0U3分别是IE0和IE1
怎么清零的?
中断响应后由硬件自动清零,在查询方式下由软件清零
5.起止范围是2000H〜3FFFH的存储单元数量是多少?
3FFF-2000=1FFF+1=2000H=8192个
6.编程:
用定时计数器0方式1,中断方式,实现对外部脉冲的计数,当计满10个脉冲就将P1」输出信号取反1次。
ORG0000H
LJMPMAIN
ORG000BH
LJMPINTO
ORG0300H
MAIN:
MOVTMOD,#05H;TMOD设置说明PI36);D7-D0:
GAME-C/T-M1・MO-GATE-C/T-M1-MO
(高四位是定时/计数器1,低四位是定吋/计数器0,M1M0模式,C/T:
该位=1选择外部时钟,计数器模式,二0选择内部时钟,定时模式)
MOV
IE,#82H
MOV
THO,#OFFH
MOV
TL0,#0F6H
SETB
TRO
LOOP:
SJMP
LOOP
INTO:
CPL
Pl.l
MOV
TH(),#0FFH
MOV
TL0,#0F6H
RETI
END
7、回答问题
TT2:
MOVDPTR,#TAB
;置共阴字段码表首地址
MOVRO,#30H
;置显示数据区首址
CGLP:
MOVA,@R0
;取显示数字
MOVCA,©A+DPTR
;读相应显示字段码
MOV©RO,A
;存显示字段码
INCRO
;指向下一显示数字
CJNERO,#35H,CGLP
;判5个显示数字转换完否?
未完继续
RET
;转换完毕,结束
TAB:
DB3FH,06H,5BH,4FH,66H;共阴字段码表
DB6DH,7DH,07H,7FH,6FH
已知CJNERO,#35H,CGLP是3字节指令,其首地址为2000H,那么RET指令、
标号TAB、数据06H分别对应的地址是多少?
RET:
2003H、TAB:
2004H、06H:
2005
如果(30H)=2,那么执行MOVDPTR,#TAB,MOVCA,0A+DPTR两条指令的结果
分别是多少?
DPTR=2004H,A=5BH
&什么是直接寻址(MOVA,20H)>变址寻址(MOVCA,@A+DPTR)、相对寻址(目的地址二当前PC值+指令字节数+21)?
P77
9.什么是待机方式?
时钟如何供给?
如何脱离待机方式?
P72
10.说明动态和静态显示的原理?
P212/P215
11.51单片机I/O口地址与外部RAM的地址是如何编址的?
12.说明行列式键盘的扫描方法?
P230例8.16
13.It总线数据格式是怎样的?
数据传送以数据帧为单位,每帧含1字节即8位数据和1个应答信号位,共9位。
帧内字节的传送顺序是先最高位(MSB),依次到最低位(LSB),传送数据帧的数量没有限制,直到停止信号为止。
14.存贮器的译码是什么?
低位地址与高位地址各完成什么选择?
15.说明单片机复位后各特殊功能寄存器的值,及低128字节RAM的结果变化情
况?
寄存器
值
寄存器
值
PC
0000H
ACC
OOH
B
00H
PSW
OOH
SP
0711
DPTR
oooon
P0〜P3
OFFII
IP
xxxooooo
IE
OXXOOOOO
TMOD
OOH
TCON
00H
TLO、THO
OOH
TL1、TH1
00H
SCON
OOH
SBUF
不定
PCON
oxxxoooo
低128字节RAM
00H(栈底07H)
16.P0-P3的功能是什么?
有什么要注意的?
P0口可以作为输入/输出口,在实际应用中它通常作为地址/数据复用总线。
P1口是一个准双向口,通常作为T/0口使用。
(同P0口一样,当作输入时,必须先向对应的锁存器写“1”,使场效应管截止。
)
卩2口为一个准双向口,其位结构与卩0口相似。
当系统外接片外存储器时,它输出高8位地址。
17、说明8155和8255的基本功能?
8155扩展单片机的端口。
芯片引脚:
IO/M=1选择的是81C55的端口操作,二0选择的是81C55内部数据存储器操作。
其命令字定义:
D7-D0:
TM2-TM1-1EB-1EA-PC2-PC1-PB-PA
PA:
=1为输出口,二0为输入口
PB:
=1为输出口,二0为输入口
I/O及引脚
D3D2=00
D3D2-11
D3D2=01
D3D2=10
A
基本I/O口
基本T/O口
选通I/O口
选通I/O口
B
基本I/O口
基本I/O口
基本I/O口
选通I/O口
PC.0
输入
输岀
INTRA
INTRA
PC.1
输入
输出
BFA
BFA
PC.2
输入
输出
/STBa
/STBa
PC.3
输入
输出
输出
INTRB
PC.4
输入
输出
输出
BFB
PC.5
输入
输出
输出
/STBb
IEA、IEB分别为PA、PB口的中断允许控制位,高电平表示允许中断。
TM2TM1
操作
00
空操作
01
立即停止定时计数器的计数
10
待定时计数器计数溢出时停止计数
11
启动定时计数器开始计数
18.单片机应用设计中提高系统可靠性的措施有哪些?
P297-304
19、Fc总线的SDA和SCL的作用?
SDA传送数据,SCL提供数据传送的位同步信号。
其每帧的9位是怎么划分的?
8位数据和1个应答信号位通信怎样表示
Fc总线的起始和停止?
在SCL为高期间,SDA出现下降沿,表明数据传送开
始。
在SCL为高期间,SDA出现上升沿,表明数据传送停止。
20.51单片机输入输出指令有哪些?
输入是读端口状态,输出时写端口MOVA,P0读端口
MOVP0,A写端口21•读锁存器和读引脚是怎回事?
读引脚的意思就是直接读P0外部引脚的电位,而读端口(锁存器)读的是内部与数据总线链接的锁存器的电位。
读引脚就是读取P0口状态。
读引脚时要注意:
先要给p0写FFH,使它的场效应管T2和地断开。
因为P0口的场效应管T2—端接地,一端与外部引脚相连,由P0的锁存器控制,当给锁存器写1时,它和地断开,写0时和地相连,所以写零吋读到的总是低电平。
读引脚:
MOVA,Pl直接读I/O口的数据。
读锁存:
ORLPl,#OFH.这是”读改写”指令。
22.51单片机的伪指令主要有哪些?
如何使用?
起始伪指令ORG结束伪指令END赋值伪指令EQU定义字节伪指令DB定义字伪指令DW
将…个位地址赋给指定的符号名BIT如EQU
将一个内部RAM的地址赋给指定的符号名DATA将一个外部RAM的地址赋给指定的符号名XDATA将一个间接寻址的内部RAM地址赋给指定的符号名将程序存储器ROM地址赋给指定的符号名CODE23、80C51单片机有几种串行通信方式,分别是多少位,什么是波特率,TI\R
I标志的作用,怎么对它们清零?
说明多机通信的过程?
工作方式0:
8位同步移位寄存器输入/输出方式,波特率間定为fosc/12o工作方式1:
10位异步通信方式,RxD为接收端,TxD为发送端,波特率由SM0D和定时/计数器决定。
一帧信息包括1个起始位0、8个数据位和1个停止位1。
每送出/接受8位数据TI/RI自动置1,需要用软件清零。
工作时,自动添加一个起始位和一个停止位。
工作方式2和工作方式3:
11位异步接受/发送方式,1位起始位,9位数据位,1位停止位。
方式2波特率固定为fosc*2SM0764,方式3波特率为(2SMOD/32)*T1°数据位第9位为TB8/RB8,用于奇偶校验。
TB8-0,表示发送的是数据,二1表示发送的是地址。
波特率是指每秒传送信号的数量,单位为氏
TI:
发送中断标志位,用于指示一帧信息发送是否完成,可位寻址。
在方式0下,发送完第8位数据后硬件自动置1,在其他方式下,开始发送停止位时硬件置1.TI在发送数据前由软件清零。
RI:
接收中断标志位,用于指示一帧信息接收是否完成,可位寻址。
在方式0下,接收完第8位数据后硬件自动置1,在其他方式下,接收停止位的中间时刻硬件置1。
由软件清零。
多机通信过程:
1•使所有的从机的SM2位置1,以便接收主机发來的地址。
2.主机发出一帧包含8位从机地址,第9位为1的信息,然后进入接收装态。
3.所有从机接收该帧信息后与本机地址相比较,相符时执行CLRSM2指令,不符时保持SM2=1的状态。
4•主机收到从机应答信号后,给从机发送控制指令和数据(数据第9位为0)
5•从机正确接收主机的数据后,发送应答信号给主机,将SM1置位,通信结束。
24、中断优先权有什么作用?
产生中断嵌套
(自然优先级顺序(高一低):
外部中断0、定时/计数器0、外部中断1、定时/计数器1、串行中断;高级中断可以打断低级中断,同级不能打断同级,低级不能打断高级)
25、采用定吋器编写一个定时20MS的程序,要求有TM0D的分析设计过程和定吋器的初值计算过程,采用中断方式。
T0的初值=216-foscXt/12二65536-12*10"出*20*10匸/12二45536二B1E0
因为初值为45536,所以只能用方式1,且是定时模式,所以TMOD为01H。
ORG0000H
L.JMPMAIN
ORGOOOBH
MOVTHO,#OB1H
MOVTLO,#OEOH
MOVTM0D,#01H(D3-C/T:
为1计数,为0定时)
MOVTHO,#OB1H
MOVTLO,#OEOH
SETBTRO
SJMP$
END
26.复位时系统中断IE、IP默认状态是什么?
OXXOOOOO、XXXOOOOO
27、采用定时器对外部信号计数150次怎么编程实现,要求有TMOD的分析设计过程和定时器的初值计算过程。
因为150次小于256,所以4种模式都可,且是计数模式,用模式2,所以TMOD为06H
T0的初值=256-150=106=6A
ORG0000H
L.JMPMAIN
ORGOOOBH
MAIN:
MOVIE,#82H
MOVTMOD,#06H(D3-C/T:
为1计数,为0定时)
MOVTHO,#6AH
MOVTLO,#6AII
SETBTRO
SJMP$
EXD
28.栈顶指针始终指向哪里?
栈顶元素下一位置
29、根据课本的9.5图计算DAC0832的地址,编程生成三角波?
ORG0000H
AJMPMAIN
ORG01OOH
MAIN:
MOVDPTR,#7FFFH
MOVA,#0
MOVRl,#0
UP:
MOVX©DPTR,A
ADDA,#4
INCR1
NOP
NOP
NOP
NOP
C.TNERl,#51,UP
DOWX:
CLRC
SUBBA,#4
MOVX©DPTR,A
INCR1
NOP
NOP
NOP
CJNERl,#102,DOWN
SJMPUP
END
30.DPTR指针作为存储器地址指针,可以在ROM和RAM区域读数吗?
可以?
31、根据课本图9.11计算各模拟量的地址,编程将温度信号进行采样,并将采样结果送到R0保存。
ORG0000H
A.JMPMATN
ORG0003H
AJMPINT
ORG0100H
INT:
MOVXA,@DPTR
MOV@R0,A
INCRO
INCDPTR
DJNZRl,READ
MOVDPTR,#800011
MOVRO,#30H
MOVRl,#03H
READ:
MOVX@DPTR,A
RETI
ORG0200II
MAIN:
MOVRO,#30H
MOVRl,#03H
MOVDPTR,#8000H
SETBITO
SETBEXO
SETBEA
MOVX@DPTR,A
SJMP$
END
32.BCD码的调整规则是什么?
首先BCD码是用四位二进制数来表示一个十进制数,所以BCD调整指令是进行二者之间的转换的!
DAA:
加法调整指令,当加法中结果>9或者有进位时,就要加上四位二进制巧十进制之间的差值,即6,如:
34II+27H,按十六进制结果就为:
5BII,但这不是
BCD码,故需要调整,由于后面四位大于9故要加6补偿,从而产生进位,即5BH+06H二61H,相当于是计算十进制的34+27二61;再有:
38H+29H后面四位08H+09H二11H,即AF二1,也就是说产生了进位,由于这是十六进制,直接进位会出现一个6的差值,故加6补偿,则有:
38H+29H=61H,61H+06H二67H,为十进制正确结果;高四位道理一样;
33、加法和减法指令是怎么影响标志位的,DAA指令的作用是什么?
DAA对A中的数进行BCD码处理。
32题。
34、80C51的各个中断源是如何撤销中断中请的?
在外部中断设为下降沿触发时,INTX引脚的下降沿设置该位为1,中断被响应后,
该位自动清零;
在外部中断设为低电平触发时,该位的值与IVTX引脚的电平相反。
定时/计数器中断被响应后由单片机自动对它清零,查询方式下,只能由软件清零。
串口中断只能由软件清零。
35、编程将累加器A的8位数从高位开始每2位分别取反、设置为1、设置为0和保持不变。
ORG0000H
LJMPMAIN
ORG01OOH
MAIN:
XRLA,#COH
ORLA,#30H
ANLA,#F3H
END
37、存储器系统设计与操作
下图是木题目提供的芯片:
(1)将它们全用起來,设计一个8031单片机系统。
(2)指出各存储器的地址范围,要求2764的地址中包含1FFFII这个地址。
(3)编写将程序存储器中2000H的内容读出到寄存器A中的程序段。
(4)编写将数据存储器中0100H的内容读出到寄存器A中的程序段。
(3)MOVDPTR,#2000H
MOVCA,@DPTR
(4)MOVDPTR,#0100H
MOVXA,@DPTR
38.80C51系列指的是什么?
80C51是MCS-51系列中采用CHMOS工艺的一个典型品种;各厂商以80C51为基核开发出的CHMOS工艺单片机产品统称为80C51系列。
39.键盘硬件消抖常见的方式有哪些?
加入触发器电路、采用滤波电路。
键盘软件消抖如何实现?
调用一个延时10ms的子程序,延时之后再来确认该键是否确实按下。
40.中断嵌套是什么?
处理器正在执行一个中断服务子程序,这时响应其他中断,就会出现中断嵌套。
嵌套层数太多有什么不好?
一方而由于每次嵌套需要保护断点,保护现场,多次嵌套会导致堆栈生长得太大;
另一方面会导致最早响应的中断服务子程序等待太久才能执行完成,削弱了中断处理及时快速性的优势。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 期末 复习 问题 大纲 doc