1、第六章单片机应用系统扩展设计6.1 单片机扩展的基本概念单片机扩展的基本概念6.2 存储器的扩展存储器的扩展6.3 并行并行I/O接口的扩展接口的扩展6.1 单片机扩展的基本单片机扩展的基本6.1.1、MCS-51单片机最小应用系统P0 P1 P2 P3+5V+5VEA8 80 05 51 18 87 75 51 1XTAL1XTAL28888图 6 1.1 8051/8751最小应用系统6.1.2、扩展使用的三总线地址总线:P0低8位 P2高8位数据总线:P0控制总线:RD、WR、ALE、PSEN (读、写、地址锁存允许、外程序存储器读选通)62 MCS-51单片机存储器的扩展6.2.1、程
2、序存储器的扩展及取指过程图6-1MCS-51外扩程序存储器结构图 1.程序存储器的一般连接方式图6-28031扩展一片2732电路图6.2.2、随机读写存储器RAM的扩展数据存储器一般采用RAM芯片,这种存储器在电源关断后,存储的数据将全部丢失。RAM器件有两大类:动态RAM(DRAM),一般容量较大,易受干扰,使用略复杂。静态RAM(SRAM),在工业现场常使用。1.RAM存储器的连接 DBDB0 0n n ABAB0 0N ND D0 0n nA A0 0N N ABABN+xN+xCSCSR/WR/WR/WR/W微型机微型机存储器存储器存储器与微型机三总线的连接:1)数据线 D0n连接数
3、据总线 DB0n 2)地址线 A0N连接地址总线低位AB0N。3)片选线 CS连接地址总线高位ABN+x。4)读写线OE、WE(R/W)连接读写控制线RD、WR。2.地址锁存器的原理3.地址锁存器芯片74LS373与74LS573只是引脚布置的不同。74LS273的11脚G逻辑与以上相反。单片机复用总线结构,数据与地址分时共用一 组总线。ALE地址地址锁存锁存地址地址锁存锁存地址地址输出输出数据数据有效有效地址地址输出输出数据数据有效有效AD0n数据数据采样采样数数据据采采样样R/W单片机单片机 AD07 ALER/WD07A07R/W存储器存储器Di Qi G地址地址锁存器锁存器 AD8n
4、A8n4.62128与MCS51的连接6.2.3、只读存储器ROM的扩展 工作时,ROM中的信息只能读出,要用特殊方式写入(固化信息),失电后可保持信息不丢失。1.掩膜ROM:不可改写ROM 由生产芯片的厂家固化信息。在最后一道工序用掩膜工艺写入信息,用户只可读。2.PROM:可编程ROM 用户可进行一次编程。存储单元电路由熔丝相连,当加入写脉冲,某些存储单元熔丝熔断,信息永久写入,不可再次改写。3.EPROM:可光擦除PROM 用户可以多次编程。编程加写脉冲后,某些存储单元的PN结表面形成浮动栅,阻挡通路,实现信息写入。用紫外线照射可驱散浮动栅,原有信息全部擦除,便可再次改写。4.EEPRO
5、M:可电擦除PROM 既可全片擦除也可字节擦除,可在线擦除信息,又能失电保存信息,具备RAM、ROM的优点。但写入时间较长。27xx的引脚 1.只读存储器ROM的扩展2.27128与MCS51的连接与RAM的不同点:只有一片ROM时,CE可以接地OE接PSEN3.MCS51同时扩展ROM和RAM6.2.4、数据存储器的扩展图6-38051扩展一片6116电路图1数据存储器一般的扩展方法 a.线选法 微型机剩余高位地址总线直接连接各存储器片选线。b.译码片选法 微型机剩余高位地址总线通过地址译码器输出片选信号。多片存储器芯片组成大容量存储器连接常用片选方法。a.线选法 P2.7 P2.6 P2.
6、5 P2.4 P2.3 P2.2 P2.1 P2.0 A7 A6 A5 A4 A3 A2 A1 A0P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0 A7 A6 A5 A4 A3 A2 A1 A0 :1 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 0 0 0=C000H=C000H 1 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 11 1 1 1 1 1 1 1 1 1 1 1 1 DFFFHDFFFH :1 0 1 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0
7、 00 0 0 0 0 0 0 0 0 0 0 0 0=A000H=A000H 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 11 1 1 1 1 1 1 1 1 1 1 1 1 BFFFH BFFFH :0110110 0000 0000 00000 0000 0000 00000110111 1111 1111 11111 1111 1111 1111=6000H=6000H7FFFH 7FFFH 图6-4线选法电路 b译码片选法译码片选法 3-8 地址译码器:地址译码器:74LS138Y Y0 0、Y Y1 1、Y Y2 2分别连接三片存储器的片选端分别连接三片
8、存储器的片选端CECE1 1、CECE2 2、CECE3 3各片存储器芯片分配地址:各片存储器芯片分配地址:AB13AB14AB15 +5V A Y0 B Y1 C Y2 G1 G2A.B Y774LS138CE1CE2CE3:0000H0000H1FFFH1FFFH:2000H2000H3FFFH3FFFH:4000H4000H5FFFH5FFFH图6-5译码器引脚图图6-674LS139译码电路6.2.5 扩展电路工作原理 1从片外程序区读指令过程2片外数据区读数过程 63 I/O接口扩展电路设计接口扩展电路设计 一.8255可编程并行I/O接口扩展 二.8155可编程I/O接口扩展 三.
9、串行口扩展I/O接口 6.3.1、简单I/O口的扩展P0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.780C51WRP2.0RDD0D1D2D3D4D5D6D7Q0Q1Q2Q3Q4Q5Q6Q7Q0Q1Q2Q3Q4Q5Q6Q7D0D1D2D3D4D5D6D7K0K1K2K3K4K5K6K7LED0LED1LED2LED3LED4LED5LED6LED7+5V74HC27374HC244G图 6-8 简单I/O接口扩展电路6.3.2、可编程I/O口的扩展数据总线缓冲器B组控制A组端口A(8)A组端口C上半部(4)B组端口C下半部(4)B组端口B(8)A组控制读写控制逻辑RDWRA0A
10、1RESETCSD7D0I/OPA7PA0I/OPC7PC4I/OPC3PC0I/OPB7PB0(a)引脚定义(b)内部功能结构图6-8 8255内部结构及引脚 (1)、接口线 PA0PA7、PB0PB7、PC0PC7共24条端线。3个口皆为锁存/缓冲寄存器,A口、B口有锁存功能,C口无锁存功能。A、B、C 3口的工作方式由程序设置。(2)、)、数据线8255是8位芯片,有8位数据线D0D7。数据线接于8051的P0接口,(3).控制线 控制线控制8255的读RD:、写WR、复位RESET及片选CS等。(4)地址线 A1A0选择口00A口01B口10C口11控制口6.3.3、方式选择及方式控制
11、字(1)8255工作方式:方式0、方式1,方式2(2).方式选择 位位方式方式1 1(输入)(输入)方式方式1 1(输出)(输出)方式方式2 2PC0INTRBINTRBI/OPC1IBFBOBFBI/OPC2STBBACKBI/OPC3INTRAINTRAINTRAPC4STBAI/OSTBAPC5IBFAI/OIBFAPC6I/OACKAACKAPC7I/OOBFAOBFA表表6-3 8255 C口各端线功能口各端线功能D7D6D5D4D3D2D1D0C口下半部B口控制位B组方式控制位,D2=1方式1,反之方式0C口上半部控制位A口控制位A组方式控制 D6D5=00 方式0 01 方式1
12、1X 方式2总控制选择位 D7=1 选择A、B、C口工作方式 D7=0 C口进行位操作6.3.4、8255扩展电路及地址设置(1)8255地址口确定(2).8255初始化 例如,欲设置8255的A、B、C口全为输出状态(或输出方 式),控制字为80H。程序(结合上图)如下:MOV DPTR,#0003H ;8255控制口地址 DPTRMOV A,#80H ;控制字送AMOVX DPTR,A ;控制字写入控制寄存器 6.3.5、8155可编程I/O接口扩展设计1、I/O接口线地址数据线控制线 2、8155功能及操作 (1)8155具有3种功能:扩展RAM、I/O接口使用、定时器使用 (2)状态寄
13、存器格式 XTIMINTEBBBFINTRBINTEAABFINTRAA口 中 断 请 求 标 志A口 缓 冲 器 满/空 标 志允 许 A口 中 断 标 志B口 中 断 请 求 标 志B口 缓 冲 器 满/空 标 志D7D6D5D4D3D2D1D0允 许 B口 中 断 标 志定 时 器 中 断 标 志,计 数 满 该 位 置“1”中 断 请 求,复 位 后 为“0”空 可编程定时/计数器两个8位寄存器组成,低8位和高6位存放计数初值,最高2位控制定时器的工作方式(3)定时器使用M2M1 T13 T12 T11 T10 T9T8D7D6D5D4D3D2D1D0M2M1 T13 T12 T11
14、T10 T9T8D7D6D5D4D3D2D1D0定时方式计数初值高6位计数初值低8位表格 6 1 8155口地址分布AD0AD7选选 中中 寄寄 存存 器器A7 A6 A5 A4 A3A2A1A0 000内部命令寄存器 001通用I/O口A寄存器 010通用I/O口B寄存器 011口C:通用I/O口或控制口 100定时/计数器的低8位寄存器 101定时/计数器的高8位寄存器38155与单片机的连接AD07CERDWRRESETALETIME INTIME OUTPCPBPAIO/M81558031RSTRDWRALEP2.3P2.4P0VCC表格 6 2 8155的RAM和I/O口地址分配P2
15、.4P2.3选择选择地地 址址00RAME 7 0 0 H E 7 F F H(256B)01I/O口口EF00H 命令口命令口/状态状态口口EF01H 通用通用I/O口口AEF02H 通用通用I/O口口BEF03H 口口CEF04H 计数值低计数值低8位位EF05H 计数值高计数值高8位位和计数方式和计数方式图 6 10 扩展一片8155的基本方案48155片内RAM的使用(1)命令寄存器的用法表格 6 3 C口工作方式方式方式位位ALTIALT2ALT3ALT4PC0输入方式输入方式输出方式输出方式AINTR(A口中断)口中断)AINTR(A口中断)口中断)PC1ABF(A口缓冲器满)口缓
16、冲器满)ABF(A口缓冲器满)口缓冲器满)PC2ASTB(A口选通)口选通)ASTB(A口选通)口选通)PC3输出方式输出方式BINTR(B口中断)口中断)PC4BBF(B口缓冲器满)口缓冲器满)PC5BSTB(B口选通)口选通)备注备注A口口B口为口为基本基本I/O口口A口口B口为口为基本基本I/O口口A口为选通输入方式口为选通输入方式B口为基本口为基本I/O口口A口、口、B口为选通口为选通输入输入/输出方式输出方式3、8051单片机与8155接口电路举例6.3.6 串行口扩展IO接口 1、使用移位寄存器作为锁存或输入信号的接口,可以方便地扩展并行输入、输出口。这种方法不占用片外RAM地址 2、串行口扩展并行输入口 p 经常不断地学习,你就什么都知道。你知道得越多,你就越有力量p Study Constantly,And You Will Know Everything.The More You Know,The More Powerful You Will Be写在最后谢谢大家荣幸这一路,与你同行ItS An Honor To Walk With You All The Way演讲人:XXXXXX 时 间:XX年XX月XX日