第8章单片机资源扩展.ppt
《第8章单片机资源扩展.ppt》由会员分享,可在线阅读,更多相关《第8章单片机资源扩展.ppt(46页珍藏版)》请在三一办公上搜索。
1、单片机原理及应用(第八章 单片机资源扩展),教学内容,单片机扩展的总线结构存储器扩展简单输入/输出口扩展可编程并行接口8255A可编程接口8155,DATE:2023/8/7,PAGE:2,一、单片机扩展的总线结构,单片机资源扩展的典型结构是总线结构。各扩展部件通过总线与单片机连接起来,相当于系统中各部件挂在总线上,分时利用总线与CPU通讯。当选中某部件时,可对该部件进行读写及控制,而其它部件与总线间处于“高阻态”,相当于与总线断开。,DATE:2023/8/7,PAGE:3,一、单片机扩展的总线结构,单片机系统的三总线构造方法如下:以P0口线作数据总线/低位地址总线:先由P0口线作地址总线把
2、低8位地址送锁存器,由锁存器提供给系统,然后再将P0口线作数据总线读写数据,从而实现地址总线的低8位地址信号和数据总线共用P0口线而不产生冲突。以P2口线作高位地址总线:P2口线最多可提供8位高位地址,加上P0口线提供的低8位地址,最多可提供16位地址,可使单片机系统的寻址范围最大达到64KB。采用功能引脚形成控制总线:由 RD(P3.6引脚)和 WR(P3.7引脚)作为读写选通信号线;由ALE作为地址锁存信号线,以配合P0口实现分时复用;PSEN以 作为片外程序存储器读选通信号线;以EA 作为片内和片外程序存储器的选择信号。,DATE:2023/8/7,PAGE:4,二、存储器扩展,存储器片
3、选方法线选法:单片机系统的地址线与存储芯片的地址线从低到高依次相接后,由用剩余的高位地址线直接与芯片片选引脚相连作为片选信号。线选法连线简单,但地址空间不连续,适用于扩展容量较小且芯片数目较少的情况。译码法:单片机系统的地址线与存储芯片的地址线相接后,剩余的高位地址线与译码器相连,以译码器的输出作为芯片的片选信号。译码法能有效利用存储空间,且地址连续,适用于多芯片下的扩展。常用译码器芯片有74LS138等。,DATE:2023/8/7,PAGE:5,二、存储器扩展,程序存储器扩展地址线:地址是由P0和P2口提供的。ROM的地址线(A0A15)中,低8位A0A7通过锁存器74LS373与P0口连
4、接,高8位A8A11直接与P2口的P2.0P2.7连接。数据线:片外ROM的8位数据线直接与单片机的P0口相连。,DATE:2023/8/7,PAGE:6,二、存储器扩展,控制线:CPU执行ROM中存放的程序指令时,取指阶段就是对ROM进行读操作。读操作控制线有以下几条:地址锁存信号ALE:单片机的ALE管脚与锁存器的锁存使能端,G相连,用于单片机从片外ROM在读指令时给出低8位地址的锁存信号。片选信号CS:低电平有效。如果系统中只扩展了一片程序存储器芯片,可将该片选端直接接地,使该芯片一直有效。若同时扩展多片,需通过线选法或译码法来完成片选工作。读选通信号OE:低电平有效。该引脚接8051的
5、片外ROM读选通信号端PSEN。在访问片外程序存储器时,只要端出现负脉冲,即可从ROM中读出指令或数据。片外程序存储器的选用控制信号EA:当EA引脚接高电平时,CPU只访问单片机内部的程序存储器并执行内部程序存储器中的指令,但当程序存储量超过内部程序存储器的最大容量时,将自动转去执行单片机外部程序存储器内的程序。当输入信号 引脚接低电平(接地)时,CPU只访问外部程序存储器并执行外部程序存储器中的指令。,DATE:2023/8/7,PAGE:7,二、存储器扩展,在执行片外ROM读指令时,单片机自动进行的操作时序:(1)首先由PO口和P2口给出16位地址,然后ALE出现下降沿通知锁存器74LS3
6、73将P0口的低8位地址锁存;(2)PSEN出现低电平,使片外ROM有效;(3)根据锁存器74LS373和P2口提供的地址取出指令并送P0口,由P0口读入单片机执行。在上述过程中,数据存储器RAM读写信号端WR和RD一直处于高电平状态,使RAM与总线隔离。,DATE:2023/8/7,PAGE:8,二、存储器扩展,例8-1 根据下图电路编写程序用数码管显示0-9共10个数字循环显示。,DATE:2023/8/7,PAGE:9,二、存储器扩展,#include unsigned char led=0 xC0,0 xF9,0 xA4,0 xB0,0 x99,0 x92,0 x82,0 xF8,0
7、x80,0 x90;/字型码int main(void)unsigned char i;while(1)for(i=0;i10;i+)/循环显示10个数字 P1=ledi;delay();/延时一段时间,DATE:2023/8/7,PAGE:10,void delay()/延时函数 int i,j;for(i=0;i3000;i+)for(j=0;j5;j+);,二、存储器扩展,数据存储器扩展 数据存储器RAM的扩展主要用到以下3个控制信号:ALE:低8位地址锁存控制信号,通常接地址锁存器的LE引脚;WR:外部RAM写信号,低电平有效,接数据存储器的WR引脚;RD:外部RAM读信号,低电平有效
8、,接数据存储器的RD引脚。,DATE:2023/8/7,PAGE:11,二、存储器扩展,在执行片外RAM读写指令时,单片机自动进行的操作时序与读ROM相似:(1)首先由PO口和P2口给出16位地址,然后ALE出现下降沿将P0口的低8位地址锁存,改由锁存器74LS373提供;(2)在读数据时RD出现低电平,WR出现高电平,使读片外RAM有效,并根据锁存器74LS373和P2口提供的地址取出指令并送P0口输出,由P0口读入单片机。(3)在写数据时时首先将数据加载到P0口线上,然后RD引脚出现高电平,WR引脚出现低电平,使写片外RAM有效,并根据锁存器74LS373和P2口提供的地址将P0口线上的数
9、据写入片外RAM。,DATE:2023/8/7,PAGE:12,二、存储器扩展,例8-2 根据图8-4编写程序将数码管显示0-9共10个数字的字型码存储到6264中,然后从6264中循环读出字型码并送数码管显示。,DATE:2023/8/7,PAGE:13,二、存储器扩展,#include#include unsigned char led=0 xC0,0 xF9,0 xA4,0 xB0,0 x99,0 x92,0 x82,0 xF8,0 x80,0 x90;/字型码int main(void)unsigned char i;for(i=0;i10;i+)/存储10个数字字型码XBYTE0 x
10、8000+i=ledi;while(1)for(i=0;i10;i+)/循环显示10个数字 P1=XBYTE0 x8000+i;delay();/延时一段时间,DATE:2023/8/7,PAGE:14,void delay()/延时函数 int i,j;for(i=0;i30000;i+)for(j=0;j5;j+);,三、简单输入/输出口扩展,简单输入/输出口扩展简单输入扩展主要采用三态数据缓冲器实现,目的是使被选通的输入设备能独占数据总线向单片机输入数据,而未被选通的设备与数据总线隔离。常用的三态数据缓冲器芯片有74LS244、74LS245等。简单输出扩展主要采用三态数据锁存器实现,目
11、的是使单片机能通过数据总线向被选通的设备输出数据,而未被选通的设备与数据总线隔离。常用的三态数据锁存器芯片有74LS373、74LS273、74LS573等。,DATE:2023/8/7,PAGE:15,三、简单输入/输出口扩展,例8-3 如图8-6示,8051单片机使用74LS373和74LS245展I/O口,分别连接发光二极管和拨码开关,要求编写控制程序,通过开关的拨动控制发光二极管的亮灭。,DATE:2023/8/7,PAGE:16,三、简单输入/输出口扩展,#include#include#define PORT XBYTE0 xFFFF/地址写什么都可以int main(void)u
12、nsigned char temp;while(1)temp=PORT;/读存储单元操作,即通过74LS245获取开关数据 PORT=temp;/写存储单元操作,即通过74LS373用开关数据控制发光二极管,DATE:2023/8/7,PAGE:17,四、可编程并行接口8255A,在简单I/O扩展中,一个缓冲器或锁存器只能扩展8位,而且芯片功能单一,不利于单片机灵活地改变扩展方法解决实际需要。8255A可通过软件编程的方式确定或改变其工作方式,广泛用于单片机系统的I/O端口扩展。,DATE:2023/8/7,PAGE:18,四、可编程并行接口8255A,(1)和外设相连的引脚PA7PA0:A端
13、口数据信号引脚PB7PB0:B端口数据信号引脚PC7PC0:C端口数据信号引脚,DATE:2023/8/7,PAGE:19,四、可编程并行接口8255A,DATE:2023/8/7,PAGE:20,(2)和CPU相连的引脚RESET:复位信号,高电平有效。当该引脚为高电平时,所有内部寄存器都被清除,同时A、B、C三个数据端口被自动设为输入端口。D7D0:8255A的数据线,和系统数据总线相连。RD:读引脚,低电平时,CPU可以从8255A选中的端口读出数据,经系统数据总线送入CPU。WR:写引脚,低电平时,CPU可以向8255A选中的端口写入数据。CS:片选引脚,低电平时,可以选中对该芯片操作
14、。,四、可编程并行接口8255A,DATE:2023/8/7,PAGE:21,(2)和CPU相连的引脚 A1、A0:端口选择信号,接系统地址总线。8255A内部有3个数据端口和1个控制端口,共4个端口。A1、A0不同组合时,对应选中不同端口,如下表所示:,四、可编程并行接口8255A,8255A的控制 8255A共有两个控制字,一个是方式选择控制字,另一个是C端口的置位/复位控制字,这两个控制字通过第7位来区分。如果第7位为1,则该控制字是方式选择控制字,否则是C端口的置位/复位控制字。(1)方式选择控制字 方式选择控制字用于设定8255A各端口的工作方式,具体格式如下:,DATE:2023/
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 资源 扩展
链接地址:https://www.31ppt.com/p-5666507.html