单片机原理及应用简单复习11

单片机原理及应用简单复习

第一章 单片机概述

1.单片机:就是在一片半导体硅片上集成了中央处理单元(CPU)、存储器(RAM、ROM)、并行I/O口、定时器/计数器、中断系统、系统时钟电路及系统总线的微型计算机。这样一块集成电路芯片具有一台微型计算机的属性,因而被称为单片机微型计算机,简称单片机。

2.单片机主要应用于测控领域。又成单片机为嵌入式控制器或微控制器。

3.单片机按照其用途分类可分为通用型和专用型两大类。通用型:就是其内部可开发的资源可以全部提供给用户。用户可根据实际需要,设计一个以通用单片机芯片为核心,再配以外围接口电路及其他外围设备,并编写相应的软件来满足各种不同需要的测控系统。专用型:是专门针对某些产品的特定用途而制作的单片机。

4.单片机的发展历史阶段:第一个阶段(1974——1976)单片机初级阶段。第二个阶段:(1976——1978)低性能单片机阶段。第三阶段:(1978——1983)高性能单片机阶段。

5.单片机的特点:体积小、价格低、应用方便、稳定可靠。

6.由单片机为核心的构成的应用系统具有以下优点:功能齐全,应用可靠,抗干扰能力强;简单方便,易于普及;发展迅速,前景广阔;嵌入容易,用途广泛。

7.MCS-51系列单片机:8031内部包括1个8位CPU、128BRAM,21个特殊功能寄存器(SFR),4个8位并行I/O口,1个全双工串行口,2个16位定时器/计数器,5个中断源,但片内无程序存储器,需外扩程序存储器芯片。8051在8031的基础上,片内又集成了4KBROM作为程序存储器。8751与8051相比,片内集成的4KB的EPROM取代了8051的4KBROM作为程序存储器。

第二章 单片机的硬件结构

1.AT89S51单片机的硬件组成: 1) 8位微处理器(CPU); 2) 数据存储器(128B RAM); 3) 程序存储器(4KB Flash ROM);

4) 4个8位可编程并行I/O口(P0口、P1口、P2口和P3口); 5) 1个全双工的异步串行口;

6) 2个可编程的16位定时器/计数器; 7) 1个看门狗定时器;

8) 中断系统具有5个中断源、5个中断向量; 9) 特殊功能寄存器(SFR)26个;

10) 低功耗模式有空闲模式和掉电模式,且具有掉电模式下的中断恢复模式; 11) 3个程序加密锁定位。

2.AT89S51的引脚功能:40个引脚按其功能可分为以下三类: 1) 电源及时钟引脚—VCC、VSS;XTAL1、XTAL2。 2) 控制引脚—

PSEN 、ALE/ PROG、EA/VPP、RST(RESET)

3) I/O口引脚——P0、P1、P2、P3,为4个8位I/O口 3.控制引脚

1) RST (RESET,9脚):复位信号输入,在引脚加上持续时间大于2个机器周期的高电平,可使单片机复位。正常工作,此脚电平应 ≤ 0.5V。

2)

EA/VPP(Enable Address/Voltage Pulse of Programing,31脚):EA引脚的第一功能:外部程序存储器访问允许

控制端。

当EA引脚接高电平时,在PC值不超出0FFFH(即不超出片内4KB Flash存储器的地址范围)时,单片机读片内程序存储器(4KB)中的程序,但PC值超出0FFFH (即超出片内4KB Flash地址范围)时,将自动转向读取片外60KB(1000H-FFFFH)程序存储器空间中的程序。

当EA引脚接低电平时,只读取外部的程序存储器中的内容,读取的地址范围为0000H~FFFFH,片内的4KB Flash

程序存储器不起作用。

VPP为引脚的第二功能,对片内Flash编程,接编程电压。

3)

PSEN(Program Strobe ENable,29脚)片外程序存储器读选通信号,低电平有效。

4.AT89S51的CPU

运算器:主要用来对操作数进行算术、逻辑和位操作运算。主要包括算术逻辑运算单元ALU、累加器A、程序状态字寄存器PSW、位处理器及两个暂存器。

1) 算术逻辑运算单元ALU:可对8位变量逻辑运算(与、或、异或、循环、求补和清零),还可算术运算(加、减、乘、除)

2) 累加器A:作用如下:(1)ALU单元的输入数据源之一,又是ALU运算结果存放单元。(2)数据传送大多都通过累加器A,相当于数据的中转站。

3) 程序状态字寄存器PSW:PSW(Program Status Word)位于片内特殊功能寄存器区,字节地址为D0H。包含了程序运行状态的信息,其中4位保存当前指令执行后的状态,供程序查询和判断。

① Cy(PSW.7)进位标志位:可写为C。在算术和逻辑运算时,若有进位/借位,Cy=1;否则,Cy=0。在位处理器中,它是位累加器。

② Ac(PSW.6)辅助进位标志位:在BCD码运算时,用作十进位调整。即当D3位向D4位产生进位或借位时,Ac=1;否则,Ac=0。

③ F0(PSW.5)用户设定标志位:由用户使用的一个状态标志位,可用指令来使它置1或清0,控制程序的流向。用户应充分利用。

④ RS1、RS0(PSW.4、PSW.3)4组工作寄存器区选择:选择片内RAM区中的4组工作寄存器区中的某一组为当前工作寄存区。

⑤ OV(PSW.2)溢出标志位:当执行算术指令时,用来指示运算结果是否产生溢出。如果结果产生溢出,OV=1;否则,OV=0。

⑥ PSW.1位:保留位

⑦ P(PSW.0)奇偶标志位:指令执行完,累加器A中“1”的个数是奇数还是偶数。

控制器:任务识别指令,并根据指令的性质控制单片机各功能部件,从而保证单片机各部分能自动协调地工作。 控制器包括:程序计数器、指令寄存器、指令译码器、定时及控制逻辑电路等。功能是控制指令的读入、译码和执行,从而对各功能部件进行定时和逻辑控制。

程序计数器PC是一个独立的16位计数器,不可访问。单片机复位时,PC中内容为0000H,从程序存储器0000H单元取指令,开始执行程序。

PC工作过程是:CPU读指令时,PC的内容作为所取指令的地址,程序存储器按此地址输出指令字节,同时PC自动加1。

5.AT89S51存储器的结构,存储器空间可分为4类

1) 程序存储器空间:片内和片外两部分。当片内4KB Flash 存储器不够用时,可片外扩展,最多可扩展至64KB程序存储器。

2) 数据存储器空间:片内与片外两部分。片内有128 B RAM(52子系列为256B)。片内RAM 不够用时,在片外可扩展至64KB RAM 。

3) 特殊功能寄存器SFR (Special Function Register)片内各功能部件的控制寄存器及状态寄存器。SFR综合反映了整个单片机基本系统内部实际的工作状态及工作方式。

4) 位地址空间:共有211个可寻址位,构成了位地址空间。它们位于内部 RAM(共128位)和特殊功能寄存器区(共83位)中。

6.在程序存储器空间中EA引脚接高电平时,CPU从片内0000H开始取指令,当PC值没有超出0FFFH时,只访问片内Flash 存储器,当PC值超出0FFFH自动转向读片外程序存储器空间1000H~FFFFH 内的程序。

EA接低电平时,只能执行片外程序存储器(0000H~FFFFH)中的程序。不理会片内4KB Flash 存储器。

程序存储器某些固定单元用于各中断源中断服务程序入口。64KB程序存储器空间中有5个特殊单元分别对应于5个中断源的中断入口地址,见表。通常这5个中断入口地址处都放一条跳转指令跳向对应的中断服务子程序,而不是直接存放中断服务子程序。

7.数据存储器空间:片内与片外两部分。

1) 片内数据存储器:片内数据存储器(RAM)共128个单元,字节地址为00H~7FH。图为片内数据存储器的结构。00H~1FH 的32个单元是4组通用工作寄存器区,每区包含8B,为R7~R0。可通过指令改变RS1、RS0两位来选择。20H~2FH的16个单元的128位可位寻址,也可字节寻址。30H~7FH的单元只能字节寻址,用作存数据以及作为堆栈

区。

2) 片外数据存储器:当片内128B的RAM不够用时,需外扩,最多可外扩64KB的RAM。注意,片内RAM与片外RAM两个空间是相互独立的,片内RAM与片外RAM的低128B的地址是相同的,但由于使用的是不同的访问指令,所以不会发生冲突。

8.AT89S51的并行I/O端口:4个双向的8位并行I/O端口,分别记为P0、P1、P2和P3,其中输出锁存器属于特殊功能寄存器。端口的每一位均由输出锁存器、输出驱动器和输入缓冲器组成,4个端口按字节输入/输出外,也可位寻址。

1) P0口的特点:P0口为双功能口——地址/数据复用口和通用I/O口。 2) P1口:单功能的I/O口,字节地址为 90H,位地址为 90H~97H。 3) P2口用作地址总线,P2口用作通用I/O口

4) P3口用作第二输入/输出功能,P3口用作第一功能——通用I/O口 9.机器周期、指令周期与指令时序

1) 时钟周期:时钟控制信号的基本时间单位。若晶振频率为fosc,则时钟周期Tosc=1/fosc。

2) 机器周期:CPU完成一个基本操作所需时间为机器周期。执行一条指令分为几个机器周期。每个机器周期完成一个基本操作,如取指令、读或写数据等。每12个时钟周期为1个机器周期。1个机器周期包括12个时钟周期,分6个状态:S1~S6。每个状态又分两拍:P1和P2。

3) 指令周期:执行一条指令所需的时间。12个时钟周期=1个机器周期;几个机器周期=1条指令

第三章 单片机的指令系统

1.指令格式:指令的表示方法。指令通常由两部分组成:操作码和操作数。操作码——指令进行什么操作。操作数——指令操作的对象。

2.7中寻址方式

① 寄存器寻址方式:MOV A,Rn ;(Rn)→A,n =0~7

② 直接寻址方式:MOV A,direct“direct”就是操作数的单元地址。例如: MOV A,40H;MOV direct1,direct2(MOV 42H,62H)

③ 寄存器间接寻址方式:MOV A,@Ri ;i=0或1 ④ 立即数寻址方式:MOV A,#40H

⑤ 基址寄存器加变址寄存器间址寻址方式:MOVC A,@A+DPTR,该指令有三条MOVC A,@A+DPTR MOVC A,@A+PC JMP A,@A+DPTR

⑥ 相对寻址方式:目的地址=转移指令所在的地址+转移指令字节数+rel;LJMP rel

- 3 -

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4