《第2章MCS51系列单片机的结构和工作原理》由会员分享,可在线阅读,更多相关《第2章MCS51系列单片机的结构和工作原理(46页珍藏版)》请在金锄头文库上搜索。
1、第2章 MCS51系列单片机 结构及原理,2.1 微型计算机的组成,2.2 MCS-51系列单片机组成原理,2.3 MCS-51单片机引脚,2.4 MCS51单片机I/O接口,2.5 MCS-51寄存器和存储器,2.6 单片机工作的基本时序,2.1 微型计算机的组成,一、硬件结构,1. 中央处理器CPU CPU(Central Processing Unit)是计算机的核心部件, 它由运算器、控制器和寄存器组成, 完成计算机的运算和控制功能。 运算器,又称算术逻辑部件(ALU, Arithmetical Logic Unit), 主要完成对数据的算术运算和逻辑运算。 控制器(Controlle
2、r),RD,WR信号。 寄存器(Register), 它们的作用是存放运算过程中的各种数据、地址或其它信息。寄存器种类很多, 主要有: 通用寄存器、累加器A、程序计数器PC等,2.存储器M 存储器分为程序存储器和数据存储器,有8位和16位两种,以8位为主。 程序存储器:用来存放程序和常数的,在单片机执行期间其属于只读,不可写。地址总线的位数决定了可寻址的程序存储器的空间的大小。 数据存储器 :用来存放程序在运行期间的变量的数据,空间位置由地址总线决定。其可读可写,有的在掉电后数据丢失,有的采用后备电源和FLASH技术可以实现数据的长期保存。,3.输入/输出接口(I/O接口) 输入/输出(I/O
3、)接口由大规模集成电路组成的I/O器件构成, 用来连接主机和相应的I/O设备(如: 键盘、 鼠标、显示器、 打印机等), 使得这些设备和主机之间传送的数据、信息在形式上和速度上都能匹配。不同的I/O设备必须配置与其相适应的I/O接口。,4.三总线 地址总线 数据总线 控制总线 地址总线(Address Bus AB) 传输地址信号, 用来选择存储器的地址和I/O口的地址,具有单向性,决定空间的寻址大小。 2n n为地址总线宽度。 数据总线(Data Bus DB),用来传输数据信号,实现存储器或I/O口与CPU间数据的传递,具有双向性,其决定了CPU的位。 控制总线(Control Bus C
4、B),用来传输控制信号或状态信号,实现外围器件与CPU间数据的传递,具有双向性。控制总线的位数与CPU的位数无关,与外围的特性有关。,系统总线的特点: a)在某一时刻只能有一个总线主控设备,否则出现竞争。 b)在总线上的多个设备,可以同时从总线上下载数据,这叫广播功能。,二、存储器的分类,1、RAM 随机存储器,通常是指任何快速可写的易失存储器,常用来代表数据存储器。 2、DRAM 动态RAM ,其需要周期性的动态数据刷新,负责存储数据。单元数据将因放电而丢失数据,特点是读写速度快。 3 、SRAM 静态RAM, 一旦数据被写入,只要保持供电,数据就可一直保存而不丢失,数据不需要刷新。,4、S
5、DRAM 同步动态RAM, 数据需要同步时钟信号来控制存取。 5、NVRAM 非易失性静态RAM,即使调电数据也不会丢失,一般是内置了电池的SRAM。 6、FRAM 铁电存储器,不用后备电池,在调电后数据永久保存,数据可擦写1亿次,速度快,功耗低(静态电流1A,写操作150A).可代替SRAM 、NVRAM、EEPROM、FLASH 7、ROM 只读存储器,一旦写入,存储内容便不能再更改,且可掉电保持,常用来代表程序存储器。,8、EPROM 电可编程ROM,可以采用特定的设备(烧录器)写入数据,并可用紫外线擦除,可重复使用。 9、EEPROM 电可擦除、可编程ROM, 可以用电写入也可用电擦除
6、,与EPROM的存储方式不同。 10、FLASH 闪速存储器,一种可用电写入和存储的存储器,但速度较慢。不用后备电池可实现数据保持。 11、PROM 可编程ROM,只可使用一次的ROM,2.2 MCS-51系列单片机组成原理,目前51单片机的生产厂家有:Intel、Atmel、华邦、菲利普等;型号有:AT89C51,AT89C2051,AT89C52,AT89C55等,它们都有一个相同的C51内核,指令系统完全兼容,只是存储器和I/O接口的配置有所不同。,AT89C51单片机的组成 : 8位CPU 片内4K bytes FLASH 128 bytes RAM 片内并行 I/O接口 P0、P1、
7、 P2 、P3 片内2个16位定时器/计数器 片内5个中断处理系统 片内全双工串行接口,MCS-51单片机结构,CPU,1、 CPU (1)运算器电路 运算器电路包括ALU(算术逻辑单元)、ACC(累加器)、B寄存器、状态寄存器、暂存器1和暂存器2等部件,运算器的功能是进行算术运算和逻辑运算。 (2)控制器电路 控制器电路包括程序计数器PC、PC加1寄存器、指令寄存器、指令译码器、数据指针DPTR、堆栈指针SP、缓冲器以及定时与控制电路等。控制电路完成指挥控制工作,协调单片机各部分正常工作。,2、 定时器/计数器 MCS51单片机片内有两个16位的定时/计数器,即定时器0和定时器1。它们可以用
8、于定时控制、延时以及对外部事件的计数和检测等。 3、存储器 MCS51系列单片机的存储器包括数据存储器和程序存储器,程序存储器4K bytes Flash,数据存储器128 bytes RAM。 4、并行I/O口 MCS51单片机共有4个8位的I/O口(P0、P1、P2和P3),每一条I/O线都能独立地用作输入或输出。P0口为三态准双向口,能带8个TTL门电路,P1、P2和P3口为准双向口,负载能力为4个TTL门电路。,5、串行I/O口 MCS51单片机具有一个采用通用异步工作方式的全双工串行通信接口,可以同时发送和接收数据。 6、中断控制系统 8051共有5个中断源,即外中断2个,定时/计数
9、中断2个,串行中断1个。 7、 时钟电路 MCS51芯片内部有时钟电路,但晶体振荡器和微调电容必须外接。时钟电路为单片机产生时钟脉冲序列,振荡器的频率范围为1.2MHz24MHz,典型取值为12MHz。 8、总线 系统的地址信号、数据信号和控制信号都是通过总线传送的,总线结构减少了单片机的连线和引脚,提高了集成度和可靠性。,2.3 MCS-51单片机引脚,1、I/O口线功能 4个8位并行 I/O 接口引脚P0.0 P0.7 、P1.0P1.7 、P2.0P2.7 和 P3.0P3.7 为多功能引脚,可自 动切换用 作数据总线、地址总线、控制总线 和或I/O 接口外部引脚 2、控制线 ALE:
10、地址锁存允许信号端 PSEN: 外部程序存储器读选通信 号端 EA/VPP:程序存储器选择信号端 和编程电源输入端,3、复位,RST:复位信号端和后备电源输入端。 输入10ms以上高电平脉冲,单片机复位。 VPD使用后备电源,可实现掉电保护。,4、电源 工作电源:VCC=5V、VSS,复位后各个寄存器和I/O的状态: PC=0000H,PSW=00H, SP=07 TH0=TL0=TH1=TL1=00H,P0=P1=P2=P3=0XFFH,IE=00H,A=B=00H,5、时钟,时钟频率: 范围要求在1.2MHz24MHz之间。 一般从外部振荡器输入时钟信号。,机器周期: 完成一个基本操作所需
11、要的时间。 一个机器周期由12个振荡周期组成。 指令周期: 一条指令的执行时间。 以机器周期为单位:单周期、双周期和四周期指令。 思考题:设应用单片机晶振频率为12MHz, 问机器周期为多少?单指令周期为多少?,2.4 MCS51单片机输入/输出(I/O)口 2.4.1 P0口 下图给出了P0口的逻辑结构,它由一个锁存器、两个三态输入缓冲器、一个多路复用开关以及控制电路和驱动电路等组成。,图 P0口的逻辑结构,0,1,P0口可以作为输入输出口,在实际应用中它通常作为地址/数据复用总线。 (1)I/O口使用: 外部要加上拉电阻。 输出 输入 准双向I/O口: 先置1 ,再读。 (2)地址/数据总
12、线复用,P0口可以作为输入输出口,在实际应用中它通常作为地址/数据复用总线。作为通用I/O口使用时,P0口为 准双向口。 2.4.2 P1口 P1口是一个准双向口,通常作为I/O口使用,其位结构如图。由于在其输出端接有上拉电阻,故可以直接输出而无需外接上拉电阻。,图 P1口位结构图,2.4.3 P2口 P2口位结构图如图。P2通用为一个准双向口,其位结构与P0口相似。对于8031单片机来说,P2口通常用作高8位地址信号输出。,图 P2口位结构图,2.4.4 P3口 P3口的位结构图如图。P3口为双功能口,当P3口作为通用I/O口使用时,它为准双向口,且每位都可定义为输入或输出口,其工作原理同P
13、1口类似。,图 P3口的位结构图,P3口还具有第二功能,其引脚描述如表。 表 P3口特殊功能,2.5 MCS-51寄存器和存储器,MCS51的存储器结构如图所示。存储器分为:程序存储器,数据存储器。另外它们分别又分为内部和外部。可寻址能力都为64K bytes。,内部,一、 内部数据存储器,2.5.1 数据存储器,MCS51数据存储器的寻址空间能够达到64K,它们内部数据存储器(RAM)空间一般为128,外部可扩展为64K。,1. 内部数据存储器低128单元(00H7FH) 工作寄存器区: 00H1FH 位寻址区: 20H2FH 用户RAM区: 30H7FH,2. 内部数据存储器高128单元(
14、80HFFH) 专用寄存器区,也称作特殊功能寄存器区(SFR),其它预留区。,表 专用寄存器区,累加器ACC 累加器为8位寄存器,助记符为A。加、减乘和除等算术运算指令的运算结果都存放在累加器A或AB寄存器中,在变址寻址方式中累加器被作为变址寄存器使用。 B寄存器 B寄存器为8位寄存器,主要用于乘除指令中。乘法指令的两个操作数分别取自累加器A和寄存器B,其中B为乘数,乘法结果的高8位存放于寄存器B中。除法指令中,被除数取自A,除数取自B,除法的结果商数存放于A,余数存放于B中。在其它指令中,B寄存器也可作为一般的数据单元来使用。 程序状态字PSW 程序状态字是一个8位寄存器,它包含程序的状态信
15、息。PSW的各位定义如表。,表 PSW的各状态位定义,(1) CY:进位标志位 在执行某些算术和逻辑指令时,可以被硬件或软件置位或清零。在算术运算中它可作为进位标志,在位运算中,它作累加器使用,在位传送、位与和位或等位操作中,都要使用进位标志位。 (2) AC:辅助进位标志 进行加法或减法操作时,当发生低四位向高四位进位或借位时,AC由硬件置位,否则AC位被置“0”。在进行十进制调整指令时,将借助AC状态进行判断。,(3)用户标志位F0 该位为用户定义的状态标记,用户根据需要用软件对其置位或清零,也可以用软件测试F0来控制程序的跳转。 (4)RS1和RS0:寄存器区选择控制位 该两位通过软件置
16、“0”或“1”来选择R0R7所在的当前工作寄存器区。 RS1 RS0 寄存器区 地 址 0 0 0 0007H 0 1 1 080FH 1 0 2 1017H 1 1 3 181FH (5)OV:溢出标志位 OV1表示运算结果超出了累加器A所能表示的符号数有效范围(0255),即运算结果是错误的,反之,OV0表示运算正确,即无溢出产生。OV=CY7CY6,(6) P:奇偶标志位 每个指令周期由硬件来置位或清零用以表示累加器A中1的个数的奇偶性,若累加器中1的个数为奇数则P1,否则P0。 数据指针DPTR 数据指针DPTR为一个16位的专用寄存器,其高位用DPH表示,其低位用DPL表示,它即既可以作为一个16位的寄存器来使用,也可作为两个8位的的寄存器DPH和DPL使用。DPTR在访问外部数据存储器时既可