内蒙古工业大学-单片机工程实践报告_第1页
内蒙古工业大学-单片机工程实践报告_第2页
内蒙古工业大学-单片机工程实践报告_第3页
内蒙古工业大学-单片机工程实践报告_第4页
内蒙古工业大学-单片机工程实践报告_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

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

文档简介

学校代码:单片机工程实践(第组)题 目存储性能测试(任务五)组长:张晶晶(自班)学号 :组员:王维栋(自班)学号 :宫振杰(自班)学号 :刘 敏(自班)学号 :指导教师:刘伟、裴岩、斯日古楞、吕少中韩海波、高鹏、王华超(研)、李金莹(研)设计时间:2013年7月1日2013年7月12日一、设计目的:()通过一个以 位单片机为核心的模拟量数字表的硬件调试过程,完成蜂鸣器自检、 四位半七段 自检、键盘自检及的储存性能测试掌握单片机应用系统的设计思想和方法。()学习应用系统软件的模块化设计方法,通过源程序的编辑、汇编或编译、链接、仿真调试,完成给定的任务。()通过上述过程提高学生工程实践能力和素质。二、设计任务:()蜂鸣器自检、要求:利用程序实现两种以上声音、任务分工: 总体流程及流程图的设计(王维栋)程序编写(张晶晶)程序审核(宫振杰)程序调试(王维栋、刘敏)()七段 显示器自检、要求:确定显示器每一段均正确、任务分工: 总体流程及流程图的设计(王维栋)程序编写(张晶晶)程序审核(宫振杰)程序调试(刘敏、王维栋)()键盘自检、要求:确定键盘是好的、任务分工: 总体流程及流程图的设计(张晶晶)程序编写(王维栋、刘敏)延时子程序(宫振杰)程序审核(宫振杰)程序调试(王维栋、张晶晶)()存储性能测试功能:①测试存储性能,并作出评价②测试程序与自检程序通过拨盘连接起来。硬件环境: 、显示器等1/20任务分工:总体流程图及程序设计(王维栋)主程序编写(刘敏)三个自检子程序的整理(宫振杰)查阅资料(张晶晶,王维栋)主程序的编写(宫振杰)读程序编写(张晶晶)写程序编写(王维栋)读写显示程序编写(刘敏)程序整合(张晶晶、刘敏)程序调试(王维栋,刘敏,张晶晶,宫振杰)三、框图:.硬件编程框图及相关说明蜂鸣器自检硬件框图硬件环境:蜂鸣器、说明:执行指令后,为“0”,晶体管导通,蜂鸣器得电发声。据此可以判断蜂鸣器电路是正确的。注意:如果蜂鸣器未带振荡器,要想让蜂鸣器产生声音必须要让晶体管按照一定的频率不断地导通、截止交互变化,即不断地输出“”、“1”,输出的频率不同时,声音也不同。如果蜂鸣器带振荡器,则只需控制其通、断即可蜂鸣器。键盘自检硬件环境:245L、、说明: 显示器由若干个发光二极管组成,它有共阴极和共阳极两种结构。该图结构为共阳极,且是动态扫描显示(动态显示是一位一位地轮流点亮各位数码管,这种逐位点亮显示器的方式称为位扫描。 ),端为高电平时,显示器工作,反相驱动器的功能是使稳定的亮。口控制显示什么字形的即字形口, 、 、、是选择字位的即哪位亮,的作用是泄流。2/20245L七段显示器自检硬件环境:译码器、等字型口字位口说明:单片机上电复位时,口为高电平,有效及三态门状态为打开状态,此时可以采集键盘、拨盘信息了有效关闭三态门。为仪表键盘(用户使用)拨盘(自检开关) ,通过上拉电阻使()闭合为“”打开为“”。2、主程序框图、子程序框图及相关说明主程序流程图:3/20开始采集拨盘?蜂鸣器自检?自检?键盘自检?采键?读存储器K2?送显示 采键释放写存储器将数送4/20子程序存储性能测试流程图:开始采键键盘按下按下送人读指令送入地址读数据将数据送

按下采键释放送入写使能指令送入写指令送入地址将数据写入存储器送显示结束 5/20子程序蜂鸣器自检流程图:开 始响第一种声音延时喇叭不响延时响第二种声音延时喇叭不响延时结 束子程序自检流程图:6/20开 始选中调显示选中调显示选中调显示选中调显示选中调显示结 束7/20子程序键盘自检流程图:开始采集键盘键盘按下响一声 K2响两声响三声响四声8/203、程序清单:关显示口置 ;选中第位打开三态门关闭三态门0F;屏蔽键盘:;每一段循环点亮0F;是否拨盘拨下MAIN::MAIN:MAIN;****************************:键盘自检程序*****************************MAIN::,MAIN;读键盘MAIN;键盘是否按下?;******************************蜂鸣器自检程序:;延时*******************************;第二次读键:;第二次判断键盘按下否?;蜂鸣器响;延时:按下;蜂鸣器不响;延时: 按下;****************************** : 按下自检程序*******************************:选中第一位;每一段循环点亮 按下选中第位选中第位;蜂鸣器响声选中第位9/20: ;蜂鸣器响声 :MAIN;当按下时返回主程序: ;蜂鸣器响声 : ; 读键盘: ;蜂鸣器响声;******************************向串行写入位数据,入口参数:数据;**************************** *******************************存储性能测试 :*****************************;引脚及控制指令码定 :控制指令码定义;*****************************串行读出位数据,出口参数数据******************************:存储器的首地址 :写入到的数据:读键按下读存储器;******************************向内部存储器串行写入一个字节数: 按下 据: ; 防连击,防止一直写存储单元 *******************************; 写存储器:10/200F:;将要写的数据送显示:;*****************************从内部存储器串行读出一个字节数据出口参数:数据******************************:0F:: ; 读出的数据送显示:11/20,:::0F::: :::: ::0F::4、设计体会这两周的实训可以用十六个字来概括“山穷水尽疑无路,柳暗花明又一村”。首先第一天的自检程序我们的延时没调好,预想的多种声音没响出来,最终以令我们失望的成绩告终,但是这次没有打消掉我们的积极性,我们相互鼓励, “没关系,还有机会”。12/20这里面让我体会到了团队的力量。第二天的,我们信心满满,想出新颖的动态循环左移的思路,验收时老师一往下坐“这个思路不好呀,而且程序又臭又长”,顿时,感觉我们的努力又白费了,这次的结果当然不言而喻了,老师走之后我们全体瘫软的坐在各自的位置,这次我们真的被打击的没有信心了,都不知道接下来该怎么走。但是转机出现了,下午我们开会,第三次就朝着分做,不要高分了,结果打了。这让我明白,要夯实基础,再构建其他新思路,之前都好高骛远了。最后的大任务中让我认识到,每个人都有自己的优点,应该大胆的分配任务,相信对方。年月日张晶晶在为期两周的单片机工程实践,我们成功完成了三项自检和一项大任务的编程、调试任务。在蜂鸣器自检程序中,延迟时间的设计是使蜂鸣器发出不同声音的关键,在这之前,我们没有仔细验算时间,导致我们预计的种声音没有成功,最后都混在了一起,经过此次教训,在的有关蜂鸣器的子程序中,我们成功调试出理想的声响。但是,在自检中,却没有调整好时间,导致预期的动态扫描显示不理想。由于前三次自检程序的设计,使我们在大任务的设计编程中得心应手,在小组讨论一致的流程图决定后,我们很快的做出了主程序以及相应的调用子程序,并且完美的实现了预期结果,自检以及的存储新能的测试。在这次工程实践中,从中我不仅对单片机硬件有了基本的了解,对单片机相应的汇编语言也有了一定的操作能力。年月日宫振杰单片机工程实践已经结束了,至今仍旧回味无穷,老师为我们提供了至此来之不易的锻炼机会,我们也非常认真的对待了这次实践,并付出了最大的努力,刚开始我们认真的编写调试程序,在验收的时候并没有得到老师的肯定,成绩不是很理想,但是我们并没有气馁,愈挫愈勇,集合大家的力量,一起编写调试程序,经过大家的努力,最终取得了一定的进步。自检编写程序时花了巨大努力,但是最后的程序结构不是很好,在以后的编写程序的时候,要注意程序结构的优化,在键盘自检中我们在完成键识别,键保护的基础上实现了键保护的功能,但是程序也存在一些应该优化的地方。在大任务中我们在看门狗存储性能测试中遇到了点问题,就是的显示错误,经过调试终于成功了。在大任务的各个子程序的衔接过程中也遇到了困难,最后经过组员的共同讨论,成功的实现了各个子程序的衔接,完成了任务。可以说在这次单片机实训中我们的能力得到了巨大的提高,这与老师的努力是分不开的,如果我们大学的每一天都像单片机实践课程一样的话,相信在我们走向社会的时候,一定能够做出一番成就来。年月日王维栋单片机工程实践真正考察了我们的编程能力和解决实际问题的能力。第一个任务是蜂鸣器的自检,我们提前编好自检程序之后,信心满满的拿到实验室去调试,但是结果却没有想象中的那么顺利,要求实现两种声音,我们设计了六种,但是蜂鸣器的声音不好听,接着就开始一直调试延迟时间,延迟时间的调整比想象中复杂的多,经过一上午的实践,也令我学到了相关的知识,第二天的LED中,经过辛苦的编程以及验收之后,我们才意识到一个程序的结构和框架是很重要的,还有接13/20下来的键盘自检,在刘老师的提问中,我们才发现许多问题我们并未考虑的到,比如程序执行时有优先顺序,我们就没有考虑到。最后的大任务中,我们在组长的带领下,人人负责一部分内容,之后整合起来。在这个过程中,我们发现整合大程序是一件很复杂的事情,不过还是经过全组人的努力,最终完成了大任务。在这次实践中,除了学习到了单片机的相关指令,我们也认识到了程序框图的重要性,有了程序框图再编程序,思路是很清晰明了的。同时,我还学习到了一件很重要的事情,那就是团队合作的力量是很强大的。我希望自己能够在不断地努力与学习中,更加充实自己的头脑,把学到的理论性的知识,不断的应用到实践中去。年月日刘敏七、参考资料、《单片机系统综合设计与实践》教材 主编:裴岩 刘利民内蒙古大学出版社。、《89C实用教程》主编:张晓乡14/20、看门狗芯片中文手册、看门狗芯片的应用、芯片中掉电保护资料、单片机 作者:刘伟附录:的说明书一、主要功能的说明书:片选15/20:同步时钟输入;:串行输出;:串行输入:写保护;:地;:电源;:复位输出;(一)的状态寄存器描述器件的当前状态,各位意义如下表所列:其中,、是看门狗定时时间设置位;、是存储单元写保护区设置位;是只读标志,表明写使能开关打开;也是只读标志,代表芯片内部正处于写周期。电复位时,各位都被清零。(二)芯片功能包括种(这里只选取一个作为介绍):串行。芯片内含字节存储单元,万次可靠写,数据保持时间年。设计了种保护方式防止误写。包括:写保护引脚,当引脚被拉低时,内部存储单元状态寄存器都禁止写入;存储区域写保护模式,通过对状态寄存器的、位的设置,可以选择对不同的存储区域进行写保护;在进行任何写操作前都必须打开写使能开关,而且在上电初始化写操作完成时,写使能开关自动关闭。显然,在几方面的保护之下,产生误写的可能性极小,下表是、组合的含义。写保护的单元地址没有保护~~~对的操作是通过根口线、、和进行同步串行通信来完成的。是外部输入的同步时钟信号。在对芯片改指令或数据时,时钟前沿将引脚信号输入;在读数据时,时钟后沿将数据位输出到引脚上。(三)芯片内部共有条指令,如下表所列:16/20命令名称 命令格式 内 容打开写使能开关关闭写使能开关A 读状态寄存器A 写状态寄存器A 读存储单元A 写存储单元二、的时序(一)的读时序读存储器时,首先将置为低电平,选择该器件。然后送一个指令(读存储器指令),并将位的地址送入,读指令中的第三位(),用来选择存储器的上半区或下半区。在读存储器指令和地址送完之后,选中地址的存储单元的数据就通过线串行输出。如果始终继续提供,下一地址单元的数据将会被按顺序读出,地址自动增加,到最高地址后回到单元。读周期在变为高电平后终止。(二)的写时序写存储器时,将置为低电平,选择该器件。首先送一个指令(允许写操作指令)。接着将拉至高电平,然后再一次将置为低电平,写入指令(写存储指令),并将位的地址送入,写指令中的第三位(),用来选择存储器的上半区或是下半区。紧跟着送入位要写入的数据。在操作期间必须保持低电平。写入结束后,必须将拉至高电平。读出和写入时,串行的数据都是高位在先。17/20三、硬件电路:说明:向写入一个数,看是否可以从读出次数,如果读出与写入的数相同,则说明的是正常的读写存储单元的子程序;****************************** 向串行写入位数据,入口参数:数据18/2

温馨提示

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

评论

0/150

提交评论