单片机考试知识点总结太原理工大学葬仪落整理教学文稿Word文档下载推荐.docx

上传人:b****4 文档编号:17678651 上传时间:2022-12-08 格式:DOCX 页数:32 大小:149.11KB
下载 相关 举报
单片机考试知识点总结太原理工大学葬仪落整理教学文稿Word文档下载推荐.docx_第1页
第1页 / 共32页
单片机考试知识点总结太原理工大学葬仪落整理教学文稿Word文档下载推荐.docx_第2页
第2页 / 共32页
单片机考试知识点总结太原理工大学葬仪落整理教学文稿Word文档下载推荐.docx_第3页
第3页 / 共32页
单片机考试知识点总结太原理工大学葬仪落整理教学文稿Word文档下载推荐.docx_第4页
第4页 / 共32页
单片机考试知识点总结太原理工大学葬仪落整理教学文稿Word文档下载推荐.docx_第5页
第5页 / 共32页
点击查看更多>>
下载资源
资源描述

单片机考试知识点总结太原理工大学葬仪落整理教学文稿Word文档下载推荐.docx

《单片机考试知识点总结太原理工大学葬仪落整理教学文稿Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《单片机考试知识点总结太原理工大学葬仪落整理教学文稿Word文档下载推荐.docx(32页珍藏版)》请在冰豆网上搜索。

单片机考试知识点总结太原理工大学葬仪落整理教学文稿Word文档下载推荐.docx

ANLP1,#42H

ORLP1,#0ECH

2、下列程序段执行后,(R0)=47H,(48H)=0FFH,(47H)=3FH

MOVR0,#48H

MOV48H,#0

MOV47H,#40H

DEC@R0

DECR0

3、已知(SP)=29H,(DPTR)=1234H,在执行下列指令后,(SP)=2BH,内部RAM(2AH)=34H,(2BH)=12H

PUSHDPL

PUSHDPH

4、简答题

1、简述MCS-51单片机中,振荡周期、机器周期和指令周期的关系。

答:

(1)振荡周期:

振荡周期为单片机提供定时信号的振荡源的周期或外部输入时钟的周期。

(2)时钟周期:

又称状态周期或状态时间S,是振荡周期的两倍,分为P1、P2节拍,通常P1完成算术逻辑操作,在P2节拍完成内部寄存器间的数据传送操作。

(3)机器周期:

一个机器周期由6个状态(时钟周期)(或12个振荡周期)组成。

(4)指令周期:

执行一条指令的全部时间,是机器周期的倍数,MCS-51单片机中指令周期通常由1、2、4个机器周期组成。

2、DAC0832作为数模转换器,其连接方式有几种?

3种。

单缓冲方式、双缓冲方式和直通方式。

(1)直通方式常用于不带微机的控制系统。

(2)单缓冲方式是值DAC0832内部的两个数据缓冲器有一个处于直通方式,另一个处于受8051控制的锁存方式。

(3)对于多路D-A转换,要求同步进行D-A转换输出时,必须采用双缓冲同步方式。

3、8051单片机作定时和计数时,其计数脉冲分别由谁提供?

8051单片机定时计数器共有几种工作模式?

分别是什么?

当用作定时器时,是在内部对CPU的时钟脉冲计数。

当用作计数器时,是对相应输入引脚输入的脉冲信号计数。

工作模式:

(1)工作模式0:

使用低字节的5位和高字节的8位组成13位的计数器,低5位计数溢出后向高位进位计数,高8位计数器计满后置位溢出标志位。

(2)工作模式1:

使用低字节和高字节的16位组成16位计数器。

与0模式的区别仅在计数器长度,定时长度和计数容量不同。

(3)工作模式2:

使用低字节的8位做计数器、高字节的8位作为预置常数的寄存器。

(4)工作模式3:

只适用于定时器/计数器T0,T0分别为两个独立的8位计数器TH0和TL0.

4、MCS-51单片机系统共有几种寻址方式?

有7种寻址方式:

(1)寄存器寻址

(2)直接寻址(3)立即寻址(4)寄存器间接寻址

(5)相对寻址(6)位寻址(7)基址加变址寄存器间接寻址

5、试说明特殊功能寄存器TCON中TF1、TR1、IE1、IT1位的含义是什么?

这些位什么情况下被置位或清除?

TF1T1计数溢出标志位,当计数器T1计数计满溢出时,该位由硬件置1,转到中断服务程序时,再由硬件自动清0.

TR1T1计数运行控制位,由软件置1或清0.为1时允许计数器T1计数,为0时禁止计数器T1计数。

TF0T0计数溢出标志位,当计数器T0计数计满溢出时,由硬件置1,申请中断。

进入中断服务程序后由硬件自动清0.

TR0T0计数运行控制位,由软件置1或清0,为1时允许计数器T0计数,为0时禁止计数器T0计数。

IE0外部中断0(INT0)请求标志位,当CPU采样到INT0引脚出现中断请求后,此位由硬件置1.在中断响应完成后转向中断服务程序时,再由硬件自动清0.

IE1外中断1(INT0)请求标志位,功能同上。

IT0外中断0请求信号方式控制位,当IT0=1,后沿负跳变有效;

IT0=0,低电平有效。

此位可由软件置1或清0.

IT1外中断1请求信号方式控制位,IT1=1,后沿负跳变有效;

IT1=0,低电平有效。

5、应用题

1、将存于外部RAM8000H开始的50H个数据传送到内部0010H开始的区域,请编程实现。

ORG0100H

MOVDPR,#8000H

MOVR0,#10H

MOVR2,#50H

MOVXA,@DPTR

MOV@R0,A

INCDPTR

INCR0

END

知识点:

1、各P口功能:

P0口:

8位双向三态I/O口,或分时复用为地址总线(低8位)及数据总线,或作为普通I/O口使用。

P1口:

8位准双向I/O口,常用作普通I/O口使用,个别引脚有第二功能

P2口:

8位准双向I/O口,或用作地址总线(高8位),或作为普通I/O口使用

P3口:

8位准双向I/O口,或作为普通I/O口使用;

或作为第二功能口使用。

P3.0串行输入端口(RXD)P3.1串行输出端口(TXD)P3.2外部中断0(INT0)

P3.3外部中断1(INT1)P3.4T0P3.5T1

P3.6外部数据存储器写选通(WR)P3.7外部数据存储器读选通(RD)

2、引脚EA当EA=1时,访问内部程序存储器,EA=0时,访问外部程序存储器

引脚PSEN外部程序存储器的读选通信号,读取时有效低电平

引脚PROG/ALE当访问外部存储器时,ALE(允许地址锁存)的输出用于锁存地址的低位字节。

即使不访问外部存储器,ALE端扔以不变的频率周期性地出现正脉冲信号,次频率为振荡器频率的1/6,可用作对外输出的时钟,或用于定时,每当访问外部数据存储器的时候,将跳过一个ALE脉冲。

3、PSW中各个位的功能:

PSW.7(CY)进位标志位

PSW.6(AC)辅助进位标志位

PSW.5(F0)标志位

PSW.4PSW.3(RS1\RS0)四组工作寄存器区选择控制位1和位0

00工作0区(00H)011区(08H)102区(10H)113区(18H)

PSW.2(OV)溢出标志位

PSW.1保留位,未用

4、8051单片机的时序定时单位:

节拍、状态、机器周期和指令周期

5、复位:

RST引脚处至少保持24个振荡周期的高电平就可复位

寄存器

内容

PC

0000H

TCON

00H

ACC

T2CON

B

TH0

PSW

TL0

SP

07H

TH1

DPTR

TL1

P0~P3

0FFH

TH2

IP(8051)

XXX00000B

TL2

IP(8052)

XX000000B

RLDH

IE(8051)

0XX00000B

RLDL

IE(8052)

0X000000B

SCON

TMOD

SBUF

不定

PCON(HMOS)

0XXXXXXXB

PCON(CHMOS)

0XXX0000B

6、寻址方式

(1)寄存器寻址方式是对选中寄存器中的数据进行处理,适用于数据放置在寄存器之中的情况。

MOVR1,B;

将寄存器B中的数值送入到寄存器R1中

INCR2;

将寄存器R2中的数值加1

MOVA,R7;

将寄存器R7中的数值送入累加器A

寄存器寻址范围:

寄存器区中8个工作寄存器R0~R7中的一个(由指令操作码的低三位数值确定)、特殊寄存器A,B,DPTR,Cy(进位位,也是位处理机的累加器)也可作为寄存器寻址的对象。

(2)直接寻址方式是对直接指定地址的存储器单元中的数据进行处理,适用于数据放置在可以直接寻址的存储单元之中的情况。

MOV40H,B;

将寄存器B中的数值送入到内部RAM的40H单元中

INC30H;

将内部RAM的30H单元中的数值加1

MOVTL0,R7;

将寄存器R7中的数值送入到特殊功能寄存器TL0中

直接寻址范围:

片内RAM,包括SFR,且SFR只能直接寻址

(3)立即寻址是对指令操作码后的数据进行处理,适用于在程序中直接处理的数据的情况。

MOV38H,#05H;

将数值05H送入到内部RAM的38H单元中

ADDA,#30H;

将A寄存器中的数值加上30H

MOVTH0,#0F2H;

将定时器0高8位设置为数值0F2H

(4)位寻址

MOVC,40H;

把位40H的值送进位位C

位寻址的寻址范围包括:

内部RAM中的位寻址区单元地址为20H-2FH,共16个单元,128个位,位地址是00H-7FH。

特殊功能寄存器中的可寻址位可供位寻址的特殊功能寄存器共有11个,实际有寻址位83个。

注意:

位寻址只能直接寻址。

(5)寄存器间接寻址是将要处理数据的地址放在寄存器中,即用寄存器中的数据作为存储单元的地址数值。

MOV@R1,#05H;

将数值05H送入到以R1内数值为地址的内部RAM单元中

ADDA,@R1;

将累加器A中的数值加上以R1内数值为地址的内部RAM单元中的

数据结果存放于A

MOVXA,@DPTR;

将以DPTR内数值为地址的外部数据存储器的内容送给累加器A

注意:

寄存器间接寻址范围包括内部RAM和外部RAM,且外部RAM只能寄存器间接寻址,访问外部数据存储器的指令助记符与访问内部RAM的助记符不同。

(6)相对寻址方式目的地址=转移指令所在的地址+转移指令字节数+rel

JCrel

JNCrel

JBbit,rel

JNBbit,rel

JBCbit,rel

SJMPrel

(7)基址加变址寄存器间接寻址

专用16位寄存器(DPTR或PC)存放基地址,寄存器A做变址寄存器,仅两条指令:

MOVCA,@A+PC

MOVCA,@A+DPTR

只能读取程序存储器。

7、指令

(1)一般传输指令MOVA,Rn

(2)累加器传输指令

XCHA,Rn(n为0-7之一,将工作寄存器Rn的内容和A的内容交换)

SWAPA;

A的高4位和低4位互换

XCHDA,@Ri;

Ri为R0或R1,将Ri所指单元的低4位与A的低4位互换,高4位不变。

(3)查表指令

MOVCA,@A+DPTR;

将DPTR中的16位地址和A中内容相加得新地址,把此地址内容送A

MOVCA,@A+PC;

将PC值和A的内容相加所得值作为新地址,将此地址单元内容送A

(4)堆栈指令

PUSHdirect;

先将SP加1,再将direct所指单元内容推入SP+1所指的堆栈单元

POPdirect;

先将SP单元的内容弹出到direct单元,再将SP减1

(5)算术运算指令

ADDA,Rn;

将A的内容和Rn的内容相加,结果在A中

ADDCA,Rn;

(A)←(A)+(Rn)+CY,Rn为R0~R7之一(带进位)

SUBBA,Rn;

A中内容减去进位位CY,再减去Rn中内容,结果在A中(带借位)

MUL乘法

DIV除法

ANL(逻辑与,例如,ANLP1,A)

ORL(逻辑或,例如,ORLP2,A)

XRL(逻辑异或,例如,XRLP3,A)

JBC(若目标位置位则跳转并将目标位清零,例如,JBCP1.1,LABEL)

CPL(求补,例如,CPLP3.0)

INC(增量指令,例如,INCP2)

DEC(减量指令,例如,DECP2)

DJNZ(目标寄存器减1后不为零则跳转,例如,DJNZP3,LABEL)

MOVPX.Y,C(将进位位送入端口位)

DAA十进制调整指令,对A中的BCD码加法结果进调整

CLRPX.Y(清除端口位)

SETBPX.Y(置位端口位)

SETBbit;

某位置1

CLRA;

A清0,不影响标志位

CPLA;

A中内容逐位取反

RRA;

A中内容循环右移一位,;

最低位D0移到D7

RLA;

A中内容循环左移一位,;

即D7移到D0,D0移到D1等

RRCA;

CY进入A的最高位,A的最低位进入CY,D2进入D1等

RLCA;

A的最高位进入CY,原CY进入A的最低位D0,D0进入D1等

8、中断

分 

中断源名称

中断申请标志

触发方式

中断入口地址

外部中断

外部中断0

IE0(TCON.1)

INT0(P3.2)引脚上的低电平/下降沿引起的中断

0003H

内部中断

定时器/计数器T0中断

IF0(TCON.5)

T0定时器/计数器溢出后引起的中断

000BH

外部中断1

IE1(TCON.3)

INT1(P3.3)引脚上的低电平/下降沿引起的中断

0013H

定时器/计数器T1中断

IF1(TCON.7)

T1定时器/计数器溢出后引起的中断

001BH

串口中断

RI 

(SCON.0)

TI 

( 

SCON.1)

串行口接收完成或发送完一帧数据后引起的中断

0023H

中断的功能

(1)可实现高速CPU与慢速外设之间的配合

(2)可实现实时处理

(3)实现故障的紧急处理

(4)便于人机联系

中断的处理过程主要包括:

中断请求、中断响应、中断服务、中断返回4个过程。

EA—中断允许的总控制位。

当EA=0时,中断总禁止,相当于关中断,即禁止所有中断;

当EA=1时,中断总允许,相当于开中断。

此时,每个中断源是否开放由各中断控制位决定。

所以只有当EA=1时,各中断控制位才有意义。

ES—串行口中断允许控制位,当ES=0,禁止该中断;

ES=1,允许串行中断。

ET1—定时器1中断允许控制位,当ET1=0,禁止该中断;

ET1=1,允许定时器1中断

EX1—外部中断1允许控制位,当EX1=0,禁止外部中断1;

当EX1=1,允许外部中断1。

ET0—定时器0中断允许控制位,当ET0=0,禁止该中断;

ET0=1,允许定时器0中断。

EX0—外部中断0允许控制位,当EX0=0,禁止外部中断0;

当EX0=1,允许外部中断0。

定时器控制寄存器(TCON)

该寄存器的字节地址为88H,位地址为88H-8FH,也可以用TCON.0-TCON.7表示

在开放中断的条件下,用下述四个原则使用中断优先级结构:

(1)非中断服务子程序可以被任何一个中断申请所中断,而与优先级结构无关。

(2)如果若干中断同时提出申请,则CPU将选择优先级、优先权最高者予以响应。

(3)低优先级可以被高优先级的中断申请所中断。

换句话说,同级不能形成嵌套、高优先级不能被低优先级嵌套,当禁止嵌套时,必须执行完当前中断服务子程序之后才考虑是否响应另一个中断申请。

(4)同一个优先级里,优先权的顺序是由硬件决定而不能改变的。

但是用户可以通过改变优先级的方法改变中断响应的顺序。

例如,8051单片机中串行口的优先权最低,但是可以在中断优先级寄存器IP中写入10H,则只有串行口是最高优先级。

若同时有若干中断提出申请,则一定会优先响应串行口的申请。

串行口控制寄存器(SCON)

SCON寄存器的字节地址为98H,位地址为98H~9FH,其中的低两位RI和TI锁存串行口的接收中断和发送中断的请求标志位

中断响应的条件:

中断源有中断请求;

此中断源的中断允许位为1;

CPU开中断(即EA=1)。

9、定时器

概念:

在8051单片机中,定时器/计数器就是一个固定长度的二进制计数器,当对输入脉冲信号的数量进行计数时,我们称其为计数器,当对单片机的系统时钟或其它标准时钟进行计数时,由于这类时钟信号本身就表示时间,计数值对应着时间值,所以从这个角度上将其称为定时器。

组成:

在8051单片机中,内部定时器都是可编程控制的定时器/计数器,至少由两部分组成:

脉冲计数电路和控制字寄存器及译码控制电路。

10、串行接口的四种工作方式

(1)模式0(MODE0):

同步移位寄存器方式。

8位数据(先为LSB)从引脚RXD接收/移出,引脚TXD输出移位时钟,波特率固定为晶振频率的1/12。

模式0通常用来扩展输入输出口。

(2)模式1(MODE1):

10位数据被发送(从引脚TXD)或接收(从引脚RXD):

1个启动位,8个数据位,1个停止位。

在接收时,停止位被送入特殊功能寄存器的SCON的RB8位。

波特率是可变的。

(3)模式2(MODE2):

11位数据被发送(从引脚TXD)或接收(从引脚RXD):

1个启动位,8个数据位,可编程的第9个数据位,1个停止位。

发送时,第9位(SCON的TB8位)可被赋予0或1。

例如,可将奇偶校验位送至TB8位。

在接收时,停止位被送入特殊功能寄存器SCON的RB8位。

模式2的波特率可为1/32或1/64晶振频率。

(4)模式3(MODE3):

实际上,除了波特率之外,模式2和模式3是相同的。

模式3的波特率是可变的。

8255A的工作方式0,A口作为输入,B、C口作为输出

取端口A:

0FF7CHB:

0FF7DHC:

0FF7EH控制寄存器地址:

0FF7FH

根据题意写入控制字为10010000=90H.

MOVA,#90H(根据题意计算而变化)

MOVDPTR,#0FF7FH控制寄存器地址→DPTR

MOVX@DPTR,A方式控制字→控制寄存器

MOVDPTR,#0FF7CHA口地址→DPTR

MOVXA,@DPTR从A口读数据

MOVDPTR,#0FF7DHB口地址→DPTR

MOVA,#DATA1要输入的数据DATA1→A

MOVX@DPTR,A将DATA1送B口输出

MOVDPTR,#0FF7EHC口地址→DPTR

MOVA,#DATA2DATA2→A

MOVX@DPTR,A将DATA2送C口输出

DAC0832启动转换程序

ORG0000H

MOVR1,#data1

MOVA,@R1

MOVX@DPTR,A

MOVDPTR,#0BFFFH

MOVR1,#data2

MOVDPTR,#7FFFH

例:

用定时器0,方式2计数,要求每计满100次,将P1.0端取反。

分析:

TMOD=00000110B

计数初值:

TH0=TL0=28-100=156=9CH

程序如下:

ORG1000H

START:

MOVTMOD,#06H

MOVTL0,#9CH

MOVTH0,#9CH

SETBTR0

LOOP:

JBCTF0,DONE;

判计满100次否?

若计满则清零TF0且转DONE

SJMPLOOP

DONE:

CPLP1.0

例7.3已知单片机晶振频率为12MHz,要求使用T0定时0.5ms,使单片机P1.0引脚上连续输出周期为1ms的方波。

分析:

首先算出机器周期=12/(12MHz)=1us,所以0.5ms需要T0计数M次

M=0.5ms/1us=500

256<

500<

8192,所以选择方式0

初值N=213-500=7692=1E0CH

因为选用方式0,低8位TL0只使用低5位,其余的均计入高8位TH0的初值。

TL0=0CH,TH0=0F0H

RESET:

AJMPSTART

ORG000BH

AJMPT0INT

START:

MOVSP,#60H

MOVTH0,#0F0H

MOVTL0,#0CH

SETBTR0

SETBET0

SETBEA

MAIN:

AJMPMAIN

T0中断服务程序

T0INT:

CPLP1.0

MOVTL0,#0C

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

当前位置:首页 > IT计算机 > 计算机硬件及网络

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

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