(完整)单片机知识点,推荐文档_第1页
(完整)单片机知识点,推荐文档_第2页
(完整)单片机知识点,推荐文档_第3页
(完整)单片机知识点,推荐文档_第4页
免费预览已结束,剩余10页可下载查看

付费下载

下载本文档

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

文档简介

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 位锁存) / PRO

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

4、 )、8 位累加器 ACC( Accumulator )、8 位寄存器 B、程序状态字寄存器PSW( Program Status Word )、8 位暂存寄存器TMP1 和 TMP2等组成。控制器:主要由程序计数器PC、指令寄存器 IR、指令译码器ID、堆栈指针SP、数据指针DPTR、时钟发生器及定时控制逻辑等组成。MCS-51 单片机的输入 / 输出( I/O)端口结构: MCS-51 单片机有4 个双向并行的 8 位 I/O 口P0 P3,P0 口为三态双向口,可驱动8 个 TTL 电路, P1、 P2、 P3 口为准双向口(作为输入时,口线被拉成高电平,故称为准双向口),其负载能力为

5、4 个 TTL电路。端口逻辑结构的总结:P0、P2 口具有两个功能: I/O 口和总线扩展口; P1 口只作 I/O 口使用; P3 口有两个功能: I/O口和第二功能;P0 口需要外接上拉电阻;作为准双向口,P1、 P2、P3 口输入时,应先使场效应管截止,就要求对锁存器进行预置1;4 个端口除可按字节寻址外,还可按位寻址。3.2 MCS-51 单片机的片外总线结构三总线结构: 地址总线( AB):宽度为 16 位,由 P0 口经地址锁存器提供低8 位地址( A0-A7),P2 口直接提供高8 位地址( A8 A15),是单向的。数据总线( DB):宽度为 8 位,由 P0 口提供,是双向的

6、;控制总线(CB):接收各种部件状态,发出控制命令。3.3 MCS-51 单片机的存储器配置1、存储器空间分配物理上有四个存储空间:程序存储器片内、片外 ;数据存储器 片内、片外 逻辑上有三个存储空间:片内外统一的 64KB 程序存储地址空间;256B 内部数据存储空间;64KB 外部数据存储空间使用上有五个存储空间:直接寻址的内部数据存储空间(00H-0FFH);间接寻址的内部数据存储空间(00H-0FFH);外部数据存储空间( 0000H-0FFFFH);程序存储空间( 0000H-0FFFFH);位存储空间(字节地址20H-2FH,位地址 00H-0FFH);特点:数据、程序存储器空间分

7、开;物理存储器有片内外之分;有只能读不能写的存储器;有既能读又能写的存储器;有读写更快的存储器。2、片内数据存储器片内数据存储器低128 单元, 00H7FH。(1)寄存器区: 32 个 8 位寄存器, 00H 1FH 分为 4 组。每组 8 个寄存器, 分别为 R0 R7,4 个组的选择由状态字中的 RS1、 RS0的值确定。( 2)位存储区: 20H2FH,共 16 个字节单元, 128 个位单元。( 3)用户 RAM 区: 30H 7FH,通常堆栈放在此区。片内数据存储器高 128 单元, 80H0FFH。( 1)特殊功能寄存器 SFR: 22 个, 21 个可寻址, PC 不可寻址。A

8、、程序计数器PC( 16位):用于存放将要执行的指令地址(程序存储器地址),并具有自动加 1 的功能。B、累加器 A( 8 位):存放运算中的操作数据及运算后的结果。C、 B 寄存器( 8 位):乘除法中的第二个操作数和运算后的结果。D、程序状态字PSW( 8位):寄存程序运行中的状态信息。E、栈指针寄存器SP( 8位):指向栈顶, PUSH时先加 1,后存数。F、其它:数据指针寄存器DPTR( 16 位)、端口寄存器 P0/P1/P2/P3( 8 位)、串行数据缓冲器 SBUF(8 位)、定时 / 计数器 T0/T1(16 位)、控制寄存器 IP/IE/TMOD/TCON/SCON/PCON

9、( 8 位)。( 2)特殊功能寄存器的字节寻址:只能使用直接寻址方式,在指令中既可以使用寄存器符号表示,也可以使用寄存器地址表示。( 3)特殊功能寄存器的位寻址: 21 个 SFR中的 11 个可以位寻址。(4) 80H 0FFH的间接寻址可作用户的RAM 区使用。DATA:直接寻址的内部数据存储空间(00-0FFH)(片内 RAM)IDATA:间接寻址的内部数据存储空间(00H-0FFH)(片内 RAM)注意:DATA的 00H-7FH 区间与 IDATA 的 00H-7FH 区间重叠, 即这个区域既可使用直接寻址,也可使用间接寻址。若选择了 8051AH 则 80H 以上的存储器不能用。若

10、选择了 8052AH 则 80H 以上的存储器可用。3、片外数据存储器外部数据存储器又称外部 RAM,当片内 RAM 不能满足数量上的要求时,可通过总线端口和其他 I/O 口扩展外部数据 RAM,其最大容量可达 64K 字节。在片外数据存储器中,数据区和扩展的I/O 口是统一编址的, 使用的指令也完全相同,因此,在应用系统设计时,必须合理地进行外部 RAM 和 I/O 端口的地址分配,并保证译码的唯一性。XDATA:外部数据存储空间(0000H-0FFFFH)4、程序存储器程序存储器的包括片内和片外程序存储器两个部分。 其主要用来存放编好的用户程序和表格常数,它以 16 位的程序计数器 PC作

11、为地址指针,故寻址空间为 64KB。8051 片内有 4kB( 0000H 0FFFH),其中特殊保留单元:0000H 0002H无条件转移指令(系统复位后0003H 000AHINT0 中断地址区000BH0012HT0 中断地址区0013H 001AHINT1 中断地址区PC=0000H)001BH0022HT1 中断地址区0023H002AH串行中断地址区CODE:程序地址空间(0000H-0FFFFH)3.4 CPU的时序及辅助电路1.单片机的时钟电路两种形式:内部振荡方式: MCS-51 片内有一个构成振荡器的高增益反相放大器,XTAL1和 XTAL2分别是放大器的输入端和输出端。放

12、大器与外接晶振连接构成了内部自激振荡器并产生振荡时钟脉冲。外部振荡方式:把外部已有的时钟信号引入单片机内。内部:外部:2、振荡周期、时钟周期、机器周期和指令周期振荡周期:为单片机提供时钟信号的振荡源的周期。时钟周期:是振荡源信号经二分频后形成的时钟脉冲信号。机器周期:通常将完成一个基本操作所需的时间称为机器周期。指令周期: 是指 CPU执行一条指令所需要的时间。一个指令周期通常含有1 4 个机器周期。若晶振为12MHz 时,则:振荡周期 1/12MHz 1/12 s 0.0833 s时钟周期 1/6 s 0.167 s机器周期 1s指令周期 14 s4、复位电路及复位状态复位电路: 单片机复位

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

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

15、,两个定时器的工13 位计数器即TL+TH位数)方式 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)定时器初值的计算在定时器模式下,计数器由单片机主时

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

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

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

19、CPU干预。3、服务请求管理:各个外部装置向CPU请求服务,如定时间隔到、收到数据包等。6.2 中断的系统结构1. 中断的逻辑结构外部中断源: NT0( P3.2) INT1( P3.3) 低电平或下降沿有效内部中断源T0:定时 / 计数器 0 中断,由T0 回零溢出引起。T1:定时 / 计数器 1 中断,由T1 回零溢出引起。TI/RI:串行 I/O 中断,完成一帧字符发送/ 接收引起。中断服务程序的入口地址:0000H 0002H0003H 000AH无条件转移指令(系统复位后INT0 中断地址区PC=0000H)000BH0012H0013H 001AHT0 中断地址区INT1 中断地址

20、区001BH0022HT1 中断地址区0023H002AH串行中断地址区2. 中断的响应过程在每个机器周期的S5P2期间,顺序采样每个中断源,CPU在下一个机器周期S6 期间按优先级顺序查询中断标志,如查询到某个中断标志为1,将在再下一个机器周期S1 期间按优先级进行中断处理。中断得到响应后自动清除中断标志,由硬件将程序计数器PC内容压入堆栈保护,然后将对应的中断矢量装入程序计数器PC,使程序转向中断矢量地址单元中去执行相应的中断服务程序。中断申请将被封锁情况:( 1) CPU正在执行一个同级或高一级的中断服务程序。( 2)当前正在执行的那条指令还未执行完。( 3)当前正在执行的指令是 RET

21、I或对 IE, IP 寄存器进行读 / 写指令,执行这些指令后至少再执行一条指令才会响应中断。6.3 中断系统的特殊功能寄存器1、中断允许寄存器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/

22、 T 计数 =216-50ms/1 s=3CB0H( 3)中断服务程序:累计 20 次得到秒,实现秒到分和分到时的计数。( 4)时、分、秒各占两位,分别放在30H、 31H、 32H。第七章单片机人机交互7.2 数码管接口技术数码管 (又称 LED,即发光二极管显示器 , light emitting diode) ,是单片机系统中最常用的显示器件。通常数码管是由 8 个发光二级管组合而成,当发光二级管的阳极为高电平,阴极为低电平时,发光二级管可以导通发光。控制LED中各二极管亮灭,可以显示不同的字形数码管分为共阴极和共阳极两种结构形式,如图所示。共阴极指所有发光二级管的阳极相互独立,而把所有

23、的阴极连接起来形成公共端,公共端通常需要接地。共阳极指所有发光二极管的阴极相互独立,而把所有的阳极连接起来形成公共端,公共端通常需要接电源。为了能够在数码管上显示某一个字符,需要在它的段选控制端输入不同的电平组合,该电平组合为 8 位数据,通常称为字型码或者段选码,格式如表7-1 所示。字符的字型码都不同,即使是同一个字符,对于共阴极结构和共阳极结构的LED,字型码也不同数码管的显示方式有静态显示方式和动态显示方式两种。(1)静态显示硬件连线上 ,每个数码管的公共端都直接接地 (共阴极数码管) 或接电源(共阳极数码管) ,各个段选端分别与一个 8 位的并行 I/O 端口连接。显示字符时,将各个

24、字符的字型码分别送入相应的I/O端口,使各数码管同时显示不同的字符。参见教材P87,图 7-6。(2)动态显示只利用一个用于段选的单片机 8 位 I/O 端口循环点亮各数码管,当间隔时间较短时,由于人眼的视觉暂留现象,效果与各数码管静态显示相同。在硬件连线上,将所有的数码管的段选端并联,与一个 8 位的并行 I/O 端口连接,每个数码管的位选端分别与另一个 I/O 端口中的某位连接 ,轮流输出高电平使各数码管循环点亮。参见教材P89,图 7-7。第八章单片机资源扩展(存储器扩展)存储器芯片的扩展存储器芯片的位扩展适用场合:芯片容量满足要求,但字长小于存储器系统的要求。例 1:用 1K×

25、; 4 的 2114 芯片构成lK× 8 的存储器系统。根据硬件连线图 ,可以进一步分析出该存储器的地址分配范围如下:(假设只考虑16 位地址)地址码芯片的地址范围A15 .A12 A11A10A9. A0××000.00000H:××001.103FFH例2:用2K×8 的2716存储器芯片组成8K× 8 的存储器系统。地址码地址范围芯片编号A15 . A13A12A11A10A9 . A0××0000 .00000H:2716-1××0011 .107FFH××

26、0100 .00800H:2716-2××0111 .10FFFH××1000 .01000H:2716-3××1011 .117FFH××1100 .01800H:2716-4××1111 .11FFFH例 3: 用 1K×4 的 2114 芯片组成2K× 8 的存储器系统。地址码地址范围芯片组编号A15 . A13A12A11A10 A9 . A0×××000 00000H:2114-1×××001 103FFH

27、×××010 00400H:2114-2×××011 107FFH例 4: 一个存储器系统包括2K RAM 和 8K ROM,分别用1K×4的 2114 芯片和 2K×8的 2716芯片组成。要求ROM 地址从1000H 开始, RAM 的地址从3000H 开始,完成硬件连线及相应的地址分配表地址码地址范围芯片编号A15 A14 A13 A12 A11 A10 A9 . A0000100001000H:2716-10001011117FFH000110001800H:2716-2000111111FFFH00100

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

温馨提示

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

评论

0/150

提交评论