微机原理及应用第二章MCS 51单片机结构和工作课件.ppt

上传人:牧羊曲112 文档编号:1525368 上传时间:2022-12-03 格式:PPT 页数:97 大小:2.89MB
返回 下载 相关 举报
微机原理及应用第二章MCS 51单片机结构和工作课件.ppt_第1页
第1页 / 共97页
微机原理及应用第二章MCS 51单片机结构和工作课件.ppt_第2页
第2页 / 共97页
微机原理及应用第二章MCS 51单片机结构和工作课件.ppt_第3页
第3页 / 共97页
微机原理及应用第二章MCS 51单片机结构和工作课件.ppt_第4页
第4页 / 共97页
微机原理及应用第二章MCS 51单片机结构和工作课件.ppt_第5页
第5页 / 共97页
点击查看更多>>
资源描述

《微机原理及应用第二章MCS 51单片机结构和工作课件.ppt》由会员分享,可在线阅读,更多相关《微机原理及应用第二章MCS 51单片机结构和工作课件.ppt(97页珍藏版)》请在三一办公上搜索。

1、第二章MCS-51单片机的结构和工作原理,复习提问,1、真值与机器数有何区别?2、原码、反码、补码三者之间如何换算?3、补码的作用?作业: P12 一、二题;下周二上课之前交作业,2.1单片机内部组成及引脚功能,2.4 并行I/O口电路结构及应用特征,2.6MCS-51单片机的工作方式,第二章MCS-51单片机的结构和工作原理,2.5 时钟电路与CPU时序,2.3 存储器组织,MCS-51 系列单片机分类,2.1MCS-51单片机引脚功能及内部组成,2.1.1 MCS-51单片机的引脚功能2.1.2 MCS-51单片机的内部结构,HMOS工艺制造的芯片为40个引脚,均采用双列直插式封装(DIP

2、),2.1.1 MCS-51的引脚功能,CHMOS工艺制造的芯片有采用如下封装:双列直插(DIP),方形:(PLCC),扁平封装:(QFP),2.1.1 MCS-51的引脚功能,2.3,1、电源和时钟晶振引脚:Vcc、Vss、XTAL2、XTAL12、控制信号引脚(1)、 RST/VPD(3)、 EA/VPP(2)、 ALE/PROG(4) 、 PSEN3、输入/输出端口引脚-32P0、P1、P2、P3,2.1.1 MCS-51的引脚功能,2.3,1、电源和时钟晶振引脚:Vcc、Vss、XTAL2、XTAL1,Vcc:电源端,接5V。 Vss:接地端。 通常在Vcc和Vss引脚之间接0.1高频

3、滤波电容。 XTAL1:接外部晶振和微调电容的一端,在片内它是振荡器倒相放大器的输入;若使用外部时钟时,对于HMOS单片机,该引脚必须接地,但对于CMOS单片机而言,该引脚为外部时钟的输入端。 XTAL2:接外部晶振和微调电容的另一端,在片内它是振荡器倒相放大器的输出;若使用外部时钟时,对于HMOS单片机,该引脚为外部时钟的输入端,但对于CMOS单片机而言,该引脚应悬空。,2.1.1 MCS-51的引脚功能,2.3,(1). 复位信号RST 该信号高电平有效,在输入端保持两个机器周期的高电平后,就可以完成复位操作。该引脚还有掉电保护功能,若在该端接备用电源,在使用中若Vcc掉电,可保护片内RA

4、M中信息不丢失。,(2) 外部程序存储器地址允许使能端 /EA当为高电平时,CPU执行片内程序存储器指令,但当PC中的值超过内部ROM的最高地址(8051为0FFFH)时,将自动转向执行片外程序存储器指令; /EA当为低电平时,CPU只执行片外程序存储器指令。对于8031,由于其无片内ROM,故/EA必须接低电平。,2.1.1 MCS-51的引脚功能,2.3,(3)、地址锁存允许ALE 在系统扩展时,ALE用于控制地址锁存器锁存P0口输出的低8位地址,从而实现数据与低位地址的分时复用。当单片机上电正常工作后,ALE端就周期性地以时钟频率的1/6的固定频率向外输出正脉冲信号,但当访问外部数据存储

5、器是会丢失一个脉冲。ALE的负载能力为8个LSTTL器件。,(4)外部程序存储器读选通信号 低电平有效。CPU从外部程序存储器取指令时,它在每个机器周期中两次有效。负载能力为8个LSTTL器件。,2.1.1 MCS-51的引脚功能,3、输入/输出端口引脚-32P0、P1、P2、P3,P0口(P0.0P0.7):该端口为漏极开路的8位准双向口,负载能力位8高LSTTL负载,它为8位地址线和8位数据线的复用端口。P1口(P1.0P1.7):它是一个内部带上拉电阻的8位准双向I/O口,P1口的驱动能力为4个LSTTL负载。 P2口(P2.0P2.7):它为一个内部带上拉电阻的8位准双向I/O口,P2

6、口的驱动能力也为4个LSTTL负载。在访问外部程序存储器时,它作存储器的高8位地址线。 P3口(P3.0P3.7):P3口同样是内部带上拉电阻的8位准双向I/O口,P3口除了作为一般的I/O口使用之外,其还具有特殊功能。,P3.0RxD串行数据接受P3.1TxD串行数据发送P3.2INT0外部中断0申请P3.3INT1外部中断1申请P3.4T0定时器/计数器0计数输入P3.5T1定时器/计数器1计数输入P3.6WR外部RAM写选通P3.7RD外部RAM读选通,P3口引脚信号的第二功能,程序存储器ROM,数据存储器RAM,SFR,T/C,微处理器,运算器,控制器,CPU (80C51),存储器,

7、中断系统,串行接口UART,基本功能单元,XTAL2,XTAL1,RST,ALE,并行I/O接口,P0,P1,P2,P3,51基本组成框图,2.3,2.1.2单片机的内部结构,2.1.2单片机的内部结构,1、中央处理单元CPU (1)运算器电路: 用于数据处理、位操作(位测试、置位、复位) (2)控制器电路:指挥控制工作,协调单片机各部分正常工作。2、存储器 只读存储器ROM(4KB或8KB) 用于永久性存储应用程序、原始数据或表格常数 随机存取存取器RAM(256B) 用于程序运行中存储工作变量和数据3、并行输入/输出口 用作系统总线、I / O接口芯片。MCS51单片机共有4个8位的I/O

8、口(P0、P1、P2和P3),每一条I/O线都能独立地用作输入或输出。,MCS51系列单片机的存储器包括数据存储器和程序存储器,其主要特点是寻址空间是相互独立的,物理结构也不相同。,2.1.2单片机的内部结构,4. 定时器/计数器 T(16位增量可编程)MCS51单片机片内有两个16位的定时/计数器,即定时器0和定时器1。它与CPU之间各自独立工作,当它计数满时向CPU中断。它们可以用于定时控制、延时以及对外部事件的计数和检测等5. 串行I/O口 UART (二线)MCS51单片机具有一个采用通用异步工作方式的全双工串行通信接口,可以同时发送和接收数据。它具有两个相互独立的接收、发送数据缓冲器

9、,两个缓冲器共用一个地址(99H),发送缓冲器只能写入,不能读出,接收缓冲器只能读出,不能写入。它可以用于串行通信、扩展I / O接口芯片。6、中断系统 五源中断、两级优先,可编程进行控制,2.1.2单片机的内部结构,7. 时钟电路 MCS51芯片内部有时钟电路,但晶体振荡器和微调电容必须外接。时钟电路为单片机产生时钟脉冲序列,振荡器的频率范围为1.2MHz12MHz,典型取值为6MHz。 80C51可高达40MHz8. 总线 以上所有组成部分都是通过总线连接起来,从而构成一个完整的单片机。系统的地址信号、数据信号和控制信号都是通过总线传送的,总线结构减少了单片机的连线和引脚,提高了集成度和可

10、靠性。 内部采用单总线;外部采用三总线。,2.3 存储器组织,冯诺依曼结构:程序和数据共用一个存储器逻辑空间,统一编址;公用相同的寻址方式、寻址空间和控制系统。哈佛结构:程序与数据分为两个独立存储器逻辑空间,分开编址;各有自己的寻址方式、寻址空间和控制系统。,2.3,2.3.1、80C51 存储器特点,物理结构上4个存储器地址空间:片内程序存储器空间片外程序存储器空间片内数据存储器空间片外数据存储器空间从用户使用的角度,即逻辑上3个存储器地址空间:256B 片内数据存储器00HFFH64KB 片外数据存储器0000HFFFFH64KB 片内、片外统一程序存储器0000HFFFFH,2.3.1、

11、80C51 存储器特点,数据存储器的总体结构数据存储器用来存放运算的中间结果、标志位,及数据的暂存和缓冲等。,数据存储器也分为片内RAM和片外RAM两部分:相对独立,分别编址;,片内RAM(256B)地址总线宽度为8位地址范围为00HFFH地址指针用R0 R1访问时用“MOV”指令可分为数据RAM区和SFR区,片外RAM(64K )地址总线宽度为16位地址范围为0000HFFFFH地址指针用DPTR R0 R1访问时只能用“MOVX”指令与扩展I/O接口共用RAM,2.3,2.3.2、片内数据存储器,2.3.2、片内数据存储器,1、片内RAM(256B),片内RAM在物理上又分为两个独立的功能

12、不同的区域:,(1)片内数据RAM区51子系列地址空间为低128B 地址范围为00H7FH52子系列地址空间为256B 地址范围为00HFFH00H7FH可直接、间接寻址80HFFH只能可用间接寻址(2)特殊功能寄存器区(SFR)地址空间为高128B 地址范围为80HFFH只能用直接寻址访问,(1)、片内数据RAM区,工作寄存器区:分四个R组字节地址:00H1FH每组由R0 R1 R2 R3 R4 R5 R6 R7组成R0、R1可作间接寻址的地址指针由PWS的RS1 RS0决定当前工作R组位寻址区:片内数据RAM区字节地址:20H2FH位地址为:00H7FHSFR区字节地址能被8整除的12个S

13、FR位地址为:80HFFH数据缓冲区/堆栈区:字节地址:00HFFH一般使用30HFFH,FFH,255,2.3,30H,48,组,组,组,组,表22 工作寄存器和RAM地址对照表,(2)、特殊功能寄存器SFR,80C51的功能模块:I/O锁存器: P0、P1、P2、P3定时/计数器: TCON、TMOD 、T0、 T1、T2串行通讯: PCON、SCON、SBUF中断系统: IE、IP专用寄存器:A、B、PSW、DPTR、SP,SFR:是一个具有特殊功能的RAM区,占用字节地址:80HFFH 是用来对80C51片内各功能模块进行集中管理、控制、监视的控制寄存器和状态寄存器。除PC和4组工作R

14、组外,其余所有的R均在此地址范围内。,2.3,SFR的组成,占用字节地址:离散分布于80HFFH位寻址寄存器:其字节地址可被8整除。占用位地址:离散分布于80HFFH,在对SFR编程操作时:a、必须清楚SFR的字节地址、位地址、位定义;b、严格区分控制位和标志位控制位:是编程人员按要求写入的控制操作位标志位:是系统运行时自动形成的标志c、了解标志位的清除特性有的标志位可由硬件自动清除,集中在T0 T1 INT0 INT1有的标志位则必须通过软件指令清除,集中在 串行 T2,返回,(1)累加器A (Accumulator),A是CPU中使用最频繁的一个8位寄存器A是专门存放操作数或运算结果。即是

15、ALU的一个输入端,也是ALU的一个输出端A相当于一个数据中转站CPU中的大多数数据传送都要通过A这就造成计算机的瓶颈效应,产生堵塞现象在80C51中,增加一部分可以不经过A的操作指令既加快运算速度,有减少A的堵塞现象MOV R2,30HMOV R0,30HMOV R2,#3,返回,(2)寄存器B,寄存器B(8位):专门为乘除法而设置的寄存器;与A累加器配合执行乘、除运算;在乘除法指令中作为ALU的一个输入端和一个输出端。1、乘法 MUL AB;积的高八位B,积的低八位A若(A)= 0A0H(160) (B)=50H(80), 则执行MUL AB;结果乘积3200H(12800)(B)=32H

16、 , (A)=00H2、除法 DIV AB;被除数A,除数B,余数B,商A(B)=00H , (A)=02H3、也可用作通用寄存器。注意:其寻址方式为直接寻址MOV B,#30,(3)、堆栈指针(Stack Pointer),堆栈区:是片内RAM区中,数据按“先进后出”或“后进先出”方式组织的特殊区域,堆栈指针SP:是存放当前堆栈栈顶的地址的一个8位SFR,堆栈操作:进栈 PUSH A;SP自动加1,将数据压人SP所指向的单元出栈 POP A; 将SP所指向单元的内容弹出,然后SP自动减1;故SP始终指向栈顶。,堆栈建立:复位后(SP=07H) ,堆栈栈底为07H程序运行时,可以通过SP任意设

17、定堆栈栈底MOV SP, #30H,2.3,堆栈,定义:是数据存储器RAM中的一个特殊的区域;是一组按照“先进后出”的方式工作的;是用来暂存信息的存储单元。,堆栈指针(SP):是一个8位地址寄存器,用来专门存放栈顶的地址;是专门用来管理和控制堆栈的操作的指针。,堆栈的操作:压栈;将数据压入栈顶的操作 PUSH Acc弹栈:把栈顶中的数据弹出来的操作 POP B,堆栈的作用,保留断点地址、恢复断点地址进入子程序时,将PC的当前值压入堆栈; PUSH PCL(执行CALL sub或响应中断子程序) PUSH PCH子程序返回时,将断点地址弹出到PC中; POP PCH (执行RET或IRET) P

18、OP PCL均由硬件自动完成,无需软件参与。保护现场、恢复现场进入子程序后,首先将 A、B、R、SFR、PSW等压入堆栈子程序返回之前,先弹出PSW 、SFR 、R 、B 、 A全靠软件实现 PUSH AccPOP PSW PUSH BPOP Ri PUSH RiPOP B PUSH PSWPOP Acc,(4)程序状态字PSW(Program Status Word),PSW:是一个8位SFR,存放指令执行后的有关状态。供查询和判断之用,用户可按字节访问,也可按位访问。,Cy进(借)位标志位,执行加减运算-由硬件置位或复位。保存算术运算产生的进位或借位 (1进位 0无进位)位操作的累加器C。

19、AC辅助进位标志位,执行加减运算-由硬件置位或复位。运算结果从D3产生进位或借位时AC=1。主要用于BCD码调整。F0 F1用户标志位,开机时为0可以使用的位变量,该位可以随PSW被保存。,OV溢出标志位,当执行运算指令时,由硬件置位或复位。运算结果超出A允许范围时,OV=1,否则OV=0 。带符号数加(减)运算:ADD A,#55H当结果超出目的寄存器A所表示的带符号数的范围(-128+127)时,OV=1,否则OV=0。判断方法如下:最高位和次高位不同时产生进(借)位时,OV=1,否则OV=0。无符号数乘法时:MUL AB若乘积超过A所表示的无符号数的范围255时,OV=1,否则OV=0。

20、因此:若OV=0,则只需从A中取积即可。 若OV=1,则需从BA中取积。无符号数除法时: DIV AB若除数B为零时,OV=1,否则OV=0。,2.3,RS1,RS0寄存器组选择位,只有软件置位或复位 0 0 组0R0R7对应的地址为00H07H 0 1 组1R0R7对应的地址为08H0FH 1 0 组2R0R7对应的地址为10H17H 1 1 组3R0R7对应的地址为18H1FHP奇偶标志位每个指令周期根据累加器A中的内容的奇偶性由硬件置位或复位。A中的1的个数为奇数 P=1;A中的1的个数为偶数 P=0;用于串行通信中的奇偶校验位,提高数据的可靠性,2.3,(5)、数据指针DPTR(Dat

21、a PoinTeR),DPTR :在80C51中是一个功能特殊的16位寄存器;主要功能是作为片外RAM寻址用的地址R(间接寻址)也叫RAM地址指针,当执行访问片外RAM的指令时作为外RAM的地址R,如: MOV DPTR,#1234H;MOVX A,DPTR; 读片外RAM到A中MOVX DPTR,A; 将A中的内容写入外RAM中,作为ROM的基地址R,如: MOVC A,A+DPTR;JMP A+DPTR;,作为一个16位R来使用,作为两个8位R来使用 DPH高8位,DPL 低8位,如: MOV DPTR,#1234H; INC DPTR;,如: MOV DPH,#12H; MOV DPL,

22、#34H;,2.3,(6)、程序计数器PC (Program Counter),PC=0000H,PC=0001H,PC=0002H,指令寄存器,是控制器最基本的寄存器;是一个独立的16位计数器;存放着下一条将要从程序存储器中取出的指令的地址PC当前值,PC 工作过程:读指令时,PC将其中的数据作为所取指令的地址输出给ROM;然后ROM按此地址输出指令字节到指令寄存器;同时PC本身自动加1,指向下一条指令的地址。,程序计数器PC工作方式,2、PC 自动加1: 每取一字节由CPU自动完成,是最基本工作方式,3、在执行转移指令时,PC被置入新的数值,程序的流程发生变化,变化方式:相对短转移 SJM

23、P rel ;(PC) PC当前值+rel 相对长转移 JMP A+DPTR ;(PC) (A+DPTR) 绝对转移 AJMP addr11 ;(PC) PC当前值1511Addr11 长转移 LJMP addr16 ;(PC) addr16,4、在执行LCALL调用指令或响应中断时: a、PC当前值(即下一条将要执行的指令的地址)压入堆栈,加以保护; b、将子程序的入口地址或中断矢量地址送入PC,程序流向发生变化, 执行子程序或中断服务程序 c、当子程序或中断服务程序执行完毕,遇到返回指令(RET 、RETI)时, 将栈顶的内容送入PC中,程序流程又返回到原来的地方,继续执行.,1、复位清零

24、: 单片机复位时PC=0000H 。,2.3,PC同DPTR的比较,PC和DPTR :都是与地址有关的16位寄存器 16为地址均通过P2、P0口输出,PC DPTR, 存放的是ROM中的地址 存放的是RAM中的地址 (也可是ROM中的地址 ), 不可直接访问(读、写) 可直接访问(读、写), 由硬件自动加1 可用软件加1,只能做16位R 不仅能作为16位R, 也可分成两个8位R, PC的变化一定影响程序的流程 DPTR的变化不一定影响程序的流程,1、ROM结构:整个ROM(64KB)可分为片内和片外两部分。CPU访问的是片内还是片外低位存储单元, 由引脚EA接不同电平确定。,2.3.3 程序存

25、储器ROM,80C51的ROM用于存放经调试正确的应用程序代码和表格之类的固定常数它以16位的程序计数器PC作为地址指针寻址的地址空间为64K(0000HFFFFH),且连续、统一编址,当EA=1(接高电平)时程序从片内ROM(0000H)单元开始执行,当PC值超出片内ROM容量(1FFFH)时,会自动转向片外ROM空间执行,当EA=0(接低电平)时程序只从片外ROM(0000H)单元中执行,而不使用片内ROM,2、 ROM中7个特殊存储单元,0000H单元:系统的启动、引导地址:系统复位入口地址。存放一条长转移指令,使之转向用户主程序处执行LJMP addr16;可在64K范围内无条件转移,

26、 占用三字节存储单元(0000H0002H),中断服务程序入口地址: 0003H外部中断INT0入口地址000BH计时器T0溢出中断入口地址0013H外部中断INT1入口地址001BH计时器T1溢出中断入口地址0023H串行口中断入口地址002BH计时器T2溢出中断入口地址,2.3,3、 ROM的操作,取指令以PC当前值读ROM的程序代码内容取数据读ROM的数据内容查表操作,改变PC当前值的方式:即改变CPU读取程序代码的位置复位控制PC为系统启动地址0000H硬件自加一中断控制PC为中断入口地址0003H002BH转移控制PC为转移目的地址调用控制PC为调用子程序的开始地址,查表操作:MOV

27、C A,A+DPTR;MOVC A,A+PC;,2.3,4、 片内ROM与单片机的型号有关,片内ROM的类型有:查阅产品资料掩膜ROMMaskROM 80C51 80C52一次编程ROMOTP PIC16/17多次编程ROMMTP(EPROM EEPROM FlashROM)87C51内有4KEPROM 87C52内有8KEPROM89C51内有4KEEPROM 89C52内有8KEEPROM80C31和80C32内无ROMSST89C54 20KFashROM SST89C58 32KFashROM SST89E564RD 72KFashROM,返回,2.3,2.3.4 、片外数据存储器RA

28、M,对外RAM的访问只能R间接寻址间址R有 R0 R1寻址范围256B数据指针DPTR 寻址范围64KB 。,外RAM和扩展的I/O只能与A交换数据MOVX A,DPTR ;读外RAM或扩展的I/O口寻址范围64KBMOVX DPTR, A ;写外RAM或扩展的I/O口寻址范围64KBMOVX A,R0 ;读外RAM或扩展的I/O口寻址范围256BMOVX R0,A ;写外RAM或扩展的I/O口寻址范围256B,外RAM区和扩展的I/O口统一编址扩展的I/O口的地址均占用外RAM地址单元对扩展的I/O口操作和外RAM完全一样,返回,2.3,3、片外数据存储器RAM,将外RAM的 516FH单元

29、的数据送入累加器A用DPTR指针的操作指令:MOV DPTR,#516FH;MOVX A,DPTR ;用P2口分页寻址和R0指针的操作指令:MOV R0,# 6FH;MOV P2,#51H;MOVX A,DPTR ;,返回,2.3,小结:,1、MCS-51系列机种类2、MCS-51内部结构有几部分?特点?3、MCS-51机DIP有多少引脚?ALE、/PSEN、/EA的作用?4、MCS51存储结构分配是怎样的?5、SFR中各寄存器的名称?作业: P36 一、二,复习提问,1、8051单片机内部组成?2、画出8051单片机引脚分布图;3、画出8052单片机内部RAM的结构图;,表2-4特殊功能寄存

30、器SFR地址表,2.4 并行I/O接口电路结构及应用特征,1、4个双向的8位I/O端口P0P3;2、每个端口除了按字节寻址外,还可以按位寻址。3、每个端口包含一个锁存器、一个输出驱动器和二个输入缓冲器,2.4 并行I/O接口电路结构及应用特征,1、典型结构输出结构:输出锁存器+驱动器引脚输入结构:输入引脚+输入缓冲器2、准双向I/O口结构 -不需扩展外部存储器时 输入操作是读引脚状态,有条件; 输出操作是对口锁存器的写入操作,无条件 读-修改-写操作是对口锁存器的读入操作,修改后再写入到锁存器中,无条件 3、I/O的复用结构 - 需要扩展外部存储器时 总线复用(P0 P2) 功能复用(P3)

31、CPU按当前操作自动进行功能切换,2.4.1、P0口的结构及应用特征,1、结构:1个锁存器、2个三态输入缓冲器、1个多路复用开关MUX、控制电路C和1个输出驱动电路T1、T2,2.4.1、P0口的结构及应用特征,2.4.1、P0口的结构及应用特征,2.4.1、P0口的结构及应用特征,2、通用I/O口; C=0(2)通用I/O口的“读”:输入引脚数据: (读引脚):P0 x 下三态门 D 内部总线。,2.4.1、P0口的结构及应用特征,2、通用I/O口; C=0(3)通用I/O口的“读-修改-写”:(读锁存器)Q 上三态门 D 内部总线 修改 内部总线 锁存器Q MUX T2 P0 xANL P

32、0,#30H,2.4.1、P0口的结构及应用特征,3、地址/数据总线: C=1,是一个真正的双向口。执行输出指令:MOVX DPTR,A执行输入指令:MOVX A,DPTR,2.4.1、P0口的结构及应用特征,4、P0口应用特征总结:(1)P0既可按字节寻址,又可按位寻址; (2)P0口可作通用I/O口,又可作地址/数据总线口;(3)P0作通用I/O 口输入时:是准双向口;先写1。(4)P0作通用I/O 口输出时:是开漏输出;需外接上拉电阻。(5)P0作地址/数据总线口时,P0是一真正双向口,而作通用I/O口时,只是一个准双向口。(6)可带8个TTL输入。,1、 P0用作通用I/O口,当系统不

33、进行片外的ROM扩展,也不进行片外RAM扩展时,单片机硬件自动使C=0,MUX开关接向锁存器的反相输出端。这时P0用作通用I/O口。,另外,与门输出的“0”使输出驱动器的上拉场效应管T1处于截止状态。因此,输出驱动级工作在需外接上拉电阻的漏极开路方式。,作输出口时,CPU执行口的输出指令,内部数据总线上的数据在“写锁存器”信号的作用下由D端进入锁存器,经锁存器的反向端送至场效应管T2,再经T2反向,在P0.X引脚出现的数据正好是内部总线的数据。MOV P0,A MOV P0.1,C,作输入口时,数据可以读自口的锁存器,也可以读自口的引脚。这要根据输入操作采用的是“读锁存器”指令还是“读引脚”指

34、令来决定。ANL P0,#30H MOV A,P0,执行“读修改写”类输入指令时(如:ANL P0,A),内部产生的“读锁存器”操作信号,使锁存器Q端数据进入内部数据总线,在与累加器A进行逻辑运算之后,结果又送回P0的口锁存器并出现在引脚。,读口锁存器可以避免因外部电路原因使原口引脚的状态发生变化造成的误读。,在执行“MOV”类输入指令时(如:MOV A,P0),内部产生的操作信号是“读引脚”。注意,在执行该类输入指令前要先把锁存器写入“1”,使场效应管T2截止,使引脚处于悬浮状态,可以作为高阻抗输入。,否则,在作为输入方式之前曾向锁存器输出过“0”,则T2导通会使引脚箝位在“0”电平,使输入

35、高电平“1”无法读入。所以,P0口在作为通用I/O口时,属于准双向口。,2、P0用作地址/数据总线,当系统进行片外的ROM扩展或进行片外RAM扩展,单片机内硬件自动使C=1,MUX开关接向反相器的输出端,这时与门的输出由地址/数据线的状态决定,这时P0用作地址/数据总线。,CPU在执行输出指令时,低8位地址信息和数据信息分时地出现在地址/数据总线上。P0.X引脚的状态与地址/数据线的信息相同。,CPU在执行输入指令时,首先低8位地址信息出现在地址/数据总线上,P0.X引脚的状态与地址/数据总线的地址信息相同。然后,CPU自动地使转换开关MUX拨向锁存器,并向P0口写入FFH,同时“读引脚”信号

36、有效,数据经缓冲器进入内部数据总线。,P0口作为地址/数据总线使用时是一个真正的双向口。,2.4.2、 P口的结构及应用特征,P1口由一个输出锁存器、两个三态输入缓冲器和输出驱动电路组成,内部设有上拉电阻; P1口是通用的准双向I/O口。,2.4.2、 P口的结构及应用特征,应用特点(1)只能作I / O口用,且是一个准双向口;(2)可按字节寻址,也可按位寻址(3)无地址/数据口功能,可驱动4个LSTTL负载,P1口由一个输出锁存器、两个三态输入缓冲器和输出驱动电路组成。输出驱动电路与P2口相同,内部设有上拉电阻。,P1口是通用的准双向I/O口。输出高电平时,能向外提供拉电流负载,不必再接上拉

37、电阻。当口用作输入时,须向口锁存器写入1。,2.4.3、 P口的应用特征,1、P2用作通用I/O口,2、P2用作地址总线 A15A8,2.4.3、 P口的应用特征,(1)当P2口作为通用I / O时,是一准双向口。(2)从P2口输入数据时,先向锁存器写“1”。(3)可位寻址,也可按字节寻址(4)可输出地址高8位。,1、 P2用作通用I/O口,当不在单片机芯片外部扩展程序存储器,只扩展256B的片外RAM时,仅用到了地址线的低8位,P2口仍可以作为通用I/O口使用。,执行输出指令时,内部数据总线的数据在“写锁存器”信号的作用下由D端进入锁存器,经反相器后送至场效应管T,再经T反相,在P2.X引脚

38、出现的数据正好是内部总线的数据。,P2口用作输入时,数据可以读自口的锁存器,也可以读自口的引脚。这要根据输入操作采用的是“读锁存器”指令还是“读引脚”指令来决定。,执行“读修改写”类输入指令时内部产生的“读锁存器”操作信号使锁存器Q端数据进入内部数据总线,在与累加器A进行逻辑运算之后,结果又送回P2的口锁存器并出现在引脚。,执行“MOV”类输入指令时,内部产生的操作信号是“读引脚”。应在执行输入指令前要把锁存器写入“1”,从而使引脚处高阻抗输入状态。,P2口在作为通用I/O口时,属于准双向口。,2、P2用作地址总线,当需要在单片机芯片外部扩展程序存储器或扩展的RAM容量超过256字节时,单片机

39、内硬件自动使控制C=1,MUX开关接向地址线,这时P2.X引脚的状态正好与地址线的信息相同。,2.4.4、 P口的应用特征,1、P3用作第一功能(通用I/O口),对P3口进行字节或位寻址时,单片机内部的硬件自动将第二功能输出线的W置1。这时,对应的口线为通用I/O口方式,属于准双向口。,1、P3用作第一功能(通用I/O口),对P3口进行字节或位寻址时,单片机内部的硬件自动将第二功能输出线的W置1。这时,对应的口线为通用I/O口方式。,输出时,锁存器的状态(Q端)与输出引脚的状态相同;输入时,要先向口锁存器写入1,使引脚处于高阻输入状态。输入的数据在“读引脚”信号的作用下,进入内部数据总线。 P

40、3口作为通用I/O口时,属于准双向口。,2、P3用作第二功能使用,当CPU不对P3口进行字节或位寻址时,内部硬件自动将口锁存器的Q端置1。这时,P3口作为第二功能使用。,P3.0 :RXD(串行口输入);P3.1 :TXD(串行口输出);P3.2 : 外部中断0输入;P3.3 : 外部中断1输入;P3.4 :T0(定时器0的外部输入);P3.5 :T1(定时器1的外部输入);P3.6 : (片外数据存储器“写”选通控制输出);P3.7 : (片外数据存储器“读”选通控制输出)。,2.4.5 并行口 小结:,1、P0口:地址低8位与数据线分时使用端口2、P1口:按位可编址的输入输出端口,3、P2

41、口:地址高8位输出口4、P3口:双功能口。若不用第二功能,也可作通用I / O 口。5、按三总线划分:地址线:P0低八位地址,P2高八地址;数据线:P0输入输出8位数据;控制线:P3口的8位加上/PSEN、ALE共同完成控制总线。,2.5.1、时钟电路,2.5、时钟电路与CPU时序,2.5.2、时序、定时单位,2.5.3、典型指令的取指、执行时序,2.3,80C51 时钟系统是一个内含高增益反向放大器时钟振荡器、外接谐振器、可关断控制的时钟系统,2.5.1、时钟电路,2.5.1、时钟电路,1、 80C51的内部时钟方式,内时钟方式:利用80C51内部带有的时钟电路,在片外通过引脚X1和X2接入

42、定时控制元件(晶体振荡器和电容),既可构成一个稳定的自激振荡器。,2、80C51的外部时钟方式,外部时钟方式:外部振荡器输入时钟。常用于多机系统,返回,2.3,2.5.2、时序、定时单位,启动单片机后,指令执行顺序,取指令 分析指令 执行指令,一条指令的执行可以分解为若干基本的微操作,而这些微操作所对应的脉冲信号,在时间上有严格的先后次序这些次序就是计算机的时序,2.5.2、时序、定时单位,振荡周期:是指为单片机提供时钟信号的振荡源的周期-节拍P状态周期S:是振荡脉冲的二分频,是振荡周期的两倍,被振荡周期分成两个节拍P1 P2机器周期:CPU完成一个基本操作所需要的时间。一个机器周期由6个状态

43、周期(12个振荡周期)组成。依次为S1P1(状态1第一拍)、S1P2、S2P1S6P2共12拍每个节拍持续一个振荡周期,每个状态持续2个振荡周期指令周期:一条指令的执行时间,返回,指令周期:一条指令的执行时间,一条指令可用机器周期来划分若干阶段,每个阶段(机器周期)完成一个基本操作80C51指令按执行时间,以机器周期为单位分为:单周期、双周期和四周期指令80C51指令按占有空间,以字节为单位可分为:单字节、双字节和三字节指令1机器周期=6个状态周期=12个振荡周期如外接晶振为12MHZ时,MCS-51中的四个周期的具体值为:振荡周期=状态周期=机器周期=指令周期=,1/12us1/6us1us

44、14us,2.3,2.5.3 典型指令的取指、执行时序,由于单片机内部时钟信号外部无法观测,则以振荡信号XTAL和ALE引脚信号为参考。ALE信号是为地址锁存而定义的,该ALE信号每有效一次,CPU通过P2和P0口输出16位地址信息对应单片机进行一次读指令操作。每个机器周期,ALE信号两次有效,输出高电平有效信号。一次在S1P2到S2P1期间,有效宽度为一个状态。一次在S4P2到S5P1期间,有效宽度为一个状态。但访问外RAM期间ALE端少输出一个有效信号,所以ALE输出频率为振荡脉冲的1/6,且不稳定。,返回,2.5.3 典型指令的取指、执行时序,2.6 MCS-51单片机的工作方式,一、复

45、位方式、复位电路二、程序执行方式三、单步执行方式四、掉电和低功耗方式五 EPROM编程和校验(自学),返回,一、复位方式,1、复位条件:时钟电路(晶振)工作后,在RST引脚上出现持续2个机器周期的以上高电平时,单片机实现初始化复位;保证系统可靠地复位,设计复位电路时,通常是RST引脚保持10ms以上的高电平。若RST引脚保持高电平,则单片机将循环复位当RST引脚从高电平变成低电平时,单片机将从0000H单元开始执行程序。,2.4,返回,2、复位状态:,注:复位后内部寄存器变成以下状态1)程序计数器清零PC=0000H,使单片机从0000H开始执行程序2)堆栈指针清零SP=07H(需要的话初始化

46、后重设栈底)3)状态寄存器PSW=0 选择工作R组的0组4)TH1,TL1,TH0,TL0为05)TMOD=0 定时/记数器处于方式0工作状态6)TCON=0 禁止计数器记数7)SCON=0 串行口工作方式08)IE有效位为0禁止中断9)P0,P1,P2,P3口锁存器全为1状态,为输入状态,复位是单片机的初始化操作,复位后:大多数SFR的状态为00H,只有P0P3=FFH和SP=07H.信号复位后不影响内RAM的状态在复位有效期间,ALE、PSEN引脚为高电平。,2.4,3、复位电路设计,上电自动复位是进入系统时的正常初始化按键手动复位在程序运行出错、操作错误时,系统处于死循环状态.按键手动复

47、位和上电自动复位的组合系统复位:保证单片机最后复位,2.4,二、程序执行方式,程序执行方式是单片机的基本工作方式。由于复位后PC=0000H,因此程序总是从地址0000H开始CPU根据PC的当前值,从ROM中取出指令;将指令放入IR,同时PC自动加1;由ID对指令进行译码,产生各种控制信息,执行指令执行完指令后,又根据PC的当前值,再从ROM中取出指令 IR、PC+1 ID 控制信息执行指令,周而复始的进行。,2.4,单步执行就是通过外来脉冲控制程序的执行,使之达到来一个脉冲就执行一条指令的目的。,三、单步执行方式,返回,四、掉电和低功耗方式,1、掉电和待机方式的内部结构CHMOS机型的节电方

48、式,2.4,返回,1、掉电和待机方式的内部结构,PD=0 为掉电方式振荡器停止工作,只有片内RAM的内容被保存;,IDL=0 为待机方式此时振荡器正常工作,中断系统、串行口、T/C电路由时钟驱动;但时钟不送往CPU,CPU处于等待状态。,2.4,1、掉电和待机方式的内部结构,这两种方式都由电源控制寄存器PCON(87H)设定,SMOD串行通讯波特率加倍位。SMOD=1;串行口方式1、2、3的波特率提高一倍SMOD=0;不变。GF1、GF2通用的用户标志位,供用户使用PD掉电保护位,PD=1时进入掉电方式IDL待机保护位,PD=1时进入节电方式,2.4,返回,1、掉电和待机方式的内部结构,这两种

49、方式都由电源控制寄存器PCON(87H)设定,2.4,返回,2、待机方式,待机方式的进入使PCON的IDL位置1MOV PCON,#01H;,待机方式的状态此时振荡器正常工作,中断系统、串行口、T/C电路由时钟驱动;但时钟不送往CPU,CPU不能工作处于等待状态。PC DPTR SP PSW A B 的状态均保持不变;ALE PSEN 引脚为高电平无效信号;P0 P1 P2 P3引脚保持不变;内RAM保持不变;,待机方式的退出任何中断均可以退出;按钮硬件复位退出。,2.4,返回,3、掉电方式,掉电方式的进入使PCON的PD位置1MOV PCON,#02H;,掉电方式的状态振荡器停止工作只有片内RAM的内容被保存;中断系统、串行口、T/C电路不能工作;CPU不能工作。,掉电方式的退出按钮硬件复位退出。,2.4,小结:,1、P0 、P1、P2、P3口的机构及使用特点?2、单片机的时钟电路?3、单片机的复位方式及电路? 4、单片机的低功耗方式有哪些?作业:P37 三、四,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号