80C51单片机指令的取指、执行时序

发布者:LovingLife2023最新更新时间:2013-05-07 来源: 21IC关键字:80C51  单片机  执行时序 手机看文章 扫描二维码
随时随地手机看文章

使用ALE信号作为低8位地址的锁存控制信号。ALE接到外部锁存器时,高电平期间,51的p0输出地址,低电平时锁存器将地址锁存,在ALE低电平时,(PSEN为低)p0口可以传输数据(指令),这样就可以地址/数据复用了。

以PSEN信号作为扩展程序存储器的读选通信号,在读外部ROM是PSEN是低电平有效,以实现对ROM 的读操作。

以EA信号作为内外程序存储器的选择控制信号,当其为低电平时,对ROM的读操作限定在外部的程序存储器,当其为高电平时, 对ROM的读操作是从内部存储器开始的,并可延至外部程序存储器.

由RD和WR信号作为扩展数据存储器和I/O口的读选通、写选通信号。

EA信号是表示是当前指令是读内,还是外存储器的控制信号。如:当选用无片内存储器的单片机,或者不打算用片内存储器时,EA必须接低电平,此外,片外程序存储器的起始地址应该安排在片内存储器之后。

RD和WR信号就相对好理解,就是当读数据时(不分内外、RAM、ROM)它就有效。WR也是这样的。

80C51单片机指令的取指、执行时序

现按4类指令介绍CPU时序。因为CPU工作的过程就是取指令与执行指令的过程,所以CPU必须先取出指令,然后才能执行指令。

1.双字节单周期指令

由于双字节单周期指令必须在一个周期内取机器码二次,所以必须在一个机器周期内安排二次读操作码的操作,分别发生在S1P2与S4P2。在S1P2读入机器码74并送入指令寄存器IR,在S4P2读入数据03送入累加器A,即读2取2。在指令的执行过程中,P0口要分时传送地址与数据,因此当操作码的地址从P0口输出后,必须发地址锁存信号ALE给74LS373锁存器,将地址锁存在74LS373内,腾出P0口读入机器码74。在取数据03时同样要发ALE信号。因此,在一个机器周期内地址锁存信号二次有效,见80C51时序图2-13。

2.单字节单周期指令

对单字节单周期指令,由于操作码只有一个字节,因此第一次读操作码有效,而第二次读的操作码将被丢弃,即:读1丢1,且程序计数器PC不加1。

3.单字节双周期指令

对单字节双周期指令,由于操作码只有一个字节,而执行时间长达2个机器周期,因此除第1次读操作码有效外,其余三次读的操作码均被放弃,即:读1丢3。

4.访问外部存储器指令MOVX

执行访问外部存储器指令MOVX时,首先从程序存储器中取出指令,然后从外部数据存储器中取出数据,因此该指令执行时序图与前三类指令不同。由于MOVX是单字节双周期指令,所以在取指令阶段(即第一个机器周期的S1P1到S4P2)是读1丢1,而在执行指令读数据阶段(即第一个机器周期的S5到第二个机器周期的S3)所完成的操作如下:

(1)先将外部数据存储单元的地址ADDR由DPTR从P0与P2口输出,即时序图中的S5P1到S6P2阶段。并在S4P2到S5P2阶段,发ALE信号将地址锁存。

(2)在第二个机器周期S1P2到S2P2内取消ALE与程序选通信号PSEN (即取消取指操作),使P0口专门用于传送数据。同时发读信号,通过P0口将外部数据存储单元中的数据传送到累加器A中。即:时序图的S6P2到S4P1阶段。[page]

(3)由于锁存的地址为外部数据存储单元的地址,所以在第二个机器周期S4取消取指令的操作,即:不再发程序选通信号PSEN 。

注:由于执行MOVX指令时,在第二个机器周期中要少发一次ALE信号,所以ALE的频率是不稳定的。

关键字:80C51  单片机  执行时序 引用地址:80C51单片机指令的取指、执行时序

上一篇:51单片机 P0口工作原理详细讲解
下一篇:单片机复位电路简述

推荐阅读最新更新时间:2024-03-16 13:23

基于单片机的交通灯设计
一、 系统功能要求: 1. 设计任务在一十字路口设置交通灯,并用单片机对其进行合理的控制。 时间方向 控制要求 白天 东西 绿灯 黄灯 红灯 南北 红灯 绿灯 黄灯 晚上 东西 黄灯 南北 红灯 2.总体设计方案现在流行的一种设计为两主干线相交的十字路。本设计采用一主干道(南北方向),一从干道(东西方向)的路口,即主干道的通行时间为从干道的2倍。在正常情况下,两干道的交通灯按图1进行转换,并以倒计数的方式将剩余时间显示在每个干道对应的两位LED上;另发挥部分为当出现紧急情况时,路口的交通灯全为红灯,紧急情况解除时,恢复到原来的状态。 二、 总体设计方案提示: 1.假设一个十字路口为东西南北走向。初始状态0为东西红灯,南北红
[单片机]
基于<font color='red'>单片机</font>的交通灯设计
以STM8单片机为例,该如何实现Bootloader呢?
这次出差是为了升级程序解决Bug,用户已经将产品封装起来,无法开盖,只能使用CAN总线来更新程序,用Bootloader实现。其实就是通过上位机把.bin/hex文件以CAN通讯的方式发送给单片机并存储在规定的Flash中。这个过程与手机端更新APP类似。 以STM8单片机为例,该如何实现Bootloader呢?今天和大家分享一下。 01 什么是Bootloader Bootloader是一段用于更新自身应用软件并独立运行的代码,常被用于升级产品和修复产品bug。STM8单片机如果要下载hex文件的话需要通过STVP和STLINK来实现,单片机的引脚SWIM就是下载接口。如果产品在用户端被封装好了,无法通过SWIM来下载该
[单片机]
以STM8<font color='red'>单片机</font>为例,该如何实现Bootloader呢?
基于单片机控制的数控机床面板智能处理单元
1 引言   在数控机床中,手动操作面板总是必不可少的,其特点是1.有些输入量是互斥的,不允许误操作,由机械的互锁关系来保证要求;2.键的通/断用电平触发不同状态,而不是用沿触发不同状态;3.允许多个状态同时输入并可靠地做出相应的反应;4.能对设备当前状态进行必要的提示,如使用信号灯、发光二级管或液晶显示屏。现有的设计大多将手动操作面板的输入/输出作为开关量I/O的一部分,统一由一台内置的或外置的可编程控制器(PLC)进行控制。数控机床生产厂家根据自己机床的工艺特点,购买数控系统,经过二次开发,形成工艺性能和操作互不相同的数控机床产品。二次开发的工作量绝大部分在于开关量I/O的设计,而其中又有60%以上的工作是根据工艺性能与操作
[单片机]
基于<font color='red'>单片机</font>控制的数控机床面板智能处理单元
基于MSP430FF449D单片机低功耗、智能化的电子血压计设计
一、血压测量原理 血压的概念就是血液流经血管壁时的压力。由心脏出来的血液,需要有推力,才能绕行身体一周,心脏就是借着不停的收缩、放松,将血液推送前进。血压有两种,一是收缩压:是当心脏收缩将血液打到血管所测得的血压,另一是舒张压:是心脏在不收缩所测得的压力。当袖带的压力等于血压时,血液开始可以流通而产生所谓的袖带声,这时候表现为收缩压,从这一刻开始做记录,直到最后袖带声音消失的时候,记录此点即为舒张压。 二、电子血压计工作原理 系统框图如图1所示。系统由恒流源、压力传感器、放大电路、带通滤波、二次放大、血压脉冲触发、液晶驱动器、键盘语音电路和单片机组成。 图1电子血压计原理图 单片机主要原理为:PWM输出控制气泵充气漏气调整
[单片机]
基于MSP430FF449D<font color='red'>单片机</font>低功耗、智能化的电子血压计设计
恒流充电与放电电池测试仪(msp430单片机主控)
电路原理图如下: (1)充电电流精度测试 测试方法:输入接直流稳压电源,使 U2 = 30V,对电池进行恒流充电,按键 0.05A步进值调节电流 I10,用万用表测量实际充电电流 I1,显示电流值 I11,结果 如表1所示,可以计算出电流控制精度 1 ,显示精度 2 。满足题目基础部分要 求。 表1 充电电流控制精度测试表 I10/A 1.0 1.25 1.5 1.65 2.0 I1/A 0.993 1.247 1.505 1.655 2.008 I11/A 1.0 1.25 1.5 1.65 2.005 1 /% 0.7 0.24 0.33 0.3 0.4 2 /% 0 0 0 0 0.25 (2)充电电流变化率测试 测试
[单片机]
恒流充电与放电电池测试仪(msp430<font color='red'>单片机</font>主控)
盛群Flash type Voice MCU : HT83F02 – 程序重复烧录,又快又有弹性
有别于以往采用OTP方式, 盛群半导体推出Flash type语音IC HT83F02。一般的OTP型语音IC虽然可以实时烧录,但是烧录完之后就无法再更改程序内容。HT83F02不但可以重复烧录程序,甚至IC焊上电路板之后仍然可以透过ICP修改程序内容, 透过SPI接口修改外挂Flash Memory的语音内容。况且愈来愈多的家电产品需要加入语音功能,尤其多国语言的需求常常让客户困扰于变换语音内容。以Flash memory为主体的HT83F02变换程序非常容易,可以解决过去以来的多国语言与生产库存的困扰。外挂标准的SPI Flash Memory,客户可根据不同的应用情况,弹性地选择不同容量的SPI Flash Memory
[单片机]
MCU原型板瞄准机器人与物联网应用
预先认证的在场感测器和智慧插座解决方案运用Silicon Labs多重协定Wireless Gecko技术和ZigBee网状网路协定堆叠 芯科科技(Silicon Labs)宣布针对家庭自动化市场推出两种最新的无线在场感测器(occupancy sensor)和智慧插座参考设计,这些物联网(IoT)连网装置解决方案使家庭生活变得更安全、方便并且高效节能。 FCC和UL预先认证的参考设计,为基于Silicon Labs可靠的ZigBee “Golden Unit” Home Automation (HA 1.2)软体协定堆叠和多重协定Wireless Gecko系统单晶片(SoC)系列而建构之功能丰富、具备未来性的连网家庭产品提供了
[网络通信]
基于8031单片机的工业顺序控制
掌握工业顺序控制程序的简单编程,中断的使用。 实验内容 1.实验原理图: 2.实验内容 8032的P1.0—P1.6控制注塑机的七道工序,现模拟控制七只发光二极管的点亮,高电平有效,设定每道工序时间转换为延时,P3.4为开工启动开关,低电平启动。P3.3为外故障输入模拟开关,P3.3为0时不断告警。P1.7为报警声音输出,设定6道工序只有一位输出,第七道工序三位有输出。 3、实验说明 实验中用外部中断0,编中断服务程序的关键是: (1)保护进入中断时的状态,并在退出中断之前恢复进入状态。 (2)必须在中断程序中设定是否允许中断重入,即设置EX0位。 一般中断程序进入时应保护PSW、ACC以及中断程序使用但非其专用的寄存器,本
[单片机]
基于8031<font color='red'>单片机</font>的工业顺序控制
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
502 Bad Gateway

502 Bad Gateway


openresty
设计资源 培训 开发板 精华推荐

502 Bad Gateway

502 Bad Gateway


openresty
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

502 Bad Gateway

502 Bad Gateway


openresty
502 Bad Gateway

502 Bad Gateway


openresty
502 Bad Gateway

502 Bad Gateway


openresty
随便看看
    502 Bad Gateway

    502 Bad Gateway


    openresty
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
502 Bad Gateway

502 Bad Gateway


openresty