用EPROM单片机ROM实验扩展_第1页
用EPROM单片机ROM实验扩展_第2页
用EPROM单片机ROM实验扩展_第3页
用EPROM单片机ROM实验扩展_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

试验四试验四 用用 EPROMEPROM 扩展单片机扩展单片机 ROMROM 实验实验 实验项目名称 实验项目名称 用用 EPROMEPROM 扩展单片机扩展单片机 ROMROM 实验实验 实验项目性质 普通实验项目性质 普通 所属课程名称 所属课程名称 实验计划学时实验计划学时 2 2 学时学时 一 实验目的一 实验目的 1 用 EPROM27C64 扩展 AT89C51 单片机 ROM 27C64 为外 ROM 2 用 PROTEUS 设计 仿真 AT89C51 单片机 ROM 的扩展实验 3 借助 PROTEUS VSM 的虚拟逻辑分析仪 观测单片机访问外 ROM 即 27C64 时地 址 数据和控制总线的信号状态 二 二 PROTEUSPROTEUS 电路设计电路设计 27C64 扩展 ROM 电路原理图如图 4 1 所示 注意 本原理图中的复位电路和振荡电 路均未画 整个设计都在 ISIS 平台中进行 1 从从 PROTEUS 库中选取元器件库中选取元器件 AT89C51 BUS 总线式的单片机 RES 电阻 7SEG BCD GRN 带 BCD 译码七段绿光数码管 CAP CAP ELEC 电容 点解电容 CRYSTAL 晶振 74LS373 八 D 锁存器 27C64 EPROM 存储器 图图 4 1 27C64 扩展外扩展外 ROM 电路原理图电路原理图 2 放置元器件 放置电源和地 连线 元器件属性设置 电气检测放置元器件 放置电源和地 连线 元器件属性设置 电气检测 所有操作都是在 ISIS 中进行 它们都与第 3 1 节相似 故不详述 但要注意总线标注 要匹配 标注方法参看第 3 4 2 节 3 6 2 节 EA 脚接正电源 4 1 3 源程序设计 生成目标代码文件源程序设计 生成目标代码文件 1 源程序设计源程序设计 经 ROM 扩展后的单片机系统 其程序存储器 ROM 分内 ROM 单片机 和外 ROM 27C64 两部分 本实验 AT89C51 内 ROM 为 4KB 地址从 0H 到 0FFFH 外 ROM 27C64 为 8KB 地址从 0H 到 1FFFH 所以程序设计也要分别设计单片机内 ROM 源 程序和外 ROM 27C64 源程序 分别生成目标代码文件 分别写入单片机内 ROM 和外 ROM 27C64 中 图图 4 2 源程序添加结果源程序添加结果 通过菜单 Source Add Remove Source Files 新建两个源程序文件 2764 ASM 和 P2764 ASM 如图 4 2 所示 通过菜单 Source 2764 ASM Source P2764 ASM 分别打开各自的源程序文 件 且分别使用编辑器 SRCEDIT 设计程序 现举一简单例子如下 1 单片机源程序设计 ORG 0 LJMP 1000H END 2 外存储器源程序设计 ORG 1000H 数码管循环显示 0 1 F MOV R2 0 MOV A R2 STAR MOV P1 A 1 个机器周期 INC R2 1 个机器周期 MOV A R2 1 个机器周期 ANL A 0FH 1 个机器周期 SJMP STAR 2 个机器周期 END 每个源程序编好后 都单击按钮保存源程序文件 2 生成目标代码文件生成目标代码文件 通过菜单 Source Build ALL 编译源程序 生成目标代码文件 2764 HEX P2764 HEX 若编译失败 对程序修改调试直至编译成功 四 四 POTEUSPOTEUS 仿真仿真 1 1 加载目标代码文件加载目标代码文件 1 加载目标代码文件 对 AT89C51 单片机先右后左击 打开其属性编辑窗口 在 Program File 栏中添加 目标代码文件 2764 HEX 在 Clock Frequency 栏中输入晶振频率为 120Hz 2 加载 27C64 目标代码文件 对 27C64 先右后左击 打开 27C64 的属性编辑对话框 在映像文件 Image File 栏 中输入外 ROM 程序的目标代码文件 P2764 HEX 如图 4 3 所示 图 4 3添加外 ROM 代码 2 2 加载目标代码文件加载目标代码文件 单击按钮 启动仿真 仿真运行片段如图 4 4 所示 从单片机源程序和外 ROM27C64 源程序可看出 启动仿真后 因单片机的 EA 脚接电源 从单片机内 ROM 地址 0H 开始执行指令 LJMP1000H 因内 ROM 的最大地址为 0FFFH 而外 ROM27C64 的地址从 0H 到 1FFFH 当指令地址大于 0FFFH 时就自动转到外 ROM 中去执行程序 所以 执行 LJMP1000H 是跳到外 ROM27C64 的地址 1000H 处执行外 ROM27C64 中的程序 它是令数码管不断循环显 示 0 1 F 的程序 都在外 ROM27C64 中执行 这正反应了 扩展单片机 ROM 实验 的意义 图 4 4用 EPROM 扩展单片机 ROM 实验的仿真片段 若要观察外 ROM27C64 中程序的机器代码 可在启动仿真后单击仿真暂停按钮 再通过菜单 DEBUG Memory Contents U2 则弹出显示外 ROM27C64 机器代码的存储器内 容窗口 如图

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论