文档详情

单片机的硬件结构课件.ppt

发布:2018-06-16约2.71千字共45页下载文档
文本预览下载声明
第三课 ;复习;内部数据存储器 (a);2.4.3 数据存储器地址空间;一、用途及编址:;二、片外RAM:;三、片内RAM:;; 低端32个字节分成4个工作寄存器组,每组8个单元。当前工作寄存器组的机制便于快速现场保护。 ;;;4. 80C51的特殊功能寄存器(SFR);特殊功能寄存器SFR的位置;(1) 累加器ACC(E0H);(3) 程序状态寄存器PSW(D0H);④RS1、RS0(PSW.4、PSW.3):4组工作寄存器区选择控制 位1和位0。 ⑤OV(PSW.2)溢出标志位 : 指示运算是否产生溢出。各种算术运算指令对该位的影响情况较复杂,将在第3章介绍。 ⑥PSW.1位: 保留位,未用 ⑦P(PSW.0):奇偶标志位 P=1,A中“1”的个数为奇数 P=0,A中“1”的个数为偶数;CY(PSW.7): 进位标志位。在执行加法(或减法)运算指令时,如果运算结果最高位(位7)向前有进位(或借位),则CY位由硬件自动置1;如果运算结果最高位无进位(或借位),则CY清0。CY也是89C51在进行位操作(布尔操作)时的位累加器,在指令中用C代替CY。 AC(PSW.6): 半进位标志位,也称辅助进位标志。当执行加法(或减法)操作时,如果运算结果(和或差)的低半字节(位3)向高半字节有半进位(或借位),则AC位将被硬件自动置1;否则AC被自动清0。 F0(PSW.5): 用户标志位。用户可以根据自己的需要对F0位赋予一定的含义,由用户置位或复位,以作为软件标志。;RS0和RS1(PSW.3和PSW.4): 工作寄存器组选择控制位。这两位的值可决定选择哪一组工作寄存器为当前工作寄存器组。通过用户用软件改变RS1和RS0值的组合,以切换当前选用的工作寄存器组。其组合关系如p17表所列。 89C51上电复位后,RS1=RS0=0,CPU自动选择第0组为当前工作寄存器组。 根据需要,可利用传送指令对PSW整字节操作或用位操作指令改变RS1和RS0的状态,以切换当前工作寄存器组。这样的设置为程序中保护现场提供了方便。;OV(PSW.2): 溢出标志位 。当进行补码运算时,如有溢出,即当运算结果超出-128~+127的范围时,OV位由硬件自动置1;无溢出时,OV=0。 PSW.1: 为保留位。89C51未用,89C52为F1用户标志位。 P(PSW.0): 奇偶校验标志位。每条指令执行完后,该位始终跟踪指示累加器A中1的个数。如结果A中有奇数个1,则置P=1;否则P=0。常用于校验串行通信中的数据传送是否出错。;89C51在片内RAM中专门开辟出来一个区域,数据的存取是以“后进先出”的结构方式处理的,好像冲锋枪压入子弹。这种数据结构方式对于处理中断,调用子程序都非常方便。 堆栈的操作有两种: 一种叫数据压入(PUSH),另一种叫数据弹出(POP)。;89C51的堆栈指针SP为8位特殊功能寄存器,也是一个双向计数器。进栈时,SP内容自动增值,出栈时自动减值。存取信息必须按“后进先出”或“先进后出”的规则进行。 SP的内容可指向89C51片内00H~7FH RAM的任何单元。系统复位后,SP初始化为07H,即指向07H的RAM单元。 MOV SP, #60H;将60H附近规划为堆栈区。 ;在右图中,假若有8个RAM单元,每个单元都在其右面编有地址,栈顶由堆栈指针SP自动管理。每次进行压入或弹出操作以后,堆栈指针便自动调整以保持指示堆栈顶部的位置。;(5) 数据指针DPTR(83H,82H);(6) I/O端口P0~P3(80H,90H,A0H,B0H); ;2.3 MCS-51的CPU;①是ALU的输入之一,又是运算结果的存放单元。②数据传送大多都通过累加器A。MCS-51增加了一部分可以不经过累加器的传送指令,即可加快数据的传送速度,又减少A的“瓶颈堵塞”现象。 A的进位标志Cy同时又是位处理机的位累加器。;2.3.2 控制器 ;程序计数器PC(Program Counter) 存放下一条要执行的指令在程序存储器中的地址。 基本工作方式: (1)程序计数器自动加1 (2)执行有条件或无条件转移指令时,程序计数器将被置入新的数值,从而使程序的流向发生变化。 (3)执行子程序调用或中断调用时完成下列操作: ① PC的当前值保护 ② 将子程序入口地址或中断向量的地址送入PC。 ;内部时钟 外部时钟;80C51的时钟信号;2.6.2 机器周期、指令周期与指令时序;分为取指令阶段和指令执行阶段。 取指令阶段,PC中地址送到程序存储器,并从中取出需要执行指令的操
显示全部
相似文档