当前位置:文档之家› 8086存储器组织

8086存储器组织

AT89C51单片机的基本结构和工作原理

AT89C51单片机的主要工作特性: ·内含4KB的FLASH存储器,擦写次数1000次; ·内含28字节的RAM; ·具有32根可编程I/O线; ·具有2个16位可编程定时器; ·具有6个中断源、5个中断矢量、2级优先权的中断结构; ·具有1个全双工的可编程串行通信接口; ·具有一个数据指针DPTR; ·两种低功耗工作模式,即空闲模式和掉电模式; ·具有可编程的3级程序锁定定位; AT89C51的工作电源电压为5(1±0.2)V且典型值为5V,最高工作频率为24MHz. AT89C51各部分的组成及功能: 1.单片机的中央处理器(CPU)是单片机的核心,完成运算和操作控制,主要包括运算器和控制器两部分。

(1)运算器 运算器主要用来实现算术、逻辑运算和位操作。其中包括算术和逻辑运算单元ALU、累加器ACC、B寄存器、程序状态字PSW和两个暂存器等。 ALU是运算电路的核心,实质上是一个全加器,完成基本的算术和逻辑运算。算术运算包括加、减、乘、除、增量、减量、BCD码运算;逻辑运算包括“与”、“或”、“异或”、左移位、右移位和半字节交换,以及位操作中的位置位、位复位等。 暂存器1和暂存器2是ALU的两个输入,用于暂存参与运算的数据。ALU的输出也是两个:一个是累加器,数据经运算后,其结果又通过内部总线返回到累加器;另一个是程序状态字PSW,用于存储运算和操作结果的状态。 累加器是CPU使用最频繁的一个寄存器。ACC既是ALU处理数据的来源,又是ALU运算结果的存放单元。单片机与片外RAM或I/O扩展口进行数据交换必须通过ACC来进行。 B寄存器在乘法和除法指令中作为ALU的输入之一,另一个输入来自ACC。运算结果存于AB寄存器中。 (2)控制器 控制器是识别指令并根据指令性质协调计算机内各组成单元进行工作的部件,主要包括程序计数器PC、PC增量器、指令寄存器、指令译码器、定时及控制逻辑电路等,其功能是控制指令的读入、译码和执行,并对指令执行过程进行定时和逻辑控制。AT89C51单片机中,PC是一个16位的计数器,可对64KB程序存储器进行寻址。复位时PC的内容是0000H. (3)存储器 单片机内部的存储器分为程序存储器和数据存储器。AT89C51单片机的程序存储器采用4KB的快速擦写存储器Flash Memory,编程和擦除完全是电器实现。 (4)外围接口电路 AT89C51单片机的外围接口电路主要包括:4个可编程并行I/O口,1个可编程串行口,2个16位的可编程定时器以及中断系统等。 AT89C51的工作原理: 1.引脚排列及功能 AT89C51的封装形式有PDIP,TQFP,PLCC等,现以PDIP为例。 (1)I/O口线 ·P0口 8位、漏极开路的双向I/O口。 当使用片外存储器及外扩I/O口时,P0口作为低字节地址/数据复用线。在编程时,P0口可用于接收指令代码字节;程序校验时,可输出指令字节。P0口也可做通用I/O口使用,但需加上拉电阻。作为普通输入时,应输出锁存器配置1。P0口可驱动8个TTL负载。 ·P1口 8位、准双向I/O口,具有内部上拉电阻。 P1口是为用户准备的I/O双向口。在编程和校验时,可用作输入低8位地址。用作输入时,应先将输出锁存器置1。P1口可驱动4个TTL负载。 ·P2 8位、准双向I/O口,具有内部上拉电阻。 当使用外存储器或外扩I/O口时,P2口输出高8位地址。在编程和校验时,P2口接收高字节地址和某些控制信号。 ·P3 8位、准双向I/O口,具有内部上拉电阻。 P3口可作为普通I/O口。用作输入时,应先将输出锁存器置1。在编程/校验时,P3口接收某些控制信号。它可驱动4个TTL负载。 (2)控制信号线

80C51单片机存储器的扩展

程设计任务书 机械工程学院学院机制1211 班学生张会利-39号 课程设计题目: 单片ROM扩展 一、课程设计工作日自 2015 年 1 月 19 日至 2015 年 2 月 23 日 二、同组学生:张会利 三、课程设计任务要求(包括课题来源、类型、目的和意义、基本要求、完成时间、主要参考资 料等): 1、目的及意义 (1)巩固和深化《单片机原理及应用》课程的理论知识,培养,分析、解决实际问题的能力。(2)掌握单片机基本运用技术及汇编语言的基本方法,能根据题目要求确定设计思路、绘制流程图、编制并调试汇编语言程序,得出结果。 2、主要内容 用一片Intel2732为80C51单片机扩展一个4KB的外部程序存储器,要求使用73LS138译码器,地址范围为A000H~AFFFH。请连线并写明扩展步骤。 3、基本要求 (1)分析题目,写出详细分析过程。 (2)绘制工作流程图。 (3)编制程序,画出硬件线路图。 (4)上机调试程序,运行结果。 (5)编写设计说明书,包括1—4个步骤的内容。 (6)答辩。 4、主要参考资料 单片机基础及应用,赵巍,冯娜,马苏常,刘玉山等,清华大学出版社,2009年指导教师签字:教研室主任签字:

程序设计说明书 (一)芯片简介 1.2732简介: 2732是容量为4k×8位(4KB)。采用单一+5V供电,最大静态工作电流100mA, 电流35mA出时间最大为250ns. 2732的封装形式为DIP24,管脚如图所示。 ●A0~A11 :12条地址线,表示有212个地址单元 ●O0~O7 :8条数据线,表示地址单元字长8位 ●CE :片选控制输入端,低电平有效 ●OE/Vpp :双功能管脚,低电平时,允许2732输出数据 ●Vcc :工作电平+5V ●GND :芯片接地端 2.74LS373简介: 74LS373是带三态缓冲输出的8D锁存器,由于单片机的三片总线结构中,数据线与地址线的低8位公用P0口,因此必须用地址所存器将地址信号和数据信号区分开。74L373的锁存控制端G直接与单片机的锁存控制信号和数据信号ALE相连,在AEL的下降沿锁存低8位地址。

单片机的存储组织和结构认识

单片机的存储组织和结构认识 一.51单片机为例 1、一个8位的微处理器CPU。 2、片内数据存储器(RAM128B/256B):用以存放可以读 /写的数据,如运算的中间结果、最终结果以及欲显示 的数据等。 3、片内4kB程序存储器Flash ROM(4KB):用以存放 程序、一些原始数据和表格。 4、四个8位并行I/O(输入/输出)接口P0~P3:每个口 可以用作输入,也可以用作输出。 5、两个或三个定时/计数器: 每个定时/计数器都可以 设置成计数方式,用以对外部事件进行计数,也可 以设置成定时方式,并可以根据计数或定时的结果实现计算机控制 6、一个全双工UART的串行I/O口:可实现单片机与单片机或其它微机之间串行通信。 7、片内振荡器和时钟产生电路:但需外接晶振和电容。 8、五个中断源的中断控制系统。 9、具有节电工作方式:休闲方式及掉电方式。 二、结构:由中央处理单元(CPU)、存储器(ROM及RAM)和I/O接口组成。89C51单片机内部结构如图所示: 下面介绍的是mcs-51 MCS-51单片机存储器的配置特点 ①内部集成了4K的程序存储器ROM; ②内部具有256B的数据存储器RAM; ③可以外接64K的程序存储器ROM和数据 存储器RAM。 三、从物理结构的角度讲 51单片机的存储系统可以分为四个存储空间:既片内 ROM,RAM和片外ROM、RAM。 从逻辑上讲(既编程的角度),51单片机的存储系统实际 上分为三个存储空间。 1. 片内数据存储器RAM; 2. 片外数据存储器RAM; 3. 片内或外的程序存储器ROM(由EA电平决定)。 物理结构: 1.程序存储器ROM用于存放程序、常数或表格。 2.在51单片机中,由引脚/EA 上的电平选择内、外 ROM:EA=1时,CPU执行片内的4KROM中的程序; EA=0 时,CPU选择片外ROM中的程序。 3.无论是使用片内还是使用片外ROM,程序的起始地 址都是从ROM的0000H单元开始。 4.尽管系统可以同时具备片内ROM和外部ROM,但是 在一般正常使用情况下,通过/EA的设定来选择其一 (或者使用内部ROM,或者使用外部ROM)。 5.如果EA=1(执行片内程序存储器中程序时):如果程序

51单片机大容量数据存储器的扩展

郑州航空工业管理学院 《单片机原理与应用》 课程设计说明书 10 级自动化专业 1006112 班级 题目51单片机大容量数据存储器的系统扩展姓名杨向龙学号100611234 指导教师王义琴职称讲师 二О一三年六月十日

目录 一、51单片机大容量数据存储器的系统扩展的基本原理 (4) 二、设计方案 (4) 三、硬件的设计 (5) 3.1 系统的硬件构成及功能 (5) 3.2硬件的系统组成 (5) 3.2.1、W241024A (5) 3.2.2、CPLD的功能实现 (5) 3.2.3、AT89C52简介 (6) 3.2.4、SRAM的功能及其实现 (9) 3.3、基本单片机系统大容量数据存储器系统扩展 (9) 五、结论 (13) 六、参考资料 (13)

51单片机大容量数据存储器的系统扩展 摘要:在单片机构成的实际测控系统中,仅靠单片机内部资源是不行的,单片 机的最小系统也常常不能满足要求,因此,在单片机应用系统硬件设计中首先要解决系统扩展问题。51单片机有很强的外部扩功能, 传统的用IO口线直接控制大容量数据存储器的片选信号的扩展系统存在运行C51编译的程序时容易死机的缺点。文中介绍了一种改进的基于CPLD的51系列单片机大容量数据存储器的扩展方法,包括硬件组成和软件处理方法。 关键字:W241024A、CPLD、AT89C52、SRAM 一、51单片机大容量数据存储器的系统扩展的基本原理 MCS-51 单片机系统扩展时,一般使用P0 口作为地址低8位(与数据口分时复用),而P2口作为地址高8位,它共有16根地址总线,最大寻址空间为64KB。但在实际应用中,有一些特殊场合,例如,基于单片机的图像采集传输系统,程控交换机话单的存储等,需要有大于64KB 的数据存储器。 二、设计方案 在以往的扩展大容量数据存储器的设计中,一般是用单片机的IO口直接控制大容量数据存储器的片选信号来实现,但是这种设计在运行以C51编写的程序(以LARGE 方式编译)时往往会出现系统程序跑飞的问题,尤其是在程序访问大容量数据存储器(如FLASH)的同时系统产生异常(如中断),由于此时由IO 口控制的片选使FLASH 被选中而SRAM 无法被选中,堆栈处理和函数参数的传递无法实现从而导致程序跑飞的现象。文章介绍一种基于CPLD 的大容量数据存储器的扩展系统,避免了上述问题的产生,提高了扩展大容量数据存储器系统的可靠性。该系统MCU 采用89C52,译码逻辑的实现使用了一片EPM7128 CPLD 芯片,系统扩展了一片128K 的SRAM,一片4M 字节的NOR FLASH,以上芯片均为5V 供电。

51单片机基础知识及期末复习

51单片机简答题部分(经典) 1、什么叫堆栈? 答:堆栈是在片内RAM中专门开辟出来的一个区域,数据的存取是以"后进先出"的结构方式处理的。实质上,堆栈就是一个按照"后进先出"原则组织的一段内存区域。 2、进位和溢出? 答:两数运算的结果若没有超出字长的表示范围,则由此产生的进位是自然进位;若两数的运算结果超出了字长的表示范围(即结果不合理),则称为溢出。 3、在单片机中,片内ROM的配置有几种形式?各有什么特点? 答:单片机片内程序存储器的配置形式主要有以下几种形式:(1)掩膜(Msak)ROM型单片机:内部具有工厂掩膜编程的ROM,ROM中的程序只能由单片机制造厂家用掩膜工艺固 化,用户不能修改ROM中的程序。掩膜ROM单片机适合于 大批量生产的产品。用户可委托芯片生产厂家采用掩膜方法 将程序制作在芯片的ROM。 (2)EPROM型单片机:内部具有紫外线可擦除电可编程的只读存储器,用户可以自行将程序写入到芯片内部的EPROM 中,也可以将EPROM中的信息全部擦除。擦去信息的芯片 还可以再次写入新的程序,允许反复改写。 (3)无ROM型单片机:内部没有程序存储器,它必须连接程序存储器才能组成完整的应用系统。 无ROM型单片机价格低廉,用户可根据程序的大小来选择外接 程序存储器的容量。这种单片机扩展灵活,但系统结构较复 杂。 (4)E2ROM型单片机:内部具有电可擦除叫可编程的程序存储器,使用更为方便。该类型目前比较常用 (5)OTP(One Time Programmable)ROM单片机:内部具有一次可编程的程序存储器,用户可以在编程器上将程序写入片内程 序存储器中,程序写入后不能再改写。这种芯片的价格也较 低。 4、什么是单片机的机器周期、状态周期、振荡周期和指令周期?它们之间是什么关系? 答:某条指令的执行周期由若干个机器周期(简称M周期)构成,一个机器周期包含6个状态周期(又称时钟周期,简称S周期),而一个状态周期又包含两个振荡周期(P1和P2,简称P周期)。也就是说,指令执行周期有长有短,但一个机器周期恒等于6个状态周期或12个振荡周

MCS-51单片机存储器结构

MCS-51单片机在物理结构上有四个存储空间: 1、片内程序存储器 2、片外程序存储器 3、片内数据存储器 4、片外数据存储器 但在逻辑上,即从用户的角度上,8051单片机有三个存储空间: 1、片内外统一编址的64K的程序存储器地址空间(MOVC) 2、256B的片内数据存储器的地址空间(MOV) 3、以及64K片外数据存储器的地址空间(MOVX) 在访问三个不同的逻辑空间时,应采用不同形式的指令(具体我们在后面的指令系统学习时将会讲解),以产生不同的存储器空间的选通信号。 程序内存ROM 寻址范围:0000H ~ FFFFH 容量64KB EA = 1,寻址内部ROM;EA = 0,寻址外部ROM 地址长度:16位 作用:存放程序及程序运行时所需的常数。 七个具有特殊含义的单元是: 0000H ——系统复位,PC指向此处; 0003H ——外部中断0入口 000BH —— T0溢出中断入口

0013H ——外中断1入口 001BH —— T1溢出中断入口 0023H ——串口中断入口 002BH —— T2溢出中断入口 内部数据存储器RAM 物理上分为两大区:00H ~ 7FH即128B内RAM 和SFR区。 作用:作数据缓冲器用。 下图是8051单片机存储器的空间结构图 程序存储器 一个微处理器能够聪明地执行某种任务,除了它们强大的硬件外,还需要它们运行的软件,其实微处理器并不聪明,它们只是完全按照人们预先编写的程序而执行之。那么设

计人员编写的程序就存放在微处理器的程序存储器中,俗称只读程序存储器(ROM)。程序相当于给微处理器处理问题的一系列命令。其实程序和数据一样,都是由机器码组成的代码串。只是程序代码则存放于程序存储器中。 MCS-51具有64kB程序存储器寻址空间,它是用于存放用户程序、数据和表格等信息。对于内部无ROM的8031单片机,它的程序存储器必须外接,空间地址为64kB,此时单片机的端必须接地。强制CPU从外部程序存储器读取程序。对于内部有ROM的8051等单片机,正常运行时,则需接高电平,使CPU先从内部的程序存储中读取程序,当PC值超过内部ROM的容量时,才会转向外部的程序存储器读取程序。 当=1时,程序从片内ROM开始执行,当PC值超过片内ROM容量时会自动转向外部ROM空间。 当=0时,程序从外部存储器开始执行,例如前面提到的片内无ROM的8031单片机,在实际应用中就要把8031的引脚接为低电平。 8051片内有4kB的程序存储单元,其地址为0000H—0FFFH,单片机启动复位后,程序计数器的内容为0000H,所以系统将从0000H单元开始执行程序。但在程序存储中有些特殊的单元,这在使用中应加以注意: 其中一组特殊是0000H—0002H单元,系统复位后,PC为0000H,单片机从0000H 单元开始执行程序,如果程序不是从0000H单元开始,则应在这三个单元中存放一条无条件转移指令,让CPU直接去执行用户指定的程序。 另一组特殊单元是0003H—002AH,这40个单元各有用途,它们被均匀地分为五段,它们的定义如下: 0003H—000AH 外部中断0中断地址区。 000BH—0012H 定时/计数器0中断地址区。

51单片机外部存储器的使用

纠结了这么久,现在总算有点儿头绪了,先把它整理到这里先,有几点还是j经常被弄糊涂:地址和数据,地址/数据复用,地址的计算,总线的概念,执行指令跟脉冲的关系,哎呀呀,看来计算机组成和原理不看不行啊,得找个时间瞧瞧,过把瘾了解了解。。。 使用ALE信号作为低8位地址的锁存控制信号。以PSEN信号作为扩展程序存储器的读选通信号,在读外部ROM是PSEN是低电平有效,以实现对ROM 的读操作。 由RD和WR信号作为扩展数据存储器和I/O口的读选通、写选通信号。 ALE/PROG: 当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。 在FLASH编程期间,此引脚用于输入编程脉冲。 在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。 当访问外部存储器时,ALE作为锁存扩展地址的低8位字节的控制信号。 当访问外部数据存储器时,ALE以十二分之一振荡频率输出正脉冲,同时这个引脚也是EPROM编程时的编程脉冲输入端。] 当非访问外部数据存储器时,ALE以六分之一振荡频率固定输出正脉冲,8051一个机器周期=6个状态周期=12个振荡周期,若采用6MHz的晶体振荡器,则ALE会发出1MHz的固定的正脉冲。因此它可以用来做外部时钟或定时。如果我们把这个功能应用与实际,可能给我们的设计带来简化,降低生产成本。 ALE脚是在使用MOVX、MOVC指令时才会变成有效(这些指令都使用到外部RAM或ROM 的地址。这些指令都有一个特点:地址和数据分时出现在P0口)。使用C写程序时,要使用它有效,可用访问内部RAM地址的方法。如:uVariable=*((char *)0x12C),把0x12C地址的内容给uVariable变量。这个过程有效的脚为ALE、RD。 这个信号线的信号生成是MCU硬件电路实现的,不可以人工控制。 在某些内置TOM的MCU里,可以关闭ALE信号输出,以降低EMI。

51单片机中断系统程序实例

51单片机中断系统程序实例(STC89C52RC) 51单片机有了中断,在程序设计中就可以做到,在做某件事的过程中,停下来先去响应中断,做别的事情,做好别的事情再继续原来的事情。中断优先级是可以给要做的事情排序。 单片机的学习不难,只要掌握学习方法,学起来并不难。什么是好的学习方法呢,一定要掌握二个要点: 1. 要知道寄存器的英文全拼,比如IE = interrupt中断 不知道全拼,要去猜,去查。这样就可以理解为什么是这个名称,理解了以后就不用记忆了。 2. 每个知识点要有形像的出处 比如看到TF0,脑子里马上要形像地定位到TCON寄存器的某位 看到ET0, 马上要形像地定位到IE寄存器的第2位 https://www.doczj.com/doc/5716052830.html,/tuenhai/独家揭秘:形像是记忆的最大技巧。当人眼看到某个图时,是把视觉信号转化成电信号,再转化成人能理解的形像。当我们回忆形像时,就是在重新检索原先那个视觉信号,并放大。在学习过程中,不断练习检索、放大信号,我们的学习能力就会越来越强。 写程序代码时,也要把尽量把每行代码形像化。 51单片机内中断源 8051有五个中断源,有两个优先级。与中断系统有关的特殊功能寄存器有IE(中断允许寄存器)、IP(中断优先级控制寄存器)、中断源控制寄存器(如TCON、SCON的有关位)。51单片机的中断系统结构如下图(注意,IF0应为TF0):

8052有6个中断源,它比8051多一个定时器/计数器T2中断源。 8051五个中断源分别是: (1)51单片机外部中断源 8051有两个外部中断源,分别是INT0和INT1,分别从P3.2和P3.3两个引脚引入中断请求信号,两个中断源的中断触发允许由TCON的低4位控制,TCON的高4位控制运行和溢出标志。 INT0也就是Interrupt 0。在这里应该看一下你的51单片机开发板的电路原理图。离开形像的记忆是没有意义的。读到上面这句,你应该回忆起原理图上的连接。任何记忆都转化为形像,这是学习的根本原理,我们通过学习单片机要学会这种学习方法,会让你一辈子受益无穷。 TCON的结构如下图: (a)定时器T0的运行控制位TR0

8086存储器

8086存储器的偶体存储器与奇体存储器在8088系统中,8088 C P U有8根数据线,存储器一个基本单元(字节)也是8根数据线,存储器8位数据线与8088C P U的8位数据线对应连接,见下图 2.18所示: 图 2.188088存储器系统 在8086系统中,8086C P U有16根数据线,而存储器 一个基本单元(字节)有8根数据线,因此,存储器数据线与8086C P U数据线连接的方法,就与8088系统不同。通常采用将存储器系统分为偶体存储器和奇体存储器与8086C P U相连的方法。 按照8086C P U的规定,偶地址单元的数据在数据线低8位上传输,奇地址单元的数据在高8位数据线上传输。我们可以把1M字节存储器空间分成两个512K字节的存储体:一个存储体包含全部偶数地址的单元,叫偶体存储器;另一个存储体包含全部奇数地址单元,叫奇体存储器。偶

体存储器的8根数据线连接到系统数据总线低8位上,地 址线最低位用作偶体存储器的选择信号。奇体存储器的 8根数据线连接到系统数据总线高8位上,8086引腿用来作为奇体存储器的选择信号。如下图 2.19。 图 2.198086存储器系统 8086访问存储器的操作有以下4种情况: 1、8086C P U访问偶地址的字节单元时,C P U输出=0,选中偶体存储器,数据在数据总线的低8位上传输,需要一个总线周期完成。 2、8086C P U访问奇地址字节单元时,C P U输出=1、 =0,选中奇体存储器,数据在数据总线的高8位上传输,也只需要一个总线周期完成。 3、8086C P U访问偶地址开始的一个字单元时,该字单元由2个连续的字节单元组成。其中地址较低的一个字节必定来自偶体存储器,另一个地址较高的字节必定来自奇

MCS-51单片机存储器的扩展

第八章MCS-51单片机存储器的扩展 第一节MCS-51单片机存储器的概述 (一)学习要求 1、熟悉MCS-51 单片机的系统总线及系统总线扩展结构 2、掌握常用的片选方法:线选法和全地址译码法。 (二)内容提要 1、三总线的扩展方法 单片机内资源少,容量小,在进行较复杂过程的控制时,它自身的功能远远不能满足需要。为此,应扩展其功能。 MCS-51单片机的扩展性能较强,根据需要,可扩展。三总线是指地址总线、数据总线、控制总线。 1)地址总线 MCS-51 单片机地址总线宽度为16 位,寻址范围为64K。 地址信号:P0 作为地址线低8 位,P2 口作为地址线高8 位。 2)数据总线 MCS-51 单片机的数据总线宽度为8 位。 数据信号:P0 口作为8 位数据口,P0 口在系统进行外部扩展时与低8 位地址总线分时复用。 3)控制总线 主要的控制信号有/WR 、/RD 、ALE 、/PSEN 、/EA 等。 2、系统的扩展能力 MCS-51 单片机地址总线宽度为16 位,因此它可扩展的程序存储器和数据存储器的最大容量是64K(216)。 1)线选法 线选法就是将多余的地址总线(即除去存储容量所占用的地址总线外)中的某一根地址线作为选择某一片存储或某一个功能部件接口芯片的片选信号线。一定会有一些这样的地址线,否则就不存在所谓的“选片”的问题了。每一块芯片均需占用一根地址线,这种方法适用于存储容量较小,外扩芯片较少的小系统,其优点是不需地址译码器,硬件节省,成本低。缺点是外扩器件的数量有限,而且地址空间是不连续的。 2)全地址译码法 由于线选法中一根高位地址线只能选通一个部件,每个部件占用了很多重复的地址空间,从而限制了外部扩展部件的数量。采用译码法的目的是减少各部件所占用的地址空间,以增加扩展部件的数量。 3)译码器级连 当组成存储器的芯片较多,不能用线选法片选,又没有大位数译码器时,可采用多个小位数译码器级连的方式进行译码片选. 4)译码法与线选法的混合使用 译码法与线选法的混合使用时,凡用于译码的地址线就不应再用于线选,反之,已用于线选的地址线就不应再用于译码器的译码输入信号. (三)习题与思考题 1. 简要说明MCS-51 单片机的扩展原理。

51单片机汇编语言教程:18课单片机中断系统

51单片机汇编语言教程:第18课-单片机中断系统

MCS-51单片机中断系统的结构: 5个中断源的符号、名称及产生的条件如下。 INT0:外部中断0,由P3.2端口线引入,低电平或下跳沿引起。 INT1:外部中断1,由P3.3端口线引入,低电平或下跳沿引起。 T0:定时器/计数器0中断,由T0计满回零引起。 T1:定时器/计数器l中断,由T1计满回零引起。 TI/RI:串行I/O中断,串行端口完成一帧字符发送/接收后引起。整个中断系统的结构框图见下图一所示。

<51单片机中断系统结构> 如图所示,由与中断有关的特殊功能寄存器、中断入口、次序查询逻辑电路等组成,包括5个中断请求源,4个用于中断控制的寄存器IE、IP、ECON和SCON来控制中断类弄、中断的开、关和各种中断源的优先级确定。 中断请求源: (1)外部中断请求源:即外中断0和1,经由外部管脚引入的,在单片机上有两个管脚,名称为INT0、INT1,也就是P3.2、P3.3这两个管脚。在内部的TCON中有四位是与外中断有关的。IT0:INT0触发方式控制位,可由软件进和置位和复位,IT0=0,INT0为低电平触发方式,IT0=1,INT0为负跳变触发方式。这两种方式的差异将在以后再谈。IE0:INT0中断请求标志位。当有外部的中断请求时,这位就会置1(这由硬件来完成),在CPU响应中断后,由硬件将IE0清0。IT1、IE1的用途和IT0、IE0相同。(2)内部中断请求源TF0:定时器T0的溢出中断标记,当T0计数产生溢出时,由硬件置位TF0。当CPU响应中断后,再由硬件将TF0清0。TF1:与TF0类似。TI、RI:串行口发送、接收中断,在串行口中再讲解。2、中断允许寄存器IE在MCS-51中断系统中,中断的允许或禁止是由片内可进行位寻址的8位中断允许寄存器IE来控制的。见下表EAX 其中EA是总开关,如果它等于0,则所有中断都不允许。ES-串行口中断允许ET1-定时器1中断允许EX1-外中断1中断允许。ET0-定时器0中断允许EX0-外中断0中断允许。如果我们要设置允许外中断1,定时器1中断允许,其它不允许,则IE能是EAX 即8CH,当然,我们也能用位操作指令SETB EA SETB ET1SETB EX1 来实现它。3、五个中断源的自然优先级与中断服务入口地址外中断0:0003H定时器0:000BH 外中断1:0013H定时器1:001BH串行口:0023H它们的自然优先级由高到低排列。写到这里,大家应当明白,为什么前面有一些程序一始我们这样写: ORG0000HLJMP START ORG0030H START:。 这样写的目的,就是为了让出中断源所占用的向量地址。当然,在程序中没用中断时,直接从0000H开始写程序,在原理上并没有错,但在实际工作中最好不这样做。优先级:单片机采用了自然优先级和人工设置高、低优先级的策略,即能由程序员设定那些中断是高优先级、

MCS-51单片机存储器的扩展_百度文库.

第八章 MCS-51单片机存储器的扩展 第一节 MCS-51单片机存储器的概述 (一学习要求 1、熟悉 MCS-51 单片机的系统总线及系统总线扩展结构 2、掌握常用的片选方法:线选法和全地址译码法。(二)内容提要 1、三总线的扩展方法 单片机内资源少,容量小,在进行较复杂过程的控制时,它自身的功能远远不能满足需要。为此,应扩展其功能。 MCS-51单片机的扩展性能较强,根据需要,可扩展。三总线是指地 址总线、数据总线、控制总线。 1)地址总线 MCS-51 单片机地址总线宽度为 16 位,寻址范围为 64K。 地址信号: P0 作为地址线低 8 位, P2 口作为地址线高 8 位。 2)数据总线 MCS-51 单片机的数据总线宽度为 8 位。 数据信号: P0 口作为 8 位数据口, P0 口在系统进行外部扩展时与低 8 位地址总线分时复用。 3)控制总线 主要的控制信号有 /WR 、 /RD 、 ALE 、 /PSEN 、 /EA 等。

2、系统的扩展能力 MCS-51 单片机地址总线宽度为 16 位,因此它可扩展的程序存储器和数据存储器的最大容量是64K(216)。 1)线选法 线选法就是将多余的地址总线(即除去存储容量所占用的地址总线外)中的某一根地址线作为选择某一片存储或某一个功能部件接口芯片的片选信号线。一定会有一些这样的地址线,否则就不存在所谓的“选片”的问题了。每一块芯片均需占用一根地址线,这种方法适用于存储容量较小,外扩芯片较少的小系统,其优点是不需地址译码器,硬件节省,成本低。缺点是外扩器件的数量有限,而且地址空间是不连续的。 2)全地址译码法 由于线选法中一根高位地址线只能选通一个部件,每个部件占用了很多重复的地址空间,从而限制了外部扩展部件的数量。采用译码法的目的是减少各部件所占用的 地址空间,以增加扩展部件的数量。 3)译码器级连 当组成存储器的芯片较多,不能用线选法片选,又没有大位数译码器时,可采用多个小位数译码器级连的方式进行译码片选. 4)译码法与线选法的混合使用 译码法与线选法的混合使用时,凡用于译码的地址线就不应再用于线选,反之,已用于线选的地址线就不应再用于译码器的译码输入信号. (三)习题与思考题 1. 简要说明MCS-51 单片机的扩展原理。

51单片机存储器结构介绍

MCS-51单片机存储器结构 从用户的角度上,8051单片机有三个存储空间: 1、片内外统一编址的64K的程序存储器地址空间(MOVC) 2、256B的片内数据存储器的地址空间(MOV) 3、以及64K片外数据存储器的地址空间(MOVX) 在访问三个不同的逻辑空间时,应采用不同形式的指令,以产生不同的存储器空间的选通信号。 【程序内存ROM】 寻址范围:0000H ~ FFFFH 容量64KB EA = 1,寻址内部ROM; EA = 0,寻址外部ROM 地址长度:16位 作用:存放程序及程序运行时所需的常数。 七个具有特殊含义的单元是: 0000H ——系统复位,PC指向此处; 0003H ——外部中断0入口 000BH —— T0溢出中断入口 0013H ——外中断1入口 001BH —— T1溢出中断入口 0023H ——串口中断入口 002BH —— T2溢出中断入口 【内部数据存储器RAM】 物理上分为两大区:00H ~ 7FH(低128单元用户RAM 和高128单元SFR区) 作用:作数据缓冲器用。

一个微处理器能够聪明地执行某种任务,除了它们强大的硬件外,还需要它们运行的软件,其实微处理器并不聪明,它们只是完全按照人们预先编写的程序而执行之。那么设计人员编写的程序就存放在微处理器的程序存储器中,俗称只读程序存储器(ROM)。程序相当于给微处理器处理问题的一系列命令。其实程序和数据一样,都是由机器码组成的代码串。只是程序代码则存放于程序存储器中。 MCS-51具有64kB程序存储器寻址空间,它是用于存放用户程序、数据和表格等信息。(对于内部无ROM的8031单片机,它的程序存储器必须外接,空间地址为64kB,此时单片机的EA端必须接地。强制CPU从外部程序存储器读取程序。)对于内部有ROM的8051等单片机,正常运行时,则需接高电平,使CPU先从内部的程序存储中读取程序,当PC 值超过内部ROM的容量时,才会转向外部的程序存储器读取程序。 当=1时,程序从片内ROM开始执行,当PC值超过片内ROM容量时会自动转向外部ROM空间。 当=0时,程序从外部存储器开始执行,例如前面提到的片内无ROM的8031单片机,在实际应用中就要把8031的引脚接为低电平。 8051片内有4kB的程序存储单元,其地址为0000H—0FFFH,单片机启动复位后,程序计数器的内容为0000H,所以系统将从0000H单元开始执行程序。但在程序存储中有些特殊的单元,这在使用中应加以注意: 其中一组特殊是0000H—0002H单元,系统复位后,PC为0000H,单片机从0000H 单元开始执行程序,如果程序不是从0000H单元开始,则应在这三个单元中存放一条无条件转移指令,让CPU直接去执行用户指定的程序。 另一组特殊单元是0003H—002AH,这40个单元各有用途,它们被均匀地分为五段,它们的定义如下: 0003H—000AH 外部中断0中断地址区。 000BH—0012H 定时/计数器0中断地址区。 0013H—001AH 外部中断1中断地址区。 001BH—0022H 定时/计数器1中断地址区。 0023H—002AH 串行中断地址区。 可见以上的40个单元是专门用于存放中断处理程序 的地址单元,中断响应后,按中断的类型,自动转到各 自的中断区去执行程序。从上面可以看出,每个中断服 务程序只有8个字节单元,用8个字节来存放一个中断 服务程序显然是不可能的。因此以上地址单元不能用于 存放程序的其他内容,只能存放中断服务程序。但是通 常情况下,我们是在中断响应的地址区安放一条无条件 转移指令,指向程序存储器的其它真正存放中断服务程 序的空间去执行,这样中断响应后,CPU读到这条转移指 令,便转向其他地方去继续执行中断服务程序。 右图是ROM的地址分配图: 从图中大家可以看到,0000H-0002H,只有三个存储单 元,3个存储单元在我们的程序存放时是存放不了实际意义的程序的,通常我们在实际编写程序时是在这里安排一条ORG指令,通过ORG指令跳转到从0033H开始的用户ROM区域,再来安排我们的程序语言。从0033开始的用户ROM区域用户可以通过ORG指令任意安排,但在应用中应注意,不要超过了实际的存储空间,不然程序就会找不到。

51单片机定时、中断系统

51单片机定时、中断系统51单片机中断级别 中断源默认中断级别序号(C语言用) INT0---外部中断0 最高0 T0---定时器/计数器0中断第2 1 INT1---外部中断1 第3 2 T1----定时器/计数器1中断第4 3 TX/RX---串行口中断第5 4 T2---定时器/计数器2中断最低 5 中断允许寄存器IE 位序号DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 符号位EA ------- ET2 ES ET1 EX1 ET0 EX0 EA---全局中允许位。 EA=1,打开全局中断控制,在此条件下,由各个中断控制位确定相应中断的打开或关闭。EA=0,关闭全部中断。 -------,无效位。 ET2---定时器/计数器2中断允许位。EA总中断开关,置1为开; ET2=1,打开T2中断。EX0为外部中断0(INT0)开关,…… ET2=0,关闭T2中断。ET0为定时器/计数器0(T0)开关,…… ES---串行口中断允许位。EX1为外部中断1(INT1)开关,…… ES=1,打开串行口中断。ET1为定时器/计数器1(T1)开关,…… ES=0,关闭串行口中断。ES为串行口(TX/RX)中断开关,…… ET1---定时器/计数器1中断允许位。ET2为定时器/计数器2(T2)开关,…… ET1=1,打开T1中断。 ET1=0,关闭T1中断。 EX1---外部中断1中断允许位。 EX1=1,打开外部中断1中断。 EX1=0,关闭外部中断1中断。 ET0---定时器/计数器0中断允许位。 ET0=1,打开T0中断。 ET0=0,关闭T0中断。 EX0---外部中断0中断允许位。 EX0=1,打开外部中断0中断。 EX0=0,关闭外部中断0中断。 中断优先级寄存器IP 位序号DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 位地址--- --- --- PS PT1 PX1 PT0 PX0 -------,无效位。

第二章 8086计算机组织

第二章 8086计算机组织 1.课前思考 (1)微计算机系统一般包括哪两部分? (2) 8086微处理器主要由哪几部分组成?它们的功能是什么? (3)一个字节和一个字分别由几个二进制位组成? (4)在Intel系列微型机中是如何编址的? (5)一个字节和一个字在存储器中是如何存储的? (6)字单元的地址是偶数或是奇数时,访问存储器有什么不同? (7) 8086微型机可以访问的最大存储空间是多少?应用几位地址来表示? (8)在8086微机中,如何提供20位的地址?如何形成物理地址? (9) 8086微机中,存储器空间可分为几种逻辑段?每段的可寻址空间是多大?段地址存放在哪些寄存器中? (10) CPU中有哪几类寄存器,它们各自的专门用途是什么? (11)条件码标志和控制标志各包含几位?它们每位所表示的意义是什么? (12)什么是DOS和BIOS功能调用? 2.学习目标 了解计算机系统的主要组成部分;掌握存储器地址分段的方法以及存储单元物理地址的形成方法;熟悉8086各类寄存器的用途;熟悉标志寄存器各标志位的意义。 3.学习指南 本章内容是汇编语言程序设计所需要了解的硬件知识,已熟悉计算机基本原理的学员可直接学习后面的章节。 4.难重点 存储器分段;存储器单元物理地址的形成;各寄存器的用途。 5.知识点 2.1 80x86微处理器系列概况 2.2 基于8086的微计算机系统 ● 8086微处理器的基本组成 ● 微计算机的软件系统 2.3 8086寄存器组 ● 通用寄存器 ● 专用寄存器 ● 段寄存器 2.4 8086微处理器的存储器管理 ● 存储单元的地址和内容 ● 存储器分段管理

C51的结构和原理习题及答案

第二章80C51的结构和原理习题及答案 1、80C514单片机在功能上、工艺上、程序存储器的配置上有哪些种类? 答:80C51单片机在功能上有两种大类:(1)、基本型;(2)、增强型; 80C51单片机在生产工艺上有两种:(1)、HMOS工艺(即高密度短沟道MOS工艺);(2)、CHMOS工艺(即互补金属氧化物的HMOS工艺); 80C51单片机在程序存储器的配置上有三种形式:(1)、掩膜ROM;(2)、EPROM;(3)、ROMLess(无片内程序存储器)。 2、80C51单片机存储器的组织采用何种结构?存储器地址空间如何划分?各地址空间的地址范围和容量如何?在使用上有何特点? 答: 80C51单片机存储器的组织采用哈佛结构:存储器在物理上设计成程序存储器和数据存储器两个独立的空间。 基本型单片机片内程序存储器容量为4KB,地址范围是0000H~0FFFH。增强型单片机片内程序存储器容量为8KB,地址范围是0000H~0FFFH。 基本型单片机片内数据存储器均为128字节,地址范围是00H~7FH,用于存放运算的中间结果、暂存数据和数据缓冲。这128字节的低32个单元用作工作寄存器,在20H~2FH共16个单元是位寻址区,然后是80个单元的他通用数据缓冲区。 增强型单片机片内数据存储器为256字节,地址范围是00H~FFH。低128字节的配置情况与基本型单片机相同,高128字节为一般RAM,仅能采用寄存器间接寻址方式访问(而与该地址范围重叠的SFR空间采用直接寻址方式访问)。 3、80C51单片机的P0~P3口在结构上有何不同?在使用上有何特点? 答: 80C51单片机各口均由接口锁存器、输出驱动器和输入缓冲器组成,但是结构存在差异:P0、P1口有转换开关MUX,P2、P3口没有;P1~P3口都有上来电阻,但是P0没有。 4个I/O口的使用特点: (1)、P0:P0口是一个多功能的8位口,可按字节访问也可以按位访问。用做通用的I/O口,相当于一个真正的双向口:输出锁存,输入缓冲,但输入是须先将口置1;每根口线可以独立定义输入或输出。用作地址/数据复用总线:作数据总线用时,输入/输出8位数据D0~D7;作地址总线用时,输出低8位地址A0~A7。 (2)、P1:P1口惟一的单功能口,仅能用作通用的I/O口。可按字节访问也可以按位访问,输入时需先输出1,将该口设为输入状态。 (3)、P2:P2口是一个多功能8位口,可按字节访问也可以按位访问。在单片机采用并行扩展方式时,P2口作为地址总线的高8位D8~D15。 (4)、P3:P3口是一个双功能8位口,可按字节访问也可以按位访问。除作I/O口使用(位准双向口)外,每一条接口线还具有不同的第二功能::RXD(串行口输入); :TXD(串行口的输出); :INT0’(外部中断0输入); :INT1’(外部中断0输入);

51单片机中断系统详解(定时器、计数器)

51单片机中断系统 51单片机中断级别 中断源默认中断级别序号(C语言用) INT0---外部中断0 最高0 T0---定时器/计数器0中断第2 1 INT1---外部中断1 第3 2 T1----定时器/计数器1中断第4 3 TX/RX---串行口中断第5 4 T2---定时器/计数器2中断最低 5 中断允许寄存器IE 位序号DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 符号位EA ------- ET2 ES ET1 EX1 ET0 EX0 EA---全局中允许位。 EA=1,打开全局中断控制,在此条件下,由各个中断控制位确定相应中断的打开或关闭。EA=0,关闭全部中断。 -------,无效位。 ET2---定时器/计数器2中断允许位。EA总中断开关,置1为开; ET2=1,打开T2中断。EX0为外部中断0(INT0)开关,…… ET2=0,关闭T2中断。ET0为定时器/计数器0(T0)开关,……ES---串行口中断允许位。EX1为外部中断1(INT1)开关,…… ES=1,打开串行口中断。ET1为定时器/计数器1(T1)开关,…… ES=0,关闭串行口中断。ES为串行口(TX/RX)中断开关,…… ET1---定时器/计数器1中断允许位。ET2为定时器/计数器2(T2)开关,…… ET1=1,打开T1中断。 ET1=0,关闭T1中断。 EX1---外部中断1中断允许位。 EX1=1,打开外部中断1中断。 EX1=0,关闭外部中断1中断。 ET0---定时器/计数器0中断允许位。 ET0=1,打开T0中断。 ET0=0,关闭T0中断。 EX0---外部中断0中断允许位。 EX0=1,打开外部中断0中断。 EX0=0,关闭外部中断0中断。 中断优先级寄存器IP 位序号DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 位地址--- --- --- PS PT1 PX1 PT0 PX0 -------,无效位。 PS---串行口中断优先级控制位。

相关主题
文本预览
相关文档 最新文档