单片机结构和时序
- 格式:ppt
- 大小:1.28 MB
- 文档页数:49
单片机IO口结构及上拉电阻MCS-51有4组8位I/O口:P0、P1、P2和P3口,P1、P2和P3为准双向口,P0口则为双向三态输入输出口,下面我们分别介绍这几个口线。
一、P0口和P2口图1和图2为P0口和P2口其中一位的电路图。
由图可见,电路中包含一个数据输出锁存器(D触发器)和两个三态数据输入缓冲器,另外还有一个数据输出的驱动(T1和T2)和控制电路。
这两组口线用来作为CPU与外部数据存储器、外部程序存储器和I/O扩展口,而不能象P1、P3直接用作输出口。
它们一起可以作为外部地址总线,P0口身兼两职,既可作为地址总线,也可作为数据总线。
图1 单片机P0口内部一位结构图图2 单片机P2口内部一位结构图P2口作为外部数据存储器或程序存储器的地址总线的高8位输出口AB8-AB15,P0口由ALE选通作为地址总线的低8位输出口AB0-AB7。
外部的程序存储器由PSEN信号选通,数据存储器则由WR和RD读写信号选通,因为2^16=64k,所以MCS-51最大可外接64kB的程序存储器和数据存储器。
二、P1口图3为P1口其中一位的电路图,P1口为8位准双向口,每一位均可单独定义为输入或输出口,当作为输入口时,1写入锁存器,Q(非)=0,T2截止,内上拉电阻将电位拉至"1",此时该口输出为1,当0写入锁存器,Q(非)=1,T2导通,输出则为0。
图3 单片机P2口内部一位结构图作为输入口时,锁存器置1,Q(非)=0,T2截止,此时该位既可以把外部电路拉成低电平,也可由内部上拉电阻拉成高电平,正因为这个原因,所以P1口常称为准双向口。
需要说明的是,作为输入口使用时,有两种情况:1.首先是读锁存器的内容,进行处理后再写到锁存器中,这种操作即读—修改—写操作,象JBC(逻辑判断)、CPL(取反)、INC(递增)、DEC(递减)、ANL(与逻辑)和ORL(逻辑或)指令均属于这类操作。
2.读P1口线状态时,打开三态门G2,将外部状态读入CPU。
8051单片机的内部结构8051单片机是一种经典的8位微控制器,因其性能稳定、易于使用和广泛应用于各种嵌入式系统中而备受推崇。
8051单片机采用哈佛架构,具有强大的功能和丰富的内部资源。
本文将详细介绍8051单片机的内部结构。
1.CPU核心:8051单片机核心包括中央处理器(CPU)和一些相关模块,主要包括ALU(算术逻辑单元)和控制单元。
ALU负责执行算术和逻辑运算,而控制单元负责指令译码和控制指令执行。
2.存储器:8051单片机具有多种类型的存储器,包括ROM、RAM和特殊功能寄存器。
- ROM(Read Only Memory):8051单片机的ROM存储器用于存储程序指令,其容量通常为4KB至64KB,并且不可编程。
程序储存在ROM中,在运行时从中读取指令并执行。
- RAM(Random Access Memory):8051单片机的RAM存储器用于存储变量和临时数据。
其容量通常从XDATA的8051型号开始,为128B至256B。
与ROM不同,RAM可读可写,并且容易被程序修改。
-特殊功能寄存器(SFR):8051单片机的特殊功能寄存器是一种特殊的存储器类型,用于存储特定功能的控制和状态信息。
例如,P0(口0)用于控制和监测微控制器的输入/输出。
3.端口:8051单片机包含4个8位双向并行端口(P0-P3),用于与外部设备进行通信。
每个端口都可以配置为输入或输出,并且具有输入缓冲器和输出驱动器。
4. 定时器/计数器:8051单片机具有两个16位定时器/计数器(Timer/Counter 0和Timer/Counter 1)。
它们可用于测量时间间隔、生成定时中断和计数外部事件。
5.串行通信接口:8051单片机具有一个串行通信接口(UART),用于与外部设备进行串行数据传输。
UART可以通过异步串行通信或同步串行通信来传输数据。
6.中断控制器:8051单片机具有中断控制器,用于处理外部中断和内部中断。
四川工程职业技术学院单片机应用技术课程电子教案Copyright © 第讲58051及P89V51RD2单片机的时钟、时序和复位本讲主要内容5-1. 标准80C51的时钟电路、时间单位与时序5-2. P89V51RD2单片机的时钟电路、时间单位与时序5-3. P89V51RD2单片机的复位与复位电路时钟电路——用于产生供单片机各部分同步工作的时钟信号方法1:用石英晶体振荡器方法2:从外部输入时钟信号(80C51)80C51振荡器C1C2CYS80C51悬空外部时钟信号XTAL1XTAL2XTAL2XTAL1单片机内部的时间单位S1S2S3S4S5S6机器周期T CY分频器振荡器晶振周期时钟周期(S 状态)80C51P1P2ALE 信号单片机内部的时间单位✧振荡频率f osc = 石英晶体频率或外部输入时钟频率振荡周期= 振荡频率的倒数✧机器周期机器周期是单片机应用中衡量时间长短的最主要的单位在多数51系列单片机中:1机器周期= 12×1/ fosc✧指令周期——执行一条指令所需要的时间单位:机器周期51单片机中:单周期指令、双周期指令、四周期指令单片机内部的时间单位课堂练习:如果某单片机的振荡频率f=12MHz,则:osc振荡周期=S=mS=uS;机器周期=uS;已知乘法指令“MUL AB”是一条4周期指令,则执行这条指令需要uS;加法指令“ADD A,#01H”是单周期指令,那么1S内该单片机可以进行次加法运算。
单片机内部的时序单片机执行各种操作时,CPU都是严格按照规定的时间顺序完成相关的工作,这种时间上的先后顺序成为时序。
✧单周期指令的操作时序S1S2S3S4S5S61个机器周期P1P2ALE读操作码空读S1S2S3S4S5S61个机器周期P1P2ALE读操作码读第二字节单字节指令双字节指令单片机内部的时序✧双周期指令的操作时序S1S2S3S4S5S6第1机器周期P1P2ALE读操作码空读3次S1S2S3S4S5S6第2机器周期时钟电路✧时钟电路参数:频率范围:0~40MHz C1、C2:20~30pF80C51振荡器C1C2CYSXTAL2XTAL1P89V51RD2的两种时钟模式✧X1模式✧X2模式器件含有一个时钟加倍选项,可以加速器件的运行速度。
单片机的时序在电子世界中,单片机就像是一个小巧而强大的智慧核心,掌控着各种设备的运行。
而要理解单片机如何准确无误地执行任务,关键就在于掌握它的时序。
什么是单片机的时序呢?简单来说,时序就是单片机在执行指令和操作外部设备时,各种信号在时间上的先后顺序和持续时间。
就好比我们日常生活中的流程,先做什么,后做什么,每个步骤持续多久,都有一定的规律和节奏。
为了更清晰地理解,我们先来看看单片机的内部结构。
单片机内部有中央处理器(CPU)、存储器、输入输出端口等部分。
这些部分之间的协同工作,都依赖于精确的时序控制。
当我们给单片机下达一个指令时,它并不是立刻就能执行的。
首先,指令会被存储在存储器中,然后 CPU 按照一定的节奏从存储器中读取指令,并进行解码和执行。
这个节奏就是由时钟信号来控制的。
时钟信号就像是单片机的心跳,它以固定的频率跳动,决定了单片机每一步操作的时间间隔。
比如,如果时钟频率是 10MHz,那就意味着每秒钟单片机内部会进行 1000 万次的操作。
单片机在与外部设备进行通信时,时序同样至关重要。
以常见的串口通信为例,发送和接收数据都有严格的时序要求。
发送方要按照特定的时间间隔发送数据位,接收方也要在准确的时刻进行采样,才能保证数据的正确传输。
再来说说单片机对存储器的读写操作。
无论是读取程序存储器中的指令,还是读写数据存储器中的数据,都有明确的时序规定。
比如,在读取数据时,需要先发出读信号,然后等待一定的时间,才能获取到稳定有效的数据。
单片机的时序还与指令的执行周期有关。
不同的指令可能需要不同的执行时间。
有些简单的指令可能在一个时钟周期内就能完成,而复杂的指令可能需要多个时钟周期。
在实际的应用中,如果时序出现问题,可能会导致各种错误。
比如,数据传输错误、设备无法正常工作,甚至整个系统崩溃。
为了确保时序的准确性,在设计单片机系统时,我们需要仔细考虑时钟源的选择和配置。
时钟源可以是外部晶体振荡器,也可以是内部的 RC 振荡器。
单片机的四种基本时序单位一、时钟周期时钟周期是单片机中最基本的时序单位,它是由晶振产生的稳定的方波信号驱动的。
在一个完整的时钟周期内,单片机的所有操作都会被执行完毕。
时钟周期包括上升沿和下降沿两个阶段,每个阶段都有相应的操作完成。
时钟周期的长短决定了单片机的工作速度,一般用Hertz(赫兹)来表示。
常见的单片机工作频率有8MHz、16MHz等。
时钟周期越短,单片机的运算速度越快,但也会增加功耗和噪声。
二、机器周期机器周期是指单片机执行一条指令所需要的时间。
每个机器周期包含若干个时钟周期,具体数量取决于单片机的架构和指令集。
不同的指令需要的机器周期数不同,一般来说,简单的指令需要较少的机器周期,而复杂的指令需要较多的机器周期。
例如,一条简单的加法指令可能只需要一个机器周期,而一条复杂的循环指令可能需要多个机器周期。
机器周期的长短决定了单片机的指令执行速度,它与时钟周期有一定的关系。
在一个机器周期内,单片机可以执行多个时钟周期的操作,因此机器周期的长短取决于时钟周期的倍数。
三、指令周期指令周期是指单片机执行一条指令所需要的时间,它由若干个机器周期组成。
在一个指令周期内,单片机完成指令的取指、执行、访存和写回等操作。
指令周期的长短取决于机器周期的数量,不同的指令可能需要不同数量的机器周期。
指令周期的长短决定了单片机的指令执行速度,它与机器周期的数量有关。
在一个指令周期内,单片机可以执行多个机器周期的操作,因此指令周期的长短取决于机器周期的数量。
四、机器指令周期机器指令周期是指单片机执行一条机器指令所需要的时间,它由若干个指令周期组成。
在一个机器指令周期内,单片机完成机器指令的取指、执行、访存和写回等操作。
机器指令周期的长短取决于指令周期的数量,不同的机器指令可能需要不同数量的指令周期。
机器指令周期的长短决定了单片机的指令执行速度,它与指令周期的数量有关。
在一个机器指令周期内,单片机可以执行多个指令周期的操作,因此机器指令周期的长短取决于指令周期的数量。
计算机工作时,是在统一的时钟脉冲控制下一拍一拍地进行的。
这个脉冲是由单片机控制器中的时序电路发出的。
单片机的时序就是CPU在执行指令时所需控制信号的时间顺序,为了保证各部件间的同步工作,单片机内部电路应在唯一的时钟信号下严格地控时序进行工作,在学习51单片机的时序之前,我们先来了解下时序相关的一些概念。
既然计算机是在统一的时钟脉冲控制下工作的,那么,它的时钟脉冲是怎么来的呢?要给我们的计算机CPU提供时序,就需要相关的硬件电路,即振荡器和时钟电路。
我们学习的8051单片机内部有一个高增益反相放大器,这个反相放大器的作用就是用于构成振荡器用的,但要形成时钟,外部还需要加一些附加电路。
8051单片机的时钟产生有以下两种方法:1. 内部时钟方式:利用单片机内部的振荡器,然后在引脚XTAL1(18脚)和XTAL2(19脚)两端接晶振,就构成了稳定的自激振荡器,其发出的脉冲直接送入内部时钟电路,外接晶振时,晶振两端的电容一般选择为30PF左右;这两个电容对频率有微调的作用,晶振的频率范围可在1.2MHz-12MHz之间选择。
为了减少寄生电容,更好地保证振荡器稳定、可靠地工作,振荡器和电容应尽可能安装得与单片机芯片靠近。
2. 外部时钟方式:此方式是利用外部振荡脉冲接入XTAL1或XTAL2。
HMOS和CHMOS单片机外时钟信号接入方式不同,HMOS型单片机(例如8051)外时钟信号由XTAL2端脚注入后直接送至内部时钟电路,输入端XTAL1应接地。
由于XTAL2端的逻辑电平不是TTL的,故建议外接一个上接电阻。
对于CHMOS型的单片机(例如80C51),因内部时钟发生器的信号取自反相器的输入端,故采用外部时钟源时,接线方式为外时钟信号接到XTAL1而XTAL2悬空。
如下图外接时钟信号通过一个二分频的触发器而成为内部时钟信号,要求高、低电平的持续时间都大于20ns,一般为频率低于12MHz的方波。
片内时钟发生器就是上述的二分频触发器,它向芯片提供了一个2节拍的时钟信号。
单片机的工作时序
单片机是在时钟脉冲的控制下工作的,有的电路来一个时钟脉冲就可完成一次工作,而有的电路需要来多个时钟脉冲才能完成一次工作。
为了方便分析工作时序,单片机中规定了几种周期:时钟周期、状态周期、机器周期和指令周期。
1.时钟周期
时钟周期是指振荡器产生的时钟信号周期,也即时钟振荡频率的倒数。
例如:单片机时钟信号的频率为12MHz,那么时钟周期就为1/12μs。
2. 状态周期
状态周期由两个时钟周期组成,它分为P1节拍和P2节拍,第1个时钟周期为P1节拍,第2个时钟周期为P2节拍。
3.机器周期
单片机在执行指令时,通常把执行过程划分成几个基本的操作,完成一个基本操作所需要的时间称为机器周期。
一个机器周期由6个状态周期,也即12个时钟周期组成。
4.指令周期
指令周期是指执行一条指令所需要的全部时间,它通常为1~4个机器周期。
例如,单片机在执行“MOV A,#C3H”指令时,需要2个机器周期,即24个时钟周期,若时钟周期为1/
12μs,那么执行该指令需要2μs。