单片机原理及应用复习大纲.docx

上传人:b****4 文档编号:11950278 上传时间:2023-04-16 格式:DOCX 页数:26 大小:123.11KB
下载 相关 举报
单片机原理及应用复习大纲.docx_第1页
第1页 / 共26页
单片机原理及应用复习大纲.docx_第2页
第2页 / 共26页
单片机原理及应用复习大纲.docx_第3页
第3页 / 共26页
单片机原理及应用复习大纲.docx_第4页
第4页 / 共26页
单片机原理及应用复习大纲.docx_第5页
第5页 / 共26页
点击查看更多>>
下载资源
资源描述

单片机原理及应用复习大纲.docx

《单片机原理及应用复习大纲.docx》由会员分享,可在线阅读,更多相关《单片机原理及应用复习大纲.docx(26页珍藏版)》请在冰豆网上搜索。

单片机原理及应用复习大纲.docx

单片机原理及应用复习大纲

单片机原理及应用复习大纲

一、填空(20分)

1、单片机就是一个在其中集成了中央处理器、存储器、输入输出接口的,具有计算机基本属性的大规模集成电路芯片。

2、为了强调单片机的控制属性,在国际上,多把单片机称为微控制器其英文缩写为MCU。

在使用时,通常处于测控系统的核心地位,并嵌入其中,所以也称其为嵌入式微控制器,其英文缩写为EMCU。

3、通用型单片机把所有可开发的内部资源全部提供给用户。

用户可以以此为核心,根据需要,再配以外部接口电路及外围设备,来开发满足各种不同需要的测控系统。

4、专用型单片机,是为特定产品或某种测控应用而专门设计的。

其系统结构最简,性价比最高。

5、单片机具有小巧灵活、成本低、易于产品化。

能够方便地组装成各种智能测控设备及各种智能仪器仪表。

6、单片机可靠性好、适应温度范围宽,具有适应恶劣环境的能力。

7、单片机易扩展,很容易构成各种规模的应用系统。

利用通信接口可以方便地多机系统和分布式控制系统。

8、单片机的发展趋势是,CPU处理能力不断增强,内部存储器容量不断增大,片内I/O驱动能力及种类不断增加,功耗不断降低以及外围电路的内装化。

9、单片机正在向多功能、高性能、高速度、低电压低功耗、低价格、外围电路内装化及片内存储器不断增大方向发展。

10、MCS-51单片机的基本系列,包括8031、8051和8751

11、嵌入式处理器按体系结构主要分为:

嵌入式微控制器,嵌入式信号处理器与嵌入式微处理器。

12、CPU中的PC被称为程序计数器,是用来存放将要执行的下一条指令的地址。

当计算机由此取出指令字节后,PC会自动加1,所以PC的内容始终是指向下一条指令的地址。

通常情况下程序是顺序执行的。

13、PSW中的OV是溢出标志。

用来表示符号数运算结果是否溢出。

=1表示结果溢出。

=0结果无溢出。

如果两个正数相加结果为负OV=1。

如果两个负数相加结果为正OV=1。

异号数相加OV=0。

14、PSW中的CY是进位标志。

在执行加法指令后,是用来表示位7是否有进位。

=1,表示有进位。

=0,表示没有进位。

15、PSW中的OV、CY、AC与P标志位是由硬件自动置位的。

F0是用户自定义标志,只能通过软件置位。

16、PSW称为程序状态字,其中P用来表示累加器A中的奇偶性的。

若其中内容为53H,P=0。

17、MCS-51的内部数据存储器的00~1FH单元,是4组通用工作寄存器区。

每组都有8个寄存器,分别是R0~R7。

18、PSW的RS1与RS0是用来选择R0~R7的4个工作寄存器组的,=11时的R7位于片内数据存储器的17H单元;=11时的R7位于片内数据存储器的1FH单元。

19、堆栈在子程序设计中,可以用来保护断点与现场,以及参数传递。

20、机器周期是CPU完成一个基本操作所需要的时间,指令周期是执行一条指令所需要的时间。

21、MCS-51单片机的P0与P2口,除了可以作为普通的I/O使用以外,还可以作为地址与数据总线使用。

P0~P3,可以并行的操作,也可按位进行操作。

22、当系统出现异常,可以通过单片机的上电复位或者手动复位操作来重新启动系统。

23、MCS-51单片机的直接寻址方式只限于内部数据存储器与特殊功能寄存器。

基址加变址寻址方式用于读出程序存储器的数据。

24、采用中断技术完全消除了CPU在查询中的等待现象,大大提高了CPU的工作效率。

25、IE是MCS-51的中断允许寄存器。

可以通过位寻址方式,设置EX0、EX1、ET0、ET1、ES,对各中断源实现允许或者禁止其中断。

可以通过对EA位的设置实现系统的开中断与关中断。

26、中断向量是中断处理程序的特定入口。

MCS-51单片机是在硬件控制下,自动产生“LCALL向量地址”指令进入中断服务程序。

其中INT1的向量地址是0013H。

27、MCS-51的定时/计数器的计数工作模式是对外来脉冲进行计数。

定时工作模式的计数脉冲是来自内部。

28、

是51单片机程序存储器允许输出控制端。

此引脚的下降沿作为读外部程序存储器的选通信号。

因此,此信号应连接到外部程序存储器的

端。

以区别对外部数据存储器的读操作。

29、

是51单片机作为外部数据存储器的读写控制,用以区别同一总线上的程序存储器。

30、ALE信号称之为地址锁存矢能。

用以锁存P0口发出的地址低8位,解决了P0口的数据总线与地址总线低8位的分时复用问题。

二、四选一(每题2分,共10分)

1、寄存器间接寻址是指寄存器中的内容,是操作数的地址。

2、访问外部数据存储器可用指令:

MOVX

3、访问程序存储器可用指令:

MOVC

4、P0口作为输出端口时必须外接上拉电阻。

5、当系统时钟为12MHz时,方式0的最长定时时间是8196μS

6、如果系统时钟是6MHz,希望定时器定时时间为100mS,应该选择定时/计数器工作在方式1定时模式。

7、MCS-51单片机系统时钟fosc=6MHz时,一个机器周期为2μS。

8、如果需要单片机一个机器周期为3μS,系统时钟应该是4MHz。

9、立即寻址方式,操作数是在指令中。

(包括其它寻址方式)

10、指令“MOVA,P1”的助记符格式,源操作数是直接寻址方式。

11、P1口作为输入端口时其锁存器应该先为1

12、如果想将P1.0取反,其它位不变可用指令XRLP1,#B

13、查表指令“MOVCA,@A+PC”,所访问的数据表是在程序存储器中。

14、系统复位后,I/O口P0~P3为全1。

15、指令寄存器的内容是计算机当前正在执行的指令码

16、指令译码器向CPU解释当前指令功能。

17、从电路图看,区别程序存储器与数据存储器最简单的方法是看其读写控制信号是采用的PSEN还是WR/RD。

18、程序中的标号字段,用来指出其后的指令或数据在程序存储器中的位置。

19、8031没有内部程序存储器。

只有128字节的内部数据存储器。

20、外部程序存储器的只能采用译码法,不能采用线选法。

21、指令“MOVP1,A”是一条输出指令。

22、指令“MOVC,P1.5”是一条输入指令。

23、对程序存储器中的数据读操作的指令只能用MOVC指令。

24、51单片机中,所有的中断请求信号都可以标记在TCON与SCON寄存器中。

三、判断,正确打✓,错误打✗。

(10分)

1、R0~R7是特殊功能寄存器。

2、MOVA,@R2。

3、MOVAH,R6。

4、P0~P3只能字节操作,不能按位操作。

5、MCS-51中的程序存储器只能存放程序,不能存放数据。

6、执行PUSH指令是先SP+1,再数据进栈。

7、伪指令在汇编时也会产生机器代码。

8、INT0的中断请求标志不能够自动撤销。

9、MCS-51只有两个中断优先级。

10、如果要单片机重新启动,按一下复位键即可。

11、A不是特殊功能寄存器。

12、指令“MOVA,[42H]”是正确的。

13、指令“MOV@R2,A”是正确的。

14、P0~P3也可以按位操作。

15、单字节减法,直接使用SUBB指令即可。

16、执行PUSH指令是访问的内部数据存储器。

17、指令“ADDR1,A”是正确的。

18、LJMP指令执行的是相对转移。

19、MCS-51正在服务一个中断时,不允许同级中断。

20、外部信号可以通过INT0端口控制T0计数。

21、扩展I/O口占用片外数据存储器的地址资源。

22、访问片内I/O与访问片内数据存储器一样,都是用MOV指令。

23、串行口的中断请求标志不能够自动撤销。

24、当GATE=0时,TR0可以控制定时/计数器0启停。

25、重新启动单片机,也可以按一下复位键即可。

26、AT89S51是16位单片机✗

27、单片机扫描键盘采用查询方式与中断方式的工作效率相同。

28、51单片机的堆栈是在内部数据存储器中。

29、SP中的内容等于栈顶地址的内容。

30、51单片机的一个机器周期等于1µS。

31、单片机的主频越高其速度越快。

32、Rn可以作为间接寻址寄存器。

33、同级别的中断请求按时间先后顺序响应。

34、同级中断不能嵌套。

35、中断标志寄存器是专门用来记录中断请求信号的。

36、89S51的I/O是与数据存储器统一编址的。

37、51单片机串口工作在方式0时,TXD引脚是同步时钟的输出。

38、51单片机串口工作在方式2时,其波特率与T1有关。

39、由多个芯片构成的外部数据存储器中,存储单元地址由芯片地址与片内地址构成。

40、线选法电路简单,片外程序存储器扩展地址分配也可以采用线选法。

四、简答(16分)

1、指出下列哪些指令能够访问外部数据存储器,并写出访问程序。

a)MOVCA,@A+DPTR

b)MOVA,direct

c)MOVCA,@A+DPTR

d)MOV@R1,direct

e)MOVXA,@DPTR

f)MOVdirect1,direct2

g)MOVX@R0,A

答、e)、

MOVDPTR,#A15_0;首先将外部数据存储器地址送入DPTR

MOVXA,@DPTR;再执行该指令

g)、

MOVA,#data

MOVR0,#A7_0;地址低8位送入R0

MOVP2,#A15_8;将地址高8位送入P2口

MOVX@R0,A;再执行该指令

2、简述如何利用T0扩展一个外部中断源?

答、

1)首先让定时/计数器0工作在计数方式下。

GATE=0,

2)设置T0计数器为全1,填满计数器。

3)设置ET0=1,允许T0中断。

TR0=1,启动计数器。

4)将扩展中断处理程序,放在T0的中断服务程序中。

3、简述MCS-51单片机程序的第一条指令应该放在程序存储器的什么位置上?

为什么?

如果系统使用了中断,该存储单元应该放什么指令?

答、

1)MCS-51单片机程序的第一条指令应该放在程序存储器的0000H单元处。

2)因为系统初始化时,(PC)=0000H。

3)如果系统使用了中断,其后的存储单元就是中断的入口处。

所以,通常将无条件转移指令放在0000H单元处,主程序放在中断入口地址之后。

系统启动时,由0000H单元转移到主程序。

从而避免主程序覆盖中断入口的预留单元。

4、简述MCS-51的程序存储器的片内4KB与片外的4KB虽然会重叠(000H~FFFH),但为什么又不会发生访问冲突呢?

答、MCS-51有一个EA控制端口,在使用时此端口非1则0。

=0时,单片机访问程序存储器的片外的4KB。

=1时,单片机访问程序存储器的片内的4KB。

所以不会发生访问冲突。

5、已知寄存器A中内容是一个待显示的个位数,在其后加上小数点,已知小数点dp是在编码的第7位上。

如果数码管是共阴极,程序如何写?

共阳极呢?

(2分)

答、共阴极:

ORLA,#80H

共阳极:

ANLA,#7FH

6、已知ext1~ext4是扩展的4个外部中断源的请求信号。

都是低有效。

简述图示的中断扩展电路的工作原理。

(4分)

答、

由图可知,4个扩展中断源是通过INT0向CPU发中断请求的。

ext1~ext4只要有一个请求(为低)有效,信号就可以通过INT0发给CPU。

CPU如果响应中断,就会进入INT0的中断服务程序。

在INT0中断服务程序中,CPU由软件通过P1.0~P1.3识别ext1~ext4中那一个发出了中断请求。

CPU再转移到相应的程序去执行。

7、7段数码管与单片机接口有两种接口方式,一个是静态工作方式;一个是动态工作方式。

请简述它们各自的特点。

(5分)

答、

静态工作方式:

每个LED有一个锁存器。

有一个I/O地址。

锁存器的Q端连接各自的数码管。

所有锁存器的D端连接在一起,到数据总线上。

各个数码管的公共端连在一起。

共阳极接VCC,共阴极接GND。

电路较复杂,程序控制简单。

动态工作方式:

所有LED共用一个数据锁存器,所有LED的数据端口与这个锁存器的Q端连接。

使用一个I/O地址。

公共端,作为显示位选择控制端,采用分(定)时轮流循环显示的控制。

电路简单。

程序较复杂。

8、简述MCS-51的数据存储器的片内128B与片外的128B虽然会重叠(00H~7FH),但为什么又不会发生访问冲突呢?

(5分)

答、MCS-51使用了两种不同的指令,访问片内的数据存储器使用的是MOV指令。

访问片外的数据存储器使用的是MOVX指令。

所以不会发生访问冲突。

9、MCS-51是如何解决扩展程序存储器与扩展的数据存储器的地址冲突的?

答、将读写控制信号分开,PSEN,控制外部程序存储器读操作。

WR、RD,控制外部数据存储器读写操作。

而这两种控制信号不能同时有效。

10、简述上电复位与手动复位有什么异同?

相同之处,都可以重新启动系统。

不同之处,上电复位是通过打开电源开关启动系统,存储器中的所有已处理信息丢失。

手动复位,是不开关电源的复位,是通过按复位键来重新启动系统。

由于未断电,所以存储器中的已处理信息不会丢失。

11、分析下图所示的P1口电路,如果锁存器=0,P1口作为输入时,会带来什么影响?

为什么?

为了保证P1口正常输入,应该怎么处理?

答、当锁存器=0时,由于

=1。

与P1口连接的三极管导通,P1.x在内部被接地。

如果P1口的引脚上有高电平输入,信号会被钳到低电平上,高不起来。

外部电路可能会因此被烧坏。

为了保证P1口正常输入,必须首先保证锁存器=1时,这时

=0。

与P1口连接的三极管截止,这样输出电路就不会干扰P1口的输入了。

12、PSW中有那些状态标志?

描述其含义。

你在程序设计中,什么情况下需要关注状态标志的变化?

答、

C(PSW.7):

C=1,最高位有进位或借位。

AC(PSW.6):

AC=1,第4位有进位或借位。

OV(PSW.2):

符号数运算时的溢出标志。

=1,溢出。

P(PSW.0):

奇偶标志。

ACC中1的个数为奇数,P=1。

F0(PSW.5):

用户标志。

程序是根据这些状态标志的变化来判断与分析处理结果的。

13、分别指出,你在程序设计中,什么情况下需要计算指令的字节数?

指令的周期数?

答、在基于PC的查表程序设计时,在计算MOVC指令与表的距离时,需要计算这段程序的指令字节数。

在设计实时性要求高的程序(如,延时子程序)时需要计算指令的周期数。

14、简述中断服务子程序与普通子程序有什么相同与不同之处?

答、相同之处:

同是一个具有特定功能的,独立的程序段。

不同之处是普通子程序的进入与返回都是指令控制。

中断服务子程序则是由中断请求信号发起,硬件生成LCALL指令,由中断向量引入子程序。

执行完后通过RETI指令返回。

15、当fosc=4MHz时,定时/计数器的4种工作方式的最大定时时间各是多少?

∴当fosc=4MHz时,

∵TM=3µS

方式0:

最大定时时间=

方式1:

最大定时时间=

方式2/3:

最大定时时间=

16、当fosc=4MHz时,计数器对外计数信号频率fx的最大限制是多少?

答、计数器对外计数信号要求是,计数周期=2个机器周期,即,

所以,fx≤4MHz÷24≈167KHz

17、什么是线选法?

具有那些特点?

是否适用于程序存储器的地址分配?

为什么?

答、将地址总线分配给片内地址后,线选法是将剩余的高位地址线再分别分配到各存储器的

引脚上。

其特点是:

电路简单,地址不连续。

特别是芯片地址不能同时为0。

所以此法不适用于程序存储器的地址分配。

因为,51单片机的程序必须从0000H单元开始运行程序。

18、一个并行的输出接口最基本的特性是什么?

如何实现?

一个并行的输入接口呢?

答、一个并行的输出接口除了具有一定的驱动能力外,最基本的特性是具有保持功能。

当进行一次输出后,输出电平应该保持不变。

直到被下次输出所替代。

一个最简单的输出接口由D触发器构成。

一个并行的输入接口应该具有“高阻状态”,平时外设与系统是处于隔离的状态。

只有的CPU执行输入指令时,外设才被连接到系统中来。

一个最简单的输入接口由三态门构成。

五、阅读程序(24分)

1、阅读程序:

(4分)

complement:

JNBACC.7,return

XRLA,#B

ADDA,#1

return:

RET

⑴.分别将+7与-7的原码写出,再分别代入A执行上述程序后A的结果是多少?

分别写出。

[+7]原=B[-7]原=B

(A)=B(A)=B

⑵.分析A与原码是什么关系?

程序实现了什么功能?

A是其补吗,这是一个求补码的程序。

2、阅读程序:

(4分)

ORG2000H

TAB:

DB30H,40H,24,"C","B"

DW1246H,7BH,10

答、

地址

内容

1000H

30H

1001H

40H

1002H

18H

1003H

43H

1004H

42H

1005H

12H

1006H

46H

1007H

00H

1008H

7BH

1009H

00H

100AH

0AH

3、已知系统时钟=3MHz,已知程序段:

main:

……

MOVTMOD,#02H

MOVTL0,#156

MOVTH0,#156

……

试问,定时/计数器0的计数时钟周期是多少?

工作方式是什么?

定时时间为多少?

要求写出计算过程。

答、程序对定时/计数器0计数时钟周期是4μS。

工作方式为方式2,定时。

定时时间为400μS。

计算过程如下:

T0工作在方式2下,计数器是TL0,为8位。

TH0是预置数寄存器。

由程序可知其预置数是156,所以:

计数值=28-156=100

所以:

定时时间=4µS×100=400μS

4、已知8051单片机的P1口分别反向连接了LED0~LED7,8个LED发光二极管。

读下列程序,回答问题。

MOVA,#00H

MOVP1,A……①

MOVA,#0FEH

MOVP1,A……②

RLA

MOVP1,A……③

AJMP$

试问:

⑴、要使LED发光P1口应该输出什么样的电平信号?

答、P1口应该输出低电平,LED才能发光。

⑵、程序执行到①所示指令后,P1=?

,LED7~0如何显示?

(1分)

答、P1=00H,LED7~0全亮。

⑶、程序进入②所示指令后,P1=?

,LED7~0如何显示?

(3分)

答、P1=FEH,LED7~0的最低(LED0)位亮,其余灭。

⑷、程序进入③所示指令后,P1=?

,LED7~0如何显示?

(4分)

答、LED1亮,其余熄灭。

⑸、程序全速运行你将看到什么结果?

(2分)

答、看到“⑷”所示结果。

5、已知,下列程序执行前,(R0)=52H,读下列程序段,填空,回答问题。

CLRC

MOVA,R0

SUBBA,R0

答、该指令执行后,(R0)=_52H_,(A)=_0_。

P=_0_,CY=_0_,AC=_0_,OV=_0_。

6、已知系统时钟=12MHz,已知程序段:

delay:

MOVR7,#20

loop2:

MOVR6,#123

NOP

loop1:

DJNZR6,loop1

DJNZR7,loop2

试计算该子程序延时了多少时间。

写出中间过程。

(计算过程3分,共6分)

解、

机器周期计算:

loop1=(2×123),loop2=(loop1+2+1+1)×20=5000

已知系统时钟=12MHz,所以有

1μS×5000=5mS

答、该子程序延时了5mS。

7、硬件电路如下图所示,读下列程序,回答问题。

(共9分)

MOVP1,#0FFH……①

JBP2.0,$……②

CLRP1.0……③

JBP2.1,$

CLRP1.1

JBP2.2,$

CLRP1.2

JBP2.3,$

CLRP1.3

AJMP$

试问:

⑴、要使LED发光P1口应该输出什么样的电平信号?

答、P1口应该输出低电平,LED才能发光。

⑵、程序执行到①所示指令后,P1=?

,LED4~1如何显示?

如果这时按下K2,程序如何反应?

答、P1=FFH,LED4~1全灭。

如果这时按下K2,程序仍然停留在②处。

⑶、如果按下的是K4,那个LED亮?

那些熄灭?

程序停留在什么地方?

答、LED1亮,其余灭。

程序停留在③处。

⑷、程序停留在最后一条指令后,LED如何显示?

这些键都按过吗?

答、由程序可知,当按K4键,LED0点亮。

按K3键,LED2点亮。

按K2键,LED3点亮。

按K3键,LED4点亮。

所以LED1~LED4全亮,说明每个按键都按过。

8、已知78H、77H与76H与75H存储单元,存放了两个16位二进制数。

阅读下列程序,说明程序功能。

MOVA,78H

CJNEA,76H,differ

MOVA,77H

CJNEA,75H,differ

SETBF0

JAMPexit

differ:

CLRF0

exit:

RET

解、

⑴、程序功能是,比较这两个16位二进制数是否相等。

相等,F0=1。

否则,F0=0。

⑵、程序首先使用CJNE指令比较了高8位,若相等,继续比较低8位。

否则,F0=0。

若高8位相等,接着使用CJNE指令比较低8位。

相等,F0=1。

子程序返回。

否则,F0=0。

子程序返回。

 

9、阅读下列程序实现了什么功能?

MOVDPTR,#2000H

MOVXA,@DPTR

MOV30H,A

答、程序是将外部数据存储器2000H单元的内容,搬到内部数据存储器30H单元中。

10、阅读下列程序实现了什么功能?

MOVA,R0

MOVR1,A

答、程序是将(R0)→R1

11、阅读下列程序实现了什么功能?

MOVA,R0

XCHA,R1

MOVR0,A

答、程序将(R0)与(R1)交换。

12、阅读下列程序实现了什么功能?

已知,I/OADDR=P2.0。

当S3按下与弹起,电路有何反应?

MOVDPTR,#0FEFFH

loop:

MOVXA,@DPTR

MOVX@DPTR,A

AJMPloop

答、LED显示按键状态。

当S3按下,D3亮,其它熄灭。

松手D3即灭。

 

六、程序设计(共20分)

1、试编写程序,统计在内部数据存储器的30H~4FH单元中有多少个不是55H的存储单元?

并将结果存入41H中。

(6分)

解、

lookup:

MOVR1,#0

MOVR0,#30H

loop:

CJNE@R0,#055H,next

AJMPnext1

next:

INCR1

next1:

INCR0

CJNER0,#50H,loop

MOV41H,R1

exit:

RET

 

2、试用查表法,设计将BCD码转换成共阳极7段显示码的程序。

7段数码管如图示。

要求写出7段编码顺序表与查表程序。

(编码表2分,程序3分;共计5分)

要求编码格式:

dp

e

f

g

d

c

b

a

解:

⑴.7段编码:

数字

0

1

2

3

4

5

6

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1