存储器扩展
来源:互联网 发布:中国进口美国数据 编辑:程序博客网 时间:2024/06/01 10:26
要求
用STC89C52单片机扩展一片EPROM27256和一片SRAM62256,实现片内外数据传送。
思路:
先计算出扩展存储器的地址,用P2.7作为片选端。
C语言
#include <reg52.h>#define uint unsigned int #define uchar unsigned charvoid delay(uint z){ uint i; for(i=0;i<z;i++);}void main(){ uchar idata *p=0x30; uchar xdata *q=0x0000; uint i; for(i=0;i<32;i++) *(p++)=i; p=0x30; //进行数据的传送 for(i=0;i<32;i++) *(q++)=*(p++); P1=0X0000; delay(20000); while(1) { q=0x0000; for(i=0;i<32;i++) { P1=*(q++); delay(20000); } }}
汇编:
ORG 0000HDADDR EQU 30HXADDR EQU 0000HCOUNT EQU 1FHMAIN: MOV SP,#60H MOV R0,#DADDR MOV R2,#COUNTINIT: MOV A,#00HLOOP1: MOV @R0,A INC A INC R0 DJNZ R2,LOOP1DXMOVE: MOV R0,#DADDR MOV DPTR,#XADDR MOV R2,#COUNTLOOP2: MOV A,@R0 MOVX @DPTR,A INC R0 INC DPTR DJNZ R2,LOOP2DXMOVE1: MOV DPTR,#XADDR MOV R2,#COUNT LOOP3: MOVX A,@DPTR MOV P1,A LCALL DELAY INC DPTR DJNZ R2,LOOP3 AJMP DXMOVE1DELAY: MOV R7,#255D1: MOV R6,#255D2: DJNZ R6,D2DJNZ R7,D1RETEND
仿真图:
阅读全文
0 0
- 存储器扩展
- 存储器扩展实验
- 51单片机程序存储器扩展
- S3C2410存储器扩展(1)——SDRAM
- S3C2410存储器扩展(2)——NorFlash
- S3C2410存储器扩展(3)——NandFlash
- S3C2410存储器扩展(3)——NandFlash
- TMS320F2812外部接口分析与存储器扩展
- 具有分页机制的存储器扩展实验
- 微机接口实验二:存储器扩展实验
- 存储器
- 存储器
- 存储器
- 存储器
- 存储器
- 存储器
- 存储器
- 存储器
- 深入理解Java:SimpleDateFormat安全的时间格式化
- bzoj 1257 [CQOI2007]余数之和sum 数学,分段优化
- 区块链来了:未来注定颠覆我们的生活
- JAVA远程(ssh)执行linux脚本
- 给定一个字符串。求最长的无重复子字符串长度。
- 存储器扩展
- SD卡的SPI模式的调试
- webSocket编程实现与安卓、ios通信
- lintcode 211 字符串置换
- Java,Pyhon,Scala比较(一)map,reduce
- Servlet组件详解
- W7 32位,java Rmijdbc远程连接其他电脑上的access数据库
- Linux 下挂载硬盘的 方法
- 讲讲Linux系统工程师的职业规划