单片机硬件及程序详细讲稿Word文档下载推荐.doc

上传人:wj 文档编号:3962177 上传时间:2023-05-02 格式:DOC 页数:60 大小:13.96MB
下载 相关 举报
单片机硬件及程序详细讲稿Word文档下载推荐.doc_第1页
第1页 / 共60页
单片机硬件及程序详细讲稿Word文档下载推荐.doc_第2页
第2页 / 共60页
单片机硬件及程序详细讲稿Word文档下载推荐.doc_第3页
第3页 / 共60页
单片机硬件及程序详细讲稿Word文档下载推荐.doc_第4页
第4页 / 共60页
单片机硬件及程序详细讲稿Word文档下载推荐.doc_第5页
第5页 / 共60页
单片机硬件及程序详细讲稿Word文档下载推荐.doc_第6页
第6页 / 共60页
单片机硬件及程序详细讲稿Word文档下载推荐.doc_第7页
第7页 / 共60页
单片机硬件及程序详细讲稿Word文档下载推荐.doc_第8页
第8页 / 共60页
单片机硬件及程序详细讲稿Word文档下载推荐.doc_第9页
第9页 / 共60页
单片机硬件及程序详细讲稿Word文档下载推荐.doc_第10页
第10页 / 共60页
单片机硬件及程序详细讲稿Word文档下载推荐.doc_第11页
第11页 / 共60页
单片机硬件及程序详细讲稿Word文档下载推荐.doc_第12页
第12页 / 共60页
单片机硬件及程序详细讲稿Word文档下载推荐.doc_第13页
第13页 / 共60页
单片机硬件及程序详细讲稿Word文档下载推荐.doc_第14页
第14页 / 共60页
单片机硬件及程序详细讲稿Word文档下载推荐.doc_第15页
第15页 / 共60页
单片机硬件及程序详细讲稿Word文档下载推荐.doc_第16页
第16页 / 共60页
单片机硬件及程序详细讲稿Word文档下载推荐.doc_第17页
第17页 / 共60页
单片机硬件及程序详细讲稿Word文档下载推荐.doc_第18页
第18页 / 共60页
单片机硬件及程序详细讲稿Word文档下载推荐.doc_第19页
第19页 / 共60页
单片机硬件及程序详细讲稿Word文档下载推荐.doc_第20页
第20页 / 共60页
亲,该文档总共60页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

单片机硬件及程序详细讲稿Word文档下载推荐.doc

《单片机硬件及程序详细讲稿Word文档下载推荐.doc》由会员分享,可在线阅读,更多相关《单片机硬件及程序详细讲稿Word文档下载推荐.doc(60页珍藏版)》请在冰点文库上搜索。

单片机硬件及程序详细讲稿Word文档下载推荐.doc

二、微处理器

微处理器由运算器和定时控制逻辑等部件构成,它是单片机内的核心部件。

1.运算器

由算术逻辑部件ALU、累加器A、寄存器B、暂存器、程序状态字PSW、十进制调整电路以及布尔处理器等组成。

运算器用来实现数据的算术逻辑运算、位处理和数据传送等操作。

2.定时控制逻辑

定时控制逻辑用来产生操作时序信号,它是单片机的心脏。

A.时钟电路:

MCS-51芯片内有一个由反向放大器所构成的振荡电路。

XTAL1为振荡电路的输入端,XTAL2为输出端。

通常晶振频率为1·

2MHZ~12MHZ。

B.时序:

a.机器周期

机器周期是指CPU与存储器进行一次通信所需的时间。

MCS-51的每个机器周期由6个S状态组成,每个状态周期由2个P节拍组成,每个节拍持续一个振荡器周期。

若采用6MHZ的晶体振荡器,则每个机器周期为2μS。

机器周期频率为F晶/12。

b.指令周期

指令周期是指执行一条指令所需的时间。

在MCS-51的指令系统中,指令长度为1~4字节,其中单/双字节指令的指令周期为1~2,3字节指令的指令周期为2个机器周期,乘除指令的指令周期为4个机器周期,若采用6MHZ晶体振荡器,则指令执行时间分别为2μS、4μS、8μS。

c.指令的取指和执行时序

指令的取指和执行时序如图所示。

其中ALE信号为允许地址锁存信号。

通常,每个机器周期ALE两次有效。

但在访问外部数据存储器的机器周期内,ALE信号只一次有效,因此ALE的频率是不稳定的。

为了得到一个频率稳定的信号,通常要将ALE与读写信号(RD/WR)相或。

ALE信号频率为F晶/6。

3.复位和复位电路

A.复位

在复位输入端加上高电平,MCS-51将被初始化复位,此时有关寄存器状态如下:

PC:

0000H

SP:

07H

PO-P3:

FFH

A.B.PSW.IP.IE:

00H

TMOD.TCON.TH0.TL0.TH1.TL1.SCON:

DPTR:

RES端由高变低后,MCS-51将退出复位,从0000H开始执行程序。

B.复位电路

上电复位电路,手动复位电路,系统复位电路(专用芯片有MAX708):

C.看门狗电路

看门狗电路是一个定时产生复位信号的电路。

在正常工作情况下,软件不断产生复位定时器信号,看门狗电路无输出;

一旦单片机由于干扰进入程序死循环后,看门狗电路将定时输出一RES信号,使系统复位,从而使程序脱离死循环。

电路分析:

软件通过P1.X定时产生脉冲,通过微分电路,定时使4060复位,从而Q14无输出,一旦程序跑非,则Q14有输出,使之产生RES复位信号。

专用芯片有MAX691,24C021等。

三、存储器

单片机的程序存储器、内部数据存储器、外部数据存储器的空间是相互独立的。

程序存储器用于存放编好的程序和数据表格。

数据存储器用来作为数据缓冲器、堆栈、工作寄存器以及软件标志等。

四、输入/输出(I/O)口

MCS-51有四个双向的8位I/O口P0-P3。

1.P1口

P1口为准双向口,每一位的结构如图所示。

它可独 立地用作输入线或输出线,作为输入线,必须将1写入口锁存器,使T1截止。

2.P3口

P3口为准双向口,每一位的结构如图所示。

P3

口为双功能口。

第一功能:

第2输出功能控制线为高,功能与P1口相同。

第二功能:

口线锁存器为“1”状态,口线功能定义如下:

(第2输出功能线电平取决于输出信号的高低):

P3.0RXD串行输入口P3.2INTO外中断入0

P3.1TXD串行输出口P3.3INT1外中断入1

P3.4T0定时器0外入P3.6WR外数据存储器写

P3.5T1定时器1外入P3.7RD外数据存储器读

3.P2口

P2口为准双向口,每一位锁存器驱动的结构如图所示。

P2口可以作为I/O口使用,也可作为扩展系统的地址总线口使用,输出高8位地址。

4.P0口

P0口为三态双向口,每一位的结构如图所示。

对于8051/8751,它可作I/O口用,也可作地址、数据总线口;

对于8031,它只能作地址、数据总线口。

五、MCS-51的引脚说明

MCS-51单片机采用40引脚双列直插方式封装,其引脚信号功能如下:

1.电源引脚

Vcc:

(40)+5VVss:

(20)接地

2.外接晶体引脚

XTAL1(19)XTAL2(18)

3.I/O引脚

P0.0-P0.7(39-32)

P1.0-P1.7(1-8)

P2.0-P2.7(21-28)

P3.0-P3.7(10-17)

4.控制引脚

RST(9):

复位信号,输入、高电平有效。

ALE(30):

允许地址锁存信号,输出,高电平有效。

用于锁存外存地址的低8位字节,它还可作为外输出的时钟,其频率约为振荡器晶振频率的1/6。

PSEN(29):

外程序存储器读选通信号,输出,低电平有效。

EA(31):

程序存储器内外选择信号,输入。

EA为高时:

PC值为0000~0FFFH:

访内部程序存储器。

PC值为1000~FFFFH:

访外部程序存储器

EA为低时:

只访外部程序存储器

附:

P0,P2口作为地址/数据总线口使用时,其总线结构如图所示:

第二章MCS-51存储器组织

MCS-51系列单片机的存储器组织结构如图所示。

一、程序存储器

程序存储器空间为64K。

扩充的外程序存储器与MCS-51的连接电路如图所示。

二、内部数据存储器

MCS-51单片机内部有128个字节数据存储器,内部RAM的编址为00H-7FH。

不同的地址区域,其功能不完全相同,功能结构如表所示。

7FH

数据缓冲区

30H

2FH

位寻址区00-7FH

20H

1FH

工作寄存区3R0-R7

18H

17H

工作寄存区2R0-R7

10H

0FH

工作寄存区1R0-R7

08H

工作寄存区0R0-R7

1.寄存器区

工作寄存器和数据存储器统一编址。

当前程序使用的工作寄存器是由程序状态字PSW的3、4位确定的。

PSW的状态和工作寄存器区对应关系如表所示:

CPU通过程序修改PSW中的3、4位状态,就能任选一个工作寄存区,这使单片机具有快速保护现场之功能。

2.位寻址区

内部RAM的20H-2FH为位寻址区,这16个单元的每一位有一个8位地址,其范围为00H-7FH.位寻址区的每一位都可视作软件触发器,可由程序直接进行位处理。

同样,位寻址区的RAM单元也可作为一般存储单元使用。

3.堆栈区

MCS-51的堆栈原则上可设在RAM的任意区域内,但一般设在30H-7FH范围内。

其栈底位置由SP指出。

4.数据缓冲区

内部RAM的30H-7FH单元可作为一般存储单元使用。

三、特殊功能寄存器

MCS-51的I/O锁存器、定时器、串行口数据缓冲器以及各种控制寄存器和状态寄存器都以特殊功能寄存器形式出现。

它们离散分布在80H-FFH地址空间,其特殊功能寄存器的地址如下表所示。

PSW.4

PSW.3

当前使用0的工作寄存器区

0区

1

1区

2区

3区

80H

口0

90H

口1

SP

81H

栈指针

SCON

98H

串行口控制寄存器

DPL

82H

数据指针低

SBUF

99H

串行口数据寄存器

DPH

83H

数据指针高

A0H

口2

PCON

87H

掉电控制寄

IE

A8H

中断使能控制寄

TCON

88H

定时器控制寄

B0H

口3

TMOD

89H

定时器方式寄

IP

B8H

中断优先级寄存器

TL0

8AH

定时器0低寄

PSW

D0H

程序状态字

TL1

8BH

定时器1低寄

ACC

E0H

累加器

TH0

8CH

定时器0高寄

B

F0H

寄存器(用于×

÷

中)

TH1

8D

定时器1高寄

 

四、位寻址空间

MCS-51的位地址空间为00-FFH,其中00-7FH为内部RAM中20H-2FH的16个单元的128位。

凡是字节地址能被8整除的特殊功能寄存器都具有位地址。

位地址

表如下表所示。

字节地址

位7(D7)

位0(D0)

78H

80H(P0)

E0H(ACC)

E7H

F0H(B)

F7H

MCS-51能对位地址空间中的位直接寻址,执行置位、清“0”、取反、“0”跳、“1”跳等操作。

五、外数据存储器和I/O口

MCS-51的外部数据存储器寻址空间为64K,其外部I/O口与外部数据存储器统一编址,即把外设作为外部数据存储器的一部分。

对外部数据存储器采用间接寻址方式。

其R0、R1、DPTR都可作间址寄存器使用。

R0、R1的寻址范围为256B,DPTR为64KB.

第三章MCS-51指令系统

MCS-51共有111种指令,其单字节指令49种,双字节指令47种,三字节指令仅15种。

从执行时间看,单周期指令64种,双周期指令45种。

只有乘除2条指令执行时间为4个机器周期。

一.寻址方式

用以确定一条指令的操作数或操作数地址的方法。

1.立即寻址

A.操作数包含在指令字节中

B.例:

MOVA,#70H(立即数前面必须有“#”号)

2.寄存器寻址

A.操作数在某一寄存器中。

B.例:

INCR0

3.直接寻址

A.操作数的地址包含在指令字节中。

MOVA,70H

4.寄存器间接寻址

A.操作数的地址在某一寄存器中。

B.例:

ANLA,@R0(寄存器间址必须带@号)

5.基址寄存器加变址寄存器间接寻址

A.程序存储器某一单元地址为基址寄存器(DPTR或PC)的内容与变址寄存器(A)的内容之和。

MOVCA,@A+DPTR

设:

DPTR=0400H,A=05H,则执行后将0405H单元内容送A中。

6.相对寻址

A.操作数为转移地址的位移量,其转移地址=PC当前值+位移量。

B.例:

JC80H

设指令地址为:

1005H, 则转移地址为:

1007+FF80=0F87H

7.例:

分析下面程序,说明源操作数寻址方式及指令执行 结果

MOVR0,#40H MOVA,40H

MOV@R0,#30H MOVDPTR,#2400H

MOVP1,R0 MOVX@DPTR,A

MOVP2,P1

8.注意:

MCS-51具有5个存储器空间。

程序存储器空间:

0000~FFFFH

内部RAM空间:

00~FFH

特殊功能寄存器空间:

80~FFH

位地址空间:

00~FFH

外部RAM/IO空间:

指令对哪一个存储器空间进行操作是由指令的操作码和寻址方式确定的。

A.对程序存储器只能采用基寄存器加变址寄存器间接寻址方式。

(movc)

B.特殊功能寄存器能采用立即寻址,寄存器寻址,直 接寻址方式,不能采用寄存器间接寻址方式。

C.MCS-52单片机内部RAM的高128B(80~FFH)只能采 用寄存器间接寻址方式,不能采用立即寻址,寄存器 寻址,直接寻址方式。

D.位操作指令只能对位寻址区操作。

E.外部扩展的数据存储器只能用MOVX指令访问。

F.内部RAM的低128B(00~7FH)既能用立即寻址,寄存器 寻址,直接寻址,又能用寄存器间接寻址,操作指令 最丰富。

二、专用寄存器

1.程序计数器PC(16位)存放下一条要执行的指令地址(程序存储器地址)

2.累加器A(8位)

寄存器B(16位)用于乘除指令中,在其他指令中可作一般RAM单元用。

3.栈指针SP(8位),SP指向栈底

4.数据指针DPTR(16位)主要用来保存16位地址,对外数据存储器可作为间址寄存器用,对程序存储器可作为基址寄存器用。

【寄存器R0-R7为通用寄存器】

5.程序状态寄存器PSW(8位)

PSW寄存器用来保存指令执行结果的标志,以供程序查寻判别。

其格式如下所示。

D7

D6

D5

D4

D3

D2

D1

D0

CY

F0

RS1

RS0

OV

-

P

注:

MCS-51机无Z标志,它的转移指令JZ、JNZ是直接测试A中内容是否为0转移。

CY:

进位标志。

AC:

半进位标志(用于BCD加法调整中)

OV:

溢出标志。

P:

奇偶标志(A的“1”的个数为奇,则P=1,否则P=0。

它只随A的变化而变化)

RS1,RS0:

寄存器区选择标志,它指示当前使用的工作寄存器

F0:

用户标志位(可作为软件标志)

6.例:

执行下面指令后,A.CY.P.OV的值。

设A=C9H,CY=1。

A.ADDA,#8CH

A=55HCY=1P=0OV=1

B.ANLA,#7AH

A=48HCY=0P=0OV=0

C.SUBBA,#8DH

A=3BHCY=0P=1OV=0

D.ADDCA,#F0H

A=BAHCY=1P=1OV=0

三、指令系统

1.数据传送类指令

A、以A为目的操作数的指令

MOVA,Rn (Rn为R0~R7中一个)

MOVA,direct (direct为内RAM的单元地址)

MOVA,@Ri (Ri为R0,R1中一个)

MOVA,#data (data为8位常数)

B、以Rn为目的操作数的指令

MOVRn,A

MOVRn,direct

MOVRn,#data

以直接地址为目的操作数的指令

MOVdirect,A

MOVdirect,Rn

MOVdirect,direct

MOVdirect,@Ri

MOVdirect,#data

D、以寄存器间接地址为目的操作数的指令

MOV@Ri,A

MOV@Ri,direct

MOV@Ri,#data

E、堆栈指令

PUSHdirect (先SP+1à

SP,后(n)à

[SP])

POPdirect (先[SP]à

(n),后SP-1à

SP)

F、累加器与外部数据存储器传送指令

MOVXA,@Ri(Ri为低8位地址,P2为高8位地址)

MOVX@Ri,A

MOVXA,@DPTR

MOVX@DPTR,A

G、查表指令

MOVCA,@A+PC (A中内容(无符号数)与PC当前值之和为地址)

MOVCA,@A+DPTR

H、字节交换指令

XCHA,Rn

XCHA,direct

XCHA,@Ri

I、半字节交换指令

XCHDA,@Ri (低4位变换,高4位不变)

J、16位数据传送指令

MOVDPTR,#data16

K、举例

a.设(70H)=60H,(60H)=20H,B=50H,则运行下面程序后,(70H)=44H,B=20H,R0=70H,R1=60H

MOVR0,#70H

MOVA,@R0

MOVR1,A

MOVB,@R1

MOV@R0,#44H

b.设SP=60H,A=30H,B=70H,则运行下面程序后,SP、A、B保持不变,DPTR=3070H。

PUSHAcc

PUSHB

POPDPL

POPDPH

c.程序存储器1030H单元内容为47H,则运行下面程序后,数据存储器3740H单元内容为47H.

MOVDPTR,#1030H

MOVA,#00H

MOVCA,@A+DPTR

MOVDPTR,#3740H

MOVX@DPTR,A

d.用两种方法实现A和B交换。

1)XCHA,B

2)MOVR0,B

MOVB,A

MOVA,R0

2.算术运算指令

A、加法指令(按结果影响CY、AC、OV标志)

ADDA,Rn

ADDA,direct

ADDA,@Ri

ADDA,#data

ADDCA,direct

ADDCA,Rn

ADDCA,@Ri

ADDCA,#data

B、减法指令(按结果影响CY、AC、OV标志)

SUBBA,Rn

SUBBA,direct

SUBBA,@Ri

SUBBA,#data

C、增“1”指令(不影响CY、AC、OV标志)

INCA

INCRn

INCdirect(INCPi,Pi值将从口锁存器而不是从引脚读入)

INC@Ri

INCDPTR

D、减“1”指令(不影响CY、AC、OV标志)

DECA

DECRn(DECPi,Pi值将从口锁存器而不是从引脚读入)

 DECdirect

DEC@Ri

E、十进制调整指令

DAA (只对加法结果进行调整)

F、乘法指令

MULA,B (A*Bà

BHAL)

G、除法指令

DIVA,B(A/Bà

A,余存B)

H、例1:

用三种方法将A中无符号数乘2。

1)MOVR0,A

ADDA,R0

2)MOVB,#2

MULAB

3)CLRC

RLCA

例2:

计算50H-54H单元中数的平均值,5单元中数之和 小于255。

ST:

MOVR0,#50H MOVB,#05H

MOVR1,#05H DIVAB

MOVA,#00H MOV55H,A

L1:

ADDA,@R0L2:

SJMPL2

INCR0

DJNZR1,L1

例3:

计算R2R3*10,积存于R2R3中。

设积小于9999。

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

当前位置:首页 > PPT模板 > 商务科技

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

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