版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第六章MCS-51存储器和I/O扩展
§6-1存储器扩展 §6-2并行I/O口扩展单片机原理与应用授课(东北石油大学教学课件李玉爽)第六章1§6-1存储器扩展
一、MCS-51总线扩展结构 1、单片机系统结构§6-1存储器扩展2 2、单片机总线扩展结构 2、单片机总线扩展结构3 (1)
地址线与存储器容量的关系 A7~A0: 8根地址线, 有 28=256个单元 A9~A0: 10根地址线, 有 210=1KB A10~A0: 11根地址线, 有 211=2K A11~A0: 12根地址线, 有 212=4K A12~A0: 13根地址线, 有 213=8K等等 (2)16位地址/8位数据的形成
51系列单片机P0口和P2口既是通用I/O口,同时P0口还是分时复用的双向数据总线和低8位地址总线(一般需要加一级锁存器),而P2口则是高8位地址总线。 (1)
地址线与存储器容量的关系4
低8位地址和数据的区分:ALE高电平信号与P0口有效地址信号同时出现,ALE下降沿时锁存低8位地址,ALE低电平时P0口为数据。 高8位地址的形成:有P2口送出高8位地址,A15~A8,在执行MOVX、MOVC指令时P2口数据作为地址送出,常用来作为RAM、ROM的片选信号。(3)地址锁存器---74LS373(8D三态同相锁存器) ①引脚功能: D7~D0:8位并行数据输入端 Q7~Q0:8位并行数据输出端G: 为1时D端数据=Q端数据,为0时Q端数据保持。:片选端,低电平有效 低8位地址和数据的区分:ALE高电平信号与P0口有5 ②74LS373的引脚和示意图:
③真值表: G D Q L H H H L H L L L L × 不变 H × × 高阻 ②74LS373的引脚和示意图:6 3、典型RAM和ROM芯片介绍 1)
半导体存储器的分为:RAM和ROM。RAM分为静态RAM(SRAM)和动态RAM(DRAM)两种。目前计算机内的主存储器都是DRAM。图示为静态RAM的原理图 3、典型RAM和ROM芯片介绍72)6116的引脚结构如下图所示6116----2KSRAM6116引脚功能A0~A10地址线CE选片OE读D0~D7数据线A7A6A5A4A3A2A1A0D0D1D2GNDVccA8A9WEOEA10CED7D6D5D4D36116写WE2)6116的引脚结构如下图所示6116----2K83)ROM的组成结构3)ROM的组成结构9 典型的EPROM芯片有Intel公司的2716(2K×8)、2732(4K×8)、2764(8K×8)、27128(16K×8)、27256(32K×8)、27512(64K×8)等。2732---4KEPROM2732引脚功能A0-A11地址线CE选片OE/Vpp输出允许/编程电源O0-O7数据线A7A6A5A4A3A2A1A0O0O1O2GNDVccA8A9A11OE/VppA10CEO7O6O5O4O32732 典型的EPROM芯片有Intel公司的2716(2K×810二、存储器扩展的基本方法 1、存储器扩展的基本问题。
1)扩展容量:16根地址线最大可扩展到64K
2)扩展要解决的问题:地址线、扩展芯片在64K范围内所占的地址范围
3)存储器扩展的编址:存储芯片片的选择、片内单元的编址
4)选择芯片的方法:片选技术 2、存储器扩展的片选技术 一般产生片选有两种方法:线选法和译码法。二、存储器扩展的基本方法11(1)线选法 线选法用低位地址线对片内的存储单元进行寻址,所需的地址线由片内地址线决定,用余下的高位地址线分别接至芯片的片选端,以区分各芯片的地址范围。例如要扩展8K容量的外RAM,地址线和片选如下: 地址线:log2(8K)=log2(213)=13条(A12~A0)
片选线:余下的A15~A13分别接至芯片的片选端。A15~A13轮流 出现低电平,可保证一次只选一片。
用线选法扩展存储器的缺点 ①
各芯片间地址不连续。而习惯上使用连续地址,如24K范围地址从0000H到5FFFH。
②
有相当数量的地址不能使用,否则造成片选混乱。单片机原理与应用授课(东北石油大学教学课件李玉爽)第六章12 例6-1扩展三片2K存储芯片,试用线选法给出接线图和地址。分析:显然要11根地址线和3根片选线,分配如下低位地址线:P0.7~P0.0--A7~A0,P2.2~P2.0--A10~A8, 合成11根地址线;高位地址线:P2.5、P2.4、P2.3--A13、A12、A11,作3片的片选,余下:P2.7、P2.6不用,取00 扩展接线结构如图: 例6-1扩展三片2K存储芯片,试用线选法给出接线图13编址: P2.7、P2.6、P2.5、P2.4、P2.3、P2.2、P2.1、P2.0P0.7~P0.0 1号片0 01 1 000000H 0 011 0111FFH2号片 0 01 0 100000H 0 01 0 1111FFH3号片 0 00 1 100000H 0 001 1111FFH 显然,三片的地址范围是: 1号片 3000H~37FFH 2号片 2800H~2FFFH 3号片 1800H~1FFFH (2)译码法
译码法将低位地址总线直接连至各芯片的地址线,将高位地址总线经地址译码器译码后作为各芯片的片选信号。 一般使用2/4译码器、3/8译码器,对P2口高位地址线进行译码,适用于大规模扩展。
编址: P2.7、P2.6、P2.5、P2.4、P2.3、P14
2/4译码器、3/8译码器的引脚图:如图所示
74LS13974LS138
ABCG2AG2BGY7GNDVccY0Y1Y2Y3Y4Y5Y61162153144135126117108974LS138
1G1A1B1Y01Y11Y21Y3GNDVcc2G2A2B2Y02Y12Y22Y31162153144135126117108974LS139 AVcc11674LS13811574LS138真值表例如:在上例中同样扩展三片2K存储芯片,采用译码法
低位地址线:同前P0口A7~A0,P2口A10~A8,合成作为11根地址线 ①2/4译码器作为片选74LS138真值表16
高位地址线:P2口A12、A11,作为译码器输入,利用2/4译 码输出端Y0、Y1、Y2作为片选。 三个信号作为3片芯片的片选,实际上可选4片,本例只需3片 扩展接线结构如图: 高位地址线:P2口A12、A11,作为译码器输入,利用2/17编址: P2.7、P2.6、P2.5、P2.4、P2.3、P2.2、P2.1、P2.0P0.7~P0.0 1号片0 00 0 000000H 0 00 0 0111FFH2号片 0 00 0 100000H 0 00 0 1111FFH3号片 0 00 1 000000H 0 00 1 0111FFH 显然,三片的地址范围是: 1号片 0000H~07FFH 2号片 0800H~0FFFH 3号片 1000H~17FFH②3/8译码器作为片选 高位地址线:P2口A13、A12、A11,作为译码器输入,利用 3/8译码输出端Y0、Y1、Y2三个信号作为3片 芯片的片选,实际上可选8片,本例只需3片编址: P2.7、P2.6、P2.5、P2.4、P2.3、P18 扩展接线结构如图: 扩展接线结构如图:19编址: P2.7、P2.6、P2.5、P2.4、P2.3、P2.2、P2.1、P2.0P0.7~P0.0 1号片0 000 000000H 0 00 0 0111FFH2号片 0 00 0100000H 0 000 1111FFH3号片 0 00 1 000000H0 001 0111FFH 显然,三片的地址范围是: 1号片 0000H~07FFH 2号片 0800H~0FFFH 3号片 1000H~17FFH三、存储器扩展实例
1、
扩展外ROM 1)扩展一片4K容量的EPROM,2732 地址线:A11~A0,共12根,接8031的P2.3~.P2.0,P0.7~P0.0 片选线:P2.7~P2.4,不用,取0值,2732片选端直接接地,常选中。编址: P2.7、P2.6、P2.5、P2.4、P2.3、P20
扩展接线结构如图:
数据线:P0.7~P0.0→2732的D7~D0 控制线:PSEN→2732的OE端,ALE→锁存器74LS373门控端G 2732的地址范围:0000H~0FFFH 扩展接线结构如图:21
2)线选法扩展二片2K容量的EPROM,2716,共4K 地址线:A10~A0,共11根,接8031的P2.2~P2.0,P0.7~P0.0
片选线:利用P2.3,加一个非门,接存储芯片的片选端,既 可完成2片的选择,而P2.7~2.4,取0值 数据线:P0.7~P0.0→分别接2片2732的D7~D0 控制线:PSEN→分别接2片2732的OE端 ALE→锁存器74LS373的门控端G
扩展的接线如下页图所示: 2732的地址范围:
1号片0000H~07FFH 2号片0800H~0FFFH
22扩展的接线如下页图所示:扩展的接线如下页图所示:23
2、
扩展外RAM 1)扩展一片2K容量的RAM,6116 地址线:A10~A0,共11根,接8031的P2.2~P2.0,P0.7~P0.0 片选线:P2.7~P2.3,不用,取0值,因为只扩展1片,6116片 选端直接接地,常选中 数据线:P0.7~P0.0→6116的D7~D0 控制线: WR→6116的WE端 RD→6116的OE端 ALE→锁存器74LS373的门控端G 6116的地址范围:0000H~07FFH
2)线选法扩展二片2K容量的RAM,6116,一片4K容量的 ROM,2716 接线图如下页所示: 2、
扩展外RAM24扩展一片2K容量的RAM,6116扩展一片2K容量的RAM,611625
线选法扩展二片2K容量,6116,一片4K容量,2716
2716:0000H~07FFH 6116(1):0000H~07FFH 6116(2):0800H~0FFFH 线选法扩展二片2K容量,6116,一片4K容量,271626§6-2并行I/O口扩展 一、用74系列器件扩展并行I/O口 常用并行I/O扩展芯片,如74LS244、74LS245、273、74LS377等 1、74LS273 §6-2并行I/O口扩展27
2、74LS244
283、扩展实例 高位地址组合法,如图所示:3、扩展实例29输入:74LS244扩展K0~K7 并由P2.0+RD端,全0时,74LS244选通读入 K0~K7状态。实现: MOV DPTR,#FEFFH
MOVX A,@DPTR ;读入输出:74LS273扩展LED0~LED7 并由P2.0+WR端,全0时,74LS273将P0口数据 送出,控制LED0~LED7实现: MOVX @DPTR,A ;输出单片机原理与应用授课(东北石油大学教学课件李玉爽)第六章30二、可编程并行接口8255A
1、8255A的基本性能
可编程外设接口电路(ProgrammablePeripheralInterface)简称PPI,型号为8255(改进型为8255A及8255A-5),具有24条输入/输出引脚、可编程的通用并行输入/输出接口电路。
8255A具有三个相互独立的输入/输出通道: 通道A、通道B、通道C。
A,B,C三通道可以联合使用,构成单线、双线或三线联络信号的并行接口。 此时C口完全服务于A、B口。
A口有三种工作方式:方式0、方式1、方式2。 B口有两种工作方式:方式0、方式1。二、可编程并行接口8255A31 2、8255A内部结构
8255A内部结构由以下四部分组成:数据端口A、B、C;A组控制和B组控制;读/写控制逻辑电路;数据总线缓冲器。结构如图所示
2、8255A内部结构32
端口A:包括一个8位的数据输出锁存/缓冲器和一个8位的数据输入锁存器,可作为数据输入或输出端口,并工作于三种方式中的任何一种。
端口B:
包括一个8位的数据输出锁存/缓冲器和一个8位的数据输入缓冲器,可作为数据输入或输出端口,但不能工作于方式2。
端口C:
包括一个8位的数据输出锁存/缓冲器和一个8位的数据输入缓冲器,可在方式字控制下分为两个4位的端口(C端口上和下),每个4位端口都有4位的锁存器,用来配合端口A与端口B锁存输出控制信号和输入状态信号,不能工作于方式1或2。
A组和B组控制的作用如下: A组控制逻辑控制端口A及端口C的上半部;
B组控制逻辑控制端口B及端口C的下半部。
33方式选择控制字:
方式选择控制字:34C端口置1置0控制字:
端口C的数位常常作为控制位来使用,所以,在设计8255A芯片时,应使端口C中的各位可以用置1置0控制字来单独设置。其具体格式如下图所示。 注意:C端口置1置0控制字尽管是对端口C进行操作,但此控制字必须写入控制口,而不是写入C端口。
C端口置1置0控制字:35工作方式:
1)方式0
是一种基本输入或输出方式,它适用于无需握手信号的简单输入输出应用场合,端口A、B、C都可作为输入或输出数据使用,输出有锁存而输入无锁存。 2)方式1
也称选通的输入/输出方式。在这种方式下,无论是输入还是输出都通过应答关系实现,这时端口A或B用作数据口,端口C的一部分引脚用作握手信号线与中断请求线。 若端口A工作于方式1,则B可工作于方式0;·
若端口B工作于方式1,则A可工作于方式0或余下的13位可工作于方式0;·
若端口A和B同时工作于方式1,端口C余下的两位还可用于传送数据或控制信号。工作方式:36
3)方式2
也称选通的双向I/O方式,仅适用于端口A,这时A口的PA7-PA0作为双向的数据总线,端口C有5条引脚用作A的握手信号线和中断请求线,而B口和C口余下的3位仍可工作于方式0或1。它可以认为是方式1输出和输入的组合但有以下不同: (1)当CPU将数据写入A口时,尽管OBF变为有效,但数据并不出现在PA7-PA0上,只有外设发出ACKA
信号时,数据才进入PA7-PA0。 (2)输出和输入引起的中断请求信号都通过同一引脚输出,CPU必须通过查询OBF和IBF状态才能确定是输入引起的中断请求还是输出引起的中断请求。 (3)
ACKA和STBA信号信号不能同时有效,否则将出现数据传送“冲突”。
37 3、MCS-51和8255A的接口方法 如图所示为MCS-51和8255A的一种接口逻辑。 PA口、PB口、PC口、控制口的地址分别为:7FFCH、7FFDH、7FFEH、7FFFH。 3、MCS-51和8255A的接口方法38
假设图中8255A的PA口接一组开关,PB接一组指示灯,如果,要将MCS-51的寄存器R2的内容送指示灯显示,将开关状态读入MCS-51的累加器A,则8255初始化和输入/输出程序如下: ORG1000H R8255: MOVDPTR,#7FFFH; MOVA,#98H MOVX@DPTR,A MOVDPTR,#7FFDH MOVA,R2 MOV@DPTR,A MOVDPTR,#7FFCH MOVXA,@DPTR RET 假设图中8255A的PA口接一组开关,PB接一组指示灯,39*三、可编程并行接口芯片8155
与8255A相比,8155具有更强的功能,可以扩展单片机的I/O口、定时器、外部数据存储器RAM。
1、8155芯片的构成 1)逻辑结构 2)引脚图 3)接口信号单片机原理与应用授课(东北石油大学教学课件李玉爽)第六章408155芯片的内部结构256B静态RAM
A
定时器B
C
口APA0~PA7口BPB0~PB7PC0~PC5口CIO/MAD0~AD7CEALERDWRRESET定时器输入定时器输出接单片机接外设接外设接外设8155芯片的内部结构256BA定时器BC口APA0~418155引脚功能PC3PC4
PC5
IO/MCERDWRALEAD0AD1AD2AD3AD4AD5AD6AD7VssVccPC2PC1PC0PB7PB6PB5PB4PB3PB2PB1PB0PA7PA6PA5PA4PA3PA2PA1PA08155TIMERINRESETTIMEROUTAD0-AD7三态地址/数据线IO/M端口/存储器选择RD读ALE地址锁存允许写WR选片CE定时器输入TIMERIN定时器输出TIMEROUTPA0-PA7A口端口线PB0-PB7B口端口线PC0-PC5C口端口线8155引脚功能PC3Vcc8155TIMERINRESE42PA0-PA7端口A的I/O线(8位,接外设)PB0-PB7端口B的I/O线(8位,接外设)PC0-PC5端口C的I/O线(6位,接外设)AD0-AD7三态地址/数据复用线(8位,一般接单片机P0口,CPU与8155之间的地址、数据、命令、状态等信号都通过它来传送)端口/存储器选择控制“0”选择片内RAM“1”选择片内I/O口TIMERIN8155片内定时器/计数器的计数脉冲输入引脚TIMEROUT8155片内定时器/计数器的计满回零输出引脚分别是对8155片内的RAM或I/O口的的读、写控制信号ALE地址锁存引脚选片RESET复位引脚IO/MRD、WRCE地址锁存引脚IO/MRD、WR43
2、8155的RAM和I/O口地址
RAM地址----当IO/M加低电平: 此时AD0-AD7上得到的地址值是指8155的某一RAM单元的地址,地址范围是:00000000--11111111 分别指向8155RAM的256个存储单元。
I/O口地址----当IO/M加高电平: 此时AD0-AD7(仅用到低三位AD2、AD1、AD0)上得到的地址值是指8155的某一I/O口的地址,具体端口地址分配是: 2、8155的RAM和I/O口地址44
8155的RAM和I/O口编址AD7AD6AD5AD4AD3AD2AD1AD0I/O端口╳╳╳╳╳000命令/状态寄存器╳╳╳╳╳001PA口╳╳╳╳╳010PB口╳╳╳╳╳011PC口╳╳╳╳╳100计数器低8位╳╳╳╳╳101计数器高6位 AD7AD6AD5AD4AD3AD2AD1AD45
3、8155的使用 1)8155内RAM的使用: 与一般外部数据存储器的使用基本一样,唯一区别是事先要使IO/M为低电平。
2)8155各端口的使用: A、B、C各端口可工作于不同的工作方式,使用前要进行初始化(写命令字到命令口)。
46 4、扩展电路的连接实例 1)以高位地址直接作为IO/M信号扩展,接口电路非常简单,基本上是相同信号对接,如图:80318155RESETRDWRALEP2.4P0.0P0.1P0.2P.03P0.4P0.5P0.6P0.7RESETRDWRALEIO/MCEAD0AD1AD2AD3AD4AD5AD6AD7口APA0~PA7口BPB0~PB7PC0~PC5口C 4、扩展电路的连接实例80318155RESETP0.47 2)多芯片扩展8031
373G27166116(2)6116(1)8155P0P2.2--P2.0PSENALEWRRDABCG2AG2BG1P1.0A0~A7A8~A10D7~D0D7~D0D7~D0CECECEOEA0~A7A8~A10WEWEOEOEWERDALEAD0~AD7CEY2Y1Y0+5VIO/MPAPBPCP2.3P2.4P2.5P2.6P2.7 2)多芯片扩展37327168155P0P2.2--P48上图中的各扩展地址分别为: 8155:0000H、0001H、……、0005H
8031的P2.7-P2.3=00000时,选中8155,在此前提下,当8031的P0口输出地址是XXXXX000-XXXXX101,且IO/M=1时,选中8155的各端口,即:
当IO/M=0时,选中8155的RAM单元,所以: 其内部RAM地址范围是:0000H--00FFH。P2.7…P2.0P0.7…P0.0端口
0000000000000000(0000H)命令口
0000000000000001(0001H)PA口
0000000000000010(0002H)PB口
0000000000000011(0003H)PC口
0000000000000100(0004H)计数器低
0000000000000101(0005H)计数器高上图中的各扩展地址分别为:P2.7…P2.049
6116(1):0800H-0FFFH 6116(2):1000H-17FFH 分析: 根据74LS138,8031的P2.7-P2.3=00001时,选中6116(1),在此前提下,加上P2.2-P2.0,P0.7-P0.0低位地址,既有: 6116(1)的地址范围是:0000
100000000000-0000111111111111 即:8000H-FFFFH。 6116(2)同理可得:1000H-17FFH: 6116(1):0800H-0FFFH50 3)常用I/O口综合扩展
线选法80316116CE8255CS8155IO/MCECE8253CS0832P2.3P2.4P2.0P2.5P2.6P2.7 3)常用I/O口综合扩展8031611682558155C51线选法译码地址外围器件地址选择线(A15~A0)片内地址单元数地址编码611611110AAAAAAAAAAA2KF000~F7FFH825511101111111111AA4EFFC~EFFFH8155RAM11011110AAAAAAAA256DE00~DEFFH8155I/O1101111111111AAA6DFF8~DFFDH083210111111111111111BFFFH825301111111111111AA47FFC~7FFFH线选法译码地址外围器件地址选择线(A15~A0)片内地址单元5280316264CE8255CS8155IO/MCECE8253CS0832P2.5P2.6P2.7P2.0ABCG2AG2BG1Y0Y1Y2Y3Y4+5V138译码法626482558155CECSP2.5P2.0AY0+5V53译码法译码地址外围器件地址选择线(A15~A0)片内地址单元数地址编码6264000A
AAAAAAAAAAAA8K0000~1FFFH825500111111111111AA43FFC~3FFFH8155RAM01011110AAAAAAAA2565E00~5EFFH8155I/O0101111111111AAA65FF8~5FFDH0832011111111111111117FFFH825310011111111111AA49FFC~9FFFH译码法译码地址外围器件地址选择线(A15~A0)片内地址单元54本章小结1、程序存储器扩展设计,EPROM外特性介绍(2716、2732、2764),8031单片机最小系统设计,扩展设计2、数据存储器和外部I/0端口扩展设计,RAM外特性介绍(6116、6264),扩展设计3、外部I/0端口扩展技术介绍重点:存储器扩展电路设计及连线,译码地址和译码范围,MCS-51单片机P0、P1口的功能。难点:译码地址和译码范围,端口的灵活应用。本章小结1、程序存储器扩展设计,EPROM外特性介绍(27155第六章MCS-51存储器和I/O扩展
§6-1存储器扩展 §6-2并行I/O口扩展单片机原理与应用授课(东北石油大学教学课件李玉爽)第六章56§6-1存储器扩展
一、MCS-51总线扩展结构 1、单片机系统结构§6-1存储器扩展57 2、单片机总线扩展结构 2、单片机总线扩展结构58 (1)
地址线与存储器容量的关系 A7~A0: 8根地址线, 有 28=256个单元 A9~A0: 10根地址线, 有 210=1KB A10~A0: 11根地址线, 有 211=2K A11~A0: 12根地址线, 有 212=4K A12~A0: 13根地址线, 有 213=8K等等 (2)16位地址/8位数据的形成
51系列单片机P0口和P2口既是通用I/O口,同时P0口还是分时复用的双向数据总线和低8位地址总线(一般需要加一级锁存器),而P2口则是高8位地址总线。 (1)
地址线与存储器容量的关系59
低8位地址和数据的区分:ALE高电平信号与P0口有效地址信号同时出现,ALE下降沿时锁存低8位地址,ALE低电平时P0口为数据。 高8位地址的形成:有P2口送出高8位地址,A15~A8,在执行MOVX、MOVC指令时P2口数据作为地址送出,常用来作为RAM、ROM的片选信号。(3)地址锁存器---74LS373(8D三态同相锁存器) ①引脚功能: D7~D0:8位并行数据输入端 Q7~Q0:8位并行数据输出端G: 为1时D端数据=Q端数据,为0时Q端数据保持。:片选端,低电平有效 低8位地址和数据的区分:ALE高电平信号与P0口有60 ②74LS373的引脚和示意图:
③真值表: G D Q L H H H L H L L L L × 不变 H × × 高阻 ②74LS373的引脚和示意图:61 3、典型RAM和ROM芯片介绍 1)
半导体存储器的分为:RAM和ROM。RAM分为静态RAM(SRAM)和动态RAM(DRAM)两种。目前计算机内的主存储器都是DRAM。图示为静态RAM的原理图 3、典型RAM和ROM芯片介绍622)6116的引脚结构如下图所示6116----2KSRAM6116引脚功能A0~A10地址线CE选片OE读D0~D7数据线A7A6A5A4A3A2A1A0D0D1D2GNDVccA8A9WEOEA10CED7D6D5D4D36116写WE2)6116的引脚结构如下图所示6116----2K633)ROM的组成结构3)ROM的组成结构64 典型的EPROM芯片有Intel公司的2716(2K×8)、2732(4K×8)、2764(8K×8)、27128(16K×8)、27256(32K×8)、27512(64K×8)等。2732---4KEPROM2732引脚功能A0-A11地址线CE选片OE/Vpp输出允许/编程电源O0-O7数据线A7A6A5A4A3A2A1A0O0O1O2GNDVccA8A9A11OE/VppA10CEO7O6O5O4O32732 典型的EPROM芯片有Intel公司的2716(2K×865二、存储器扩展的基本方法 1、存储器扩展的基本问题。
1)扩展容量:16根地址线最大可扩展到64K
2)扩展要解决的问题:地址线、扩展芯片在64K范围内所占的地址范围
3)存储器扩展的编址:存储芯片片的选择、片内单元的编址
4)选择芯片的方法:片选技术 2、存储器扩展的片选技术 一般产生片选有两种方法:线选法和译码法。二、存储器扩展的基本方法66(1)线选法 线选法用低位地址线对片内的存储单元进行寻址,所需的地址线由片内地址线决定,用余下的高位地址线分别接至芯片的片选端,以区分各芯片的地址范围。例如要扩展8K容量的外RAM,地址线和片选如下: 地址线:log2(8K)=log2(213)=13条(A12~A0)
片选线:余下的A15~A13分别接至芯片的片选端。A15~A13轮流 出现低电平,可保证一次只选一片。
用线选法扩展存储器的缺点 ①
各芯片间地址不连续。而习惯上使用连续地址,如24K范围地址从0000H到5FFFH。
②
有相当数量的地址不能使用,否则造成片选混乱。单片机原理与应用授课(东北石油大学教学课件李玉爽)第六章67 例6-1扩展三片2K存储芯片,试用线选法给出接线图和地址。分析:显然要11根地址线和3根片选线,分配如下低位地址线:P0.7~P0.0--A7~A0,P2.2~P2.0--A10~A8, 合成11根地址线;高位地址线:P2.5、P2.4、P2.3--A13、A12、A11,作3片的片选,余下:P2.7、P2.6不用,取00 扩展接线结构如图: 例6-1扩展三片2K存储芯片,试用线选法给出接线图68编址: P2.7、P2.6、P2.5、P2.4、P2.3、P2.2、P2.1、P2.0P0.7~P0.0 1号片0 01 1 000000H 0 011 0111FFH2号片 0 01 0 100000H 0 01 0 1111FFH3号片 0 00 1 100000H 0 001 1111FFH 显然,三片的地址范围是: 1号片 3000H~37FFH 2号片 2800H~2FFFH 3号片 1800H~1FFFH (2)译码法
译码法将低位地址总线直接连至各芯片的地址线,将高位地址总线经地址译码器译码后作为各芯片的片选信号。 一般使用2/4译码器、3/8译码器,对P2口高位地址线进行译码,适用于大规模扩展。
编址: P2.7、P2.6、P2.5、P2.4、P2.3、P69
2/4译码器、3/8译码器的引脚图:如图所示
74LS13974LS138
ABCG2AG2BGY7GNDVccY0Y1Y2Y3Y4Y5Y61162153144135126117108974LS138
1G1A1B1Y01Y11Y21Y3GNDVcc2G2A2B2Y02Y12Y22Y31162153144135126117108974LS139 AVcc11674LS13817074LS138真值表例如:在上例中同样扩展三片2K存储芯片,采用译码法
低位地址线:同前P0口A7~A0,P2口A10~A8,合成作为11根地址线 ①2/4译码器作为片选74LS138真值表71
高位地址线:P2口A12、A11,作为译码器输入,利用2/4译 码输出端Y0、Y1、Y2作为片选。 三个信号作为3片芯片的片选,实际上可选4片,本例只需3片 扩展接线结构如图: 高位地址线:P2口A12、A11,作为译码器输入,利用2/72编址: P2.7、P2.6、P2.5、P2.4、P2.3、P2.2、P2.1、P2.0P0.7~P0.0 1号片0 00 0 000000H 0 00 0 0111FFH2号片 0 00 0 100000H 0 00 0 1111FFH3号片 0 00 1 000000H 0 00 1 0111FFH 显然,三片的地址范围是: 1号片 0000H~07FFH 2号片 0800H~0FFFH 3号片 1000H~17FFH②3/8译码器作为片选 高位地址线:P2口A13、A12、A11,作为译码器输入,利用 3/8译码输出端Y0、Y1、Y2三个信号作为3片 芯片的片选,实际上可选8片,本例只需3片编址: P2.7、P2.6、P2.5、P2.4、P2.3、P73 扩展接线结构如图: 扩展接线结构如图:74编址: P2.7、P2.6、P2.5、P2.4、P2.3、P2.2、P2.1、P2.0P0.7~P0.0 1号片0 000 000000H 0 00 0 0111FFH2号片 0 00 0100000H 0 000 1111FFH3号片 0 00 1 000000H0 001 0111FFH 显然,三片的地址范围是: 1号片 0000H~07FFH 2号片 0800H~0FFFH 3号片 1000H~17FFH三、存储器扩展实例
1、
扩展外ROM 1)扩展一片4K容量的EPROM,2732 地址线:A11~A0,共12根,接8031的P2.3~.P2.0,P0.7~P0.0 片选线:P2.7~P2.4,不用,取0值,2732片选端直接接地,常选中。编址: P2.7、P2.6、P2.5、P2.4、P2.3、P75
扩展接线结构如图:
数据线:P0.7~P0.0→2732的D7~D0 控制线:PSEN→2732的OE端,ALE→锁存器74LS373门控端G 2732的地址范围:0000H~0FFFH 扩展接线结构如图:76
2)线选法扩展二片2K容量的EPROM,2716,共4K 地址线:A10~A0,共11根,接8031的P2.2~P2.0,P0.7~P0.0
片选线:利用P2.3,加一个非门,接存储芯片的片选端,既 可完成2片的选择,而P2.7~2.4,取0值 数据线:P0.7~P0.0→分别接2片2732的D7~D0 控制线:PSEN→分别接2片2732的OE端 ALE→锁存器74LS373的门控端G
扩展的接线如下页图所示: 2732的地址范围:
1号片0000H~07FFH 2号片0800H~0FFFH
77扩展的接线如下页图所示:扩展的接线如下页图所示:78
2、
扩展外RAM 1)扩展一片2K容量的RAM,6116 地址线:A10~A0,共11根,接8031的P2.2~P2.0,P0.7~P0.0 片选线:P2.7~P2.3,不用,取0值,因为只扩展1片,6116片 选端直接接地,常选中 数据线:P0.7~P0.0→6116的D7~D0 控制线: WR→6116的WE端 RD→6116的OE端 ALE→锁存器74LS373的门控端G 6116的地址范围:0000H~07FFH
2)线选法扩展二片2K容量的RAM,6116,一片4K容量的 ROM,2716 接线图如下页所示: 2、
扩展外RAM79扩展一片2K容量的RAM,6116扩展一片2K容量的RAM,611680
线选法扩展二片2K容量,6116,一片4K容量,2716
2716:0000H~07FFH 6116(1):0000H~07FFH 6116(2):0800H~0FFFH 线选法扩展二片2K容量,6116,一片4K容量,271681§6-2并行I/O口扩展 一、用74系列器件扩展并行I/O口 常用并行I/O扩展芯片,如74LS244、74LS245、273、74LS377等 1、74LS273 §6-2并行I/O口扩展82
2、74LS244
833、扩展实例 高位地址组合法,如图所示:3、扩展实例84输入:74LS244扩展K0~K7 并由P2.0+RD端,全0时,74LS244选通读入 K0~K7状态。实现: MOV DPTR,#FEFFH
MOVX A,@DPTR ;读入输出:74LS273扩展LED0~LED7 并由P2.0+WR端,全0时,74LS273将P0口数据 送出,控制LED0~LED7实现: MOVX @DPTR,A ;输出单片机原理与应用授课(东北石油大学教学课件李玉爽)第六章85二、可编程并行接口8255A
1、8255A的基本性能
可编程外设接口电路(ProgrammablePeripheralInterface)简称PPI,型号为8255(改进型为8255A及8255A-5),具有24条输入/输出引脚、可编程的通用并行输入/输出接口电路。
8255A具有三个相互独立的输入/输出通道: 通道A、通道B、通道C。
A,B,C三通道可以联合使用,构成单线、双线或三线联络信号的并行接口。 此时C口完全服务于A、B口。
A口有三种工作方式:方式0、方式1、方式2。 B口有两种工作方式:方式0、方式1。二、可编程并行接口8255A86 2、8255A内部结构
8255A内部结构由以下四部分组成:数据端口A、B、C;A组控制和B组控制;读/写控制逻辑电路;数据总线缓冲器。结构如图所示
2、8255A内部结构87
端口A:包括一个8位的数据输出锁存/缓冲器和一个8位的数据输入锁存器,可作为数据输入或输出端口,并工作于三种方式中的任何一种。
端口B:
包括一个8位的数据输出锁存/缓冲器和一个8位的数据输入缓冲器,可作为数据输入或输出端口,但不能工作于方式2。
端口C:
包括一个8位的数据输出锁存/缓冲器和一个8位的数据输入缓冲器,可在方式字控制下分为两个4位的端口(C端口上和下),每个4位端口都有4位的锁存器,用来配合端口A与端口B锁存输出控制信号和输入状态信号,不能工作于方式1或2。
A组和B组控制的作用如下: A组控制逻辑控制端口A及端口C的上半部;
B组控制逻辑控制端口B及端口C的下半部。
88方式选择控制字:
方式选择控制字:89C端口置1置0控制字:
端口C的数位常常作为控制位来使用,所以,在设计8255A芯片时,应使端口C中的各位可以用置1置0控制字来单独设置。其具体格式如下图所示。 注意:C端口置1置0控制字尽管是对端口C进行操作,但此控制字必须写入控制口,而不是写入C端口。
C端口置1置0控制字:90工作方式:
1)方式0
是一种基本输入或输出方式,它适用于无需握手信号的简单输入输出应用场合,端口A、B、C都可作为输入或输出数据使用,输出有锁存而输入无锁存。 2)方式1
也称选通的输入/输出方式。在这种方式下,无论是输入还是输出都通过应答关系实现,这时端口A或B用作数据口,端口C的一部分引脚用作握手信号线与中断请求线。 若端口A工作于方式1,则B可工作于方式0;·
若端口B工作于方式1,则A可工作于方式0或余下的13位可工作于方式0;·
若端口A和B同时工作于方式1,端口C余下的两位还可用于传送数据或控制信号。工作方式:91
3)方式2
也称选通的双向I/O方式,仅适用于端口A,这时A口的PA7-PA0作为双向的数据总线,端口C有5条引脚用作A的握手信号线和中断请求线,而B口和C口余下的3位仍可工作于方式0或1。它可以认为是方式1输出和输入的组合但有以下不同: (1)当CPU将数据写入A口时,尽管OBF变为有效,但数据并不出现在PA7-PA0上,只有外设发出ACKA
信号时,数据才进入PA7-PA0。 (2)输出和输入引起的中断请求信号都通过同一引脚输出,CPU必须通过查询OBF和IBF状态才能确定是输入引起的中断请求还是输出引起的中断请求。 (3)
ACKA和STBA信号信号不能同时有效,否则将出现数据传送“冲突”。
92 3、MCS-51和8255A的接口方法 如图所示为MCS-51和8255A的一种接口逻辑。 PA口、PB口、PC口、控制口的地址分别为:7FFCH、7FFDH、7FFEH、7FFFH。 3、MCS-51和8255A的接口方法93
假设图中8255A的PA口接一组开关,PB接一组指示灯,如果,要将MCS-51的寄存器R2的内容送指示灯显示,将开关状态读入MCS-51的累加器A,则8255初始化和输入/输出程序如下: ORG1000H R8255: MOVDPTR,#7FFFH; MOVA,#98H MOVX@DPTR,A MOVDPTR,#7FFDH MOVA,R2 MOV@DPTR,A MOVDPTR,#7FFCH MOVXA,@DPTR RET 假设图中8255A的PA口接一组开关,PB接一组指示灯,94*三、可编程并行接口芯片8155
与8255A相比,8155具有更强的功能,可以扩展单片机的I/O口、定时器、外部数据存储器RAM。
1、8155芯片的构成 1)逻辑结构 2)引脚图 3)接口信号单片机原理与应用授课(东北石油大学教学课件李玉爽)第六章958155芯片的内部结构256B静态RAM
A
定时器B
C
口APA0~PA7口BPB0~PB7PC0~PC5口CIO/MAD0~AD7CEALERDWRRESET定时器输入定时器输出接单片机接外设接外设接外设8155芯片的内部结构256BA定时器BC口APA0~968155引脚功能PC3PC4
PC5
IO/MCERDWRALEAD0AD1AD2AD3AD4AD5AD6AD7VssVccPC2PC1PC0PB7PB6PB5PB4PB3PB2PB1PB0PA7PA6PA5PA4PA3PA2PA1PA08155TIMERINRESETTIMEROUTAD0-AD7三态地址/数据线IO/M端口/存储器选择RD读ALE地址锁存允许写WR选片CE定时器输入TIMERIN定时器输出TIMEROUTPA0-PA7A口端口线PB0-PB7B口端口线PC0-PC5C口端口线8155引脚功能PC3Vcc8155TIMERINRESE97PA0-PA7端口A的I/O线(8位,接外设)PB0-PB7端口B的I/O线(8位,接外设)PC0-PC5端口C的I/O线(6位,接外设)AD0-AD7三态地址/数据复用线(8位,一般接单片机P0口,CPU与8155之间的地址、数据、命令、状态等信号都通过它来传送)端口/存储器选择控制“0”选择片内RAM“1”选择片内I/O口TIMERIN8155片内定时器/计数器的计数脉冲输入引脚TIMEROUT8155片内定时器/计数器的计满回零输出引脚分别是对8155片内的RAM或I/O口的的读、写控制信号ALE地址锁存引脚选片RESET复位引脚IO/MRD、WRCE地址锁存引脚IO/MRD、WR98
2、8155的RAM和I/O口地址
RAM地址----当IO/M加低电平: 此时AD0-AD7上得到的地址值是指8155的某一RAM单元的地址,地址范围是:00000000--11111111 分别指向8155RAM的256个存储单元。
I/O口地址----当IO/M加高电平: 此时AD0-AD7(仅用到低三位AD2、AD1、AD0)上得到的地址值是指8155的某一I/O口的地址,具体端口地址分配是: 2、8155的RAM和I/O口地址99
8155的RAM和I/O口编址AD7AD6AD5AD4AD3AD2AD1AD0I/O端口╳╳╳╳╳000命令/状态寄存器╳╳╳╳╳001PA口╳╳╳╳╳010PB口╳╳╳╳╳011PC口╳╳╳╳╳100计数器低8位╳╳╳╳╳101计数器高6位 AD7AD6AD5AD4AD3AD2AD1AD100
3、8155的使用 1)8155内RAM的使用: 与一般外部数据存储器的使用基本一样,唯一区别是事先要使IO/M为低电平。
2)8155各端口的使用: A、B、C各端口可工作于不同的工作方式,使用前要进行初始化(写命令字到命令口)。
101 4、扩展电路的连接实例 1)以高位地址直接作为IO/M信号扩展,接口电路非常简单,基本上是相同信号对接,如图:80318155RESETRDWRALEP2.4P0.0P0.1P
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 常州市溧阳中学高三生物一轮复习细胞增殖学案
- 5至6岁幼儿同伴语言冲突及解决对策的观察研究
- 九年级地理(真题改编)2027年下学期期中测试卷
- 四年级语文(说明文阅读)2027年上学期期中测试卷
- 2025年高职化学制药技术(制药技术进阶)试题及答案
- 2026年中医经络调理师(操作技能)试题及答案
- 2025年高职安全工程(风险评估)试题及答案
- 2025年中职(工程造价)工程概预算专项真题及解析
- 2025年中职(幼儿保育)幼儿游戏设计技能测试卷
- 2025年高职护理(儿科护理)试题及答案
- 医学生口腔种植术后疼痛管理课件
- 职业病防治案例警示与源头管控
- 兴国县2025年招聘城市社区专职网格员【23人】考试模拟卷附答案解析
- 统编版三年级上册道德与法治知识点及2025秋期末测试卷及答案
- 广西柳州铁路第一中学2026届化学高三上期末质量跟踪监视模拟试题含解析
- 2025年小学生日常行为规范、中小学生守则知识竞赛题(附答案)
- 重庆机场集团招聘笔试题型及答案
- 槟榔的危害课件
- 露天采石场安全监管
- 雪茄基础知识培训课件
- 投资研发产品协议书
评论
0/150
提交评论