欢迎来到天天文库
浏览记录
ID:38957031
大小:1.73 MB
页数:81页
时间:2019-06-22
《chapt2-单片机结构与时序》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第二章MCS-51系列单片机的结构和原理2.0概述2.1MCS-51单片机内部结构2.2MCS-51单片机引脚功能2.3MCS-51单片机工作方式2.4MCS-51单片机时序1MCS-51系列单片机是把构成计算机的CPU、存储器、I/O端口制作在一块集成电路芯片中。另外,还集成有定时器/计数器和中断系统等部件,因此可方便地用于定时控制和远程数据传送。MCS-51的典型产品是8051、80C51、8052。MCS-51系列里,所以产品都是以8051为核心电路发展起来的,它们都具有8051的基本结构和软件特征。8051是ROM型
2、单片机,内部有4KROM;8031无片内ROM,8052片内有8KROM。§2.0概述2从制造工艺看,MCS-51系列中的器件基本分为HMOS和CMOS两类。CMOS的特点是电流小且功耗低,但对电平要求高(高电平大于4.5V,低电平小于0.45V),HMOS对电平要求低(高电平大于2.0V,低电平小于0.8V),但功耗大。8051采用HMOS工艺制造,80C51BH系列采用CHMOS工艺制成,功耗低,其中87C51具有两级存储器保密系统,可防止非法拷贝。本章将以MCS-51系列的8051为典型例子,详细介绍MCS-51单片机
3、的结构、性能、存储器结构及工作原理等内容。3§2.1MCS-51单片机内部结构以8051为例由图可见,在这一块芯片上,集成了一台微型计算机的各个部分。其功能部件主要有CPU、存储器、可编程I/O端口、定时/计数器、串行口和中断系统等。各部分通过内部总线相连。具体包含1个8位中央处理器CPU、4KB程序存储器EPROM、128B随机存取存储器RAM、4个8位并行I/O接口、1个全双工串行通信接口、2个16位定时器/计数器及21个特殊功能寄存器。外部具有64KB程序存储器寻址能力和64KB数据存储器寻址能力。4时钟OSCCPU各
4、种I/O定时器/计数器程序存储器ROM数据存储器RAM中断MCS-51单片机组成框图58051单片机内部结构框图P1P1口锁存器P1口驱动器8PCONSCONTMODTCONSBUF(TX)SBUF(RX)IEIPTH0TL0TH1TL1中断、串行口和定时器部件P3P3口锁存器P3口驱动器8PSENEARSTALE指令寄存器IR定时控制逻辑寄存器BSPRAM128×8+5VVCC地址寄存器RAMP0口锁存器P0P0口驱动器8ROM4K×8P2口锁存器P2P2口驱动器8PSW暂存寄存器1暂存寄存器2累加器A算术逻辑部件ALU程
5、序地址寄存器缓冲寄存器PC增量PCDPTR图3.1(2)XTAL1XTAL26§2.1.1CPU结构运算器CPU算术/逻辑部件ALU(ArithmeticLogicUnit)累加器ACC(Accumulator)程序状态字寄存器PSW(ProgramStatusWord)暂存寄存器TMP1和TMP2寄存器B控制器定时控制与条件转移逻辑电路程序计数器PC指令寄存器IR指令译码器ID71、运算器运算器的功能主要是对数据进行加、减、乘、除等算术运算及“与”、“或”、“非”、“异或”等逻辑运算,还具有数据传送、移位、判断和程序转移等
6、功能。对于位操作数,可进行置位、清零、求反、移位、条件判断及按位“与”、按位“或”等操作。2、控制器控制器电路包括程序计数器PC、PC加1寄存器、指令寄存器IR、指令译码器、数据指针DPTR、堆栈指针SP、缓冲器以及定时与控制电路、振荡器(OSC)等。指令寄存器用于存放从程序存储器取出的指令码,定时控制逻辑用于对指令寄存器中的操作码进行译码,并在OSC的配合下产生执行该指令的时序脉冲,以完成相应指令的执行。8时钟电路或者OSC电路MCS-51芯片内部有时钟电路,但晶体振荡器和微调电容必须外接。时钟电路为单片机产生时钟脉冲序列
7、,振荡器的频率范围为1.2MHz~12MHz,典型取值为6MHz。外接晶振,产生时钟信号,控制CPU的工作速度。CPU各个功能部件及其专用寄存器组介绍9算术逻辑运算部件主要用来完成数据的算术和逻辑运算。ALU有2个输入端和2个输出端,其中一端接至累加器,接收由累加器送来的一个操作数;另一端接收TMP中的第二个操作数。参加运算的操作数在ALU中进行规定的操作运算,运算结束后,一方面将结果送至累加器,同时将操作结果的特征状态送标志寄存器。算术逻辑运算部件ALU用于存放从程序存储器中取出的指令(即操作)码。用于存放从程序存储器中取
8、出的指令(即操作)码。指令寄存器IR用于存放从程序存储器中取出的指令(即操作)码。10累加器A或ACC二进制8位寄存器,用来存放操作数或运算结果。在CPU执行某种运算前,两个操作数中的一个通常应放在累加器A中,运算完成后累加器A便可得到运算结果。累加器是一个特殊的寄存器,由于所有运算的数据
此文档下载收益归作者所有