




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 单片机与控制单片机与控制 技术技术电气学院:王欣第第02章:章:MCS-51单片机的硬件结构单片机的硬件结构主要内容:l 硬件片内结构及引脚l CPU主要部件l 片内外存储器的结构l 并行I/O口l 时钟电路与时序l 复位操作和复位电路1、概述(、概述(1):):MCS-51单片机的硬件结构单片机的硬件结构MCS-51单片机片内结构片内片内128B8031(无(无ROM)8051(ROM :4K)8751(EPROM:4K)5个中断源个中断源2个外部中断个外部中断2、标准、标准51单片机的引脚?单片机的引脚?40脚分类(双列直插封装脚分类(双列直插封装DIP方式)方式) :I/O 端口:端口
2、: P0P3(32pin) P0数据总线,也可作为访问外数据总线,也可作为访问外部地址的低八位地址部地址的低八位地址【分时复用口分时复用口】 P2通用通用IO,通常也用作访问外,通常也用作访问外部地址的高八位地址(部地址的高八位地址(H) P1通用通用IO P3通用通用IO,有第二功能,有第二功能 电源(电源(2pin) VCC、VSS、 时钟(时钟(2pin) XTAL1、XTAL2 控制总线(控制总线(4pin) 地址锁存允许信号地址锁存允许信号 ALE 复位输入复位输入 RST 外部程序存储器选通信号外部程序存储器选通信号PSEN 外部程序存储器有效信号外部程序存储器有效信号EA 44
3、44只引脚只引脚方形封装方形封装方式(方式(4 4只无用)只无用)l ALE/PROG 当单片机访问外部存储器时,当单片机访问外部存储器时,ALE输出信号的负跳沿用于锁存输出信号的负跳沿用于锁存P0端口端口的低的低8位地址;位地址; 当对当对8751单片机片内单片机片内EPROM编程时,编程脉冲由该引脚引入。编程时,编程脉冲由该引脚引入。l RST/Vpd 复位信号输入;复位信号输入; 备用电源接入端,掉电时内部备用电源接入端,掉电时内部RAM的备用电源输入端。的备用电源输入端。l PSEN 输出读外部程序存储器的选通信号。输出读外部程序存储器的选通信号。 (WR/RD:读:读/写外部数据存储
4、器的选通信号)写外部数据存储器的选通信号)l EA/Vpp EAEA为内外程序存储器选择控制端。为内外程序存储器选择控制端。 EA=1EA=1,访问片内程序存储器,但在访问片内程序存储器,但在PCPC(程序计数器)值超过(程序计数器)值超过0FFFH0FFFH(对于对于80518051、87518751)时,即超出片内程序存储器的)时,即超出片内程序存储器的4K4K字节地址范围时,将字节地址范围时,将自动转向执行外部程序存储器内的程序。自动转向执行外部程序存储器内的程序。 EA=0 EA=0,单片机则只访问外部程序存储器。单片机则只访问外部程序存储器。 V VPPPP为本引脚的第二功能。用于施
5、加编程电压为本引脚的第二功能。用于施加编程电压3、中央处理器(、中央处理器(CPU)l 由运算器、控制(定时)器组成由运算器、控制(定时)器组成 运算器功能部件包括算术逻辑运算部件运算器功能部件包括算术逻辑运算部件ALU,累加,累加器器A,程序状态寄存器,程序状态寄存器PSW,寄存器,寄存器B,堆栈指针,堆栈指针SP,数据指针寄存器数据指针寄存器DPTR(16bit)以及布尔处理器等。)以及布尔处理器等。 (1)算术)算术/逻辑运算部件逻辑运算部件ALU对应用开发人员对应用开发人员“透明透明”l ALU的作用:的作用: 算术算术/逻辑运算操作逻辑运算操作对传送到对传送到CPU的的8位数据进行位
6、数据进行+、-、*、/算术运算和与、或、异或等逻辑操作。算术运算和与、或、异或等逻辑操作。 位处理功能(位处理功能(51MCU的特点):置位、清零、取反、逻辑的特点):置位、清零、取反、逻辑与、逻辑或、条件判断转移等(这在控制中特别有用,因为一些与、逻辑或、条件判断转移等(这在控制中特别有用,因为一些控制中常需要进行按位运行,位操作指令提供了把逻辑等式直接控制中常需要进行按位运行,位操作指令提供了把逻辑等式直接变换成软件的简单明了的方法,使得不使用过多的数据传送、字变换成软件的简单明了的方法,使得不使用过多的数据传送、字节屏蔽节屏蔽/组合和测试分支树等编程方法,也能实现较为复杂的组组合和测试分
7、支树等编程方法,也能实现较为复杂的组合逻辑功能,从而简化了程序逻辑的编制。为此,它获得了合逻辑功能,从而简化了程序逻辑的编制。为此,它获得了布尔布尔处理器的称号处理器的称号)l 其运算的操作数分别来自累加器其运算的操作数分别来自累加器A和和B寄存器,运算结果的寄存器,运算结果的状态信息送入状态信息送入PSW。运算器运算器l 累加器累加器A(Acc)8位位 CPU工作最频繁的工作最频繁的reg,用于提供操作数和存放运,用于提供操作数和存放运算的中间结果(与算的中间结果(与“加法加法”的意义区分开!)的意义区分开!) MCS 51系列系列MCU,结构上仍以累加器,结构上仍以累加器A作为基础作为基础
8、(许多指令都以(许多指令都以Acc为基础,特别是与外部存储器打为基础,特别是与外部存储器打交道的指令,都需在交道的指令,都需在Acc中进行)。中进行)。 但由于内部电路采取了措施,使得累加器但由于内部电路采取了措施,使得累加器A在数据在数据传送、逻辑控制等方面的核心作用受到了削载,数据传送、逻辑控制等方面的核心作用受到了削载,数据可以在片内直接可以在片内直接/间接地址的存储器之间直接传送而不间接地址的存储器之间直接传送而不必经过累加器必经过累加器A。直接地址存储器也可和常量直接进。直接地址存储器也可和常量直接进行逻辑运算行逻辑运算(2)寄存器)寄存器要求能记能背要求能记能背 一般用于乘除法指令
9、,通常与一般用于乘除法指令,通常与A配合使用。配合使用。B存放存放乘积的高位字节或除法运算后的余数部分。乘积的高位字节或除法运算后的余数部分。 例如:例如:MUL A B ;AB (8位无符号数)位无符号数)BA DIV A B ;A/B商商A,A/B余数余数B 也可作为普通的也可作为普通的reg来使用,如暂存中间结果等来使用,如暂存中间结果等 l B寄存器寄存器l 程序状态字寄存器程序状态字寄存器PSW(特别重要!)(特别重要!)8位位程序状态字程序状态字PSW,是可读写的寄存器,位于单片机片,是可读写的寄存器,位于单片机片内的特殊功能寄存区,它用于存放程序运行中的各种内的特殊功能寄存区,它
10、用于存放程序运行中的各种状态信息。状态信息。 可以以字节来访问,也可以直接访问某一位,如:可以以字节来访问,也可以直接访问某一位,如: setb F0;/将将F0位置位置1 要求掌握其中每一位的含义!要求掌握其中每一位的含义!PSW(字节地址:(字节地址:F0H)凡字节地址可被8整除的均可按位访问PSW状态字PSW.7PSW.6PSW.5PSW.4PSW.3PSW.2PSW.1PSW.0 标志位CYACF0RS1RS0OVP例: 1010 1010B 如何影响Cy、AC? 0101 1000B PSW.7进位标志,进位标志,如果操作结果在最高位有如果操作结果在最高位有进位输出(加法)或借位进位
11、输出(加法)或借位输入(减法)时置位,否输入(减法)时置位,否则清零。则清零。AC(PSW.6)辅助进位标志,辅助进位标志,是低半字节的进位位(累加是低半字节的进位位(累加器器A中中A3向向A4位的进位),位的进位),BCD码调整时用。码调整时用。PSW(字节地址:(字节地址:F0H)凡字节地址可被8整除的均可按位访问PSW状态字PSW.7PSW.6PSW.5PSW.4PSW.3PSW.2PSW.1PSW.0 标志位CYACF0RS1RS0OVPF0(PSW.5):用户定义的状:用户定义的状态标志位,可通过软件对它态标志位,可通过软件对它置位置位/复位或测试。复位或测试。OV(PSW.2):溢
12、出标志位,):溢出标志位,用于表示有符号数算术运算溢用于表示有符号数算术运算溢出。当次高位发生向最高位进出。当次高位发生向最高位进位而最高位不发生进位时,发位而最高位不发生进位时,发生溢出,生溢出,OV便由硬件置位,便由硬件置位,否则清零。否则清零。P(PSW.0):奇偶标志位,该:奇偶标志位,该标志位用来表示累加器标志位用来表示累加器A中中为为1的位数的奇偶数,它与的位数的奇偶数,它与PSW中其它标志的变化无关。中其它标志的变化无关。A中中1的个数为奇数,的个数为奇数,P=1; A中中1的个数为偶数,的个数为偶数, P=0。PSW(字节地址:(字节地址:F0H)凡字节地址可被8整除的均可按位
13、访问PSW状态字PSW.7PSW.6PSW.5PSW.4PSW.3PSW.2PSW.1PSW.0 标志位CYACF0RS1RS0OVPRS1(PSW.4)RS0(PSW.3):工作寄存器组选:工作寄存器组选择位,用于选择四组工作寄存器之一。及择位,用于选择四组工作寄存器之一。及通用寄存器通用寄存器R0R7映射到内部映射到内部RAM中的具中的具体位置:体位置:RS1 /RS0寄存器组对应的地址寄存器组对应的地址0 0 组组0 00H07H0 1 组组1 08H0FH1 0 组组2 10H17H1 1 组组3 18H1FH 例:MOV PSW,08H 选中寄存器组1(即R0R7映射到RAM的08H
14、0FH单元20H18H1FH10H17HR7(0FH)R6(0EH)R5(0DH)R4(0CH)R3(0BH)R2(0AH)R1(09H)R0(08H)00H07H片内RAM的部分字节用于通用寄存器组片片内内数数据据存存储储器器片片内内RAM块块SFR块块数据缓冲区数据缓冲区位寻址区位寻址区工作寄存器区工作寄存器区控制器控制器l 控制器功能部件包括程序计数器控制器功能部件包括程序计数器PC、指令寄存器、指令寄存器IR、指令、指令译码器、定时与控制逻辑及时钟电路、复位电路等。译码器、定时与控制逻辑及时钟电路、复位电路等。l 控制器是单片机的指挥控制部件,控制器的主要任务是识别控制器是单片机的指挥
15、控制部件,控制器的主要任务是识别指令,并根据指令的性质控制单片机各功能部件,从而保证单片指令,并根据指令的性质控制单片机各功能部件,从而保证单片机各部分能自动协调的工作。机各部分能自动协调的工作。l 单片机在控制器的控制下执行指令:首先从程序存储器中读单片机在控制器的控制下执行指令:首先从程序存储器中读出指令,送至指令寄存器保存,然后送到指令译码器对指令进行出指令,送至指令寄存器保存,然后送到指令译码器对指令进行译码,译码结果送定时控制逻辑电路,由定时控制逻辑电路产生译码,译码结果送定时控制逻辑电路,由定时控制逻辑电路产生各种定时信号和控制信号,再送到单片机的各部件进行相应操作。各种定时信号和
16、控制信号,再送到单片机的各部件进行相应操作。 程序计数器程序计数器PCPC用于存放下一条要执行的指令地址,是用于存放下一条要执行的指令地址,是一个一个1616位的专用寄存器,可寻址范围为位的专用寄存器,可寻址范围为0 06553665536(64K64K)。)。(1) PC (Program CounterProgram Counter) 程序计数器,程序指针程序计数器,程序指针 PCPC在物理上是独立的,尽管与在物理上是独立的,尽管与SFRSFR关系密切,但关系密切,但不属不属于于SFRSFR。 程序计数器程序计数器PCPC基本工作过程:基本工作过程:读指令时,程序计数器读指令时,程序计数器
17、将其中的数作为所取指令的地址输出给程序存储器,然后将其中的数作为所取指令的地址输出给程序存储器,然后程序存储器按此地址输出指令字节,同时程序计数器本身程序存储器按此地址输出指令字节,同时程序计数器本身内容自动增加,指向下一条指令在程序存储器中的地址。内容自动增加,指向下一条指令在程序存储器中的地址。 程序计数器基本工作方式有以下几种:程序计数器基本工作方式有以下几种: (1 1)程序计数器自动加)程序计数器自动加1 1 (2 2)执行有条件转移或无条件转移指令时,)执行有条件转移或无条件转移指令时, PCPC将被将被置入新的数值,从而使程序的流向发生变化。置入新的数值,从而使程序的流向发生变化
18、。 (3 3)执行子程序调用或中断调用,完成下列操作:)执行子程序调用或中断调用,完成下列操作: PCPC的现行值保护的现行值保护 将子程序入口地址或中断向量的地址送入将子程序入口地址或中断向量的地址送入PCPC。 指令寄存器指令寄存器IRIR用于存放指令操作码,用于存放指令操作码,IRIR的输出送指令的输出送指令译码器;然后对该指令进行译码,译码结果送定时控制逻译码器;然后对该指令进行译码,译码结果送定时控制逻辑电路。辑电路。(2) 指令寄存器指令寄存器IRIR、指令译码器及控制逻辑电路、指令译码器及控制逻辑电路 定时控制逻辑电路定时控制逻辑电路根据对指令的译码结果,发出一系根据对指令的译码
19、结果,发出一系列的定时控制信号,控制单片机的各组成部件进行相应的列的定时控制信号,控制单片机的各组成部件进行相应的工作,执行指令。工作,执行指令。存储器功能存储器功能:1KB存储器存储器地址地址 存储内容存储内容 0 10011010 1 011010111023 101001114、MCS51单片机的存储器结构单片机的存储器结构存储内容存储内容:存放程序和数据等信息。存放程序和数据等信息。半导体存储器半导体存储器:由一个个存储单元组成,每个单元有一个编号:由一个个存储单元组成,每个单元有一个编号(称为存储地址称为存储地址)存储器容量存储器容量:指存储单元的多少。:指存储单元的多少。程序或数据
20、的二进制代码(一程序或数据的二进制代码(一个字节)个字节) 。如存储器容量为如存储器容量为1KB = 10248位。位。l 普林斯顿结构(冯普林斯顿结构(冯.诺曼结构):诺曼结构):程序和数据共程序和数据共用一个存储器逻辑空间,统一编址。用一个存储器逻辑空间,统一编址。l 哈佛结构:哈佛结构:程序与数据分为两个独立存储器逻程序与数据分为两个独立存储器逻辑空间,分开编址。辑空间,分开编址。(1) 存储器地址空间结构形式存储器地址空间结构形式物理上分为:物理上分为:4个空间,即片内个空间,即片内ROM、片外片外ROM 片内片内RAM、片外片外RAM逻辑上分为逻辑上分为: : 3个空间,个空间, 即
21、程序内存(片内、外)统一编址即程序内存(片内、外)统一编址 MOVC 数据存储器(片内)数据存储器(片内) MOV 数据存储器(片外)数据存储器(片外) MOVX(2) 存储器地址空间划分存储器地址空间划分MCS-51单片机的存储器结构60K4K4K128B128B工作寄存器区:工作寄存器区:字节地址:字节地址:00H1FH(3)片内的数据存储器()片内的数据存储器( 低低128B)位寻址区:位寻址区:字节地址:字节地址:20H2FH 位地址为:位地址为:00H7FH 数据缓冲区数据缓冲区/堆栈区:堆栈区:字节地址:字节地址:30H7FH表表2-3 内部内部RAM的可寻址位及位地址的可寻址位及
22、位地址l 位寻址区(位寻址区(20H2FH)RAM阵列中可直阵列中可直接位寻址的接位寻址的16个单个单元的元的128个位的位。个位的位。(用位指令访问)(用位指令访问)当这些单元不用当这些单元不用于位操作时,它们于位操作时,它们可一般的可一般的RAM区单区单元一样作为用户的元一样作为用户的数据缓冲区。数据缓冲区。MOV A,20HMOV C,20H(3)片内的数据存储器()片内的数据存储器( 高高128B-SFR) 21 21个个特殊功能寄存器特殊功能寄存器, ,又称为专用寄存器(又称为专用寄存器(SFRSFR),),1111个个SFRSFR寄存器具有寄存器具有位寻址位寻址。他们离散的分布在他
23、们离散的分布在80H80H FFH RAMFFH RAM空间中空间中 。 2121个特殊功能寄存器地址不连续个特殊功能寄存器地址不连续, ,空闲地址无意空闲地址无意,对,对用户来讲,这些单元是不存在的。用户来讲,这些单元是不存在的。 对特殊功能寄存器只能使用对特殊功能寄存器只能使用直接寻址方式直接寻址方式, ,书写时即可书写时即可使用寄存器符号,也可使用寄存器单元地址。使用寄存器符号,也可使用寄存器单元地址。表表2-2 SFR2-2 SFR的名称及其分布的名称及其分布其其字节地字节地址的末位址的末位是是0H0H或或8H8H可可位寻址位寻址DPTRDPTR唯一的唯一的1616位指针位指针l 堆栈
24、指针堆栈指针SP (堆栈与中断系统是计算机的两大特征(堆栈与中断系统是计算机的两大特征) 以以“堆堆”的方式工作的的方式工作的“栈栈”。 遵循遵循“先进后出、后进先出先进后出、后进先出”的原则,堆栈是按该工作的原则,堆栈是按该工作方式工作的、用来暂时存放数据的寄存器或存储单元。是只方式工作的、用来暂时存放数据的寄存器或存储单元。是只在一端进行存取的在一端进行存取的一块特别的存储区一块特别的存储区。堆栈的作用:在堆栈的作用:在CPU响应中断或调用了程序时,需要把断点处响应中断或调用了程序时,需要把断点处的的PC值以及现场的一些数据保存起来,在微型计算机中,它们就值以及现场的一些数据保存起来,在微
25、型计算机中,它们就是保存在堆栈中的。同样,当发生中断嵌套(高级中断中断低级是保存在堆栈中的。同样,当发生中断嵌套(高级中断中断低级中断)或子程序嵌套(在执行一个子程序中,又调用另一个子程中断)或子程序嵌套(在执行一个子程序中,又调用另一个子程序)时,也要把各级断点的序)时,也要把各级断点的PC值以及一些现场数据都要保护起来,值以及一些现场数据都要保护起来,为了能保证逐级正确返回,要求后保存的值先取回即符合为了能保证逐级正确返回,要求后保存的值先取回即符合“后进后进先出、先进后出先出、先进后出”的原则。堆栈正是为此目的而设计的。的原则。堆栈正是为此目的而设计的。下面介绍下面介绍SFRSFR块中的
26、某些寄存器。块中的某些寄存器。 堆栈的实现方式:堆栈的实现方式:堆栈指针,堆栈指针,SP堆栈的生长方向:堆栈的生长方向:MCS51的生长方式为的生长方式为“向上生长向上生长” MCS51的堆栈(指针的堆栈(指针8位)位) MCS51的堆栈指针是一个的堆栈指针是一个8位的地址寄存器,它指向位的地址寄存器,它指向RAM中中的一个存储单元。堆栈指针的初值称为栈区的栈底,每当一个数的一个存储单元。堆栈指针的初值称为栈区的栈底,每当一个数据送到堆栈中(称为压入堆栈)或从堆栈中取出(称为弹出堆据送到堆栈中(称为压入堆栈)或从堆栈中取出(称为弹出堆栈),堆栈指针都要随之作相应的变化,它始终指向栈区的顶端栈)
27、,堆栈指针都要随之作相应的变化,它始终指向栈区的顶端(栈顶)。(栈顶)。 工作过程:工作过程:需要入栈时(中断或执行需要入栈时(中断或执行PUSH或或CALL指令指令时),时),CPU首先把首先把SP加加1,再把数据压栈;当需要把数据弹出时,再把数据压栈;当需要把数据弹出时(为执行(为执行POP或返回指令时),或返回指令时),CPU先把数据弹出,然后先把数据弹出,然后SP减减1,这样保证这样保证SP所指的栈顶总是满的。所指的栈顶总是满的。 当复位时,堆栈指针初始化为当复位时,堆栈指针初始化为07H,因此,堆栈从地址,因此,堆栈从地址08H开始;堆栈指针也可由指令改变,因而堆栈开始;堆栈指针也可
28、由指令改变,因而堆栈可设置且只能设置可设置且只能设置在在片内数据存储器片内数据存储器RAM的任何一个连续区间。的任何一个连续区间。l DPTR(数据指针)(数据指针) 数据指针数据指针DPTRDPTR是一个是一个1616位的位的SFRSFR,其高位字节寄存器用,其高位字节寄存器用DPHDPH表示、低位字节寄存器用表示、低位字节寄存器用DPLDPL表示。表示。DPTRDPTR既可以作为一既可以作为一个个1616位的寄存器位的寄存器DPTRDPTR来使用,也可以作为两个独立的八位来使用,也可以作为两个独立的八位寄存器寄存器DPHDPH、DPLDPL来用。来用。表表2-4 SFR中的位地址分布中的位
29、地址分布P1.0l 关于关于“特殊功能寄存器(特殊功能寄存器(SFR)”的小结的小结 MCS-51系列单片机将物理上分散在片内各处(系列单片机将物理上分散在片内各处(离散的占用离散的占用片内片内RAM区的区的80HFFH地址地址)的具有某种特定功能的一些寄存)的具有某种特定功能的一些寄存器,在数学上把它们组织在特殊功能寄存器的地址空间中,使用器,在数学上把它们组织在特殊功能寄存器的地址空间中,使用统一后的统一后的直接寻址方式直接寻址方式访问。(这样,大多数指令能对它们进行访问。(这样,大多数指令能对它们进行操作,使单片机许多不同功能的实现在指令形式上变得极其简单操作,使单片机许多不同功能的实现
30、在指令形式上变得极其简单和统一,从而减少了指令的种类和数量,使指令系统更加规整和和统一,从而减少了指令的种类和数量,使指令系统更加规整和有效。)有效。) SFR不连续地分布在地址空间不连续地分布在地址空间80HFFH中,如表中,如表2-2所示。所示。其中,地址号能被其中,地址号能被8整除的那些特殊功能寄存器单元中的位,可整除的那些特殊功能寄存器单元中的位,可以直接位寻址。以直接位寻址。5、MCS51单片机的并行单片机的并行I/O口口 所谓并行所谓并行I/O口,即各位的数据同时被输入或输出,它的最大特点是口,即各位的数据同时被输入或输出,它的最大特点是速度快。速度快。 (1 )结构特点)结构特点
31、 lMCS-51系列单片机有系列单片机有四个四个8位并行口位并行口P0P3,共有,共有32根根I/O线;线;l它们都具有它们都具有双向双向I/O 口功能,均可作为数据输入口功能,均可作为数据输入/输出使用;输出使用;l每个接口内部都有一个每个接口内部都有一个8位数据输出位数据输出锁存锁存器,一个输出器,一个输出驱动驱动器(场效应管)器(场效应管)和一个数据输入和一个数据输入缓冲缓冲器(三态门)组成。因此,器(三态门)组成。因此, CPU数据从并行数据从并行I/O接口接口输出时可以得到输出时可以得到锁存锁存,输入时可以得到缓冲。,输入时可以得到缓冲。l由于功能的不同,由于功能的不同,P0P3各口
32、的结构有所区别。各口的结构有所区别。P0口:地址口:地址/数据复用口数据复用口QQDCP写入写入内部总线内部总线读读锁锁存存器器读引脚读引脚x . 0PCCV数数据据地地址址/控制控制锁存器锁存器MUX& P0某位由某位由1个个输出锁存器输出锁存器、2个三态个三态输入缓冲器输入缓冲器, 1个个输出驱动输出驱动电路和电路和1个个输出控制输出控制电路组成。电路组成。图图2-7 P0口的位结构电路原理图口的位结构电路原理图P0口:地址口:地址/数据复用口数据复用口QQDCP写锁存器内内部部总总线线读读锁锁存存器器读读引引脚脚x. 0PCCV数数据据地地址址 /控控制制锁锁存存器器MUX&am
33、p;1. 控制信号控制信号=0(P0作为作为I/O口使用),口使用),TI截止,截止,MUX接锁存器接锁存器10= 01VT2VT2. P0口作输出口口作输出口:当:当CPU像端口输出数据时,写脉冲加在锁存器的像端口输出数据时,写脉冲加在锁存器的CP上内部数据经上内部数据经Q反相,再经反相,再经2VT管反相,管反相,P0的这一位引脚上出现正好和内的这一位引脚上出现正好和内部总线同相的数据。部总线同相的数据。01010输出锁存输出锁存,漏极开路输出漏极开路输出,在外部需接一个上拉电阻。,在外部需接一个上拉电阻。= 0,截止,截止100截止,断开截止,断开P0口:地址口:地址/数据复用口数据复用口
34、QQDCP写锁存器内内部部总总线线读读锁锁存存器器读读引引脚脚x. 0PCCV数数据据地地址址 /控控制制锁锁存存器器MUX&10= 01VT2VT2. P0口作输入口:口作输入口:VT1悬浮状态,一个高阻抗的输入口悬浮状态,一个高阻抗的输入口条件:先输出条件:先输出1,使场效应管,使场效应管VT2截止,再进行读入操作截止,再进行读入操作(P0-P3口都适应)口都适应)0101不再是不再是高阻抗高阻抗的输入的输入VT2导通,使导通,使引脚钳位到零引脚钳位到零方式方式1(读锁存器)(读锁存器): :Q - G2 - D - 内部总线内部总线G2G1方式方式2(读引脚):(读引脚):P0.
35、x - G1 - D - 内部总线内部总线适于适于“读读修改修改写写”指令,如指令,如ANL P0,A ANL(逻辑与指令)(逻辑与指令) 例如:例如:ANL P1,A ORL(逻辑或指令)(逻辑或指令) 例如:例如:ORL P2,A XRL(逻辑异或指令)(逻辑异或指令) 例如:例如:XRL P3,A INC(增量指令)(增量指令) 例如:例如:INC P2 DEC(减量指令)(减量指令) 例如:例如:DEC P1 DJNZ(循环判跳指令)(循环判跳指令) 例如:例如:DJNZ P2,LOOP JBC(位测试转移指令)(位测试转移指令)例如:例如:JBC P1. 1, LOOP MOV(位传
36、送指令)(位传送指令) 例如:例如:MOV P1.3, C CPL(位取反指令)(位取反指令) 例如:例如:CPL P1.0 CLR(位清(位清“0”指令)指令) 例如:例如:CLR P1.0 SETB(位置位指令)(位置位指令) 例如:例如:SETB P3.3 !读锁存器操作的共同点(特征)读锁存器操作的共同点(特征):先读入并行先读入并行I/O口锁存器中的内容,口锁存器中的内容,作一定的修改,然后再写入该口的锁存器中(读出作一定的修改,然后再写入该口的锁存器中(读出修改修改写回)写回)。 上述的后五条指令,属于位操作指令,实际上也是先要将上述的后五条指令,属于位操作指令,实际上也是先要将8
37、位锁存器的位锁存器的内容一起读入,再按指定位进行修改,然后再一起写入锁存器中。内容一起读入,再按指定位进行修改,然后再一起写入锁存器中。P0口:地址口:地址/数据复用口数据复用口QQDCP写锁存器内内部部总总线线读读锁锁存存器器读读引引脚脚x. 0PCCV数数据据地地址址 /控控制制锁锁存存器器MUX&1. 控制信号控制信号=1,P0作为地址作为地址/数据总线使用数据总线使用10= 11VT2VT2. 输出输出:地址:地址/数据,不需要外接上拉电阻数据,不需要外接上拉电阻3. 输入输入:数据,通过:数据,通过读引脚读引脚完成完成反相器反相器注:一般注:一般P0口只在系统中作总线,而不作
38、一般口只在系统中作总线,而不作一般I/O口口,因此因此P0口不外接上拉电阻口不外接上拉电阻00101011(1)P0口可作通用口可作通用I / O口使用,又可作地址口使用,又可作地址/数据总线数据总线总结特点:总结特点:(2)P0既可按字节寻址,又可按位寻址;既可按字节寻址,又可按位寻址;(3)作地址)作地址/数据总线口时,数据总线口时,P0是一个准双向口,是一个准双向口, 而作为通用而作为通用I / O口时,是一真正双向口。口时,是一真正双向口。 P1口口l 只能作只能作I / O口用,且是一个准双向口口用,且是一个准双向口l P1P1口与口与P0P0口的不同口的不同: :不在需要不在需要M
39、UXMUX,有内部上拉电阻,有内部上拉电阻l P1P1口与口与P0P0口的相同口的相同: :作为输入口时,也需要先向其锁存器写入作为输入口时,也需要先向其锁存器写入“1 1P2口口 1. 与与P0口类似,口类似,P2口除了作口除了作I/O口之外,还作为地址总线的高口之外,还作为地址总线的高8位地址输出端。位地址输出端。2. 在作为在作为I/O口用时,控制信号口用时,控制信号=0,故多路转换器,故多路转换器MUX接在锁存器的接在锁存器的Q端,场效应管受锁存器的控制端,场效应管受锁存器的控制3. 在作为地址总线输出在作为地址总线输出 时,控制信号时,控制信号= 1,多路转换器,多路转换器MUX接在
40、接在“地址地址”端,故场效应管由端,故场效应管由“地址地址端来控制,此时锁存器(端来控制,此时锁存器(P2的特殊功能寄存器的特殊功能寄存器SFR)的内容不变,在外部存储器读)的内容不变,在外部存储器读/写完毕时,写完毕时,P2口口的地址输出的作用也结束,则的地址输出的作用也结束,则“控制控制”端又变为端又变为“0”,P2口继续按锁存器原来的状态输出。口继续按锁存器原来的状态输出。0110001101(1)当)当P2口作为通用口作为通用I / O时,是一准双向口。时,是一准双向口。特点:特点:(2)从)从P2口输入数据时,先向锁存器写口输入数据时,先向锁存器写“1”。(3)可位寻址,也可按字节寻
41、址)可位寻址,也可按字节寻址(4)可输出地址高)可输出地址高8位。位。 (5)由于由于P2口在口在CPU对外部存储器读对外部存储器读/写过程中,始终能写过程中,始终能 输出地址信号,所以输出地址信号,所以P2的地址不需要外部锁存器的的地址不需要外部锁存器的 锁存。锁存。P3口口l作为第二功能输出引脚:作为第二功能输出引脚:作为通用作为通用I/OI/O口时,第二输出功能线应保持高电平,使口时,第二输出功能线应保持高电平,使Q Q端输出通路保持畅通端输出通路保持畅通输出第二功能信号,锁存器应预先置输出第二功能信号,锁存器应预先置1 1,使第二输出功能信号的输出畅通,使第二输出功能信号的输出畅通l作
42、为第二功能输入引脚:在口线引脚的内部增加了一个缓冲器,输入的作为第二功能输入引脚:在口线引脚的内部增加了一个缓冲器,输入的信号就从这个缓冲器的输出端取得。信号就从这个缓冲器的输出端取得。1110100101101010(1 1)作通用)作通用I / O时,时,“选择输出功能选择输出功能”应保持高电平应保持高电平特点:特点:(2 2)工作于第二功能时,该位锁存器应置)工作于第二功能时,该位锁存器应置1(3 3)作输入口时,输出锁存器和选择输出功能端都应置)作输入口时,输出锁存器和选择输出功能端都应置1(4 4)第二功能专用输入,取自输入通道第一缓冲器)第二功能专用输入,取自输入通道第一缓冲器 输
43、出端,通用输入信号取自输出端,通用输入信号取自“读引脚读引脚” P3口的第二功能有哪些?口的第二功能有哪些?强调!强调!说明:说明:对对P0P3口口 :l 1) 各个端口引脚在作输入口之前,都要先向对应的各个端口引脚在作输入口之前,都要先向对应的口寄存器中写口寄存器中写“1”,不然不能作输入口用。,不然不能作输入口用。l 2) P0口内部没有上拉电阻(其他都有),所以作通口内部没有上拉电阻(其他都有),所以作通用用IO口用时为口用时为“开漏开漏”输出,必须外加上拉电阻。在输出,必须外加上拉电阻。在作总线使用时不需要加上拉。其他的口可加可不加。作总线使用时不需要加上拉。其他的口可加可不加。 (上
44、拉电阻的阻值确定,(上拉电阻的阻值确定,5.1K或者或者4.7K都可以)。都可以)。l 3) P3口作第二功能使用时,相应的口锁存器必须为口作第二功能使用时,相应的口锁存器必须为 “1” 状态。状态。l 4) 如果使用了外部存储器,不要再写如果使用了外部存储器,不要再写P0口(外部存口(外部存储器挂在储器挂在P0口)。口)。6 时钟电路与时序时钟电路与时序 时钟电路时钟电路用于产生单片机工作所必需的时钟控用于产生单片机工作所必需的时钟控制信号。制信号。 时序时序所研究的是指令执行中各个信号在时间上所研究的是指令执行中各个信号在时间上的关系。的关系。 单片机本身就是一个复杂的单片机本身就是一个复
45、杂的同步时序电路同步时序电路,为,为了保证同步工作方式的实现,电路应在唯一的了保证同步工作方式的实现,电路应在唯一的时钟信号控制下严格的按时序进行工作。时钟信号控制下严格的按时序进行工作。(1) 时钟电路内部时钟方式电路内部时钟方式电路 内部结构内部结构:内阻和高增益反相放大器构成一个稳定的自激振荡器:内阻和高增益反相放大器构成一个稳定的自激振荡器 反相放大器的输入端为芯片引脚反相放大器的输入端为芯片引脚XTAL1XTAL1,输出端为引脚,输出端为引脚XTAL2XTAL2 芯片外部芯片外部: XTAL1 XTAL1和和XTAL2XTAL2之间接晶体振荡器和微调电容之间接晶体振荡器和微调电容 电
46、容为电容为20PF-50PF20PF-50PF, ,通常选择为通常选择为30pF30pF左右。左右。 晶体的振荡频率在晶体的振荡频率在1.2MHz1.2MHz12MHz12MHz之间。之间。(1) 时钟电路 外部时钟方式电路外部时钟方式电路 在由许多单片机组成的系统中,为了各个单片机之间时钟在由许多单片机组成的系统中,为了各个单片机之间时钟信号的同步,应当引入唯一的公用外部脉冲信号作为各单片信号的同步,应当引入唯一的公用外部脉冲信号作为各单片单片机的震荡脉冲,这时外部的脉冲信号应经过单片机的震荡脉冲,这时外部的脉冲信号应经过XTAL1XTAL1引脚。引脚。 (2) 时序及相关概念时序及相关概念
47、节拍节拍P:振荡脉冲的周期也称振荡脉冲的周期也称时钟周期时钟周期, 是指为单片机提供时钟脉冲是指为单片机提供时钟脉冲信号的振荡源的周期。(即信号的振荡源的周期。(即 晶振的频率)晶振的频率) 状态周期状态周期S:一个状态一个状态S包含两个节拍(为时钟周期的包含两个节拍(为时钟周期的 2 倍)倍), 其前半其前半周期对应的节拍叫周期对应的节拍叫P1 ,后半周期对应的节拍叫后半周期对应的节拍叫P2。机器周期:机器周期:完成一个基本操作所需要的时间。完成一个基本操作所需要的时间。一个机器周期宽度为一个机器周期宽度为6个状态,从个状态,从S1 S6(它有(它有12个振荡脉冲周期,因此它是振荡脉冲的个振
48、荡脉冲周期,因此它是振荡脉冲的12分频)。机器周期是单片机的最小时间单位。分频)。机器周期是单片机的最小时间单位。指令周期:指令周期:执行一条指令所需的的时间。包含执行一条指令所需的的时间。包含1 4个机器周期。最个机器周期。最大的时序定时单位大的时序定时单位 。 MCS-51的时序定时单位从小到大依次为:节拍、状态、机器周期、指令周期的时序定时单位从小到大依次为:节拍、状态、机器周期、指令周期(思考题思考题:设应用单片机晶振频率为设应用单片机晶振频率为12MHz,问机器周期为,问机器周期为多长时间?指令周期分别为多长时间?多长时间?指令周期分别为多长时间? )指令时序指令时序 ALEALE是
49、地址锁存信号。是地址锁存信号。 ALEALE信号以震荡脉冲六分之一的频率出现。因此,在一个周期中信号以震荡脉冲六分之一的频率出现。因此,在一个周期中ALEALE信号信号两次有效:第一次在两次有效:第一次在S1P2S1P2和和S2P1S2P1期间,第二次在期间,第二次在S4P2S4P2和和S5P1S5P1期间,期间,机器周期该信号每有效一次就能对存储器进行一次读指令操作该信号每有效一次就能对存储器进行一次读指令操作有效宽度为一个状态。有效宽度为一个状态。ALE2S1S6S1S单字节单周期指令单字节单周期指令例:例:INC A读操作码读操作码)读下一个操作码(丢弃读下一个操作码(丢弃3S4S5S2S1S6S1S3S4S5S读操作码读操作码读第二个字节读第二个字节双字节单周期指令双字节单周期指令例:例:ADD A, #data2S1S6S3S4S5S2S1S6S3S4S5S读操作码读操作码读操作码(丢弃)读操作码(丢弃)单字节双周期指令例:单字节双周期指令例:INC DPTR2P1P1S2S6S2P1P1S2S6S3S4S5S3S4S5S(2 2)双字节单周期指令:)双字节单周期指令:ADD AADD A,#data#data(3 3)单字节双周期指令:)单字节双周期指令:INC DPTRINC DPTR(1 1)单字节单周期指令:)单字节单周期指令:INC AINC
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年中国抗菌沐浴露行业市场全景分析及前景机遇研判报告
- 2025年中国建盏行业市场全景分析及前景机遇研判报告
- 2025-2030年中国型材行业市场全景调研及投资价值评估咨询报告
- 建筑节能报告用指标的确定
- 税务师老师讲解课件
- 2025年中国智能防火墙行业市场发展前景及发展趋势与投资战略研究报告
- 2022-2027年中国带鱼捕捞行业市场调查研究及投资战略研究报告
- 2025年 重庆四联特种装备材料有限公司招聘考试笔试试题附答案
- 中国机动车综合测试仪行业市场调研及投资战略研究报告
- 2025年 内蒙古呼和浩特中航集团信息管理部招聘考试笔试试题附答案
- 2025年高考河北卷物理高考真题+解析(参考版)
- 中医老人保健讲座课件
- -2024-2025学年统编版语文二年级下册 期末复习练习题(含答案)
- 2025至2030中国室内滑雪场行业项目调研及市场前景预测评估报告
- 2025四川绵阳市平武县兴帮农业发展集团有限公司招聘10人笔试参考题库附带答案详解
- 西南林业大学《算法分析与设计》2023-2024学年第二学期期末试卷
- 征集和招录人员政治考核表
- 年中国鹦鹉养殖市场发展策略及投资潜力可行性预测报告
- 2025年施工企业工作总结(7篇)
- 疏通吸污车租赁合同协议
- 学习领悟在庆祝中华全国总工会成立100周年大会上重要讲话心得体会
评论
0/150
提交评论