《【教学课件】第2章硬件结构.ppt》由会员分享,可在线阅读,更多相关《【教学课件】第2章硬件结构.ppt(56页珍藏版)》请在三一办公上搜索。
1、2023/8/6,1,第2章 单片机硬件结构,单片机原理及应用,2.1 逻辑结构及信号引脚,2.2 内部存储器,2.3 并行输入/输出口电路,2.4 电路与时序,2.5 工作方式,2,2023/8/6,2.1.1 结构框图2.1.2 内部逻辑结构2.1.3 信号引脚,2.1 逻辑结构及信号引脚,2.1.1 结构框图,8031无,2.1.2 内部逻辑结构,5,2023/8/6,6,2023/8/6,MCS51 CPU,CPU内部结构:(1)运算器电路:算术逻辑单元ALU、累加器ACC、寄存器B、程序状态字PSW和2个暂存器等。算术逻辑运算单元ALU(8位):+、算术运算,与、或、非、异或逻辑运算
2、,循环移位、位处理。(2)控制器电路:程序计数器PC、PC+1寄存器、指令寄存器、指令译码器、定时与控制电路等。,2.1.3 信号引脚,1、I/O口线功能 4个8位并行 I/O 接口引脚 P0.0P0.7、P1.0P1.7、P2.0P2.7和 P3.0P3.7,2、控制线ALE:地址锁存允许信号端PSEN:外部程序存储器读选通信号端EA/VPP:程序存储器选择信号端/编程电源输入端,为多功能引脚,可自动切换用作数据总线、地址总线、控制总线和或I/O 接口外部引脚。,80C51,2、控制线,RST/VPD:复位信号端和后备电源输入端。输入10ms以上高电平脉冲,单片机复位。VPD使用后备电源,可
3、实现掉电保护。,3、电源及时钟引线 工作电源:VCC、VSS 时钟输入:XTAL1、XTAL2。,复位电路:(1)上电复位(2)外部信号复位,2.2.1 内部数据存储器低128单元2.2.2 内部数据存储器高128单元2.2.3 堆栈操作2.2.4 内部程序存储器2.2.5 存储器结构特点,2.2 内部存储器,10,2023/8/6,低128单元是单片机的真正RAM存储器。,2.2.1 内部数据存储器低128单元,分为三个区域:1 寄存器区:4组寄存器(寄存器阵列)。即4个工作寄存器0区3区。每组8个寄存单元(每单元8位),以R0R7作寄存器名,暂存运算数据和中间结果。字节地址为00H1FH。
4、2 位寻址区:字节地址为20H2FH,既可作RAM,也可位操作。共有16个RAM单元,共128位,位地址为00H7FH。3 用户RAM区:32个单元,地址为30H7FH,在一般应用中常作堆栈区。,用PSW中的两位PSW.4和PSW.3来切换工作寄存器区,选用一个工作寄存器区进行读写操作。,12,2023/8/6,13,2023/8/6,2.2.2 内部数据存储器高128单元,内部RAM的高128单元 专用寄存器(SFR)区 地址为80HFFH(也称特殊功能寄存器),14,2023/8/6,其字节地址可被8整除。专用寄存器:A、B、PSW、DPTR、SP。I/O接口寄存器:P0、P1、P2、P3
5、、SBUF、TMOD、TCON、SCON,有2套地址,字节地址:只21个有效(其中仅11个有位地址)位地址:只83位有效,1、SFR(80HFFH)介绍:,16,2023/8/6,(1)程序计数器PC(16位):CPU总是按PC的指示读取程序。PC是一个16位的计数器。其内容为将要执行的指令地址(即下一条指令地址),可自动加1。因此CPU执行程序一般是顺序方式。当发生转移、子程序调用、中断和复位等操作,PC被强制改写,程序执行顺序也发生改变。复位时,PC=0000H。,(2)累加器Acc(8位):需要ALU处理的数据和计算结果多数要经过累加器A。,17,2023/8/6,(3)寄存器B(8位)
6、:与A累加器配合执行乘、除运算。也可用作通用寄存器。(4)程序状态字PSW(8位):,存放ALU运算过程的标志状态。(5)数据指针DPTR(16位):存放片外存储器地址,作为片外存储器的指针。可分成两个8位寄存器DPH、DPL使用。,18,2023/8/6,2.专用寄存器的字节寻址,注意:21个可字节寻址的专用寄存器是不连续地分散在内部RAM高128单元之中,共83个可寻址位。尽管还剩余许多空闲单元,但用户并不能使用。在22个专用寄存器中,唯一一个不可寻址的PC。PC不占据RAM单元,它在物理上是独立的,因此是不可寻址的寄存器。对专用寄存器只能使用直接寻址方式,书写时既可使用寄存器符号,也可使
7、用寄存器单元地址。,MCS-51的寄存器在片内RAM都有映像地址。使用时,既可用寄存器名,也可用对应单元地址。,20,2023/8/6,2.2.3 堆栈操作,向上生长型(向地址增大的方向生成):MCS51系列堆栈类型 向下生长型(向地址较低的方向生成):MCS96系列堆栈指针SP(8位):MCS51系列的堆栈是按“先进后出”原则存取数据的存储区。MCS51堆栈设在片内RAM区。数据入栈时:先SP自动加1,后写入数据,SP始终指向栈顶地址。“先加后压”数据出栈时:先读出数据,后SP自动减 1,SP始终指向栈顶地址。“先弹后减”复位时 SP=07H。但在程序设计时应将SP值初始化为30H以后,以免
8、占用宝贵的寄存器区和位地址区。,22,2023/8/6,2.2.4 内部程序存储器,80C51内有4KB ROM,其地址为0000H0FFFH(内部ROM)。其中0000H0002H是系统的启动单元。系统复位后(PC)0000H,开始取指令执行程序。如果不从0000H开始,应存放一条无条件转移指令,以便直接转去执行指定的程序。作用:(1)用来存放固化了的用户程序,取指地址由程序计数器PC给出,PC具有自动加1的功能;(2)固化一片数据区,存放被查询的表格和参数等。,23,2023/8/6,0003H000AH外部中断0(INT0)中断地址区000BH0012H 定时器/记数器0(T0)中断地址
9、区0013H001AH外部中断1(INT1)中断地址区001BH0022H定时器/计数器1(T1)中断地址区0023H002AH串行(RI/TI)中断地址区,中断入口:0003H0023H,中断服务程序存放方法:(1)从中断地址区首地址开始,在中断地址区中直接存放;(2)从中断地址区首地址开始,存放一条无条件转移指令,以便中断响应后,通过中断地址区,再转到中断服务 程序的实际入口地址区去。,程序存储器保留的单元:,2.2.5 存储器结构特点,普林斯顿结构:程序和数据共用一个存储器逻辑空间,统一编址。,哈佛结构:程序与数据分为两个独立存储器逻辑空间,分开编址。,物理上4个存储器地址空间:片内程序
10、存储器 片外程序存储器 片内数据存储器 片外数据存储器逻辑上3个存储器地址空间:64KB 程序存储器 256B 片内数据存储器 64KB 片外数据存储器,27,2023/8/6,存储器小结:MCS51的程序存储器与数据存储器是分开的(属于哈佛结构),地址空间重迭,最大可扩展到64KB。1、程序存储器ROM(1)8031内部无程序存储器 由于8031无片内程序存储器,需外接,因此,端必须外接低电平。(2)8051、8751内部有4KB ROM/EPROM:=0,使用外部程序存储器;=1,使用内部程序存储器4KB空间,当PC的值超过4KB 范围时,自动转向外部程序存储器。2、数据存储器RAM(1)
11、内部RAM中低128B,00H7FH;(2)外部RAM,可扩至64KB,0000HFFFFH。,MCS51共有四个8位的双向并行I/O口,分别记作P0、P1、P2和P3。实际上它们已被归入专用寄存器之列。口是一个综合概念,是一个集数据输入缓冲、数据输出驱动及锁存等多项功能为一体的I/O电路。对于口有时也称为端口。,2.3 并行输入/输出口电路,P0口:,一个数据输出锁存器和两个三态数据输入缓冲器。一个多路转接电路MUX在控制信号的作用下,MUX可以分别接通锁存器输出或地址/数据线。当作为通用的I/O口使用时,内部的控制信号为低电平,封锁与门将输出驱动电路的上拉场效应管(FET)截止,同时使MU
12、X接通锁存器Q端的输出通路。,P1口:,作通用I/O口使用,所以在电路结构上与P0口有一些不同之处。首先它不再需要多路转接电路MUX,其次是电路的内部有上拉电阻。与场效应管共同组成输出驱动电路。作为输出口使用时,已能向外提供推拉电流负载,无需再外接上拉电阻。,P2口:,P2口电路中比P1口多了一个多路转换电路MUX,这又正好与P0口一样。P2口也可以作为通用I/O口使用。这时多路转接开关倒向锁存器的Q端。但通常应用情况下,P2口是作为高位地址线使用,此时多路转接开关应倒向相反方向。,P3口:,P3口的特点在于为适应引脚信号第二功能的需要。对于第二功能为输出的信号引脚,当作为I/O使用时,第二功
13、能信号引线应保持高电平,与非门开通,以维持从锁存器到输出端数据输出通路的畅通。当输出第二功能信号时,该位的锁存器应置“1”,使与非门对第二功能信号的输出是畅通的,从而实现第二功能信号的输出。,33,2023/8/6,34,2023/8/6,35,2023/8/6,端口小结:,(1)系统总线:地址总线(16位):P0(地址低8位)、P2口(地址高8位)数据总线(8位):P0口(地址/数据分时复用,借助ALE);控制总线(6根):P3口的第二功能和9、29、30、31脚;(2)供用户使用的端口:P1口、部分未作第二功能的P3口;(3)P0口作地址/数据时,是真正的双向口,三态,负载能力 为8个LS
14、TTL电路;P1P3是准双向口,负载能力为4个LSTTL电路。(4)P0P3在用作输入之前必须先写“1”,即:(P0)=FFH(P3)=FFH。,2.4 电路与时序,2.4.1 时钟电路时钟频率范围要求在1.2MHz12MHz之间。1内部时钟方式:内部一个高增益反相放大器与片外石英 晶体或陶瓷谐振器构成了一个自激振荡器。晶体振荡器的振荡频率决定单片机的时钟频率。,2外部时钟方式:外部振荡器输入时钟信号。,振荡源(OSCillation),2.4.2 时序定时单位,时钟周期:振荡频率的倒数。机器周期:完成一个基本操作所需要的时间。一个机器周期由12个时钟周期组成。指令周期:一条指令的执行时间。以
15、机器周期为单位:可包含1个4个机器周期。,思考题:设应用单片机晶振频率为12MHz,问机器周期为多少?指令周期分别为多少?,fosc=12MHzMC=12/fosc=12/12MHz=1s,38,2023/8/6,2.4.3 典型指令时序,MCS51采用定时控制方式,因此它有固定的机器周期。规定一个机器周期的宽度为6个状态。由于一个状态又包括两个拍节,因此一个机器周期总共有12个拍节,分别记作S1P1、S1P2S6P2。,振荡脉冲并不直接使用,由XTAL2端送往内部时钟电路(fosc):经过2分频,向CPU提供2相时钟信号P1和P2(f拍节=1/2 fosc);再经3分频,产生ALE时序(fA
16、LE=1/6 fosc);经过12分频,成为机器周期信号(MC=12/fosc),如下图所示。需要指出的是,CPU的运算操作在P1期间,数据传送在P2期间。,40,2023/8/6,几种典型指令的取指和执行时序:,通常,每个机器周期,ALE两次有效,第1次发生在S1P2和S2P1期间,第2次在S4P2和S5P1期间。,单周期指令的执行 始于S1P2,这时操作码被锁存到指令寄存器内,读出下字节(应为下一个操作码)是不予考虑的,且程序计数器PC并不增量。,访问外部数据存贮器的指令MOVX的时序,它是一条单字节双周期指令。在第1机器周期S5开始时,送出外部数据存贮器的地址,随后读或写数据。读写期间在
17、ALE端不输出有效信号,在第2机器周期,即外部数据存贮器已被寻址和选通后,也不产生取指操作。,MCS51单片机时序,1,2,11,12,3,4,5,6,7,8,9,10,1,2,S1P2,S2P1,S4P2,S5P1,可通过测量ALE确定CPU是否工作,ALE有时钟的特点。,42,2023/8/6,80C51,复位、程序执行、单步执行、掉电保护、低功耗以及EPROM编程和校验等六种工作方式。2.5.1 复位方式和复位电路 RST引脚是复位信号的输入端,复位信号是高电平有效,其有效时间应持续24个振荡脉冲周期(即二个机器周期)以上。例:若使用频率为6MHz的晶振,则复位信号持续时间应超过 _才能
18、完成复位操作。,2.5 工作方式,fosc=6MHzMC=12/fosc=12/6MHz=2s t=4s,上电自动复位和按键手动复位:,上电自动复位通过电容充电来实现的,Vcc的上升时间 不超过1ms,就可以实现自动上电复位。按键脉冲复位利用RC微分电路产生的正脉冲来实现的。,45,2023/8/6,46,2023/8/6,2.5.2 程序执行方式,程序执行方式是单片机的基本工作方式。由于复位后PC=0000H,因此程序执行总是从地址0000H开始,但一般程序并不是真正从0000H开始,为此就得在0000H开始的单元中存放一条无条件转移指令,以便跳转到实际程序的入口去执行。,2.5.3 掉电保
19、护方式,单片机系统在运行过程中,如发生掉电故障,将会丢失RAM和寄存器中的程序和数据,其后果有时是很严重的。掉电保护处理先把有用信息转存,然后再启用备用电源维持供电。,信息转存:所谓信息转存是指当电源出现故障时,应立即将系统的有用信息转存到内部RAM中。信息转存是通过中断服务程序完成的。,48,2023/8/6,系统中设置一个电压检测电路,一旦检测到电源电压下降,立即通过INT0/1产生外部中断请求,中断响应后执行中断服务程序,并将有用信息送内部RAM中保护起来,即通常所说的“掉电中断”。掉电后时钟电路和CPU皆停止工作,只有内部只RAM单元和专用寄存器继续工作,以保持其内容。,2.5.4 8
20、0C51的低功耗方式,8051掉电保护方式实际上就是低功耗方式。CHMOS的80C5I却有两种低功耗方式,即待机方式和掉电保护方式。待机方式和掉电方式都是由专用寄存器PCON(电源控制寄存器)来控制的。,50,2023/8/6,1、待机方式:,待机方式振荡器仍然运行。并向中断逻辑、串行口和定时器/计数器电路提供时钟,CPU不能工作,与CPU有关的如SP、PC、PSW、ACC以及全部通用寄存器也都被“冻结”在原状态。中断方法退出待机方式。中断的同时,PCON.0被硬件自动清0,单片机就退出待机方式而进入正常工作方式。其实在中断服务程序只需中安排一条RETI指令,就可以使单片机恢复正常工作后返回断
21、点继续执行程序。,51,2023/8/6,2、掉电保护方式:,PCON的PD位控制单片机进入掉电保护方式。因此对于象80C51这样的单片机。在检测到电源故障时,除进行信息保护外、还应把PCON.1位置“1”,使之进入掉电保护方式。此时单片机一切工作都停止,只有内部RAM单元的内容被保存。80C51单片机除进入掉电保护方式的方法与8051不同之外,还有备用电源由VCC端引入的特点。VCC正常后,硬件复位信号维持10ms即能使单片机退出掉电方式。,52,2023/8/6,单步执行:,单步执行是借助单片机的外部中断功能来实现的。1、建立单步执行的外部控制电路,以按键产生脉冲作为外部中断0的中断请求信
22、号,经 INT0端输入。电路按一次键产生一个正脉冲。此外还需要在初始化程序中定义预INT0低电平有效。2、编写外部中断0的中断服务程序。,JNB P3.2,$;=0则“原地踏步”JB P3.2,$;=1则“原地踏步”RETI;返回,53,2023/8/6,最小应用系统:,基本的单片机控制电路板,1、介绍单片机的编程结构和内部逻辑结构及性能。2、学习了单片机存储器结构特点、内部数据存储器 和程序存储器的结构和工作原理。3、单片机的4个8位并行端口P0、P1、P2和P3各自的 口电路逻辑和功能。4、单片机的时钟电路和时序以及单片机的6种工作 方式。,小 结,56,(一)问答题(二)判断题(三)填空题(四)选择题,练 习 题,