- 3
- 0
- 约1.64千字
- 约 14页
- 2019-11-28 发布于上海
- 举报
;8.4 静态数据存储器的扩展
在单片机应用系统中,外扩的数据存储器都采用静态数据存储器(SRAM),所以只讨论SRAM与89C51的接口。
8.4.1 常用的静态RAM(SRAM)芯片
典型型号有:6116、6264、62128、62256。+5V电源供电,双列直插封装,6116为24引脚封装,6264、62128、62256为28引脚封装,引脚如图8-15。
各引脚功能:
A0~A14:地址输入线。
D0~D7:双向三态数据线。
CE*:片选信号输入。对于6264芯片,当26脚(CS)为高电平时,且CE*为低电平时才选中该片。
OE*:读选通信号输入线。
WE*:写允许信号输入线,低电平有效。
Vcc:工作电源+5V
GND:地;图8-15常用SRAM芯片引脚图;译码选通法扩展,如图8-19所示。
;图8-13 外扩一片27128的接口电路图 ;
图8-18为线选法扩展外部数据存储器的电路。 ;【例8-3】 采用译码器法扩展2片8KB EPROM,2片8KB RAM。EPROM选用2764,RAM选用6264。共扩展4片芯片。;【例8-2】 采用线选法???展2片8KB的RAM和2片8KB的EPROM。RAM选6264,EPROM选2764。扩展接口电路见图8-20。 ;8.5.2 外扩存储器电路的工作原理及软件设计
2. 单片机片外数据区读/写数据过程
例如:把片外6000H单元的数送到片内RAM 50H单元,程序如下:
MOV DPTR,#6000H
MOVX A,@DPTR
MOV 50H,A
例如:把片内50H单元的数据送到片外4000H单元中,程序如下:
MOV A,50H
MOV DPTR,#4000H
MOVX @DPTR,A
;【例8-1】 编写程序将片外数据存储器中5000H~50FFH单元全部清零
方法1:
用DPTR作数据地址指针,同时使用字节计数器。(计数控制循环)
MOV DPTR,#5000H ;设置数据块指针的初值
MOV R7,#00H ;设置块长度计数器初值
CLR A ;A置写数据00H
LOOP: MOVX @DPTR,A ;把当前单元清零
INC DPTR ;地址指针加1
DJNZ R7,LOOP ;减1,若不为0则继续清零
HERE: SJMP HERE ;执行完毕,原地踏步;例8-1 编写程序将片外数据存储器中5000H~50FFH单元全部清零
方法2:
用DPTR作为数据区地址指针,但不使用字节计数器,而是比较特征地址。 (条件控制循环)
MOV DPTR,#5000H ;设置数据块指针的初值
CLR A ;A置写数据00H
LOOP:MOVX @DPTR,A ;把当前单元清零
INC DPTR ;地址指针加1
MOV R7,DPL ;取新地址值低字节
CJNE R7,# 0 ,LOOP ;与末地址+1的低字节比较,未完继续
HERE:SJMP HERE
;【例B4-2】 有一组数据,存放在30H为首地址的内存单元,数据长度为12个。试将每一个数取出加1,依序存放到以50H为首地址的单元中。;作业五 :
P.140 — 4. 6. 7. 8. 11. 13. (对每个答案仔细思考为什么)
补充4-4:编写完整的应用程序,将片外数据存储器2A01H开始的24个单字节数据依次传送到片内32H开始的单元中。
补充8-1:请列出详细的地址分析过程,求出下列存储器片选译码电路各输出端所对应的地址区域。
;
原创力文档

文档评论(0)