单片机技术教学做一体化教程 工业和信息化高职高专“十二五”规划教材立项项目 教学课件 ppt 作者 万长征 谢利华 魏洪昌 7 单片机的外部基本扩展与应用

上传人:E**** 文档编号:89355347 上传时间:2019-05-23 格式:PPT 页数:52 大小:801KB
返回 下载 相关 举报
单片机技术教学做一体化教程 工业和信息化高职高专“十二五”规划教材立项项目  教学课件 ppt 作者 万长征 谢利华 魏洪昌 7 单片机的外部基本扩展与应用_第1页
第1页 / 共52页
单片机技术教学做一体化教程 工业和信息化高职高专“十二五”规划教材立项项目  教学课件 ppt 作者 万长征 谢利华 魏洪昌 7 单片机的外部基本扩展与应用_第2页
第2页 / 共52页
单片机技术教学做一体化教程 工业和信息化高职高专“十二五”规划教材立项项目  教学课件 ppt 作者 万长征 谢利华 魏洪昌 7 单片机的外部基本扩展与应用_第3页
第3页 / 共52页
单片机技术教学做一体化教程 工业和信息化高职高专“十二五”规划教材立项项目  教学课件 ppt 作者 万长征 谢利华 魏洪昌 7 单片机的外部基本扩展与应用_第4页
第4页 / 共52页
单片机技术教学做一体化教程 工业和信息化高职高专“十二五”规划教材立项项目  教学课件 ppt 作者 万长征 谢利华 魏洪昌 7 单片机的外部基本扩展与应用_第5页
第5页 / 共52页
点击查看更多>>
资源描述

《单片机技术教学做一体化教程 工业和信息化高职高专“十二五”规划教材立项项目 教学课件 ppt 作者 万长征 谢利华 魏洪昌 7 单片机的外部基本扩展与应用》由会员分享,可在线阅读,更多相关《单片机技术教学做一体化教程 工业和信息化高职高专“十二五”规划教材立项项目 教学课件 ppt 作者 万长征 谢利华 魏洪昌 7 单片机的外部基本扩展与应用(52页珍藏版)》请在金锄头文库上搜索。

1、7 单片机的外部基本扩展与应用,任务与知识点,任务 单片机片外扩展单片数据存储器 单片机片外扩展多片数据存储器 单片机片外扩展简单I/O接口 单片机采用8255芯片外扩展I/O接口 知识点 单片机系统扩展总线 片外扩展芯片是如何被访问的 介绍利用KEIL软件如何查看各种存储器中的数据、 讲解MOV、MOVX、MOVC三类传送指令及数据的寻址方式 一些常用扩展芯片的接口方法和访问控制方法 多位数据码静态显示及动态显示知识,7.1 单片机系统扩展的基本概念,在由单片机构成的实际测控系统中,最小应用系统往往不能满足要求,就要在设计系统时进行相应的系统扩展。,在单片机系统总体设计时,必须综合考虑接口器

2、件的电气参数、时序要求、功能、体积、成本等方面因素,选择合适外部扩展方式,适当预留扩展空间,还要兼顾系统改进设计、产品升级等方面的要求。,7.1.1 系统扩展总线,所谓总线,就是连接系统中各扩展部件的一组公共信号线。以单片机为核心,通过总线把各扩展部件连接起来,各扩展部件“挂”在总线上,主要形式有存储器扩展、I/O口的扩展,以及人机接口所必须的键盘与显示器件接口扩展等,如图7-1所示。,在图中,按总线接口的类型可分为传统的并行传送数据的三总线结构(控制总线、数据总线和地址总线),以及后来发展起来的串行传送数据的SPI总线、I2C总线和单总线等总线形式。本章只讨论传统的并行传送总线结构。,7.1

3、.2 片外扩展芯片是如何被访问的,当单片机片外扩展了存储器、I/O接口等外围接口芯片之后,如何用地址来表示这些芯片位置,以及通过地址来访问它们,就是接下来要考虑的问题了。,图 72 存储器单元示意图,从图中,可以看出由地址总线通过译码器决定访问四个存储单元的哪一个,由控制总线给出读写控制信号,由数据总线来传送数据。,在并行总线结构外部扩展芯片时,所有外部芯片都看做为一个或多个存储单元,通过系统三总线进行访问。,而51单片机中的程序和数据是按哈佛结构分别存储,所以要进一步区别芯片中的内容是程序和数据了。,如果外部芯片存放的是程序指令,PC指针会自动访问,此芯片是程序存储器,如果存放的是数据,则通

4、过相关指令进行访问,此芯片是或看做数据存储器了,7.1.3 51单片机对片外芯片的访问,通常情况下,微机的CPU外部都有单独的并行地址总线、数据总线和控制总线,而AT89S51单片机由于受引脚的限制,数据线和地址线是复用的,而且由口线兼用。为了将它们分离出来,以便同单片机片外的芯片正确地连接,需要在单片机外部增加地址锁存器,从而构成与一般CPU相类似的片外三总线,如图7-3所示。,从图中可以看出,以P0口的8位口线作地址线低8位数据线,通过8位锁存器进行数据信号和地址信号的分离;以P2口的口线作高8位地址线,可以访问外部程序和数据存储最大空间分别为64KB。,除了地址线和数据线之外,在扩展系统

5、中还需要一些控制信号线,以构成扩展系统的控制总线。这些信号有的是单片机引脚的第一功能信号,有的则是第二功能信号。其中包括:使用ALE作为地址锁存的选通信号,以实现低8位地址的锁存;以信号作为扩展程序存储器的读选通信号;以信号作为内、外程序存储器的选择信号;以和作为扩展数据存储器和端口的读/写选通信号。,想一想,做一做?,1、如果片外扩展的存储器并没有64KB空间,是不是可以用少于16根地址线进行访问?,7.2 单片机片外扩展单片数据存储器,RAM是用来存放各种数据的, 51单片机内部有128字节RAM,但当单片机用于实时数据采集或处理大批量数据时,就必须进行单片机的外部数据存储器扩展。,【例7

6、-1】单片机的外存储器与内存储器进行数据传送,以上程序代码的作用是:(1)先将“STUDY HARD”这一个字符串逐行代码送入内存储器30H单元地址开始的内存空间;(2)然后将这一字符串以循环结构代码形式送入外部SRAM的200H地址开始的存储空间;(3)内存中的这一字符串要连续送100趟次。,图 74 外部扩展一片数据存储器6264电路原理图,电路原理图,7.2.1 并行扩展总线连接说明,地址总线的连接说明:P0口引脚输出的8位信号,作地址总线送74HC373地址锁存器,为6264提供低8位地址信号;P2口的2125脚直接与6264的A12A8脚相连接,提供了高5位地址。,数据总线的连接说明

7、:P0口引脚作数据总线,直接与6264相连接,用于传送8位数据信号。,控制总线的连接说明:地址锁存信号ALE与74HC373地址锁存器输入选通端LE相连,用于锁存P0口的送出的低8位地址信号; 读信号 ()与6264的输出使能端 ()相连,用于单片机读数据控制;写信号 ()与6264的输入使能端()相连,用于单片机写数据控制。,由于片外只扩展了一片芯片,故不存在片选问题,6264的片选信号 ()直接接地,保持常通。,7.2.2 利用KEIL软件如何查看各种存储器中的数据,通过PROTEUS软件硬件仿真可以看到内或外数据存储器中的数据,但无法查看程序存储器的指令或表格数据。,利用KEIL软件的存

8、储器窗口可以显示系统中各种存储器中的值,只要在地址(Address)后的编缉框内输入“字母:数字”即可显示相应内存值。,图 75 查看程序存储器中的指令或表格数据,说明如下:其中字母可以是 C、D、I、X,分别代表代码存储空间、直接寻址的片内存储空间、间接寻址的片内存储空间、扩展的外部 RAM 空间,数字代表想要查看的地址,该窗口的显示值能以各种形式显示,默认以“无符号单字节方式“显示。可利用右键快捷菜单选择,如图7-6所示。,说明如下:该菜单用分隔条分成二部份,其中第一部份与第二部份的三个选项为同一级别。,选中第一部份的任一选项,窗口中的值以整数形式显示。如:“ Decimal ”项是一个开

9、关,选中它,表示窗口中的值将以十进制形式显示,否则按默认的十六进制显示。 “Unsigned”和 “Signed ” 分别代表无符号形式和有符号形式,各有三个选项:Char、Int、Long,分别代表以单字节字符形式、双字节整数形式、四字节长整数形式显示。,选中第二部份的“Ascii码”项则将以字符形式显示,选中“Float”项将相邻四字节组成的浮点数形式显示,选中 “Double ”项则将相邻八字节组成双精度形式显示。,7.2.3 外部存储器存储单元地址编码,常用的外部数据存储器有静态RAM和动态RAM两种。一般情况下,SRAM用于仅需要小于64KB数据存储器的小系统,DRAM经常用于需要大

10、于64KB的大系统。,6264是8 K8位的静态RAM芯片, 采用CMOS工艺制造, 为28 引脚双列直插式封装,如图7-7所示。,图 77 6264SRAM的引脚图和逻辑符号图,从图7-7可以看出,只需要13根地址线即可表示该芯片的所有存储单元。而51系列单片机的地址总线是16位,从图7-4中可以看出单片机的2628引脚没有使用,则存储器的某个存储单元就存在多个地址同时与之相对应的关系,如下表所示。,表 71 6264SRAM某个单元地址编码,想一想,试一试?,1、我们是否可以将源代码中的下列代码行,如下所示:,将首地址0200H换成表7-1中的最右边一列中的任意一个16位地址编码是否都可以

11、?,MOV DPTR,#0200H;,设置外存储器的首个存储地址,7.3 单片机片外扩展多片数据存储器,【例7-2】将程序存储器的表格数据送给片外的数据存储器,程序功能将程序中的表格数据送给片外存储器。需要注意程序中表格数据的访问和片外存储器单元的访问都要用到DPTR数据指针,本例通过堆栈保护方式加以区分。,电路原理图,电路分析如下:当PROTEUS仿真执行完成后,D1灯会点亮,可以通过DEBUG菜单查看外存中的数据。,7.3.1 并行扩展总线连接说明,地址总线的连接说明:P0口引脚输出的8位信号,作地址总线送74HC373地址锁存器,为6264提供低8位地址信号;P2口的2125脚直接与62

12、64的A12A8脚相连接,提供了高5位地址;P2口的2628脚做为138译码器的输入信号。,数据总线的连接说明:P0口引脚作数据总线,直接与6264相连接,用于传送8位数据信号。,控制总线的连接说明:地址锁存信号ALE与74HC373地址锁存器输入选通端LE相连,用于锁存P0口的送出的低8位地址信号;读信号 ( )与6264的输出使能端 ( )相连,用于单片机读数据控制;写信号 ( )与6264的输入使能端( )相连,用于单片机写数据控制。,由于片外扩展了两片芯片,必须进行芯片选择,故片选信号 ( )通过译码器74HC138进行片选,在某一时刻只有一片可以工作。,7.3.2 多个存储器扩展的片

13、选问题,多个存储器扩展时,为了找到确切的存储器单元,必须考虑两个方面的的问题:存储芯片的选择和芯片内部存储单元的选择。芯片内部存储单元的选择在上一节里,我们已经做了介绍。,存储芯片的选择一般采用两种方法:线选法和译码法。在大容量多芯片扩展时,一般采用译码法。常用的译码芯片有:74HC139(双2-4译码器)、74HC138(3-8译码器)和74HC1544-16译码器)等。电路原理图使用了74HC138译码器,下面做一介绍。,74HC138译码器具有3个选择输入端,可组成8种输入状态;具有8个输出端,分别对应8种输入状态,且0电平有效,即:对应于每种输入状态,仅允许1个输出端为0电平,其余全为

14、1。,74HC138译码器还有3个使能端E3、 和 ,必须同时输入有效电平,译码器才能被选通;否则译码器的输出全为高。很明显,采用译码器寻址可节省单片机的I/O口线,其引脚图和逻辑功能真值表如图7-9所示。,图 79 74HC138译码器的引脚图与真值表,结合电路原理图7-8可知,U3芯片的寻址空间固定在0000H1FFFH之间,而U4芯片的寻址空间固定在2000H3FFFH之间。,如果此时再将MOV DPTR,#0200H;设置外存储器的首地址代码中的外部存储器首地址0200H换成表7-1中的最右边一列中的任意一个16位地址编码,则结果就会发生变化了,同学们可以试一试?,7.3.3 对数据进

15、行访问的MOV、MOVX和MOVC指令比较,通过前两例程序代码的学习,我们知道单片机要进行处理的数据可能存在于三种存储空间:内部数据存储器(包括工作寄存器区、位寻址区、通用工作区,以及一些特殊功能寄存器SFR),外部数据存储器和程序存储器。如果我们要对它们进行访问,就涉及了MOV、MOVX和MOVC三种指令。,当数据是在内部数据存储器或指令队列中,我们将使用MOV指令进行访问。指令的访问形式多种多样,非常灵活。如图7-10所示。,当数据是在片外的数据存储器或I/O接口时,我们将使用MOVX指令进行访问,指令格式简单易记,只有四种,如下图7-11所示。,当数据是在程序存储器中的常量数据,我们将使

16、用MOVC指令进行访问,指令只有两种,如图7-12所示。,想一想,做一做?,1、在电路原理图7-4和7-8中,片外没有扩展程序存储器。为什么片外不去扩展程序存储器?如果要扩展,则相应的硬件电路连线要注意什么事项?会不会和片外数据存储器的存储单元地址发生冲突?,7.4 单片机片外扩展简单I/O接口,【例7-3】按键控制LED灯的亮灭,程序说明:51单片机的P0P3口具有输入数据可以缓冲,输出数据可以锁存的功能,并有一定的负载能力,可以直接与外设相接(详见第2章示例),如:开关、发光二极管等。,但有时出于节省I/O端口使用或需要提高系统带负载能力的情况下,常采用 “输入三态, 输出锁存”原则进行片外扩展简单I/O口芯片,这是单片机应用系统设计中常采用的方法。,电路原理图:,电路功能说明:当PROTEUS仿真执行时,按下八个按键中的任意一个或多个,与之位置相呼应的LED灯将会点亮。,7.4.1 并行扩展总线的连接说明,电路中使用了74HC244、74HC273两种芯片。,74HC2

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号