单片机原理与应用_03MCS-51单片机的组成原理_第1页
单片机原理与应用_03MCS-51单片机的组成原理_第2页
单片机原理与应用_03MCS-51单片机的组成原理_第3页
单片机原理与应用_03MCS-51单片机的组成原理_第4页
单片机原理与应用_03MCS-51单片机的组成原理_第5页
已阅读5页,还剩82页未读 继续免费阅读

下载本文档

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

文档简介

1、第3章 MCS-51单片机的组成原理3.1 3.1 概概 述述 3.6 3.6 定时器定时器/ /计数器计数器3.2 3.2 中央处理器中央处理器 3.7 3.7 串行串行I/OI/O接口接口3.3 3.3 存储器存储器 3.83.8中断控制系统中断控制系统3.4 3.4 布尔处理机布尔处理机 3.9 MCS-513.9 MCS-51单片机外部特性单片机外部特性3.5 3.5 并行并行I/OI/O接口接口 3.10 EPROM3.10 EPROM的编程、检查与擦除的编程、检查与擦除 3.11 89C513.11 89C51单片机的组成与特点单片机的组成与特点3.1 3.1 概概 述述 MCS-

2、51 MCS-51系列单片机是把构成计算机的系列单片机是把构成计算机的CPUCPU、存储器、寄存器组、存储器、寄存器组、I/OI/O接口制作在一块集成电路芯片中。另外,还集成有定时器接口制作在一块集成电路芯片中。另外,还集成有定时器/ /计数器、串计数器、串行通信接口等部件,因此可方便地用于定时控制和远程数据传送。在行通信接口等部件,因此可方便地用于定时控制和远程数据传送。在MCS-51MCS-51系列单片机中,主要有系列单片机中,主要有80318031、80518051、87518751及及80C5180C51等型号。等型号。 随着超大规模集成电路的发展,单片机的内部结构仍在不断地扩大随着超

3、大规模集成电路的发展,单片机的内部结构仍在不断地扩大,功能在不断提高,其型号与类型也在不断地变换。例如,功能在不断提高,其型号与类型也在不断地变换。例如8052AH8052AH、8032Ah8032Ah、8752BH8752BH采用采用HMOSHMOS工艺制成,内部工艺制成,内部ROM/RAMROM/RAM的容量增大了一倍。的容量增大了一倍。80C51BH80C51BH系列采用系列采用CHMOSCHMOS工艺制成,功耗低,其中工艺制成,功耗低,其中87C5187C51具有两级存储器具有两级存储器保密系统,可防止非法拷贝。保密系统,可防止非法拷贝。8052AH-BASIC8052AH-BASIC

4、芯片内部固化有芯片内部固化有MCS BASIC MCS BASIC 5252解释程序,可使解释程序,可使BASIC 52BASIC 52语言与汇编语言混合使用。语言与汇编语言混合使用。 又如可编程计数阵列型单片机又如可编程计数阵列型单片机80C51FA80C51FA具有具有5 5个比较个比较/ /捕捉模块,捕捉模块,每个模块可执行每个模块可执行1616位的正跳变捕捉、负跳变捕捉和正负跳变捕捉,位的正跳变捕捉、负跳变捕捉和正负跳变捕捉,可执行可执行1616位软件定时、位软件定时、1616位高速输出及位脉冲宽度调制输出等,另位高速输出及位脉冲宽度调制输出等,另外还有一个增强的多机串行通信接口。外还

5、有一个增强的多机串行通信接口。 A/DA/D型单片机型单片机80C51GA80C51GA具有具有8 8路路8 8位位A/DA/D转换器、半双工同步串行通转换器、半双工同步串行通信接口、信接口、1616位程序监视跟踪定时器,扩展了位程序监视跟踪定时器,扩展了A/DA/D中断和串行口中断,中断和串行口中断,使中断源达使中断源达7 7个之多。个之多。 多并行接口型单片机多并行接口型单片机80C45180C451增加了两个增加了两个8 8位并行位并行I/OI/O接口接口P4P4口和口和P5P5口,从而提高了数据的吞吐能力。口,从而提高了数据的吞吐能力。 DMADMA(直接存储器存取方式)型单片机(直接

6、存储器存取方式)型单片机80C52JA80C52JA具有用于具有用于DMADMA传送传送的目的地址寄存器、源地址寄存器和字节计数器,支持的目的地址寄存器、源地址寄存器和字节计数器,支持DMADMA传送,且传送,且在在80C45280C452中设有中设有128128字节的双向先进先出(字节的双向先进先出(FIFOFIFO)RAMRAM阵列,支持从阵列,支持从一个一个RAMRAM到另一个到另一个RAMRAM的高速数据传送。的高速数据传送。 目 前 , 使 用 较 多 的 还 有目 前 , 使 用 较 多 的 还 有 8 9 C 5 18 9 C 5 1 型 单 片 机 , 其 内 部 有型 单 片

7、 机 , 其 内 部 有4KB/8KB/16KB/32KB/64KB4KB/8KB/16KB/32KB/64KB的的FlashFlash程序存储器、程序存储器、128/256/512/1024128/256/512/1024字节的字节的随机存取数据存储器、随机存取数据存储器、3 3个定时器个定时器/ /计数器,采用双计数器,采用双DPTRDPTR结构,有结构,有6 6个中断个中断源,分源,分4 4个优先级控制,可低电压运行,且有较强的抗电磁干扰能力。个优先级控制,可低电压运行,且有较强的抗电磁干扰能力。 本章仍以本章仍以80518051为例,讲述单片机的基本组成与工作原理,然后介绍为例,讲述单

8、片机的基本组成与工作原理,然后介绍89C5189C51单片机的组成与特点。单片机的组成与特点。 80518051单片机的内部结构单片机的内部结构如图如图3.13.1所示,包含所示,包含1 1个个8 8位中央处理器位中央处理器CPUCPU、4KB4KB程序存储器程序存储器EPROMEPROM、128B128B随机存取存储器随机存取存储器RAMRAM、4 4个个8 8位并行位并行I/OI/O接口、接口、1 1个全双工串行通信接口、个全双工串行通信接口、2 2个个1616位定时器位定时器/ /计数器及计数器及2121个特殊功能寄存器个特殊功能寄存器。外部具有。外部具有64KB64KB程序存储器寻址能

9、力和程序存储器寻址能力和64KB64KB数据存储器寻址能力。指令数据存储器寻址能力。指令系统中增加了乘除法指令,提高了运算及数据处理能力,且具有位操作系统中增加了乘除法指令,提高了运算及数据处理能力,且具有位操作能力。能力。 图3.1 8051单片机内部组成P1P1口锁存器P1口驱动器8 PCON SCON TMOD TCONSBUF(TX) SBUF(RX) IE IP TH0 TL0 TH1 TL1中断、串行口和定时器部件P3P3口锁存器P3口驱动器8PSEN EARSTALE指令寄存器IR定时控制逻辑寄存器BSPRAM1288+5VVCC地址寄存器RAMP0口锁存器P0P0口驱动器8RO

10、M4K8P2口锁存器P2P2口驱动器8PSW暂存寄存器1暂存寄存器2累加器A算术逻辑部件ALU程序地址寄存器 缓冲寄存器 PC增量 PC DPTR图3.1(2)3.2 中央处理器 中央处理器是进行算术中央处理器是进行算术/ /逻辑运算,控制程序执行的部件。它包括运逻辑运算,控制程序执行的部件。它包括运算器和控制器,主要组成已经反映在算器和控制器,主要组成已经反映在图图3.1(2)3.1(2)中。中。3.2.1 3.2.1 运算器运算器3.2.2 3.2.2 控制器控制器3.2.3 3.2.3 时钟与定时时钟与定时3.2.1 3.2.1 运算器运算器 运算器主要包括算术运算器主要包括算术/ /逻

11、辑部件逻辑部件ALUALU、累加器、暂存寄存器、累加器、暂存寄存器TMP1TMP1和和TMP2TMP2、程序状态标志寄存器、程序状态标志寄存器PSWPSW、BCDBCD码修正电路等。为码修正电路等。为了提高数据处理和位操作能力,片内设有一个通用寄存器了提高数据处理和位操作能力,片内设有一个通用寄存器B B和和一些专用寄存器。一些专用寄存器。 运算器的功能主要是对数据进行加、减、乘、除等算术运运算器的功能主要是对数据进行加、减、乘、除等算术运算及算及“与与”、“或或”、“非非”、“异或异或”等逻辑运算。对于位等逻辑运算。对于位操作数,可进行置位、清零、求反、移位、条件判断及按位操作数,可进行置位

12、、清零、求反、移位、条件判断及按位“与与”、按位、按位“或或”等操作。等操作。3.2.2 控制器 控制器包括程序计数器控制器包括程序计数器PCPC、指令寄存器、指令译码器、定、指令寄存器、指令译码器、定时控制与条件转移逻辑电路等。由于可以外接时控制与条件转移逻辑电路等。由于可以外接64K64K字节的数据字节的数据存储器和存储器和I/OI/O接口电路,因此在控制器中设有一个接口电路,因此在控制器中设有一个1616位的地址位的地址指示器指示器DPTRDPTR,用来对外部数据存储器和,用来对外部数据存储器和I/OI/O接口寻址。为了便接口寻址。为了便于数据保护,设有于数据保护,设有8 8位堆栈指示器

13、位堆栈指示器SPSP。 PSWPSW寄存器共有寄存器共有8 8位,全部用作程序运行时的状态标志,其位,全部用作程序运行时的状态标志,其格式如下:格式如下: 字节地址D0H PSW 位地址 D7H D6H D5H D4H D3H D2H D1H D0H CY AC F0 RS1 RS0 OV PP P:奇偶标志位。当累加器中:奇偶标志位。当累加器中1 1的个数为偶数时,的个数为偶数时,P P置置1 1,否则清,否则清0 0。OVOV:溢出标志位。当执行算术运算时,最高位和次高位的进位(或:溢出标志位。当执行算术运算时,最高位和次高位的进位(或借位)相同时,有溢出,借位)相同时,有溢出,OVOV置

14、置1 1;否则,没有溢出,;否则,没有溢出,OVOV清清0 0。RS0 RS1RS0 RS1:寄存器工作区选择。:寄存器工作区选择。F0F0:用户标志位。:用户标志位。ACAC:辅助进位标志位。算术运算时,若低半字节向高半字节有进位:辅助进位标志位。算术运算时,若低半字节向高半字节有进位(或借位)时,(或借位)时,ACAC置置1 1,否则清,否则清0 0。C Cy y:最高进位标志位。算术运算时,若最高位有进位:最高进位标志位。算术运算时,若最高位有进位(或借位)时,(或借位)时,C Cy y置置1 1,否则清,否则清0 0。D D1 1:保留。:保留。3.2.3 时钟与定时 MCS-51 M

15、CS-51单片机的定时时序如图单片机的定时时序如图3.23.2所示。一个机器周期为所示。一个机器周期为6 6个时钟周期,个时钟周期,表示为表示为S1S6。在一个机器周期中,包含有两个机器周期信号在一个机器周期中,包含有两个机器周期信号ALEALE。时钟信。时钟信号号S S为振荡器频率的为振荡器频率的2 2分频,一般情况下,算术分频,一般情况下,算术/ /逻辑运算在逻辑运算在S S的前半周期的前半周期P1P1进进行,内部寄存器传送在行,内部寄存器传送在S S的后半周期的后半周期P2P2进行。进行。MCS-51MCS-51单片机的大部分指令执行单片机的大部分指令执行时间为一个机器周期,少数为时间为

16、一个机器周期,少数为2 2个机器周期,乘法和除法指令需要个机器周期,乘法和除法指令需要4 4个机器周个机器周期。期。 P1 P2P1 P2P1 P2P1 P2P1 P2P1 P2S6S5S4S3S2 S1图3.2 MCS-51时序图读操作码读操作数一个机器周期 3.3 存储器 在在MCS-51MCS-51系列单片机中,程序存储器和数据存储系列单片机中,程序存储器和数据存储器互相独立,物理结构也不相同。程序存储器为只读器互相独立,物理结构也不相同。程序存储器为只读存储器,数据存储器为随机存取存储器。从物理地址存储器,数据存储器为随机存取存储器。从物理地址空间看,共有空间看,共有4 4个存储地址空

17、间,即片内程序存储器、个存储地址空间,即片内程序存储器、片外程序存储器、片内数据存储器和片外数据存储器,片外程序存储器、片内数据存储器和片外数据存储器,I/OI/O接口与外部数据存储器统一编址,其示意接口与外部数据存储器统一编址,其示意如图如图3.33.3所示。所示。 图3.3 MCS-51 存储器空间(b) 数据存储器00HFFH内部外部FFFFH0000H(a) 程序存储器0FFFH0000HFFFFH0000H外部EA=0内部EA=13.3.1程序存储器 程序存储器包括内部程序存储器和外部程序存储器。程序存储器包括内部程序存储器和外部程序存储器。80518051内设内设4KB 4KB R

18、OMROM,87518751内设内设4KB EPROM4KB EPROM,地址范围为,地址范围为0000H0FFFH,外部可扩展外部可扩展64KB64KB,地址范围为,地址范围为0000HFFFFH。 在其引脚中设有一个控制端。若该端接高电平,程序执行时先执行在其引脚中设有一个控制端。若该端接高电平,程序执行时先执行内部程序存储器中的程序,当地址大于等于内部程序存储器中的程序,当地址大于等于1000H1000H后,执行外部程序存后,执行外部程序存储器中的程序。若该端接低电平,则全部执行外部程序存储器中的程储器中的程序。若该端接低电平,则全部执行外部程序存储器中的程序。程序存储器中存放的数据只能

19、用查表指令访问,其格式如下:序。程序存储器中存放的数据只能用查表指令访问,其格式如下: MOVC A, MOVC A, A+PCA+PC MOVC A, MOVC A, A+DPTR A+DPTR 3.3.2数据存储器 数据存储器包括内部数据存储器和外部数据存储器。内部数据存储数据存储器包括内部数据存储器和外部数据存储器。内部数据存储器分为器分为128128字节的字节的RAMRAM区和区和128128字节的特殊功能寄存器区,总的地址范围字节的特殊功能寄存器区,总的地址范围为为00H00HFFHFFH。在特殊功能寄存器地址空间中离散地分布着。在特殊功能寄存器地址空间中离散地分布着2121个特殊功

20、个特殊功能寄存器。如累加器能寄存器。如累加器A A、寄存器、寄存器B B、程序状态标志寄存器、程序状态标志寄存器PSWPSW等。外部可等。外部可扩充扩充64KB64KB的数据存储器,地址范围为的数据存储器,地址范围为0000H0000HFFFFHFFFFH。 内部数据存储器和外部数据存储器在内部数据存储器和外部数据存储器在00H00HFFHFFH地址区重叠。对于内地址区重叠。对于内部数据存储器可以直接寻址,也可以间接寻址,间接寻址时,间接地部数据存储器可以直接寻址,也可以间接寻址,间接寻址时,间接地址寄存器为址寄存器为R0R0和和R1R1,指令格式如下:,指令格式如下: MOV A, R0MO

21、V A, R1 MOV R0, AMOV R1, A外部数据存储器只能间接寻址,间接地址寄存器为外部数据存储器只能间接寻址,间接地址寄存器为R0R0、R1R1和和DPTRDPTR。用。用R0R0和和R1R1只能访问低只能访问低256256个字节单元,用个字节单元,用DPTRDPTR可可访问访问64KB64KB单元。指令格式如下:单元。指令格式如下:MOVX A, R0MOVX A, R1MOVX A, DPTRMOVX R0, AMOVX R1, AMOVX DPTR, A1. 1. 内部内部RAMRAM 内内 部部 RAMRAM共共128128个字节单元,其分布如图个字节单元,其分布如图3.

22、43.4所示。所示。00H00H1FH1FH单元为单元为4 4个寄存器工作区,每区个寄存器工作区,每区8 8个寄存器,表示为个寄存器,表示为R0R0R7R7。寄存器。寄存器工作区的选择是通过程序状态标志寄存器工作区的选择是通过程序状态标志寄存器PSWPSW的第的第3 34 4位进行,如位进行,如表表3.13.1所示。设置所示。设置4 4个寄存器工作区可以提高现场保护能力和个寄存器工作区可以提高现场保护能力和CPUCPU实实时响应的速度。时响应的速度。 图3.4 内部RAM结构数据缓冲区 2FH30H1FH20H00H7FH只能字节寻址字节、位寻址4个寄存器区(R0R7)1区2区3区0区表3.1

23、 寄存器工作区选择与地址分配 PSW.4(RS1) PSW.3(RS0) 寄存器区 R0R7占用地址 000区 00H07H 011区 08H0FH 102区 10H17H 113区 18H1FH 20H 20H2FH 2FH 的的1616个单元既可按字节寻址,作为一般个单元既可按字节寻址,作为一般的工作单元,又可以按位由的工作单元,又可以按位由CPUCPU直接寻址,进行位操作。直接寻址,进行位操作。30H30H7FH7FH区只能按字节寻址,一般用作数据缓冲区或堆区只能按字节寻址,一般用作数据缓冲区或堆栈区。栈区。 2. 2. 特殊功能寄存器特殊功能寄存器 特殊功能寄存器有特殊功能寄存器有21

24、21个,离散地分布在个,离散地分布在80H80HFFHFFH地地址区域中,其名称、地址分配和复位后的初始状态址区域中,其名称、地址分配和复位后的初始状态如表如表3.23.2所示,这些寄存器的功能将在以后各章中介绍。所示,这些寄存器的功能将在以后各章中介绍。 特殊功能寄存器名 称地 址复位后状态B通用寄存器F0H00HA累加器E0H00HPSW程序状态字D0H00HIP中断优先级寄存器B8H00000BP3P3口B0HFFHIE中断允许寄存器A8H000000BP2P2口A0HFFHSBUF串行口发送/接收缓冲器99H不定SCON串行口控制寄存器98H00HP1P1口90HFFHTH1定时器/计

25、数器1高8位8DH00HTH0定时器/计数器0高8位8CH00HTL1定时器/计数器1低8位8BH00HTL0定时器/计数器0低8位8AH00HTMOD定时器/计数器方式字89H00HTCON定时器控制寄存器88H00HPCON波特率选择寄存器87H00HDPH地址寄存器高8位83H00HDPL地址寄存器低8位82H00HSP堆栈指针81H07HP0P0口80HFFH表表3.2 3.2 特殊功能寄存器特殊功能寄存器表表3.2 (2) 3. 3. 堆栈工作区堆栈工作区 在在MCS-51MCS-51单片机中堆栈是向上生成,空栈底,实栈顶,由堆栈指示器单片机中堆栈是向上生成,空栈底,实栈顶,由堆栈指

26、示器SPSP指示。指示。SPSP是一个是一个8 8位寄存器,属特殊功能寄存器,字节地址为位寄存器,属特殊功能寄存器,字节地址为81H81H。堆栈。堆栈工作区可设在内部工作区可设在内部RAMRAM的任意区域中,但在使用时注意不要与所选寄存器的任意区域中,但在使用时注意不要与所选寄存器工作区、位地址区重叠。系统复位后,堆栈指针工作区、位地址区重叠。系统复位后,堆栈指针SPSP的初值为的初值为07H07H,指向寄,指向寄存器工作区存器工作区0 0。因此,用户在初始化程序中应对。因此,用户在初始化程序中应对SPSP设置初值,一般设在设置初值,一般设在30H30H7FH7FH为宜。为宜。 4. 4. 外

27、部数据存储器外部数据存储器 在在MCS-51MCS-51系列单片机的外部可扩展系列单片机的外部可扩展64KB64KB的数据存储器,用来存放随机的数据存储器,用来存放随机数据,因此一般由数据,因此一般由RAMRAM构成。程序运行时,只能通过地址寄存器构成。程序运行时,只能通过地址寄存器DPTRDPTR和通和通用寄存器用寄存器R0R0、R1R1间接寻址。间接寻址。3.4 布尔处理机 1 1布尔处理机布尔处理机 布尔处理机实际上是一位字长的计算机,它有中央处理器、位累布尔处理机实际上是一位字长的计算机,它有中央处理器、位累加器、位地址空间和位操作指令。通过编程可实现位处理或位控制功加器、位地址空间和

28、位操作指令。通过编程可实现位处理或位控制功能。由于在能。由于在MCS-51MCS-51单片机中内含有一个布尔处理机,因此具有很强的单片机中内含有一个布尔处理机,因此具有很强的位处理功能。位处理功能。2. MCS-512. MCS-51单片机中布尔处理机的组成单片机中布尔处理机的组成 在在MCS-51MCS-51单片机的内部单片机的内部RAMRAM中,中,20H20H2FH 2FH 即可以按字节寻址,即可以按字节寻址,也可以按位寻址。这也可以按位寻址。这1616个单元共有个单元共有128128位,每位有一个位地址,寻址位,每位有一个位地址,寻址范围为范围为00H00H7FH7FH,如,如表表3.

29、33.3所示。另外,有所示。另外,有1111个特殊功能寄存器,如个特殊功能寄存器,如累加器累加器A A、寄存器、寄存器B B、程序状态字、程序状态字PSWPSW等,既有字节地址,也有位地址等,既有字节地址,也有位地址,其详细地址如表,其详细地址如表3.43.4所示。表中给出了能按位寻址的寄存器的位地所示。表中给出了能按位寻址的寄存器的位地址。在程序状态标志寄存器址。在程序状态标志寄存器PSWPSW中,进位标志位中,进位标志位C C作为位累加器使用。作为位累加器使用。 字节地址位 地 址D7D6D5D4D3D2D1D02FH2EH2DH2CH2BH2AH29H28H27H26H25H24H23H

30、22H21H20H7F776F675F574F473F372F271F170F077E766E665E564E463E362E261E160E067D756D655D554D453D352D251D150D057C746C645C544C443C342C241C140C047B736B635B534B433B332B231B130B037A726A625A524A423A322A221A120A027971696159514941393129211911090178706860585048403830282018100800表3.3 RAM寻址区位地址分配特殊功能寄存器字节地址位 地 址D7

31、D0BF0H F7F6F5F4F3F2F1F0AE0H E7E6E5E4E3E2E1E0PSWD0HCYACF0RS1RS0OV PD7D6D5D4D3D2D1D0IPB8H PSPT1PX1PT0PX0-BCBBBAB9B8P3B0HP3.7P3.6P3.5P3.4P3.3P3.2P3.1P3.0B7B6B5B4B3B2B1B0IEA8HEA ESET1EX1ET0EX0AF-ACABAAA9A8P2A0HP2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0A7A6A5A4A3A2A1A0SBUF99H SCON98HSM0SM1SM2RENTB8RB8TIRI9F9E9D9C9

32、B9A9998P190HP1.7P1.6P1.5P1.4P1.3P1.2P1.1P1.09796959493929190TH18DH TH08CHTL18BHTL08AHTMOD89HTCON88HTF1TR1TF0TR0IE1IT1IE0IT08F8E8D8C8B8A8988PCON87H DPH83HDPL82HSP81HP080HP0.7P0.6P0.5P0.4P0.3P0.2P0.1P0.08786858483828180 在指令系统中设有位操作指令,与位累加器在指令系统中设有位操作指令,与位累加器C C和位和位地址空间结合起来,构成一个完整的布尔处理机。位操地址空间结合起来,构成一个

33、完整的布尔处理机。位操作指令有位传送、位清作指令有位传送、位清0 0、位置、位置1 1、位取、位取“反反”、按位、按位“与与”、按位、按位“或或”及位测试转移等。及位测试转移等。MCS-51MCS-51单片机的单片机的4 4个个8 8位并行位并行I/OI/O接口均具有位地址,即实现位输入输出接口均具有位地址,即实现位输入输出及位控制功能。及位控制功能。 3.5 3.5 并行并行I/OI/O接口接口 MCS-51 MCS-51单片机内部设置有单片机内部设置有4 4个个8 8位并行位并行I/OI/O接口,其中接口,其中P0P0口为双向三口为双向三态输入输入接口,态输入输入接口,P1P1、P2P2、

34、P3P3口为准双向输入输出接口。口为准双向输入输出接口。 3.5.1 P03.5.1 P0口与口与P2P2口口3.5.2 P13.5.2 P1口与口与P3P3口口3.5.1 P03.5.1 P0口与口与P2P2口口 P0 P0口是一个口是一个8 8位双向三态输入输出接口,位双向三态输入输出接口,P2P2口是一个准双口是一个准双向输入输出接口,而且每一位都有自已的位地址。中央处理向输入输出接口,而且每一位都有自已的位地址。中央处理器可接字节进行数据传送,也可按位进行位操作。在联接外器可接字节进行数据传送,也可按位进行位操作。在联接外部存储器时,部存储器时,P0P0口作为口作为8 8位数据输入输出

35、口和外部存储器低位数据输入输出口和外部存储器低8 8位地址口,地址位地址口,地址/ /数据分时传送。数据分时传送。P2P2口输出外部存储器的高口输出外部存储器的高8 8位地址,其连接位地址,其连接如图如图3.53.5所示。所示。数据总线(D7D0)地址锁存器ROM 程序存储器 64K OERAM 或I/O口 64K WR RD P2口8051 ALEEAP0口WRPSENRD地址总线(A15A0)图3.5 外部存储器连接3.5.2 P13.5.2 P1口与口与P3P3口口 P1 P1口与口与P3P3口是口是8 8位准双向输入输出接口,每一位也有自己的位地址。位准双向输入输出接口,每一位也有自己

36、的位地址。中央处理器可按字节进行数据传送,也可按位进行位操作。中央处理器可按字节进行数据传送,也可按位进行位操作。 另外,另外,P3P3口具有第二功能,如表口具有第二功能,如表3.53.5所示,所示,0INT1INTWRRD表3.5 P3口功能控制信号线引 脚符 号功 能P3.0RXD串行口输入P3.1TXD串行口输出P3.2外部中断0输入P3.3外部中断1输入P3.4T0定时器0外部输入P3.5T1定时器1外部输入P3.6外部数据存储器写信号P3.7外部数据存储器读信号3.6 3.6 定时器定时器/ /计数器计数器 3.6.1 3.6.1 定时器定时器/ /计数器的组成计数器的组成3.6.2

37、 3.6.2 定时器定时器/ /计数器的工作方式计数器的工作方式3.6.3 3.6.3 定时器定时器/ /计数器的使用计数器的使用3.6.13.6.1定时器定时器/ /计数器的组成计数器的组成 MCS-51 MCS-51单片机中设置有单片机中设置有2 2个个1616位位的可编程定时器的可编程定时器/ /计数器,具有计数器,具有4 4种工种工作方式,其逻辑结构如图作方式,其逻辑结构如图3.63.6所示。所示。定时器定时器/ /计数器计数器T0T0由计数器由计数器TH0TH0和和TL0TL0组成,定时器组成,定时器/ /计数器计数器T1T1由计数器由计数器TH1TH1和和TL1TL1组成。组成。T

38、HTH、TLTL分别为两个分别为两个8 8位计位计数器,连接起来可组成数器,连接起来可组成1616位计数器。位计数器。定时器定时器/ /计数器的工作方式由方式控计数器的工作方式由方式控制字制字TMODTMOD选择,定时器选择,定时器/ /计数器的启计数器的启停由控制寄存器停由控制寄存器TCONTCON控制,这两个寄控制,这两个寄存器均属特殊功能寄存器。存器均属特殊功能寄存器。 T0 T1图3.6 定时器/计数器逻辑结构 CPUTCONTMODTL1TH1TH0TL0内部总线定时器定时器/ /计数器工作方式控制字计数器工作方式控制字TMODTMOD:字节地址89HTMODD7 D6 D5 D4

39、D3 D2 D1 D0GATE C/ M1 M0 GATE C/ M1 M0其中其中M1M1、M0M0为方式选择,为方式选择,C/TC/T为定时为定时/ /计数选择,计数选择,GATEGATE为定为定时器时器/ /计数器工作方式选择。计数器工作方式选择。定时器定时器/ /计数器启停控制寄存器计数器启停控制寄存器TCONTCON: 用于中断控制 字节地址88HTCON D7 D6 D5 D4 D3 D2 D1 D0TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 其中低其中低4 4位用于中断控制,高位用于中断控制,高4 4位用于定时器位用于定时器/ /计数器的启计数器的启/ /停控

40、制,停控制,TFTF为溢出标志,为溢出标志,TRTR为启为启/ /停控制标志。停控制标志。 3.6.2 定时器/计数器的工作方式 1. 1. 工作方式工作方式0 0 当当M1M0=00M1M0=00时选择工作方式时选择工作方式0 0,其逻辑图,其逻辑图如图如图3.73.7所示。在工作方式所示。在工作方式0 0状态下,状态下,TLTL低低5 5位与位与THTH并成并成1313位计数器。计数工作时,位计数器。计数工作时,TLTL低低5 5位计满后向位计满后向THTH计数器进位。当计数器进位。当C/ =0C/ =0时为定时工作状态,振荡器输出脉冲(时为定时工作状态,振荡器输出脉冲(12MHz12MH

41、z)经经1212分频,产生定时脉肿(分频,产生定时脉肿(1MHz1MHz)送计数器计器。当)送计数器计器。当C/ =1C/ =1时,为计数时,为计数工作状态,由工作状态,由T0T0引脚输入计数脉冲,对计数器进行计数。计数器溢出时引脚输入计数脉冲,对计数器进行计数。计数器溢出时将将TFTF置置1 1,表示定时时间到,向,表示定时时间到,向CPUCPU发中断请求。当发中断请求。当GATE=0GATE=0时,时,A A点为高点为高电平,定时器电平,定时器/ /计数器的启计数器的启/ /停由启停由启/ /停标志位停标志位TR0TR0决定。决定。TR0=1TR0=1时,定时时,定时器器/ /计数器启动;

42、计数器启动;TR0=0TR0=0时,定时器时,定时器/ /计数器停止工作。当计数器停止工作。当GATE=1GATE=1时时A A点位点位由由 决定,这样决定,这样B B点的电位就由点的电位就由TR0TR0和和 联合决定,即定时器联合决定,即定时器/ /计数计数器的运行由器的运行由TR0TR0和和 两个条件控制。两个条件控制。 TT0INT0INT0INTTL0 TH05(8)位 8位TF0中断请求&1C/T=1C/T=0TR0振荡器12T0GATE0INT图3.7 定时器/计数器工作方式0与工作方式1 T1 T1的工作情况与的工作情况与T0T0相同。相同。TRTR可由程序置可由程序置1

43、 1或者清或者清0 0,当计数溢出时,当计数溢出时TFTF置置1 1;CPUCPU中断响应后,中断响应后,TFTF清清0 0。CPUCPU也可读出也可读出TCONTCON、THTH及及TLTL中的内容来了中的内容来了解解T0T0或或T1T1的工作状态。的工作状态。2. 2. 工作方式工作方式1 1 当当M1M0=01M1M0=01时,定时器时,定时器/ /计数器选择工作方式计数器选择工作方式1 1,这时,这时THTH与与TLTL并成并成1616位计数器,按照位计数器,按照1616位计数器方式工作。其它过程与工作方式位计数器方式工作。其它过程与工作方式0 0相同。相同。3. 3. 工作方式工作方

44、式2 2 当当M1M0=10M1M0=10时,定时器时,定时器/ /计数器选择工作方式计数器选择工作方式2 2。在工作方式。在工作方式2 2状态下状态下TLTL为为8 8位计数器,位计数器,THTH作为预置常数寄存器,其逻辑图作为预置常数寄存器,其逻辑图如图如图3.83.8所示。当所示。当TLTL计数溢出后,一方面将计数溢出后,一方面将TFTF置置1 1,发中断请求,另一方面再把预置常数寄,发中断请求,另一方面再把预置常数寄存器存器THTH中的数送入中的数送入TLTL,使定时器,使定时器/ /计数器重复工作。计数器重复工作。 重新装入TF中断请求TL(8位)计数器TH(8位)预置常数寄存器图3

45、.8 重复定时/计数控制4. 4. 工作方式工作方式3 3 当当M1M0=11M1M0=11时,定时器时,定时器/ /计数器选择工作方式计数器选择工作方式3 3。工作方式。工作方式3 3是是T0T0分为分为一个一个8 8位定时器位定时器/ /计数器和一个计数器和一个8 8位定时器,位定时器,TH0TH0用于定时器用于定时器/ /计数器,计数器,TL0TL0用于定时器。这样用于定时器。这样MCS-51MCS-51就具有一个就具有一个1616位、一个位、一个8 8位定时器位定时器/ /计数器和一计数器和一个个8 8位定时器。定时器位定时器。定时器/ /计数器的工作原理与工作方式计数器的工作原理与工

46、作方式0 0相同,只是计数相同,只是计数器仅用器仅用8 8位的位的TH0TH0。定时器。定时器如图如图3.93.9所示,使用了定时器所示,使用了定时器/ /计数器计数器T1T1的状态的状态控制位控制位TR1TR1和和TF1TF1,占用了定时器,占用了定时器/ /计数器计数器T1T1的中断源。的中断源。图3.9 由TH0组成8位定时器TR1中断请求TF1TH08位振荡器12 一般情况下,当一般情况下,当T1T1作为串行口的波特率发生器时,作为串行口的波特率发生器时,T0T0才选择为工作才选择为工作方式方式3 3。当。当T0T0选择为工作方式选择为工作方式3 3时,时,T1T1可选择为工作方式可选

47、择为工作方式0 0或工作方式或工作方式1 1或或工作方式工作方式2 2,作为串行口的波特率发生器或者用于不需要中断请求的场合。,作为串行口的波特率发生器或者用于不需要中断请求的场合。 工作方式工作方式3 3只适合于定时器只适合于定时器/ /计数器计数器T0T0;当;当T1T1的方式控制字的方式控制字M1M0=11M1M0=11时,停止工作。时,停止工作。 定时器定时器/ /计数器,其内部一样,都是计数。定时器对内部时钟信号计计数器,其内部一样,都是计数。定时器对内部时钟信号计数,计数器是对外部信号计数。数,计数器是对外部信号计数。MCS-51MCS-51单片机的定时器单片机的定时器/ /计数器

48、是加计数器是加1 1计数,计数,因此工作时涉及到计数初值。由计数初值开始加因此工作时涉及到计数初值。由计数初值开始加1 1,直到计满溢出,向,直到计满溢出,向CPUCPU发中断请求。因此,要使定时器发中断请求。因此,要使定时器/ /计数器工作,须确定以下几方面的工作。计数器工作,须确定以下几方面的工作。(1 1)确定定时器)确定定时器/ /计数器的工作方式,即定时还是计数?计数器的工作方式,即定时还是计数?(2 2)确定计数初值。)确定计数初值。(3 3)确定定时器)确定定时器/ /计数器是否可以中断请求?计数器是否可以中断请求?(4 4)如何启动定时器)如何启动定时器/ /计数器工作?计数器

49、工作?(5 5)选择工作方式)选择工作方式2 2使定时器使定时器/ /计数器连续工作还是由中断服务程序使计数器连续工作还是由中断服务程序使其连续工作?其连续工作? 3.6.3定时器/计数器的使用 工作方式的确度是向工作方式的确度是向TMODTMOD寄存器写入方式控制字。例如用寄存器写入方式控制字。例如用T0T0定时,定时,选择工作方式选择工作方式1 1,内启动,传送指令为:,内启动,传送指令为:MOV TMOD,#01H计数初值的确定,如下:计数初值的确定,如下:设计数值为设计数值为X X,则须装入的计数初值为,则须装入的计数初值为2 2n n-X-X。方式。方式0 0,n=13n=13;方式

50、;方式1 1,n=16n=16;方式;方式2 2和方式和方式3 3,n=8n=8。在定时方式下,按机器周期计数,每个机。在定时方式下,按机器周期计数,每个机器周期包括器周期包括1212个振荡周期。当晶振频率为个振荡周期。当晶振频率为6MHz6MHz时,时,1 1个机器周期个机器周期= = 2S= = 2S,定时时间为,定时时间为2XS2XS。若要求定。若要求定时时1mS1mS,则:,则:X= =500由此得计数初值为由此得计数初值为:216-500=65036= FE0CH设置初值的指令为:设置初值的指令为:MOV TL0,#0CHMOV TH0,#0FEH启动启动T0T0定时的指令为定时的指

51、令为:MOV TCON,#10H或 SETB TR0晶振频率12610612s2ms13.7 串行I/O接口 3.7.1 3.7.1 串行通信基本方式串行通信基本方式3.7.2 3.7.2 串行通信接口的组成与特点串行通信接口的组成与特点3.7.3 3.7.3 串行通信接口的工作方式串行通信接口的工作方式3.7.4 3.7.4 数据发送与接收数据发送与接收3.7.13.7.1串行通信基本方式串行通信基本方式 串行通信是指数据一位一位地顺序传送。其特点是通信线路简单,串行通信是指数据一位一位地顺序传送。其特点是通信线路简单,只要一对传输线就可以通信,但速度慢。在实际应用中,串行通信又分只要一对传

52、输线就可以通信,但速度慢。在实际应用中,串行通信又分为同步传送和异步传送两种方式。为同步传送和异步传送两种方式。1. 1. 同步传送同步传送 同步传送是指在一个数据块的开头使用同步字符。数据传送时使用同步传送是指在一个数据块的开头使用同步字符。数据传送时使用同一频率的时钟脉冲来实现发送端与接收端的同步。这种时钟脉冲称为同一频率的时钟脉冲来实现发送端与接收端的同步。这种时钟脉冲称为同步脉冲,数据同步传送的格式如图同步脉冲,数据同步传送的格式如图3.103.10所示。所示。图3.10 同步传送SYN字符1SYN字符2数据 数据传送时,数据与同步脉冲同时发出。在数据块中首先发同步数据传送时,数据与同

53、步脉冲同时发出。在数据块中首先发同步字符,一般为字符,一般为1 12 2个。接收端首先接收同步字符,确认同步后开始个。接收端首先接收同步字符,确认同步后开始接收数据。采用同步方式传送,硬件设备较为复杂,但与异步传送接收数据。采用同步方式传送,硬件设备较为复杂,但与异步传送相比,同步传送速率高。相比,同步传送速率高。 2. 2. 异步传送异步传送 异步传送是以字符或一定位数的数据为单位,有起始位和停止异步传送是以字符或一定位数的数据为单位,有起始位和停止位,作为字符的开头和结束标志,这样的单位称为帧。一帧中,起位,作为字符的开头和结束标志,这样的单位称为帧。一帧中,起始标志占一位,数据占始标志占

54、一位,数据占5 5、6 6、7 7或者或者8 8位,停止标志占位,停止标志占1 1、1 1 或者或者2 2位。位。一般规定,起始位用低电平(一般规定,起始位用低电平(0 0)表示,停止位用高电平()表示,停止位用高电平(1 1)表示。)表示。数据传送时,一帧一帧地传送。若传送数据传送时,一帧一帧地传送。若传送ASCIIASCII码字符,数据中的第码字符,数据中的第8 8位可作为奇偶校验位。异步传送数据格式如图位可作为奇偶校验位。异步传送数据格式如图3.113.11所示。所示。 21图3.11 异步传送一帧信息停止位起始位奇偶校验 7 位 数 据停止位 串行通信按照数据传送的方向,可分为三种:单

55、工、半双工和全串行通信按照数据传送的方向,可分为三种:单工、半双工和全双工通信方式。双工通信方式。 数据传送速率用波特率表示,即每秒钟传送二进制数的位数,单数据传送速率用波特率表示,即每秒钟传送二进制数的位数,单位为位为“波特波特”。异步传送常用波特率为。异步传送常用波特率为50501920019200波特,同步传送速率波特,同步传送速率较高,一般在较高,一般在2000020000波特以上。波特以上。 3.7.2 串行通信接口的组成与特点 在在MCS-51MCS-51单片机中,串行单片机中,串行I/OI/O接口是一个全双工串行通信接口,接口是一个全双工串行通信接口,有一个数据接收缓种器和一个数

56、据发送缓冲器,两个缓冲器共用一有一个数据接收缓种器和一个数据发送缓冲器,两个缓冲器共用一个地址个地址99H99H,表示为,表示为SBUFSBUF。中央处理器对接收缓冲器只能读出不能写。中央处理器对接收缓冲器只能读出不能写入,对发送缓冲器只能写入不能读出。系统中有两个特殊功能寄存入,对发送缓冲器只能写入不能读出。系统中有两个特殊功能寄存器器SCONSCON和和PCONPCON,控制串行通信工作方式。,控制串行通信工作方式。 1. 1. 串行口控制寄存器串行口控制寄存器SCONSCON 串行口控制寄存器共有串行口控制寄存器共有8 8位,字节地址为位,字节地址为98H98H,格式如下:,格式如下:

57、SCON位地址 字节地址98H 9FH 9EH 9DH 9CH 9BH 9AH 99H 98H SM0 SM1 SM2 REN TB8 RB8 TI RI SM0 SM1 SM0 SM1:工作方式选择位,可选择:工作方式选择位,可选择4 4种工作方式,种工作方式,如表如表3.63.6所示。所示。 表3.6 SM0 SM1方式选择SM0 SM1方式功能说明波特率0 00移位寄存器方式fosc/120 118位UART可变1 029位UARTFosc/64或Fosc/321 139位UART可变 SM2 SM2:工作方式:工作方式2 2或方式或方式3 3串行多机通信允许位。在方式串行多机通信允许位

58、。在方式2 2或方式或方式3 3时,若时,若SM2=1SM2=1,接收到的数据第,接收到的数据第9 9位(位(RB8RB8)为)为1 1,RIRI置置1 1,向中央处理,向中央处理器器CPUCPU发中断请求;接收到的数据第发中断请求;接收到的数据第9 9位(位(RB8RB8)为)为0 0,RIRI不置不置1 1,不向,不向CPUCPU发中断请求。若发中断请求。若SM2=0SM2=0,接收到的数据送,接收到的数据送SBUFSBUF,接收到的数据第,接收到的数据第9 9位送位送RB8RB8,RIRI置置1 1。在工作方式。在工作方式1 1时,若时,若SM2=1SM2=1,只有接收到有效停止位,只有

59、接收到有效停止位时时RIRI置置1 1,否则,否则RIRI不置不置1 1。在工作方式。在工作方式0 0时,时,SM2SM2应为应为0 0。 RENREN:允许串行接收。:允许串行接收。 TB8TB8:在方式:在方式2 2和方式和方式3 3时是发送数据的第时是发送数据的第9 9位。位。 RB8RB8:在方式:在方式2 2和方式和方式3 3时是接收数据的第时是接收数据的第9 9位。在方式位。在方式1 1时,若时,若SM2=0SM2=0,RB8RB8为接收到数据的停止位。在工作方式为接收到数据的停止位。在工作方式0 0时,不使用时,不使用RB8RB8。 TITI:发送中断标志。由硬件在方式:发送中断

60、标志。由硬件在方式0 0串行发送第串行发送第8 8位结束或在其它位结束或在其它方式中发送停止位的开始时置方式中发送停止位的开始时置1 1,由软件清,由软件清0 0。RIRI:接收中断标志。由硬件在方式:接收中断标志。由硬件在方式0 0串行接收第串行接收第8 8位结束或在其它位结束或在其它方式中接收停止位的中间时置方式中接收停止位的中间时置1 1(除了与(除了与SM2SM2有关),由软件清有关),由软件清0 0。以上标志设有位地址,可进行位操作,复位时全部清以上标志设有位地址,可进行位操作,复位时全部清0 0。 2. 2. 波特率选择寄存器波特率选择寄存器PCON PCON 字节地址87HPCON D7

温馨提示

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

评论

0/150

提交评论