MCS-51单片机复习要点文档格式.doc

上传人:wj 文档编号:6941975 上传时间:2023-05-07 格式:DOC 页数:31 大小:348KB
下载 相关 举报
MCS-51单片机复习要点文档格式.doc_第1页
第1页 / 共31页
MCS-51单片机复习要点文档格式.doc_第2页
第2页 / 共31页
MCS-51单片机复习要点文档格式.doc_第3页
第3页 / 共31页
MCS-51单片机复习要点文档格式.doc_第4页
第4页 / 共31页
MCS-51单片机复习要点文档格式.doc_第5页
第5页 / 共31页
MCS-51单片机复习要点文档格式.doc_第6页
第6页 / 共31页
MCS-51单片机复习要点文档格式.doc_第7页
第7页 / 共31页
MCS-51单片机复习要点文档格式.doc_第8页
第8页 / 共31页
MCS-51单片机复习要点文档格式.doc_第9页
第9页 / 共31页
MCS-51单片机复习要点文档格式.doc_第10页
第10页 / 共31页
MCS-51单片机复习要点文档格式.doc_第11页
第11页 / 共31页
MCS-51单片机复习要点文档格式.doc_第12页
第12页 / 共31页
MCS-51单片机复习要点文档格式.doc_第13页
第13页 / 共31页
MCS-51单片机复习要点文档格式.doc_第14页
第14页 / 共31页
MCS-51单片机复习要点文档格式.doc_第15页
第15页 / 共31页
MCS-51单片机复习要点文档格式.doc_第16页
第16页 / 共31页
MCS-51单片机复习要点文档格式.doc_第17页
第17页 / 共31页
MCS-51单片机复习要点文档格式.doc_第18页
第18页 / 共31页
MCS-51单片机复习要点文档格式.doc_第19页
第19页 / 共31页
MCS-51单片机复习要点文档格式.doc_第20页
第20页 / 共31页
亲,该文档总共31页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

MCS-51单片机复习要点文档格式.doc

《MCS-51单片机复习要点文档格式.doc》由会员分享,可在线阅读,更多相关《MCS-51单片机复习要点文档格式.doc(31页珍藏版)》请在冰点文库上搜索。

MCS-51单片机复习要点文档格式.doc

EA=1,寻址从内部ROM;

EA=0,寻址从外部ROM

地址长度:

16位存储器地址空间为64KB

作用:

存放程序及程序运行时所需的常数。

8051单片机6个具有特殊含义的单元是:

0000H——系统复位,PC指向此处;

0003H——外部中断0入口

000BH——T0溢出中断入口

0013H——外中断1入口

001BH——T1溢出中断入口

0023H——串口中断入口

2、内部数据存储器

物理上分为两大区:

00H~7FH即128B内RAM和SFR区。

如图2所示。

7FH

资料缓冲区

堆栈区80字节数据缓冲器用

工作单元

30H

2FH

位地址:

16字节

00H~7FH128可位寻址位

20H

1FH3区

2区

1区32字节4组R0~R7工作寄存器

0区

00H

图2内部数据存储器

二、殊功能寄存器SFR

寻址空间离散分配在:

80H~FFH,

注意PC不在此范围内。

地址末尾为0或8的SFR具有位寻址功能

1、CPU是运算器加控制器

2、算术运算寄存器

(1)累加器A(E0H)

(2)B寄存器:

乘、除法运算用

(3)程序状态字PSW寄存器:

包含程序运行状态信息。

PSWCYACFORS1RS0OV—P

CY(PSW.7)——进位/借位标志;

位累加器。

AC(PSW.6)——辅助进/借位标志;

用于十进制调整。

F0(PSW.5)——用户定义标志位;

软件置位/清零。

OV(PSW.2)——溢出标志;

硬件置位/清零。

P(PSW.0)——奇偶标志;

A中1的个数为奇数P=1;

否则P=0。

RS1、RS0——寄存器区选择控制位。

00:

0区R0~R7

01:

1区R0~R7

10:

2区R0~R7

11:

3区R0~R7

2、指针寄存器

(1)程序计数器PC

PC的内容是指明即将执行的下一条指令的地址,16位,寻址64KB范围,

复位时PC=0000H具有自动加1功能不可寻址即不能通过指令访问。

(2)堆栈指针SP

指明栈顶元素的地址,8位,可软件设置初值,复位时SP=07H

(3)数据指针DPTR

@R0、@R1、@DPTR;

指明访问的数据存储器的单元地址,16位,寻址范围64KB。

DPTR=DPH+DPL,也可单独使用。

没有自动加1功能通过软件INCDPTR内容加1

时序

单片机内的各种操作都是在一系列脉冲控制下进行的,而各脉冲在时间上是有 先后顺序的,这种顺序就称为时序。

执令周期:

即从取指到执行完,所需时间。

不同机器指令周期不一样;

即使相同机器,不同的指令其指令周期也不一样。

机器周期:

机器的基本操作周期。

一个指令周期含若干机器周期(单、双、四周期)

状态周期:

一个机器周期分6个状态周期Si

每个状态周期含两个振荡周期,即相位P1、P2。

振荡周期:

由振荡时钟产生。

振荡周期Tosc=1/fosc

一个机器周期=12个振荡周期=12×

1/fosc。

例如,若fosc=12MHz,则一个机器周期=1μs。

时钟的产生:

通过XTAL1(19)、XTAL(18)。

这两个管脚外部加石英晶体和电容组成振荡器

系统复位

通过给RST管脚加高电平理论上大于两个机器周期,实际大于10ms,系统复后

除了SP=07H,P0、P1、P2、P3为FFH外,所有的寄存器均为00H,PC=0000H,PSW=00H工作寄存器组R0~R7工作在0组。

并行I/O端口

并行I/O端口

四个8位I/O口P0、P1、P2、P3

作为通用I/O使用,是一个准双向口:

“读管脚在输入数据时应先把口置1,使两个FET都截止,引脚处于悬浮状态,可作高阻抗输入”MOVP1.#0FFH

MOVA,P1

读端口数据方式是一种对端口锁存器中数据进行读入的操作方式,CPU读入的这个数据并非端口引脚的数据。

(对端口进行读-修改-写类指令列如CPLP1.0是读端口锁存器而不是管脚)

一、P0口地址80H系统复位后P0=FFH

(1)P0口可作通用I/O口使用,又可作地址/数据总线口;

(2)P0既可按字节寻址,又可按位寻址;

(3)P0作为输入口使用时:

是准双向口;

(4)作通用I/O口输出时:

是开漏输出;

(外部管脚必须接上拉电阻)

(5)作地址/数据总线口时,P0是一真正双向口,分时使用,提供地址线A0~A7由ALE控制信号锁存,数据线D0~D7

二、P1口地址90H地址90H系统复位后P1=FFH

2、特点

(1)无地址/数据口功能

(2)可按字节寻址,也可按位寻址

(3)作I/O输入口时:

是一准双向口,不是开漏输出(无需外接上拉电阻)。

三、P2口地址A0H系统复位后P2=FFH

(1)当P2口作为通用I/O时,是一准双向口。

(2)从P2口输入数据时,先向锁存器写“1”。

(3)可位寻址,也可按字节寻址

(4)可输出地址高8位A8~A15。

四、P3口地址B0H系统复位后P3=FFH

(1)作通用I/O时,是一准双向口,不是开漏输出(无需外接上拉电阻)。

(2)P3口具有第二功能

1、P0口:

地址低8位与数据线分时使用端口,

2、P1口:

按位可编址的输入输出端口,

3、P2口:

地址高8位输出口

4、P3口:

双功能口。

若不用第二功能,也可作通用I/O口。

5、按三总线划分:

地址线:

P0低八位地址,P2高八地址;

数据线:

P0输入输出8位数据;

控制线:

P3口的8位(RXD、TXD、INT0、INT1、T0、T1、WR*、RD*加上PSEN*、ALE、EA组成制总线。

中断系统

五个中断源,两个优先级

一、中断请求源(“五源中断”)

五个中断源:

入口地址

外部中断0(/INT0)0003H

T0溢出中断000BH

外部中断1(/INT1)0013H

T1溢出中断001BH

串口中断0023H

有了中断请求,如何通知CPU?

通过中断请求标志位来通知CPU。

外部中断源、定时/计数器的中断请求标志位分布在TCON中;

串口中断标志位分布在SCON中。

TCONTF1TR1TF0TR0IE1IT1IE0IT0

SCONTIRI

中断请求标志位

IE0(INT0)IE1(INT1)TF0(T0)TF1(T1)TI/RI(串口)

TF1——T1的溢出中断标志。

硬件置1,硬件清0(也可软件清0)。

TF0——T0的溢出中断标志。

(同TF1,只是针对T0的)

IE1——外部中断1(/INT1)请求标志。

外部有中断请求时,硬件使IE1置1,硬件清0。

IE0——外部中断0(/INT0)请求标志。

IT1——外部中断1(/INT1)触发类型控制位。

IT1=0,低电平触发。

IT1=1,下降沿触发。

IT0——外中断0(/INT0)触发类型控制位,用法同IT1。

外部中断INT0、INT1触发方式有电平触发和跳变触发

TI——串口发送中断标志位。

发送完数据,硬件使TI置1,软件清0(CLRTI)

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

硬件置1,软件清0。

二、中断控制(两级管理)

1、中断屏蔽

在中断源与CPU之间有一级控制,类似开关,其中第一级为一个总开关,

第二级为五个分开关,由IE控制。

IEEAESET1EX1ET0EX0

EA——总控制位

ES——串口控制位若为“1”,允许(开关接通)

ET1——T1中断控制位若为“0”,不允许(开关断开)

EX1——/INT1控制位例如,SETBEA

ET0——T0中断控制位CLRIE.7

EX0——/INT0控制位

2、中断优先级

为什么要有中断优先级?

CPU按中断申请时间先后顺序响应中断,同一时间只能响应一个中断请求。

若同时来了两个或两个以上中断请求CPU响应高级别中断。

为此将5个中断源分成高级、低级两个级别,高级优先,由IP控制。

同时同级的中断源申请中断CPU按优先顺序响应中断。

IPPSPT1PX1PT0PX0

以上各位与IE的低五位相对应,为“1”时为高级。

初始化编程时,由软件确定。

例如,SETBPT0或SETBIP.1

CLRPX0等。

同一级中的5个中断源的优先顺序是:

(注意是同级)

/INT0中断高

T0中断厂家出厂时已固化好顺序

/INT1中断——事先约定

T1中断

串口中断低

中断嵌套同级或低级中断不能打断正在响应的中断的服务程序,高级中断能够打断低级中断服务程序而形成中断嵌套

定时/计数器

定时/计数器两个定时器/计数器T0、T1四种工作方式

中断方式定时器程序初始化主要部分如下

MOVTMOD,#DATA;

设置定时器工作方式

MOVTH0(TH1),#DATA;

给定时器计数器装入初值

MOVTL0(TL1),#DATA

SETBEA;

开中断

SETBET0(ET1);

SETBTR0(TR1);

启动定时器计数器

一、定时/计数器的结构

T0、T1均为16位加1计数器。

计数值高八位

计数值低八位

TH0TH1

TL0TL1

工作方式

控制字

TMOD

工作方式TCON

1、工作方式控制寄存器TMOD

T1T0

TMODGATEC//TM1M0GATEC//TM1M0

GATE——门控位。

GATE=0软件启动,仅由软件置TR0(TR1)为1启动定时器/计数器;

置0停止定时/计数

GATE=1硬件启动,软件置TR0(TR1)为1后.INT0管脚或/INT1管脚高电平启动定时器/计数器。

C//T——外部计数器/定时器方式选择位

C//T=0定时方式;

C//T=1计数方式。

M1M2——工作模式选择位。

M1M0模式说明

00013位定时/计数器八位TH(7~0)+低五位TL(4~0)

01116位定时/计数器TH(7~0)+TL(7~0)

1028位计数初值自动重装TL(7~0)TH(7~0)

113T0工作在两个8位定时/计数。

运行,而T1只能工作方式2,

TCONTR1TR0

TR0——定时/计数器0运行控制位。

软件置位,软件复位。

与GATE有关,分两种情况:

GATE=0时,若TR0=1,开启T0计数工作;

若TR0=0,停止T0计数。

GATE=1 时,若TR0=1且/INT0=1时,开启T0计数;

若TR0=1但/INT0=0,则不能开启T0计数。

若TR0=0,停止T0计数。

TR1——定时/计数器1运行控制位。

用法与TR0类似。

C//T=0——定时

C//T=1——对外计数。

定时:

fosc/12=1/(12/fosc)=1/Tcy

等间隔,次数已定,时间确定

Tcy即对机器周期进行计数。

左图定时时间为n×

Tcy。

n

计数:

脉冲不等间隔。

外部管脚输入(T0P3.4、T1P3.5)每个下降沿计数一次

确认一次负跳变需两个机器周期,(要求计数脉冲的高、低

电平要大于一个机器周期)所以,计数频率最高为fosc/24。

定时器初值计算

计数脉冲的个数N=t(定时时间)/Tcy(机器周期

计数初值X=M(定时计数器的模)-N

方式0X=213-N=8192-N

方式1X=216-N=65536-N

方式2X=28-N=256-N

推荐工作方式1和方式2

例1、设计一个P1.0能产生t=1ms的周期信号发生器,主频试编程。

解:

选T0;

C//T=0,GATE=0定时时间0.5ms

N=t/Tcy=t/(12×

(1/fosc))=500

所以,X=M-500,问:

M取多少?

模式0、模式1均可,取模式1,M=216

X=65536-500=65036=FE0CH

TH00FEH

TL00CH

程序:

ORG0000H

LJMPMAIN

ORG000BH

LJMPINSE1

ORG1000H

MAIN:

MOVSP,#60H

MOVTL0,#0CH

MOVTH0,#0FEH

MOVTMOD,#01H

SETBTR0;

SETBET0;

SETBEA

SJMP$

INSE1:

MOVTL0,#0CH

MOVTH0,#0F0H

CPLP10

RETI

单片机串行接口

8051单片机有一个异步全双工串行通讯口通过RXD(P3.0)接收,通过TXD(P3.1)发送,(串行通信有单工、半双工、全双工),8051单片机串行口有4种工作方式。

异步通信一帧数据的格式如下

空闲位起始位5~8位数据奇偶校验位停止位空闲位

3、串行通信方向

AB

发单工收

发半双工发

收收

A全双工B

发收

收发

4、波特率

即串行通信速率。

b/s、bps

举例、设有一帧信息,1个起始位、8个数据位、1个停止位,传输速率为

240个字符。

求波特率。

(1+8+1)×

240=2400b/s=2400波特。

5、串行通信接口

发送:

CPU通过指令MOVSBUF,A来启动发送发送一帧数据完毕后TI置1,通过查询方式查询到TI=1或中断方式可以继续发送下一帧数据,并软件复位TI=0(CLRTI)

D7D6D5D4D3D2D1D0发送数据寄存器

SBUF(99H)

1D7D6D5D4D3D2D1D00发送数据

发送时钟

接收:

必须置位寄存器SCON,REN位为1才能启动串口接收数据,当接收一帧数据后,RI置1,CPU通过查询RI=1或中断方式,通过指令MOVA.SBUF来取走接收的数据,并软件复位RI=0(CLRRI)

接收时钟

0D0D1D2D3D4D5D6D71接收数据

D0D1D2D3D4D5D6D7接收数据寄存器

SBUF(99H)

CPU

二、MCS-51机串行接口

单片机内有:

通用异步接收/发送器UART

全双工,4种工作方式,波特率可编程设置,可中断。

1、串口的组成

从编程角度讲来看主要由以下寄存器组成。

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

当前位置:首页 > 经管营销 > 人力资源管理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2