单片机电子钟实训报告_第1页
单片机电子钟实训报告_第2页
单片机电子钟实训报告_第3页
单片机电子钟实训报告_第4页
单片机电子钟实训报告_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

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

文档简介

XXXXXXXX大学XXXXX学院《单片机》实训报告专业班级学号姓名组号实验室成绩评定老师签名20XX年XX月XX日实训目的:掌握汇编语言程序设计和调试方法,熟悉键盘操作。掌握RAM中的数据操作。掌握程序设计方法。掌握简单的数值转换算法。了解单片机的结构,能利用单片机的内部硬件资源和外围常用器件进行小型实验,体会利用单片机汇编语言开发系统的工作过程,达到与毕业后实际工作情况一致的效果,彻底完成与毕业后实际工作环境“接轨”的目的实训任务:1、选定题目:设计一个电子时钟,格式为:XXXXXX由左向右分别为时、分、秒,利用单片机的定时器和外围的数码显示电路,以便可以进一步掌握定时器的使用和编程方法,进一步掌握中断服务程序的编程方法,进一步掌握数码显示电路的编程方法;2、理清思路,10000次就是1S,然后对秒计数得到分和小时值,画出主程序定时中断服务程序的框图,从而领断服务程序的原理,定时器每100uS中断一次,对中断次数进行计数,100uS计数框图,画出并着手编写该会中子程序;3、学会用伟福软件调试程序,并用该软件菜单的各项调试工具和窗口;结合硬件和软件,进行整体调试;数据转化为BCD码并显示程序流程图4、流程图:(自己弄)实训要求:1、实训要求①通过系统设计和调试实训等要,求获得单片机熟练的操作维护技能,领会单片机开发的整个过程;②实训结束后,每人写出实训报告,通过文字方式总结出本门课程全所学、所得,以此达至加深巩固、提高的目的③实训中处理各种软、硬件故障,特别要求学生具有良好的心理素质部的;和吃苦耐劳精神,因此,本实训对培养学生正确的劳动观念、组织纪律性、团队合作精神和严谨的科学作风起到了至关重要的作用。2、实训报告在实训过程中完成各实训任务的)。同时,写1份实训报告,即实训心得体会(要求手写一、硬件部分AT89C51芯片7SEG-MPX8-CC-BLUE共阴极数码管②7SEG-MPX8-CC-BLUE共阴极数码管中显示的数字依次为765432102、硬件连接:确定连接方式,AT89C51的P1接7SEG-MPX8-CC-BLUE共阴极数码4、汇编语言:开始显示位数:76543210指向显示缓冲区首地址设置位码P2首先选中最右边位DPTR=TAB关显示查表取显示段码,送段码送对应位码延时更新显示缓冲单元和位选码扫描完?返回5、调试过程:在调试过程中出现一些问题,比如数码管无法正常显示数字,有的显示正确了,有的无法显示。这就要查看编写的汇编语言了。汇编语言要注意:①关闭所有数码管;②送显示数据;③送片选;④调用延时。在调试过程中要注意查表指令的准确。应用不然就造成数码管跳乱码的情况、没用关闭数码管指令而出现阴影6、显示结果3、调试过程在程序里先装入初值,再关闭所有数码管,送显示数据,送片选,调用延时。在送显示数据的时候要注意与装入的初值要一一对应。数码管不能正常的显示43-59-21就是因为在送显示数据的时候发生了错误。实验四1、要求2、显示结果3、汇编语言开始初始化数值装入R0、R1、R2除法指令把R0、R1、R2的数据求出百、十、个位的数装入40H、41H、42H、43H、44H、45H储存器里用MOVP1#0FFH指令关闭数码管MOVP2,A指令送新显示数据MOVP1#1111110B指令进行片选LCALLTT调用延时LJMPMAIN循环返回4、调试过程在原来的程序前面加一段程序:ORGMOV0000HR0,#67MOVR1,#81MOVR2,#72MOVA,R0MOVB,#10DIVABMOV40H,BMOV41H,AMOVA,R1MOVB,#10DIVABMOV42H,BMOV43H,A但是在调试过程中还是出现了错误,数码管中的“6”不能显示,检查之后才知道是程序里的送显示数据的地方出现了错误,我写成40H,应该时41H.改过之后①用中断方式实现电子时钟电路,23-59-50方式,由左向右分别为时、分、秒②当秒计数计满60时就向分进位,分计数器计满60后向时计数器进位,小时计数器按“23翻0”规律计数。时、分、秒的计数结果经过数据处理可直接送显示器显示。2、硬件电路3、汇编语言:开始主地址安排开中断阀门闭合开关T0定时器初始化:TOMD=01H,TH0=0B1H,TL0=0E0H装入初值分离数值显示数码管1s信号到了R0加1判断R0=60?R1加1,R0清0判断分R1=60?R2加1,R1清0判断时R2=24?R2清零返回4、调试过程:在仿真的时候,数码管不显示数字,在检查汇编程序的时候才发现是在自动清零处出现了错误,只对秒清零而没有对分和时清零。改过之后数码管还是显示数字但是不跳动,一直保持23-59-50。检查程序觉得主程序、开启中断、设置TMOD、装入初值、启动T0都没有错,到后来才知道是和延时子程序里的R0、R1重复了,就把R0改为51H,R1改为51H,改了之后数码管就正常显示并且跳转了。T0:MOVTH0,#0B1HMOVTL0,#0E0HDJNZR4,KKMOVR4,#50INCR0CJNER0,#60,KKMOVR0,#0INCR1CJNER1,#60,KKMOVR1,#0INCR2CJNER2,#24,KKMOVR2,#0RETIKK:二、心得体会一周的实训到今天就结束了,经过一周的实训让我对以前不懂的知识,不能运用的知识都得到了很大的提高。在这一周中,彭老师耐心的给我讲解,由浅入深,让我们自己动手,自己编写程序,而不是以像前上课一样照本宣科,对程序一点都不了解,也不知道它这程序是怎样来的,有什么作用,根本就是一窍不通。而现在我们学会了编写一些简单的程序。在实训过程中我们的仿真经常出现不能正常显示我们所想的数字,我们就得检查时哪一个程序出现了问题,是主程序,还是延时子程序,还是在汇编过程中有的符号出现了错误……现在知道P0口一般很少用,如果要用就要接上拉电阻。通过这次实训知道我们不管在什么情况下都有耐心,比如在做电子时钟的时候出现显示不跳转,就要耐心的检查,越心急越不能解决问题,不是说心急吃不了热豆腐吗?我就像是这个理儿了。同时也要细心,在汇编的时候我把“#”给忘了,最后数码管什么都不显示。汇编是一个要很细心和耐心的过程,一个符号就能让你的程序出错。在这次实训中我学会了对中断程序的运用,在上课的时候杨老师讲中断的时候,脑子里就是模糊的,不知道怎么运用,在单片机里中断程序经常都会用到。通过这次使我对汇编语言有了更进一步的认识和了解,要想学好它要重在实践,要通过不断的上机操作才能更好地学习它,我也发现我的好多不足之处。对汇编

语言的一些标准库函数不太了解,还有对函数调用的正确使用不够熟悉,还有对汇编语言中经常出现的错误也不了解,通过实践的学习,我认识到学好计算机要重视实践操作,不仅仅是学习汇编语言,还是其它的语言,以及其它的计算机方面的知识都要重在实践,所以后在学习过程中,我会更加注视实践操作,使自己便好地学好计算机。按键部分虽然没有做出来,但是我还是明白了一些,首先要判断有没有按键按下通过“JBP1.X标号”或者“JNBP1.X标号”来判断。然后判断由几个按键按下,如果只有一个按键被按下,判断是哪一个按键被按下并产生键盘码。这次实训让我对单片机产生了很厚

温馨提示

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

评论

0/150

提交评论