单片机重点知识归纳.docx

上传人:b****7 文档编号:26177269 上传时间:2023-06-17 格式:DOCX 页数:24 大小:217.36KB
下载 相关 举报
单片机重点知识归纳.docx_第1页
第1页 / 共24页
单片机重点知识归纳.docx_第2页
第2页 / 共24页
单片机重点知识归纳.docx_第3页
第3页 / 共24页
单片机重点知识归纳.docx_第4页
第4页 / 共24页
单片机重点知识归纳.docx_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

单片机重点知识归纳.docx

《单片机重点知识归纳.docx》由会员分享,可在线阅读,更多相关《单片机重点知识归纳.docx(24页珍藏版)》请在冰豆网上搜索。

单片机重点知识归纳.docx

单片机重点知识归纳

1、预留存储单元及作用

入口单元地址

预留目的

存储单元范围

0000H

复位后初始化引导程序

0000H-0002H

0003H

外部中断0服务程序

0003H-000AH

000BH

定时器0溢出中断服务程序

000BH-0012H

0013H

外部中断1服务程序

0013H-001AH

0001BH

定时器1溢出中断服务程序

001BH-0022H

0023H

串行端口中断服务程序

0023H-002AH

002BH

定时器2中断(8052)服务程序

002BH

2、程序状态字(PSW)寄存器

位地址

D7H

D6H

D5H

D4H

D3H

D2H

D1H

D0H

位序

PSW.7

PSW.6

PSW.5

PSW.4

PSW.3

PSW.2

PSW.1

PSW.0

位标志

CY

AC

F0

RS1

RS0

OV

(F1)

P

CY或C(PSW.7)进位标志位AC(PSW.6)辅助进位标志位

F0(PSW.5)用户标志位F1(PSW.1)用户标志位(8052中含有)

RS1,RS0(PSW.4,PSW.3)当前寄存器区选择位OV(PSW.2)溢出标志位

P(PSW.0)奇偶校验标志位

3、寻址方式:

立即寻址、直接寻址、寄存器寻址、寄存器间接寻址、变址寻址、相对寻址、位寻址

寻址方式

存储空间

立即数寻址

程序存储器(操作码常数)

直接寻址

内部数据存储器00H~7FH字节单元;特殊功能寄存器

寄存器寻址

R0~R7,A,B,CY(位),DPTR

寄存器间接寻址

内部数据存储器(@R1,@R0,SP)

外部数据存储器(@R1,@R0,@DPTR)

变址寻址

程序存储器(@A+DPTR,@A+PC)

相对寻址

程序存储器(修改了PC值)

位寻址

内部数据存储器20H~2FH;特殊功能寄存器中的某些单元的位

4、各中断的矢量地址及优先级排序

中断源

中断入口地址

请求标志位

同一级的中断优先级

外部中断0中断

0003H

IE0

最高

 

最低

定时器/计数器T0中断

000BH

TF0

外部中断1中断

0013H

IE1

定时器/计数器T1中断

001BH

TF1

串行口收发中断

0023H

TI/RI

4.1、4个特殊功能寄存器:

定时器控制寄存器TCON(用6位)、串行口控制寄存器SCON(用2位)、中断允许寄存器IE和中断优先级寄存器IP。

TCON与SCON只有一部分用于中断控制。

4.2、TCON字节地址88H,可以位寻址

TCON

TF1

TF0

IE1

IT1

IE0

IT0

位地址

8FH

8EH

8DH

8CH

8BH

8AH

89H

88H

TF1(TF0):

定时器/计数器T1(T0)的溢出中断请求标志位

IE1(IE0):

外部中断1(0)的中断请求标志位

IT1(IT0):

外部中断1(0)的中断触发方式控制位

 

4.3IE1:

当检测到外部中断1的引脚上存在有效的中断请求信号时,由硬件使IE1置1.当CPU响应该中断请求时①若外部触发方式为边沿触发,则由硬件使IE1清0.②若外部触发方式为电平触发,只要中断请求一直为低电平,就一直使IE1置1标志直到中断请求变为高电平为止。

这时由软件对IE1清0的操作才真正生效。

4.4中断允许控制8051对中断源的开放或屏蔽是由中断寄存器IE控制的,IE字节地址是DA8H

IE

EA

ES

ET1

EX1

ET0

EX0

位地址

AFH

ACH

ABH

AAH

A9H

A8H

中断允许寄存器IE对中断的开放和关闭实现两级控制即有一个总中断控制位EA(IE.7)和各中断源自己的中断允许控制位。

当EA=0时屏蔽所有的中断申请当EA=1时CPU开放中断,但各个中断源是否开放还要由IE低5位分别控制

中断的前提:

EA=1开放中断

EA:

中断允许总控制位,ES串行口中断允许位ET1(ET0):

定时器/计数器T1(T0)的溢出中断允许位

EX1(EX0):

外部中断1(0)中断允许位(1为允许中断0为禁止中断)

4.5中断优先级寄存器IP其字节地址为0B8H可按位寻

IP

PS

PT1

PX1

PT0

PX0

位地址

BCH

BBH

BAH

B9H

B8H

PS:

串行口中断优先级控制位;PT1/PT0定时器/计数器T1(T0)中断优先级控制位

PX1(PX0):

外部中断1中断优先级控制位

单片机复位后,IP被清0,用户应根据需要对IP中的相应位进行置1或清0(1为高优先级,0为低优先级)

4.6CPU响应中断的基本条件有:

1.中断源发出中断请求2.中断总允许位EA=13.发出中断请求的中断源所对应的中断允许位为“1“

满足基本要求,可能发生中断{{正在执行同级或更高级中断服务程序,当前的指令周期末结束,现行指令为RETI或是访问IE或IP的指令,该指令以及紧接着的下一条指令还未执行完}}

4.7执行中断返回指令RETI的结果是消除优先级生效触发器,以使其他同级或低级中断能被响应

RETI指令执行前应进行相应的出栈操作,目的:

一.恢复保护数据二.使栈顶指针SP与保护断点后的值相同

5、MCS-51单片机的中断优先级有四条原则

1)、不同级的中断源同时申请中断时,先高后低;2)、处理低级中断又收到高级中断请求时,停低转高;3)、处理高级中断却收到低级中断请求时,高不踩低;4)、同级中断源同时申请中断时,按照外部中断0、定时器T0、外部中断1、定时器T1、串行口中断的自然先后顺序响应。

6、中断请求的撤除

CPU响应某中断请求后,在中断返回前,应该撤除该中断请求,否则会引起另一次中断。

定时器0或1溢出:

CPU在响应中断后,硬件清除了有关的中断请求标志TF0或TF1,即中断请求是自动撤除的。

边沿激活的外部中断:

CPU在响应中断后,也是用硬件自动清除有关的中断请求标志IE0或IE1。

串行口中断:

CPU响应中断后,没有用硬件清除TI、RI,故这些中断不能自动撤除,而要靠软件来清除相应的标志,如CLRTI。

这是与其它4种中断源的不同之处。

7、电平激活的外部中断源中断标志的撤除

电平触发外部中断撤除方法较复杂。

1)、因为在电平触发方式中,CPU响应中断时不会自动清除IE1或IE0标志,所以在响应中断后应立即撤除INT0或INT1引脚上的低电平。

2)、在硬件上,CPU对INT0和INT1引脚的信号不能控制,所以这个问题要通过硬件,再配合软件来解决。

 

7.1单片机系统实现定时有三种方法:

软件定时硬件定时可编程定时器定时

软件定时:

不需要外加硬件电路,定时精确,占CPU的时间。

硬件定时:

不占CPU时间,全由硬件电路完成,操作不方便不准确、。

可编程定时器定时:

不占CPU的时间使用灵活方便。

7.2加1计数器的输入脉冲有两个来源:

外部脉冲源TX(T0和T1)端和系统的时钟振荡器

定时器\计数器的基本功能是对输入脉冲进行计数。

对输入脉冲的选择是有特殊功能寄存器的一位(C\T)的内容决定的。

TMOD和TCON是两个专门用于定时器/计数器的控制寄存器,用户可用指令对其相应位进行

清“0“或置”1“操作同时利用外部引脚信号电平控制

定时器/计数器是可编程的

7.3T0和T1是两个16位加1可编程定时器/计数器{简称定时器T0、T1}

定时器T0的计数器由8位特殊功能寄存器THO和TLO组成

定时器T1的计数器由8位特殊功能寄存器TH1和TL1组成

定时器方式寄存器TMOD用于控制和确定各定时器/计数器的功能和工作方式

定时器控制寄存器TCON用于控制定时器T0、T1的启动和停止,并包含它们的溢出标志位

系统复位时TCON和TMOD的所有位清“0“。

7.8定时器的控制寄存器TCON(内部RAM字节地址:

88H)

定时器的控制寄存器TCON具有中断控制和定时控制两种控制

TCON

TF1

TR1

TF0

TR0

位地址

8FH

8EH

8DH

8CH

低四位字断与外部中断有关

TF1(TCON.7)/TF0(TCON.5)定时器T1(T0)的溢出中断标志位

TR1(TCON.6)/TRO(TCON.4)定时器T1/(T0)运行控制位(TR1=0停止运行TR1=1,启动运行)

7.9定时器的方式寄存器TMOD(内部RAM字节地址:

89H)

用于控制定时器/计数器的两种功能及四种工作模式,。

TMOD

GATE

C/T

M1

M0

GATE

C/T

M1

M0

高4位字段用于定时器T1的工作方式控制低4位用于定时器T0的工作方式控制

GATE:

门控制位(TMOD;7对应定时器T1,TMOD、3对应定时器T0)

C/T:

定时或计数功能选择控制位(TMOD、6对应定时器T1,TMOD,2对应定时器T0)

8、定时器/计数器工作方式控制关系

M1

M0

工作方式

功能说明

定时初值计算

0

0

方式0

13位定时器/计数器

0

1

方式1

16位定时器/计数器

1

0

方式2

自动重装初始值的8位定时器/计数器

1

1

方式3

仅T0分为两个8位定时器/计数器

注:

f—输出计数器的脉冲频率它为晶体振荡器频率的1/12;N—定时时间(x);X—定时初值机器周期:

12/f

例1:

编写一段程序,让51MCU的P1.7输出1ms的方波(用定时器T1完成),fosc=12MHz。

定时器初值计算(TCY=1us)此时定时时间采用0.5ms

1、采用方式0:

N=8192-500/1=7692=1E0CH

数据格式为:

1111000000001100B=0F00CH

所以(TH1)=0F0H,(TL1)=0CH

2、采用方式1:

N=65536-500/1=65036=0FE0C

所以(TH1)=0FEH,(TL1)=0CH

ORG0000H;主程序

AJMPMAIN

ORG001BH;定时中断1入口

AJMPSERT1

ORG0030H

MAIN:

SETBP1.7

MOVTMOD,#10H;设T1为方式1

MOVTH1,#0FEH;给T1赋初值

MOVTL1,#0CH

SETBET1;开定时器T1中断

SETBEA

SETBTR1;启动定时器T1

SJMP$

SERT1:

MOVTH1,#0FEH;定时器回赋初值

MOVTL1,#0CH

CPLP1.7

RETI

END

例2:

编写一段程序,让51MCU的P1.7输出占空比为70%,频率为100HZ的矩形波(用定时器完成),fosc=6MHz。

思路:

此题中,高电平时间为10ms×70%=7ms,低电平为3ms。

对于这种高、低电平时间不一致的波形,通常取出两个时间的相同单位时间作为定时器的定时时间,对于不同的电平采用不同的定时次数。

此例中,可用1ms作为定时器的定时时间。

高电平段定时7次,低电平段定时3次,即可实现矩形波输出。

定时器初值=65536-1000/2=65036=FE0CH

程序清单:

ORG0000H;主程序

AJMPMAIN

ORG000BH;定时中断T0入口

AJMPSERT0

ORG0030H

MAIN:

SETBP1.7

MOVTMOD,#01H;设T0为方式1

MOVTH0,#0FEH;给T0赋初值

MOVTL0,#0CH

MOVR0,#7

SETBET0;开定时器T0中断

SETBEA

SETBTR0;启动定时器T0

SJMP$

9、串行口工作方式表

SM0

SM1

工作方式

功能说明

定时初值计算

0

0

方式0

8位移位寄存器

0

1

方式1

10位异步串行通讯

1

0

方式2

11位异步串行通讯

1

1

方式3

11位异步串行通讯

9.1通信主要有两种方式:

并行通信和串行通信

并行通信;是在传递数据过程中每个字节的各位、同时进行传送的通信方式

串行通信:

是指每个字节的各位分别进行传送的通信方式

并行通信的传输速度比串行通信要快并行通信用于短距离高速通信场合

串行通信的两种数据传递方式:

异步串行通信和同步串行通信

串行通信按数据传送方向可分为单工、半双工、全双工通信方式

9.2波特率是表征串行口数据传送速率的量,其定义为每秒传送二进制数的位数单位为bit/s常见1200bit/s2400bit/s4800bit/s9600bit/s

9.3.与串行口有关的特殊功能寄存器有串行口缓冲器SBUF、串行口控制寄存器SCON和波特率控制寄存器PCON

9.4串行口缓冲器SBUF的地址为99H,有两个物理单元串行口接收缓冲器和串行口发送缓冲器(可同时发送和接收数据)

9.5波特率控制寄存器PCON主要用于波特率选择和断电控制,地址为87H

D7

D6

D5

D4

D3

D2

D1

SMOD

SMOD:

波特率选择位。

当SMOD=1波特率提高一倍

PCON的其它位主要用于掉电控制

10、串行口控制器SCON是一个特殊功能寄存器,用以设定串行口的工作方式、接收/发送控制以及设置状态标志;SCON字节地址98H

SCON

D7

D6

D5

D4

D3

D2

D1

D0

位地址

SM0

SM1

SM2

REN

TB8

RB8

TI

RI

SM0和SM1为工作方式选择位,可选择四种工作方式:

SM0

SM1

工作方式

说明

波特率

功能

0

0

0

同步移位寄存器

/12

同步移位寄存器

0

1

1

10位异步收发

由定时器控制

8位UART

1

0

2

11位异步收发

/32或

/64

9位UART不变波特率

1

1

3

11位异步收发

由定时器控制

9位UART可变波特率

SM2,多机通信控制位,主要用于方式2和方式3。

当接收机的SM2=1时可以利用收到的RB8来控制是否激活RI。

当SM2=0时,不论收到的RB8为0和1,均可以使收到的数据进入SBUF,并激活RI。

TB8,在方式2或方式3中,是发送数据的第九位(位8)

RB8,在方式2或方式3中,是接收到数据的第九位(位8),

TI,串行口发送中断标志位。

RI,串行口接收中断标志位。

REN串行口允许接受位

2-3.简述8051片内RAM的空间分配。

答:

低128B位数据存储器区分为:

工作寄存器区(00H~1FH);位寻址区(20H~2FH);一般数据存储区(30H~7FH)

高128B数据存储器区离散地分布着21个特殊功能寄存器

2-8.内RAM低128B单元划分为哪三个主要区域?

各区域主要功能是什么?

答:

地址范围为00H~7FH的128字节单元,按功能特点划分为不同的几个区,分述如下。

(1)工作寄存器区地址范围为00H~1FH的32字节存储器单元,分为四个组,每组有8个工作寄存器字节单元,定名为R0、R1、R2、R3、R4、R5、R6和R7。

通过改变程序状态字特殊功能寄存器PSW中RS1,RS0两位的内容,每组工作寄存器均可选作CPU的当前工作寄存器组。

(2)位寻址区地址为20H~2FH的16个字节单元中共128位,每一位都有相应的位地址,可用位寻址方式对其进行置位、复位、内容传送、逻辑运算等操作。

(3)一般数据存储区地址范围为30H~7FH的区域,可用于原始数据及运算结果的存储。

值得注意的是,30H~7FH中一部分字节单元可以开辟出一块遵守“后进先出”或“先进后出”规则的特殊数据区──堆栈。

2-11.CPU如何确定和改变当前工作寄存器组?

答:

通过改变程序状态字特殊功能寄存器PSW中RS1,RS0两位的内容,每组工作寄存器均可被选作当前工作寄存器。

RS1

RS0

当前工作寄存器

0

0

第0组

0

1

第1组

1

0

第2组

1

1

第3组

3-13使用位操作指令实现下列逻辑操作,要求不更改单元其他位的内容。

解:

(1)使Acc.0置1:

SETBAcc.0

(2)清除累加器的高四位:

ANLA,#0FH

或CLRAcc.733

CLRAcc.6

CLRAcc.5

CLRAcc.4

(3)清除Acc.3,Acc.4,Acc.5,Acc.6:

ANLA,#87H

或CLRAcc.3

CLRAcc.4

CLRAcc.5

CLRAcc.6

4-2试编写程序,查找在内部RAM20H-50H单元中出现00H的次数,并将查找的结果存入51H单元。

解:

程序如下:

MOVR0,#20H

MOVR7,#31H

MOV51H,#00H

LOOP1:

CJNE@R0,#00H,LOOP

INC51H

LOOP:

INCR0

DJNZR7,LOOP1

HERE:

SJMPHERE

 

4-11已知片内RAM以ADDR为起始地址的区域中存放着24个无符号数,试编写程序找出最小值,并存入MIN单元。

解:

根据题意,编写程序如下:

MOVR0,#ADDR;数据区首地址39

MOVR7,#18H;数据区长度

MOVA,@R0;读第一个数

DECR7

LOOP:

INCR0

MOV2AH,@R0;读下一个数

CJNEA,2AH,CHK;数值比较

CHK:

JCLOOP1;A值小转移

MOVA,@R0

LOOP1:

DJNZR7,LOOP;继续

MOV2BH,A;极值送2BH单元

HERE:

AJMPHERE;停止

6-4·MCS-51的外部中断有哪两种触发方式?

它们对触发脉冲或电平有什么要求?

应如何选择和设定?

答:

MCS-51的外部中断有两种触发方式:

边沿触发方式和电平触发方式。

对于边沿触发方式,CPU在每一个机器周期S5P2期间采样外部中断l请求引脚的输入电平。

如果在相继的两个机器周期采样过程中,一个机器周期采样到外部中断1请求信号为高电平,接着的下一个机器周期采样到外部中断1请求信号为低电平,出现了下跳沿,则使IEl置1。

直到CPU响应该中断时,才由硬件使IEl清0。

对于电平触发方式,CPU在每一个机器周期S5P2期间采样外部中断1请求引脚的输入电平。

若外部中断l请求信号为低电平,则使IE1置1,若外部中断1请求信号为高电平,则使IEl清0。

可由TCON中对应的IT0(或IT1)位程控为低电平或下降沿有效。

IT0(或IT1)=1时,外部中断0(或1)程控为边沿触发方式。

IT0(或IT1)=0时,外部中断0(或1)程控为电平触发方式。

6-6·某MCS-51系统用于定时测试压力、温度,定时用T0来实现,压力超限和温度超限的报警信号分别由和输入,中断优先权排列顺序依次为压力超限→温度超限→定时检测,试确定专用寄存器IE和IP的内容,并编写初始化程序。

IE=87HIP=05H

IE:

1

0

0

1

1

1

IP:

0

0

1

0

1

初始化程序如下:

ORG0000H

AJMPMAIN

ORG0003H

AJMPW1

ORG000BH

AJMPW2

ORG0013H

AJMPW3

ORG0050H

MAIN:

MOVIP,#05H

MOVIE,#87H

HERE:

SJMPHERE

8051不可位寻址的特殊寄存器名称:

SP,DPH,DPL(或DPTR),TMOD,TH0,TL0,TH1,TL1,SBUF,PCON

请写出MCS-51可位寻址的特殊寄存器名称及其初始值(10分)。

ACC,B,PSW,P0,P1,P2,P3,IP,IE,TCON,SCON初始值:

除P0、P1、P2、P3为FFH外其余都为0。

请给出特殊寄存器TCON、PSW的各位名称及作用

TCON:

TF1TR1TF0TR0IE1IT1IE0IT0

TFX定时器/计数器中断标志位TRX定时器/计数器打开位

IEX外部中断标志位ITX外部中断触发方式标志位

PSW:

Cy、Ac、F0、RS1、RS0、OV–P

Cy-进位/借位标志位;Ac-半字节进位/借位标志位;

F0-用户标志位;RS1、RS0-通用工作寄存器定义位;

OV-溢出标志位;P-奇偶标志位

IE:

EA--ESET1EX1ET0EX0

EA-中断总允许位;

ES-串口中断允许位;

ET1、ET0-定时器/计数器中断允许位;

EX1、EX0-外部中断允许位

请写出特殊寄存器TMOD,SCON各位的名称及意义

TMODGATEC/TM1M0GATEC/TM1M0

GATE改位控制定时器计数器的运行是否受

INT1、INT0管脚是否为高电平的控制;

C/T改位为1是计数器功能,为0是定时器功能;

M1M0工作方式设置位;

SCON:

SM0SM1SM2RENTB8RB8TIRI

SM0SM1为串行口工作方式设置位SM2多机通讯允许位

REN接收允许位TB8发送的第8位RB8接收到的第8位

TI发送完成标志位RI接收完成标志位

请写出8051中断子程序入口地址,并说明其检测位,中断优先级的高低,以及如何设置

答案:

03H—外部中断0子程序入口,检测位IE0,中断优先级最高;

0BH—定时器/计数器中断子程序入口,检测位TF0;

13H—外部中断1子程序入口,检测位IE1;

1BH—定时器/计数器中断子程序入口,检测位TF1;

23H—串行口中断子程序入口,检测位TI,RI,中断优先级最低;

中断优先级高低的设置需设置IP中的相应位。

PS,PT1,PX1,PT0,PX0。

一、试简述如下器件的功能(5分):

8051-内部只有4KROM的8位单片机74LS373-地址锁存器

27C64-64K位的程序只读存储器ADC0809-8路A/D转换器

DAC0832-8位D/A转换器741383-8译码器

62256256K位的数据存储器扩展芯片DAC08328位D/A转换器

74LS3738位锁存器8255A8并行接口

74LS138:

3-8译码器ADC0809:

A/D转换器2764:

8K的EPROM

8031:

8031单片

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

当前位置:首页 > 自然科学 > 数学

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

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