单片机知识点_第1页
单片机知识点_第2页
单片机知识点_第3页
单片机知识点_第4页
单片机知识点_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第1章、 绪论单片机定义:把CPU、寄存器、RAM/ROM、I/O接口等电路集成在一块集成电路芯片上,构成一个完整的微型计算机。单片机特点:体积小、功耗低、性价比高;数据大都在片内传送,抗干扰能力强,可靠性高;结构灵活,应用广泛。单片机发展趋势:数据位长 1->4->8->16->32位;CPU处理能力和速度不断提高;增大片内RAM和ROM容量 ;增加片内I/O口和功能模块种类和数量;扩大对外部RAM/IO口和程序存储器寻址能力;缩小体积,降低功耗。单片机应用:控制应用:应用范围广泛,从实时性角度可分为离线应用和在线应用。软硬件结合:软硬件统筹考虑,不仅要会编程,还要有

2、硬件的理论和实践知识。应用现场环境恶劣:电磁干扰、电源波动、冲击震动、高低温等环境因素的影响。要考虑芯片等级选择、接地技术、屏蔽技术、隔离技术、滤波技术、抑制反电势干扰技术等。应用空间大:工业自动化、仪器仪表、家用电器、信息和通信产品、军事装备、物联网等领域。第三章:MCS-51单片机结构与原理3.1 MCS-51单片机的物理结构及逻辑结构51单片机的引脚定义:P0、P1、P2、P3(输入输出口);RST(复位)/ VPD(后备电源引入端);EA (读内/外ROM控制)/Vpp(编程电压);ALE(地址低8位锁存)/ PROG(编程脉冲);PSEN (外部ROM读选通信号);XTAL1、XTA

3、L2 (外接晶振端)Vcc (+5v电源);Vss (地)逻辑结构-51单片机的系统结构图(教材P26)51单片机基本组成:一个8位微处理器CPU;数据存储器RAM和特殊功能寄存器SFR;内部程序存储器ROM;两个定时/计数器,用以对外部事件进行计数,也可用作定时器;四个8位可编程的I/O(输入/输出)并行端口;一个串行端口,用于数据的串行通信;中断控制系统;内部时钟电路。MCS-51单片机的CPU:运算器:由8位算术逻辑运算单元ALU(Arithmetic Logic Unit)、8位累加器ACC(Accumulator)、8位寄存器B、程序状态字寄存器PSW(Program Status

4、Word)、8位暂存寄存器TMP1和TMP2等组成。控制器:主要由程序计数器PC、指令寄存器IR、指令译码器ID、堆栈指针SP、数据指针DPTR、时钟发生器及定时控制逻辑等组成。MCS-51单片机的输入/输出(I/O)端口结构:MCS-51单片机有4个双向并行的8位I/O口P0P3,P0口为三态双向口,可驱动8个TTL电路,P1、P2、P3口为准双向口(作为输入时,口线被拉成高电平,故称为准双向口),其负载能力为4个TTL电路。端口逻辑结构的总结:P0、P2口具有两个功能:I/O口和总线扩展口;P1口只作I/O口使用;P3口有两个功能:I/O口和第二功能;P0口需要外接上拉电阻;作为准双向口,

5、P1、P2、P3口输入时,应先使场效应管截止,就要求对锁存器进行预置1;4个端口除可按字节寻址外,还可按位寻址。3.2 MCS-51单片机的片外总线结构三总线结构:地址总线(AB):宽度为16位,由P0口经地址锁存器提供低8位地址(A0-A7),P2口直接提供高8位地址(A8A15),是单向的。数据总线(DB):宽度为8位,由P0口提供,是双向的;控制总线(CB):接收各种部件状态,发出控制命令。3.3 MCS-51单片机的存储器配置1、存储器空间分配物理上有四个存储空间: 程序存储器 片内、片外 ;数据存储器 片内、片外逻辑上有三个存储空间: 片内外统一的64KB程序存储地址空间;256B内

6、部数据存储空间;64KB外部数据存储空间使用上有五个存储空间:直接寻址的内部数据存储空间(00H-0FFH);间接寻址的内部数据存储空间(00H-0FFH);外部数据存储空间(0000H-0FFFFH);程序存储空间(0000H-0FFFFH);位存储空间(字节地址20H-2FH,位地址00H-0FFH);特点:数据、程序存储器空间分开;物理存储器有片内外之分;有只能读不能写的存储器;有既能读又能写的存储器;有读写更快的存储器。2、片内数据存储器片内数据存储器低128单元,00H7FH。(1)寄存器区:32个8位寄存器,00H1FH分为4组。每组8个寄存器,分别为R0R7,4个组的选择由状态字

7、中的RS1、RS0的值确定。(2) 位存储区:20H2FH,共16个字节单元,128个位单元。(3) 用户RAM区:30H7FH,通常堆栈放在此区。片内数据存储器高128单元,80H0FFH。 (1)特殊功能寄存器SFR:22个,21个可寻址,PC不可寻址。A、程序计数器PC(16位):用于存放将要执行的指令地址(程序存储器地址),并具有自动加1的功能。B、累加器A(8位):存放运算中的操作数据及运算后的结果。 C、B寄存器(8位):乘除法中的第二个操作数和运算后的结果。D、程序状态字PSW(8位):寄存程序运行中的状态信息。E、栈指针寄存器SP(8位):指向栈顶,PUSH时先加1,后存数。F

8、、其它:数据指针寄存器DPTR(16位)、端口寄存器P0/P1/P2/P3(8位)、串行数据缓冲器SBUF(8位)、定时/计数器T0/T1(16位)、控制寄存器IP/IE/TMOD/TCON/SCON/PCON(8位)。(2)特殊功能寄存器的字节寻址:只能使用直接寻址方式,在指令中既可以使用寄存器符号表示,也可以使用寄存器地址表示。(3)特殊功能寄存器的位寻址:21个SFR中的11个可以位寻址。(4)80H0FFH的间接寻址可作用户的RAM区使用。DATA:直接寻址的内部数据存储空间(00-0FFH)(片内RAM)IDATA:间接寻址的内部数据存储空间(00H-0FFH)(片内RAM)注意:D

9、ATA的00H-7FH区间与IDATA 的00H-7FH区间重叠,即这个区域既可使用直接寻址,也可使用间接寻址。若选择了8051AH 则80H以上的存储器不能用。若选择了8052AH 则80H以上的存储器可用。3、片外数据存储器外部数据存储器又称外部RAM,当片内RAM不能满足数量上的要求时,可通过总线端口和其他I/O口扩展外部数据RAM,其最大容量可达64K字节。在片外数据存储器中,数据区和扩展的I/O口是统一编址的,使用的指令也完全相同,因此,在应用系统设计时,必须合理地进行外部RAM和I/O端口的地址分配,并保证译码的唯一性。XDATA:外部数据存储空间(0000H-0FFFFH) 4、

10、程序存储器程序存储器的包括片内和片外程序存储器两个部分。其主要用来存放编好的用户程序和表格常数,它以16位的程序计数器PC作为地址指针,故寻址空间为64KB。8051片内有4kB(0000H0FFFH),其中特殊保留单元:0000H0002H 无条件转移指令(系统复位后PC=0000H)0003H000AH INT0中断地址区000BH0012H T0中断地址区0013H001AH INT1中断地址区001BH0022H T1中断地址区0023H002AH 串行中断地址区CODE:程序地址空间(0000H-0FFFFH)3.4 CPU的时序及辅助电路1.单片机的时钟电路 两种形式:内部振荡方式

11、:MCS-51片内有一个构成振荡器的高增益反相放大器,XTAL1和XTAL2分别是放大器的输入端和输出端。放大器与外接晶振连接构成了内部自激振荡器并产生振荡时钟脉冲。外部振荡方式:把外部已有的时钟信号引入单片机内。 内部: 外部: 2、 振荡周期、时钟周期、机器周期和指令周期振荡周期:为单片机提供时钟信号的振荡源的周期。时钟周期:是振荡源信号经二分频后形成的时钟脉冲信号。 机器周期:通常将完成一个基本操作所需的时间称为机器周期。指令周期:是指CPU执行一条指令所需要的时间。一个指令周期通常含有14个机器周期。 若晶振为12MHz时,则:振荡周期1/12MHz1/12s0.0833s时钟周期1/

12、6s0.167s机器周期1s指令周期14s4、复位电路及复位状态复位电路:单片机复位电路包括片内、片外两部分。外部复位电路就是为内部复位电路提供两个机器周期以上的高电平而设计的。MCS-51单片机通常采用上电自动复位和按键手动复位两种方式。复位后,P0P3口输出高电平,初值07H写入栈指针SP,清“0”其余的特殊功能寄存器和程序计数器PC。只要RESET保持高电平,单片机循环复位,RESET由高变低后,单片机从0地址开始执行程序。单片机复位不影响内部RAM的状态,包括工作寄存器R0R7。第四章:单片机编程语言基础按照语言的结构及其功能可以分为三种:u 机器语言:机器语言是用二进制代码0和1表示

13、指令和数据的、最原始的程序设计语言。u 汇编语言:汇编语言是用助记符代替机器码表示指令和数据的、便于记忆和使用的、面向机器的专用语言。u 高级语言:高级语言是接近于人的自然语言,面向应用、独立于机器的通用语言。 第五章 定时器与计数器5.1 定时/计数器的结构及工作方式1、定时/计数器结构l 结构:由计数器、计数信号源和计数控制三部分组成。图中,TH和TL是计数器,数字信号的下降沿使其加1;两种计数信号源:系统时钟和引脚T输入的外部信号;其余为计数控制与状态。2、定时/计数器工作方式 有4种工作方式,方式0、1、2,T0、T1的工作原理基本相同,方式3,两个定时器的工作原理不同。方式0:13位

14、计数器(结构图和上图一样,有13位计数器即TL+TH位数)方式1:16位计数器方式2:可自动赋初值的8位计数器方式3:两个独立的8位计数器5.2 定时/计数器的特殊功能寄存器1、方式控制寄存器TMOD(89H)2、定时器控制寄存器TCON(88H)5.3 定时/计数器的编程实例1、定时/计数器常数的计算(1)计数器初值的计算把计数器计满为零所需要的计数值设定为C,计数初值设定为TC,由此可得到公式:TC=M-C式中,M为计数器模值,该值和计数器工作方式有关。在方式0时M为213;在方式1时M为216;在方式2和方式3时M为28。(2)定时器初值的计算在定时器模式下,计数器由单片机主时钟脉冲经1

15、2分频后计数。因此,定时器定时时间T的公式:T=(M-TC)T计数 上式也可写成:TC=M-T/ T计数式中,M为模值,和定时器的工作方式有关;T计数是单片机振荡周期TCLK的12倍;TC为定时器的定时初值。 2、定时/计数器应用实例【应用实例1】设单片机的晶振频率为12MHz,利用T0方式0产生1ms的定时,在P1.0引脚上输出周期为2ms的方波。方式字:TMOD=00H定时初值: TC=M-T/ T计数 T = 1*10-3 ,T计数 = 12/(12x106) = 1*10-6 /周期 TC = 213 1*10-3/1*10-6 = 213 1000 = 7192 = 1C18H TH

16、0 = 1CH , TL0 =18H程序设计:【应用实例2】设单片机的晶振频率为12MHz,利用T0方式2进行计数,T0引脚(P3.4)的3个下降沿使得P1.0引脚上电平翻转一次。方式字:TMOD=06H计数初值: TC=M-C TC = 28 3 = 253 = 0FDH TH0 = TL0 =0FDH程序设计第六章:中断系统结构6.1 中断的概念1. 异常和中断异常(exception):打破CPU正常的执行顺序,并强迫CPU执行一个特殊指令段的事件。异常分为两类:(1)同步异常(synchronous exceptions):由内部事件(CPU指令运行产生的事件)引起的异常。例如:被零除

17、运算产生的异常;断点产生的异常。(2)异步异常(asynchronous exceptions):由外部事件(与CPU指令执行无关的事件)引起的异常。一般外部事件来源于外部硬件装置。例如:复位按键产生的系统复位异常;通信设备引发的接收数据异常。51单片机中的中断是指由CPU外部硬件装置产生的事件引起的异步异常。可以认为中断是硬件与系统中运行的应用程序之间进行通信的一种方法。异常有三方面的用途:1、内部错误处理和特殊条件的管理;如被零除、溢出、断点处理、特权指令等。2、硬件并发处理:多个与CPU并行的外部设备同时申请CPU干预。3、服务请求管理:各个外部装置向CPU请求服务,如定时间隔到、收到数

18、据包等。6.2 中断的系统结构1. 中断的逻辑结构外部中断源:NT0(P3.2) INT1(P3.3) 低电平或下降沿有效内部中断源T0:定时/计数器0中断,由T0回零溢出引起。T1:定时/计数器1中断,由T1回零溢出引起。TI/RI:串行I/O中断,完成一帧字符发送/接收引起。中断服务程序的入口地址: 0000H0002H 无条件转移指令(系统复位后PC=0000H)0003H000AH INT0中断地址区000BH0012H T0中断地址区0013H001AH INT1中断地址区001BH0022H T1中断地址区0023H002AH 串行中断地址区2. 中断的响应过程在每个机器周期的S5

19、P2期间,顺序采样每个中断源,CPU在下一个机器周期S6期间按优先级顺序查询中断标志,如查询到某个中断标志为1,将在再下一个机器周期S1期间按优先级进行中断处理。中断得到响应后自动清除中断标志,由硬件将程序计数器PC内容压入堆栈保护,然后将对应的中断矢量装入程序计数器PC,使程序转向中断矢量地址单元中去执行相应的中断服务程序。中断申请将被封锁情况:(1)CPU正在执行一个同级或高一级的中断服务程序。(2)当前正在执行的那条指令还未执行完。(3)当前正在执行的指令是RETI或对IE,IP寄存器进行读/写指令,执行这些指令后至少再执行一条指令才会响应中断。6.3 中断系统的特殊功能寄存器1、中断允

20、许寄存器IE(A8H)2、中断条件和状态寄存器3、中断优先寄存器IP(B8H)中断优先顺序不同级:先高后低;同级:按如下顺序由高到低,INT0、T0、INT1、T1、TI/RI。6.4 中断系统的应用实例【应用实例】利用定时器和中断技术,设计以秒、分、时为单位的时钟程序。(晶振12MHz)1、任务分析、确定算法、分配存储单元(1)确定最小计时单位: 定时器计时为50ms X 20 = 1s(2)T0工作方式1,计算计数初值: TC=M-T/ T计数=216-50ms/1s=3CB0H(3)中断服务程序:累计20次得到秒,实现秒到分和分到时的计数。(4)时、分、秒各占两位,分别放在30H、31H

21、、32H。第七章 单片机人机交互7.2 数码管接口技术数码管 (又称LED,即发光二极管显示器, light emitting diode),是单片机系统中最常用的显示器件。通常数码管是由8个发光二级管组合而成,当发光二级管的阳极为高电平,阴极为低电平时,发光二级管可以导通发光。控制LED中各二极管亮灭,可以显示不同的字形数码管分为共阴极和共阳极两种结构形式,如图所示。共阴极指所有发光二级管的阳极相互独立,而把所有的阴极连接起来形成公共端,公共端通常需要接地。共阳极指所有发光二极管的阴极相互独立,而把所有的阳极连接起来形成公共端,公共端通常需要接电源。为了能够在数码管上显示某一个字符,需要在它

22、的段选控制端输入不同的电平组合,该电平组合为8位数据,通常称为字型码或者段选码,格式如表7-1所示。字符的字型码都不同,即使是同一个字符,对于共阴极结构和共阳极结构的LED,字型码也不同数码管的显示方式有静态显示方式和动态显示方式两种。(1)静态显示 硬件连线上,每个数码管的公共端都直接接地(共阴极数码管)或接电源(共阳极数码管),各个段选端分别与一个8位的并行I/O端口连接。显示字符时,将各个字符的字型码分别送入相应的I/O端口,使各数码管同时显示不同的字符。参见教材P87,图7-6。(2)动态显示只利用一个用于段选的单片机8位I/O端口循环点亮各数码管,当间隔时间较短时,由于人眼的视觉暂留

23、现象,效果与各数码管静态显示相同。在硬件连线上,将所有的数码管的段选端并联,与一个8位的并行I/O端口连接,每个数码管的位选端分别与另一个I/O端口中的某位连接,轮流输出高电平使各数码管循环点亮。参见教材P89,图7-7。第八章 单片机资源扩展(存储器扩展)存储器芯片的扩展 存储器芯片的位扩展适用场合:芯片容量满足要求,但字长小于存储器系统的要求。例1:用1K×4的2114芯片构成lK×8的存储器系统。根据硬件连线图,可以进一步分析出该存储器的地址分配范围如下:(假设只考虑16位地址)地 址 码 芯 片 的 地 址 范 围A15 . A12 A11 A10 A9 . A0

24、× × 0 0 0 . 0 0 0 0 0 H : : × × 0 0 1 . 1 0 3 F F H 例2: 用2K×8的2716存储器芯片组成8K×8的存储器系统。 地 址 码 地址范围 芯片编号 A15 . A13 A12 A11 A10 A9 . A0 × × 0 0 0 0 . 0 0 0 0 0 H : : 2716-1 × × 0 0 1 1 . 1 0 7 F F H× × 0 1 0 0 . 0 0 8 0 0 H : : 2716-2× 

25、5; 0 1 1 1 . 1 0 F F F H× × 1 0 0 0 . 0 1 0 0 0 H : : 2716-3× × 1 0 1 1 . 1 1 7 F F H× × 1 1 0 0 . 0 1 8 0 0 H : : 2716-4 × × 1 1 1 1 . 1 1 F F F H 例3: 用1K×4的2114芯片组成2K×8的存储器系统。 地 址 码 地址范围 芯片组编号A15 . A13 A12 A11 A10 A9 . A0 × × × 0 0 0

26、 0 0 0 0 0 H : : 2114-1 × × × 0 0 1 1 0 3 F F H× × × 0 1 0 0 0 4 0 0 H : : 2114-2× × × 0 1 1 1 0 7 F F H例4: 一个存储器系统包括2K RAM和8K ROM,分别用1K×4的2114芯片和2K×8的2716芯片组成。要求ROM地址从1000H开始,RAM的地址从3000H开始,完成硬件连线及相应的地址分配表 地 址 码 地址范围 芯片编号A15 A14 A13 A12 A11 A10

27、 A9 . A0 0 0 0 1 0 0 0 0 100 0 H : : 2716-1 0 0 0 1 0 1 1 1 1 7 F F H0 0 0 1 1 0 0 0 1 8 0 0 H : : 2716-20 0 0 1 1 1 1 1 1 F F F H0 0 1 0 0 0 0 0 2 0 0 0 H : : 2716-30 0 1 0 0 1 1 1 2 7 F F H0 0 1 0 1 0 0 0 2 8 0 0 H : : 2716-4 0 0 1 0 1 1 1 1 2 F F F H0 0 1 1 0 0 0 0 3 0 0 0 H : : 2114-10 0 1 1 0 0

28、 1 1 3 3 F F H0 0 1 1 1 0 0 0 3 8 0 0 H : : 2114-20 0 1 1 1 0 1 1 3 B F F H 第九章:串行通信技术9.1 串行通信的基本概念1、串行通信与并行通信串行通信:按照一定的先后顺序、逐位地进行数据传送 。并行通信:采用同时多位的数据传输。 串行传输方式:单工、半双工、全双工。2、串行通信方式按照对数据流的分界、定时和同步的不同,可分为异步串行和同步串行。异步串行:以一个字符作为一帧,随机地出现在信道中。一帧中双方是同步的,帧与帧之间双方是异步的,每一个帧都要重建同步关系。同步串行:以数据块作为一帧,每帧中包含多个字符。多个字符的传输仅建立一次同步关系。一帧中,不仅每一位要同步,而且字符之间也要同步。异步串行用在数据传送时间不确定,发送数据不连续,数据量较少和数据传输率较低的场合。同步串行通信则用于高传输率、连续、量大的数据传输场合。l 异步通信帧格式l 同步通信帧格式同步通信协议可分为面向字符、面向比特和面向字节计数等。以

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论