3216.片外数据的流动与存储计算机应用+嵌入式课程设计_第1页
3216.片外数据的流动与存储计算机应用+嵌入式课程设计_第2页
3216.片外数据的流动与存储计算机应用+嵌入式课程设计_第3页
3216.片外数据的流动与存储计算机应用+嵌入式课程设计_第4页
3216.片外数据的流动与存储计算机应用+嵌入式课程设计_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

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

文档简介

1、 计算机科学与技术学部课程设计报告题目(中文) 片外数据的流动与存储 (英文)chip flow and storage of date姓 名 学 号 学 部 计算机科学与技术学部 专业、年级 计应0702班 指 导 教 师 计算机科学与技术学部目 录 第一部分:基本情况和内容 1组员基本情况与内容 3 2 与课程设计相关的课程学习情况3 3 组内成员中当任班干部的姓名与职务情况3 4 指导教师对课程设计的评语3 第二部分:报告内容与总结 1选题描述4 2设计过程5 3程序详细设计11 4总结报告12 5程序附录 13 第三部分:设计说明书 14第一部分:基本情况与内容1 组内成员基本情况题目

2、片外数据的存储同组队员信息学号姓名专业有效联系方式学生1学生2学生3学生4学生5学生6学生7注:有效联系方式主要是电话和e-mail两项,根据组内成员的多少,调整表的大小。2与课程设计相关的课程学习情况(分别列出已学过的课程)课程1 嵌入式系统课程2 汇编语言课程3 微机接口 课程 4 plc 原理及程序设计课程 5 计算机组成原理3组内成员中当任班干部的姓名与职务情况4指导教师对课程设计的评语 教师: 年 月 日第二部分:报告内容选题描述l 现状概述(现象、环境、条件)众所周知mcs-51系列cpu里大多有一个4k的rom 8k的eprom和128b/256b的ram(有的则没有rom),当

3、我们需要存储更大容量时就必须进行片外的扩充或者想将数据传到片外时就得再接一个外部存储器(片内片外的rom是实行统一编止的)。当访问外部存储器(简称外部数据存储器)时,使用的是movx指令,若执行的是“movx a,dptr”或“ movx dptr,a”指令,则此地址就是dpl(数据指针的低8位);同时,在p2口上出现的是dph(数据指针的高8位)。若执行的是“movx a,ri”或“movx ri,a”指令,则ri的内容为低8位地址,而p2口线上将是p2口锁存器的内容。当rd/wr有效时,p0口将读/写数据存储器中的数据。 在这种情况下, 由p2口提供高8位地址,p0口分时提供低8位地址和用

4、作8位双向数据总线。片外数据存储器ram的读和写由51系列的rd(p3.7)和wr(p3.6)信号控制。在第一个机器周期的s2、p2时刻,外部低8位数据锁存器74ls373利用单片机的ale信号下降沿将单片机p0口输出的低8位地址信号进行锁存(暂存),为外存储器提供低8位地址信号。以指令movx a,dptr指令为例,在s5、p1时刻,指令经过编译后,将dptr中的内容(即外部数据存储器的地址),分别经p0、p2口输出,并在 s5、p2时刻74ls373将p0口中低8位地址锁存,与p2口共同为外部数据存储器提供一个完整的16位地址信号从而使单片机系统的寻址范围达到64kb。在指令执行第2个机器

5、周期的s1,p1时刻,外部数据存储器ram在单片机发送的rd低电平信号作用下,将选中的单元中的数据送到p0口传送到累加器a。l 功能要求(达到的功能要求、知识要求、使用工具和器件是什么)功能要求:片外数据的存储与传送知识要求:要实现片外数据的流动存储就首先必须熟练一般的汇编语言,对微机接口及单片机方面的知识都要有一定的了解,而且又有一定的数字电路基础,要实现片外数据的存储,我们必须得在mcs-51系列的cpu上外挂一个数据存储器使用工具:在此我们选的是51系列cpu及静态ram6116(2k*8).74ls373(外部低8位数据锁存器)调试软件:在mcs51仿真软件上进行调试l 规范使用(如何

6、使用才能保证设计效果) 要保证设计所达到预期的设计效果就必须规范使用,首先得把握好题目的意思,如各方面的要求,功能的实现,数字及代码的规范使用,应该达到的效果,而且操作应该在一个相对比较好的环境下(确保器件的齐全,可用,无故障),在实验之前对元器件进行检查以确保实验的正常进行,拿取集成电路时请尽量不要触碰到核心芯片及其引脚。设计过程l 总体框图(由几部分组成,各部分的联系及次序,最后体现整体流程图)(1)该课程设计主要由选题描、设计过程、程序详细设计、总结报告、程序附录五部分组成,各个部分的联系是逐层递进的,完成上一部分才能进行下一部分的工作,大概框图如下:选描述设计过程硬件设计存选题描述设计

7、过程硬件设计包括以下三个分配存储分配出错处理设计包括以下三个程序详细设计总结报告程序附录主程序设计 2.程序流程图(图右)累加器a赋值a中的内容送到片外dptr地址加1r0加1r0=0?计数器r0原始清零,并指针赋值开始n结束yl 硬件设计(将要使用的接口集成电路、cpu、数据存储器、程序存储器如何构成一个整体,系统资源如何统一安排等。)片外数据的流动与存储设计硬件电路主要由以下部分组成:1. 微机系统(mcu)2. 信号锁存单元(74ls373)3. 外部存储单元(ram)等mcs-51系列cpu负责数据的传输与控制,将片内的数据通过其p0,p2口输出,其中p0是输出低八位地址(因为p0口线

8、既要用作低八位地址总线同时还要分时复用成数据总线,因此需要加一个8位数据锁存器,先把低8位地址送锁存器暂存然后由锁存器给系统提供低八位地址),p2口输出的是高八位地址(本题只需三位),然后将数据存到外部数据寄存器ram中。a0a10地址输入线o0o7双向三态数据线ce片选信号输入线,低电平有效,且ce为低电平时才选中该片oe读选通信号输入线,低电平有效we写允许信号是输入线,低电平有效vcc工作电源,电压为+5vgnd使能控制端6116为2k*8位静态sram芯片,在此作为片外数据存储器使用(6116存储容量只2kb,引脚数24只,工作电压5v,典型工作电流35ma,典型维持电流5ma)方式

9、信号ce/oe/we/ o0o7读vil vil vih数据输出写 vil vih vil数据输入维持 vih 任意 任意高阻态(6116操作控制图) 设计采用的电路图如下所示:oe/we/a8a9a10a0a76116(sram)i/00i/01i/02i/03i/04i/05i/06 ce/i/07 p3.7(rd/)p3.6(we/)p2.0p2.1p2.2p2.3p2.4p2.5p2.6p2.7mcu(微处理器) p0.0 p0.1 p0.2 p0.3 p0.4 p0.5 p0.6 p0.7ea/ ale 74ls373do q0 q7d7g oe/ g g (逻辑电路图)l 存储分配

10、(片内、片外用户数据区的划分与存储,片选信号的正确使用。)7fh用户ram区30h2fh位寻址区20h1fh寄存器组0fh (1)由图左我们能看出片内ram的分配: 1.80hffh:专用寄存器区,128字节 2.30h7fh:用户区,80字节 3.20h2fh:位,寻址区,16个字节 4.60h1fh:四组寄存器,32个字节(图左1) ffffh64kbram(i/o)0000h(2)我们从图左2可看出片外用户数据区地址划分为0000ffffh,存储空间大小为16kb(以扩展的最大空间为例) (图左2)(3) 6116的片选信号端为ce/,低电平有效,所以我们可以给它送一个低电平或者直接接地

11、即可(此处直接接地)l 出错处理设计(估计可能出差的情况分析、出错以后处理对策方案。)在各种51系列单片机测控系统中,ram是其中一个很重要的组成部分。而在本题中片外数据的存储与流动涉及到片外,所以外部寄存器的好与坏是关系到本次设计能否成功的决定性因素,ram的正常与否,直接关系到系统能否正常工作。在系统开始正常工作之前,如能对系统ram进行自检,则可有效的避免因ram失常对测控系统带来的危害。因此,对系统ram进行自检是非常重要的。测试外部存储器是否出现故障:方法1:首先将mcs51中的数据写到外部存储器ram中(写到任意单元中),然后再读出写入得内容,若对任意区读出和写入的内容都一致的话,

12、则表示ram存储器完好,无故障,否则有故障,若有故障,此时则应根据读写结果分析原因,故障原因有可能是工作电源没有加上或地址线数据线有错位、开路、短路、或读、写信号线没有连接好等等 有一资料上介绍了另一种方法,方法2:程序测试法(此方法是首先向整个数据区写入同一数据,再一一读出比较,若不一样,则出错)。 测试程序如下:org 0001hstart: mov a,#55h ;准备向数据区2000h3fffh写55h mov b,a ;保存在b中 mov dptr,#2000h ;ram首地址2000hwr: mov a,b ;取出要写至ram的数据 movx dptr,a ;写入ram的一个单元中

13、 inc dptr ;dptr加1 mov a,dpl ;取地址低字节 jnz wr ;不为0,转wr继续 mov a,dph ;取地址高字节 cjne a,#40h,wr ;40h(最高地址+1的高字节) mov dptr,#2000h ;等于,即写完,重新置ram首地址rd : movx a,dptr ;读出单元的数据 cjne a,b,err ;与写入的数比较,不相等则出错 inc dptr ;加1 mov a,dpl ;判别是否末地址 jnz rd mov a,dph cjne a,#40h,rd good: setb p1.0 ;全部比较完,正确 sjmp gooderr : set

14、b p1.7 setb err ;出错处理运行该程序时如果d0二极管亮,说明外部ram正常,否则,二极管d7亮,说明有故障。还有一种网上文献所做的:org 0000hljmp startorg 0040hstart: mov sp,#60h mov dptr,#1000h ;置外部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

15、,b jz pass ;测试通过error: setb p1.0 ;测试失败,点亮l1 sjmp $ ;停机pass: cpl p1.0 ;l1状态(亮/灭)转换 mov r1,#00h ;延时delay: mov r2,#00h djnz r2,$ djnz r1,delay ljmp start ;测试循环 end 程序详细设计l 主程序设计i. 要完成的功能简述(符合处理程序流程图) 将片外ram的3000h到30ffh单元的内容设为7fh,程序从0050h开始ii. 程序代码和注释(程序代码具有独特性)org 0050h ;程序启动地址main: mov r0,#00h ;将计数器r0

16、清零 mov dptr,#3000h ;给dptr存储器指针赋初值 loop1: mov a,,#7fh ;累加器a赋值为7fh movx dptr,a ;将存储器a中内容送到片外 inc dptr ;单元地址自动加1 inc r0 ;计数器r0的值增1 cjne r0,#00h,loop1 ;判断是否跳转执行循环,r0不为零则执行循环,为0则继续执行下条指令 end ;程序结束标志 l 接口设置i. 使用的集成电路与达到的要求我们使用的集成电路时最简单的单片机电路来实现片外数据的存储与流动,要求我们将51系列cpu的p0口当做输入第八位地址用,同时还要分时复用成数据总线,p2口当做高八位地址

17、所用(在此只需取高三位地址限于所选的芯片)。l 程序的调试i. 调度的工具我们在此应用的调度工具是mcs-51仿真软件使用条件:在windows平台下进行操作调度步骤:首先将程序代码调入软件中进行调试,先构建再编译,装载程序后,如其能运行,则按f8观看数据的变化,在程序运行中观察r0,a,code的值,程序运行后在打开xdata窗口观察xdate的值ii. 调试数据的正确性分析 经调试打开xdate窗口3000h30ffh单元中的值都为7fh,我们可以下出结论该程序设计正确,达到设计的目的。总结报告l 用文字概括课程设计的全过程(简单扼要、文体合适)本次设计片外数据的存储与流动,实际上是扩展外

18、部存储器,已满足用户的需求,片外数据的流动与存储课程设计重点是理论与实际相结合,不单单只是书上的一条条分离的指令。课程设计是培养学生综合运用所学知识,发现、提出、分析和解决实际问题,是对学生实际工作能力的具体训练和考察过程,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。l 经验与教训 锻炼实践能力的重要环节,回顾起此次的课程设计,我仍感慨颇多,的确,从选题到定稿,花了将近五个星期,但是可以学到很多东西,不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,比如说对汇编语言掌握得不好通过这次课程设计之后,一定把以前所学过的知识重新温故。这次课程设计终于顺利完成了,在设计中遇到了很多编问题,最后在同学的帮助和老师的指导下终于游逆而解。最后,对给过我帮助的所有同学和各

温馨提示

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

最新文档

评论

0/150

提交评论