没有合适的资源?快使用搜索试试~ 我知道了~
单片机实验-扩展存储器读写实验.doc
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
5星 · 超过95%的资源 1 下载量 177 浏览量
2022-07-06
02:16:19
上传
评论
收藏 1.96MB DOC 举报
温馨提示
试读
144页
单片机实验-扩展存储器读写实验
资源推荐
资源详情
资源评论
实验一 :扩展存储器读写实验
一.实验要求
编制简单程序,对实验板上提供的外部存贮器(62256)进行读写操作。
二.实验目的
1.学习片外存储器扩展方法。
2.学习数据存储器不同的读写方法。
三.实验电路及连线
将 P1.0 接至 L1。CS256 连 GND 孔。
四.实验说明
1.单片机系统中,对片外存贮器的读写操作是最基本的操作。用户藉此来熟悉
MCS51 单片机编程的基本规则、基本指令的使用和使用本仿真实验系统调试程序
的方法。
用户编程可以参考示例程序和流程框图。本示例程序中对片外存贮器中一固定地
址单元进行读写操作,并比较读写结果是否一致。不一致则说明读写操作不可靠
或该存储器单元不可靠,程序转入出错处理代码段(本示例程序通过熄灭一个发
光二极管来表示出错)。读写数据的选用,本例采用的是 55(0101,0101)与 AA
(1010,1010)。一般采用这两个数据的读写操作就可查出数据总线的短路、断
路等,在实际调试用户电路时非常有效。
用户调试该程序时,可以灵活使用单步、断点和变量观察等方法,来观察程序执
行的流程和各中间变量的值。
2.在 I 状态下执行 MEM1 程序,对实验机数据进行读写,若 L1 灯亮说明 RAM 读
写正常。
3.也可进入 LCA51 的调试工具菜单中的对话窗口,用监控命令方式读写 RAM,
在 I 状态执行 SX0000↓ 55,SPACE, 屏幕上应显示 55,再键入 AA,SPACE,屏
幕上也应显示 AA,以上过程执行效果与编程执行效果完全相同。
注:SX 是实验机对外部数据空间读写命令。
4.本例中,62256 片选接地时,存储器空间为 0000~7FFFH。
五.实验程序框图
实验示例程序流程框图如下:
六.实验源程序:
ORG 0000H
LJMP START
ORG 0040H
START:
MOV SP,#60H
MOV DPTR,#0000H ;置外部 RAM 读写地址
MOV A,#55H ;测试的数据一
MOV B,A
MOVX @DPTR,A ;写外部 RAM
MOVX A,@DPTR ;读外部 RAM
XRL A,B ;比较读回的数据
JNZ ERROR
MOV A,#0AAH ;测试的数据二
MOV B,A
MOVX @DPTR,A
MOVX A,@DPTR
XRL A,B
JZ PASS ;测试通过
ERROR: SETB P1.0 ;测试失败,点亮 LED
SJMP $
PASS: CPL P1.0 ;LED 状态(亮/灭)转换
MOV R1,#00H ;延时
DELAY: MOV R2,#00H
DJNZ R2,$
DJNZ R1,DELAY
LJMP START ;循环测试
END
实验二 P1 口输入、输出实验
一.实验要求
1.P1 口做输出口,接八只发光二极管,编写程序,使发光二极管循环点亮。
2.P1 口做输入口,接八个扭子开关,以实验机上 74LS273 做输出口,编写程序读取开关状
态,将此状态,在发光二极管上显示出来。
二.实验目的
1.学习 P1 口的使用方法。
2.学习延时子程序的编写和使用。
三.实验电路及连线
实验一时,P1.0-P1.7 接 L1-L8。
实验二时,P1.0-P1.7 接 K1-K8,PO0-PO7 接 L1-L8。CS273 接 8300H。
四.实验说明
1.P1 口是准双向口。它作为输出口时与一般的双向口使用方法相同。由准双向口结构可知
当 P1 口作为输入口时,必须先对它置高电平使内部 MOS 管截止。因为内部上拉电阻阻值
是 20KΩ~40KΩ,故不会对外部输入产生影响。若不先对它置高,且原来是低电平,则 MOS
管导通,读入的数据是不正确的。
2.延时子程序的延时计算问题
对于程序
DELAY:
MOV R0,#00H
DELAY1:
MOV R1,#0B3H
DJNZ R1,$
DJNZ R0,DELAY1
查指令表可知 MOV,DJNZ 指令均需用两个机器周期,而一个机器周期时间长度为 12/
11.0592MHz,所以该段程序执行时间为:
((0B3+1)×256+1)×2×12÷11059200=100.002mS
五.实验程序框图
主程序框图(1): 程序框图(2):
六.
1、主程序
ORG 0000H
LJMP START
ORG 0040H
START:
MOV SP,#60H
MOV A,#0FEH
ROTATE: MOV P1,A ;写 P1 口
RL A ;循环左移
LCALL DELAY ;延时
NOP
SJMP ROTATE
DELAY: ;延时子程序(1 秒)
MOV R0,#0AH
DELAY1: MOV R1,#00H
DELAY2: MOV R2,#0B2H
DJNZ R2,$
DJNZ R1,DELAY2
DJNZ R0,DELAY1
RET
END
2、读 P1 口程序框
ORG 0000H
LJMP START
ORG 0040H
START:
MOV DPTR,#8300H ;并行输出口地址
MOV P1,#0FFH ;因 P1 口是准双向口,所以把 P1 口作为
;输入口时,应先置高电平.
剩余143页未读,继续阅读
资源评论
- NHESFA2023-01-05资源内容详细,总结地很全面,与描述的内容一致,对我启发很大,学习了。
omyligaga
- 粉丝: 54
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功