第2章单片机芯片的硬件结构

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第2章单片机芯片的硬件结构2.1MCS-51单片机的逻辑结构及引脚信号2.2MCS-51单片机的内部存储器2.3MCS-51单片机并行输入/输出接口2.4MCS-51单片机时钟电路与时序2.5MCS-51单片机工作方式2.1MCS-51单片机的逻辑结构及引脚信号MCS-51单片机的组成:1.8位CPU2.片内ROM/EPROM、RAM3.片内并行I/O接口4.片内16位定时器/计数器5.片内中断处理系统6.片内全双工串行I/O口不同型号MCS-51单片机CPU处理能力和指令系统完全兼容,只是存储器和I/O接口的配置有所不同。2.1.1MCS-51单片机结构框图图2.1MCS-51单片机系统结构框图2.1.2MCS-51单片机芯片内部逻辑结构1.中央处理器(CPU)中央处理器(CPU)是单片机的核心,完成运算和控制功能,MCS-51单片机的CPU能处理8位二进制数或代码。2、内部数据存贮器(内部RAM)8051共有256个RAM,其中128个被专用寄存器占用,能作为寄存器供用户使用的只有128个单元,简称内部RAM3、内部程序存贮器(内部ROM)8051共有4K掩膜ROM,用于存放程序,原始数据,表格。称程序存储器,简称内部ROM4、定时器/计数器8051共有2个16位定时器/计数器,以实现定时或计数功能,并以定时或计数结果对计算机进行控制。5、并行I/O口8051共有4个I/O口P0P1P2P3以实现数据的并行输出,输入。6、串行I/O口MCS-51的一个全双工的串行口,以实现单片机与其它设备之间的串行数据传输。该口功能较强,既可作为全双工异步通信收发器使用,也可作为同步移位器使用。7、中断控制系统8051共有5个中断源,外中断2个,定时器/计数中断2个,串行中断1个。分为高级和低级两个级别。8、时钟电路MCS-51内部有时钟,但晶振和微调电容需外接。系统允许最高频率为12MHZ9.位处理器以状态寄存器中的进位标志位C为累加位,可进行置位、复位、取反等操作。10、总线部件通过总线连接起来。2.1.3MCS-51的信号引脚ALE地址锁存允许信号端PSEN外部程序存储器读选通信号端EA访问程序存储器选择信号端RST复位信号XTAL1XTAL2外接晶体引脚VSS地线VCC+5V电源MCS-51为标准40引脚双列直插式集成电路芯片1.信号引脚功能P0.0~P0.7、P1.0~P1.7P2.0~P2.7、P3.0~P3.74个8位并行双向I/O接口多功能引脚,可自动切换用作数据总线、地址总线、控制总线或I/O接口逻辑符号:2.信号引脚的第二功能P3口的8条口线都定义有第二功能,见下表2.2MCS-51单片机的内部存储器共有256单元,其中低128单元(00H-7FH)为内部数据存储单元,高128单元(80H-FFH)为特殊功能寄存器。2.2.1内部数据存储器低128单元内部存储器低128单元(00H-7FH)1、通用寄存器区寄存器用于存放操作数及中间结果。地址:00H~1FH,分为4组,组号分别为0、1、2、3,每组8个寄存器,按R7~R0编号,CPU每次只使用1组。到底用哪一组,由程序状态字寄存器PSW中的RS1/RS0位的状态组合来决定。通用寄存器有两种用法:一以寄存器形式使用;二存储单元形式使用。内部存储器低128单元(00H-7FH)2、位寻址区地址:20H~2FH,可按一般RAM字节单元操作,也可按位操作,共128位,位地址为00H~7FH。“位”有两种表示方法:1)以位地址形式(例:7FH);2)以存储单元地址加位的形式表示(2FH.7);内部存储器低128单元(00H-7FH)3、用户RAM区地址:30H~7FH,供用户使用的一般RAM区,共80个单元;堆栈常开在此区。对于用户RAM区,只能以存储单元的形式使用。这些寄存器的功能厂家已作专门规定,故称为特殊功能寄存器(SFR),用于存放相应功能部件的控制命令、状态和数据。占用字节地址:80H~FFH,80C51的专用寄存器共有22个,其中可寻址的21个。专用寄存器:A、B、PSW、DPTR、PC2.2.2内部数据存储器高128单元1.专用寄存器简介(1)程序计数器(PC)PC是一个16位的计数器。内容为将要执行的指令地址,寻址范围达64KB。具有自动加1功能,以实现程序的顺序执行。PC没有地址,是不可寻址的;但在执行转移、调用、返回等指令时能改变其内容。2.2.2内部数据存储器高128单元(2)累加器A累加器为8位寄存器;功能如下:存放操作数;运算结果的暂存,用于存放中间结果;数据传送的中转站;在变址寻址方式中把累加器作为变址寄存器使用。2.2.2内部数据存储器高128单元(3)B寄存器B寄存器为8位;主要用于乘除运算;乘法运算时:B为乘数,乘积的高8位存于B中。除法运算时:B为除数,除法操作后,余数存于B中。2.2.2内部数据存储器高128单元(4)程序状态字(PSW)8位寄存器,用于存放指令执行的状态信息。有些位硬件自动设置,有些位用软件设定。一些条件转移指令根据PSW的位状态来进行程序转移的。PSW的各位定义如下:2.2.2内部数据存储器高128单元位序PSW.7PSW.6PSW.5PSW.4PSW.3PSW.2PSW.1PSW.0位标志CYACF0RS1RS0OV/PCY:进位标志位一是存放算术运算的进位标志;二是在位操作中,作累加位使用。位传送、位与、位或等位操作中都要用到进位标志位。(4)程序状态字(PSW)位序PSW.7PSW.6PSW.5PSW.4PSW.3PSW.2PSW.1PSW.0位标志CYACF0RS1RS0OV/PAC:辅助进位标志位加减运其中当有低4位向高4位进位或借位时,AC由硬件置位,否则AC位被清0。(4)程序状态字(PSW)位序PSW.7PSW.6PSW.5PSW.4PSW.3PSW.2PSW.1PSW.0位标志CYACF0RS1RS0OV/PF0:用户标志位这是一个供用户定义的标志位,需要时用软件方法置位或复位,用以控制程序的转向。(4)程序状态字(PSW)位序PSW.7PSW.6PSW.5PSW.4PSW.3PSW.2PSW.1PSW.0位标志CYACF0RS1RS0OV/PRS1和RS0:寄存器组选择位(由软件设置)用于设定通用寄存器的组号。通用寄存器共有四组,其对应关系为:RS1RS0寄存器组R0~R7地址00000~07H01108~0FH10210~17H11318~1FH(4)程序状态字(PSW)位序PSW.7PSW.6PSW.5PSW.4PSW.3PSW.2PSW.1PSW.0位标志CYACF0RS1RS0OV/POV:溢出标志位在带符号数加减运其中,OV=1表示加减运算超出了累加器A所能表示的符号数有效范围(一128一十127),即产生了溢出,因此运算结果是错误的;否则,OV=0表示运算正确,即无溢出产生。在乘法运算其中,OV=1表示乘积超过255,即乘积分别在B与A中;否则,OV=0,表示乘积只在A中。在除法运算中,OV=1表示除数为0,除法不能进行,否则,OV=0,除数不为0,除法可正常进行。(4)程序状态字(PSW)位序PSW.7PSW.6PSW.5PSW.4PSW.3PSW.2PSW.1PSW.0位标志CYACF0RS1RS0OV/PP:奇偶标志位表明累加器A中1的个数的奇偶性,在每个指令周期由硬件根据A的内容对P位自动置位或复位。1为偶数,P=0;反之,P=1.(5)数据指针(DPTR)数据指针为16位寄存器,它是MCS—51中唯一的一个16位寄存器。编程时,DPTR既可以按16位寄存器使用,也可以按两个8位寄存器分开使用,即:DPHDRTR高位字节DPLDRTR低位字节DPTR通常在访问外部数据存储器时作地址指针使用由于外部数据存储器的寻址范围为64KB,故DPTR设计为16位。在变址寻址方式中,用DPTR作基址寄存器,用于对程序存储器的访问。2.专用寄存器的字节寻址21个可寻址的专用寄存器是不连续地分散在内部RAM高128单元之中。尽管还余有许多空闲地址,但用户并不能使用。在22个专用寄存器中,唯一一个不可寻址的专用寄存器就是程序计数器(Pc)。PC不占据RAM单元,它在物理上是独立的,因此是不可寻址的寄存器。对专用寄存器只能使用直接寻址方式,指令中既可使用寄存器符号,也可使用寄存器单元地址。2.2.3MCS-51的堆栈操作堆栈是一种数据结构,是一种只允许在一端进行操作的线性表。数据写入堆栈叫做入栈,数据从堆栈中读出叫做出栈。堆栈数据操作的特点是“后进先出”(LIFO)。1.堆栈的功能堆栈用于子程序调用和中断操作,主要功能是保存断点和保护现场。通过保存断点和保护现场,能够使计算机执行子程序或中断服务程序后正确返回主程序。2.2.3MCS-51的堆栈操作2.堆栈的开辟堆栈只能开辟在内部数据存储器中。3.堆栈指示器堆栈数据操作都是在栈顶进行的,栈顶地址保存在堆栈指示器(SP-StackPointer)中。SP中的内容就是堆栈栈顶的存储单元地址。系统复位后,SP的内容为07H。程序设计时,把SP值初始化为30H以后,以免占用宝贵的寄存器区和位寻址区。4.堆栈类型两种类型:向上生长型和向下生长型向上生长型堆栈:栈底在低地址单元。数据进栈,地址递增,堆栈指针SP上移。数据出栈,地址递减,堆栈指针SP下移。向下生长型堆栈:栈底在高地址单元。数据进栈,地址递减,堆栈指针SP下移。数据出栈,地址递增,堆栈指针SP上移。2.2.3MCS-51的堆栈操作MCS-51属于向上生长型,堆栈的操作规则如下:进栈操作:先SP加1,后写入数据出栈操作:先读出数据,后SP减15.堆栈使用方式进栈指令:PUSH出栈指令:POP2.2.4内部程序存储器80C51内部有4KROM存储单元,地址为0000H-0FFFH。其中0000H-002AH单元为保留单元,为系统启动单元。系统复位后,(PC)=0000H,单片机从0000H单元开始读取指令执行程序。为了不使程序执行产生矛盾,在0000H-0002H单元需要存放一条无条件转移指令,使程序执行转到主程序的首地址。0003H-002AH单元共40个单元被分成5段,每段8个单元,分别作为5个中断源的中断程序地址区,具体为:0003H-000AH单元:外部中断0的中断服务程序地址区。000BH-0012H单元:定时器/计数器0的中断服务程序地址区。0013H-001AH单元:外部中断1的中断服务程序地址区。001BH-0022H单元:定时器/计数器1的中断服务程序地址区。0023H-002AH单元:串行中断的中断服务程序地址区。对于中断源的中断程序存放地址区,一般说来,只有8个单元不够存放完整的中断服务程序。因此,各中断源的中断服务程序地址区的首地址也存放一条无条件转移指令,使程序执行能够转去到该中断源的中断服务程序的首地址。2.2.5MCS-51单片机系统的存储器结构特点两个重要特点:一是把数据存储器和程序存储器分开;二是存储器有内外之分。•8051的系统RAM、ROM结构总结访问片内外RAM用不同指令识别访问片内外ROM用控制线/EA识别访问片内RAM用——MOV访问片外RAM用——MOVX访问片内外ROM使——/EA=1仅访问片外ROM使——/EA=02.3MCS-51单片机并行输入/输出口电路MCS-51单片机有4个8位并行I/O口,P0~P3,共32根口线。每个端口都包括:锁存器(SFR)、输出驱动器、两个三态缓冲器以及控制电路。•P0口的功能和特点当8051仅使用片内RAM、ROM时当8051要使用片外RAM、ROM时P0口作为一般I/O口使用字节操作时的名——P0P0口的字节地址——80H位操作时的名——P0.0~P0.7P0口的位地址——80H~87HP0口作8位数据线和16位地址线的低8位即AD0~AD7需解决数据/地址复用线的分离2.3.1P0口(地址:80H)2.3.1P0口图2.7P0口电路逻辑显示桌面.s

1 / 65
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功