微机原理课设电子时钟_第1页
微机原理课设电子时钟_第2页
微机原理课设电子时钟_第3页
微机原理课设电子时钟_第4页
微机原理课设电子时钟_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

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

文档简介

1、学院:计算机科学技术专 业:计算机科学与技术(工)班级: 计08-1班姓名: 秦振兴学 号:学指导教师: 孙海2011年7月1日微机原理与汇编语言课程设计任务书一、题目:电子表二、设计的目的1,掌握利用PC机的的中断及中断服务程序的编写方法;2.掌握定时器/计数器8253的工作原理及编程方法。三、设计要求编写程序,利用主机内的 8253-2的计数器0产生10m的方波输出,此输出送至IRQgt 8259A每10ms产生1次中断,100次后秒加1,然后调整时、分、秒并在屏幕上显示。程序从 按下任意键开始显示数据区存放的时间值,运行中按下空格键即停止运行,并返回DO4要求每人独立完成课程设计。四、设

2、计内容采用PC1列微机现有的硬件和软件资源编写汇编语言程序,在显示器上显示XX(时):XX (分):XX (秒),每秒钟更新1次。五、课程设计工作量一般每人的程序量应在100行有效程序行以上。不得抄袭,否则给不及格成 绩。六、课程设计工作计划2011年6月27日1-2节指导教师讲课,学生准备文献资料;2011年6月28日2011年7月01日 每人完成自己程序并能独立演示;2011年7月01日下午验收,学生撰写课程设计报告。指导教师签字:专业主任签章:微机原理与汇编语言课程设计指导教师评语与MS指导教师评语:课程设计表现成绩:课程设计验收成绩:课程设计报告成绩:课程设计总成绩:指导教师签字:20

3、11年 月 日目录第1章概述错误!未定义书签。选题来源错误!未定义书签。选题目的错误!未定义书签。选题意义错误!未定义书签。解决问题错误!未定义书签。技术要求错误!未定义书签。第2章 总体方案设计 错误!未定义书签。硬件总体设计错误!未定义书签。软件总体设计错误!未定义书签。第3章 详细设计 错误!未定义书签。硬件设计错误!未定义书签。显示模块错误!未定义书签。时钟运算模块错误!未定义书签。对时卞II块错误!未定义书签。设计电路图 错误!未定义书签。软件设计错误!未定义书签。程序流程图错误!未定义书签。第4章 调试与运行结果说明 错误!未定义书签。试验结果错误!未定义书签。分析错误!未定义书签

4、。课程设计总结 错误!未定义书签。谢启错误!未定义书签。参考文献 错误!未定义书签。附录错误!未定义书签。第1章概述选题来源该课程设计是根据老师提供的三个题目选题:音乐演奏,电子琴,电子表。我选择的是电子表选题目的设计并实现一个可以显示时间和日期的电子时钟,可以用键盘控制。选题意义课程设计是培养学生运用有关课程的基础理论和技能解决实际问题, 进一步 提高学生本专业必要的基本技能、方法和创新能力的重要环节之一。通过课程设 计使学生受到设计方法的初步训练,能用文字、图形和现代设计方法简要、系统、 正确地表达设计成果。解决问题电子表一般都有显示时间和日期的功能,用汇编语言设计程序时,由于是在 电脑上

5、操作,因而不便于切换时间和日期模式, 这时就需要设计一种方式,可以 通过键盘来切换这种模式,从而达到设计任务所要求的内容。设计时间时,要设计时间的计数方式,并会循环运行,符合日常的标准。而 设计日期时,同样要注意日期的计数与循环方式。设计好时间和日期程序后,要把日期和时间值转换成ASCII码字符。这就需要设计转换程序。技术要求微机接口课程设计主要是训练学生综合运用学过的微机原理的软件和硬件知识,独立完成一个实际的微机应用设计系统, 并在实验室实现。此次课设是 对个人的程序设计方法和技能的基本训练,巩固在课堂上学到的有关程序设计的 基本知识和基本方法,为学习后继的基础课和专业课打下坚实的基础。课

6、设所用 的是汇编语言,它是一种机器语言,是计算机能提供的最快最有效的语言, 也是 能够利用计算机所有硬件性能并能直接控制硬件的语言。实验不仅培养了实际动手能力,也进一步学习了汇编语言的结构和使用方法,提高了汇编语言的水平。第2章总体方案设计硬件总体设计8259A的主要功能:(1)每片8259A可管理8级优先级中断源,通过开关,最多可管理 64级 优先权的中断源。(2)对任何一个级别的中断源都可单独进行屏蔽,使该级中断请求暂时被 挂起,直到取消屏蔽时为止。(3)能向CPU提供可编程的标识码。(4)具有多种中断优先权管理方式。有完全嵌套方式、自动循环方式、特 殊循环方式、特殊屏蔽方式和查询方式五种

7、。这些管理方式均可通过程序动态地 进行变化。在本设计中用到了这四种功能,电子时钟的灵活调时功能就是通过对 级别的屏蔽或开启来实现的。8255A的主要功能:可编程外设接口芯片可由程序改变其功能,通用性强、使用灵活。通过 8255A, CPU可直接同外设相连接,其负责 CPU和外设之间的数据传送。8253的主要功能:可编程定时器/计数器,其定时与计数功能可由程序灵活地设定,设定后与 CPU并行工作,不占用CPU的时间。通道2工作在3方式下,提供计算一秒的 中断请求信号。软件总体设计电子时钟主要由显示模块、对时模块和时钟运算模块三大部分组成。其中对 时模块和时钟运算模块要对时、分、秒的数值进行操作,

8、并且秒计算到60时,要自己清零并向分进1;分计算到60时,要自己清零并向时进1;时计算到24 时,要清零。这样,才能循环记时。第3章详细设计硬件设计3.1.1 显示模块利用数码管的显示功能来设计。数码管是由八个条形发光二极管组成的,这 些发光二极管的阴极是互相连接在一起的,所以称为共阴极数码管。通过在这八 个发光二极管的阳极加+5 V或0 V的电压使不同的二极管发光,形成不同的字符 和数字。电子时钟用到的是0到9十个数字,他们所对应的字符表依次是 3FH 06H、 5BH、4FH、 66H、6DH、 7DH、 07H、7FH、6FH。该模块主要是将时钟运算 模块和对时模块运算出来并存放在内存单

9、元里的十六进制表示的时位和分位数据转化为十进制,并通过四个数码管显示出来。该模块实现的硬件是TND8688的 LED-KEYBOARD UNIT3.1.2 时钟运算模块该模块的主要功能是对时、分、秒的运算,并把运算出的最终结果存到事先 已经开辟的内存单元里,以便显示模块即时地显示出来。 该模块可以细分为秒定 时模块和运算模块。秒定时模块负责提供中断信号,由于CPU运算模块中的指令消耗一定的时间,所以中断信号最好通过硬件来实现,可以选择TND86/88实验箱中的8253定时/计数器来提供,但又因为8253所能提供的信号的周期时毫 秒级的,因此必须通过软件的方法在运算模块中设置一个统计中断次数的变

10、量, 并且这一变量必须事先在内存里开辟存储单元。中断信号是8253的通道2工作方式为方式3时,产生一个40ms的脉冲信号。运算模块负责时、分、秒的计算, 该模块主要通过8259的IRQ7号中断来实现,首先将秒定时模块提供的中断信号 为8259的IRQ7中断请求信号。但由于每40ms 一次中断请求。所以在中断服务 程序必须利用已申请内存单元 count来统计中断请求的次数,只有当 count的值 为25时,才能让秒单元内的数值加1。另外,在中断服务程序里,必须对秒、 分和时的单元内的数值进行判断,当秒加到 60时,分必须加1、秒清零;当分 加到60时,时加1、分清零。当时加到24啊,直接清零。3

11、.1.3 对时模块该模块主要功能是修改时、分内存单元的数值。在对时的时候,秒应停止不变, 并且在对分进行调整的时,时单元内的数值不变。由以上分析可见,对时、分的 调整用两个优先级高于IRQ7的中断来完成。因此,可以用 8259的IRQ2中断来 实现,两个中断源的中断请求信号只需直接接在两个按键即可起到对时作用。3.1.4 设计电路图电子时钟的完整电路图如下:软件设计3.2.1程序流程图IRET第4章调试与运行结果说明试验结果程序初始运行界面图i开始界面这时,开始根据提示输入当前时间,出现如下界面:图2输入时间后单击回车键之后图3运行后分析将编写好的源程序输入,编译后出现很多错误,经过反复修改直

12、到程序运行 通过。将生成的可执行程序装入 TND86/88的内存里,在监控状态下运行程序, 可是数码管显示的数字并不与理论计算值相符合,并且显示的数字不停地闪动, 经过反复分析源程序发现问题出现在内存单元里时位和分位在转化为十进制时, 存储转化的结果的地址空间的顺序弄混了。 数字闪动的原因应该出在显示子程序 里,经过分析问题出在显示子程序里缺少延时程序。编写延时子程序,并在显示 子程序调用它;编译源程序,装入生成的可执行文件,并运行。数码管显示的数 字与理论值相符合,并能正常计时,但当按动 KK1+1时,却不能启动对时功能, 按动KK2+寸,也不能调时、调分。问题很可能出在两键控制的中断源上,

13、检查 源程序也找不出错误,当把IRQ5换成IRQ2后,在进行调试,结果成功。课程设计总结1 .实验过程中碰到了很多的难题和障碍, 我认识到平时基础知识的重要性, 只有能够熟练的掌握才能在实验过程中得心应手,否则一步错则整个试验都会陷 入困境,因而,严谨的态度是试验成功的重要保障!2 .通过这次课程设计,使我对汇编语言有了较清楚的认识,以前在看语言 时,有好多地方不明白为什么这么写, 这样写有什么优点。对于某些语言句子还 不清楚是什么意思。经过这次课程设计,通过查阅资料和向同学请教,明白许多 不清楚的地方,能够用汇编语言编写简单的程序,内心感到高兴。3 .有了这次课程设计的体验,使我明白了书本上

14、的知识是死的,必须会用, 用到实践中,它才算有用。平时上课的理论知识只是停留在理论的层面,只有通 过了这样的试验才能更好的体会到, 做到了理论和实际的相结合,使理论知识的 作用发挥出来。这次设计对我将来的毕业设计有很大启示和帮助。4 .在设计过程中,遇到很多问题,通过和同学的共同研究,解决这些问题。遇到问题时候一起探讨,使我在这次设计中获得的启示谢启通过本次课程设计是深深的体会到了自学能力的重要性和独立决绝问题的能力以及凝聚力的重要。在本次课程设计当中我们遇到了很多困难, 与此同时也 得到了孙老师的鼓励也帮助,这让我们对自己更有信心,虽然最后我们的程序不 是很完善,但是我们尽了自己最大的努力。

15、同时在我们遇到困难时也得到了同学 的帮助,虽然她们很忙,但是仍然耐心的帮助我们解决困难, 在此我们要深深的 感谢她们在为期一周的微机原理课程设计中,使我们接触到了以前书本上所涉及不到 的领域,让我们感到新奇!在我们完成的功能模块的背后都交织着一份辛苦与喜 悦,而这份辛苦与喜悦却离不开大家的帮助和支持, 当然我们最要感谢的人还有 我们的孙老师,因为无论在我们什么时候遇到困难的时候, 只要向老师求助,他 都会在第一时间为我们解答。虽然我们做的不是很好,但是我们组的每一位成员 都在课程设计中学到了知识,希望老师还会给予我们帮助与鼓励。 通过这半年的 学习,自己对这门学科有了进一步的了解。因此,我要向

16、老师表达我衷心的谢意。 因为她们是那么的兢兢业业、认真负责。不管我们的问题有多幼稚,老师都能耐 心的回答,认真辅导我们。在此,我再一次地感谢大家在课程设计期间的帮助和支持参考文献1李芷微机原理与接口技术M.2002.2王爱英.计算机组成与结构M.北京:清华大学出版社.1995.3沈美明,温冬蝉.旧M-PC汇编语言程序设计M.清华大学出版社.2003.4董方武.微机接口技术M.中国水利水电出版社.2001.5宋锦河.汇编语言程序设计M.中国水利水电出版社.2001.6唐延铃,工小刚.汇编语言程序设计M.电子科技大学.19987王元珍,韩宗芬旧M-PC汇编语言程序设计M.华中理工大学出版社.199

17、6.8戴梅萼,史嘉权.微型计算机技术与运用M.清华大学出版社2003.附录程序清单:DATA SEGMENTBUF1 DB 'THE TIME IS NOW:$'BUF4 DB 'LILI$'BUF2 DB 10DB 10 DUP()COUNT DB 18DATA ENDSSTACK SEGMENT STACKDB 100 DUP()STACK ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,SS:STACKCURSOR MACRO ROW,CLMMOV AH,02HMOV BH,0MOV DH,ROWMOV DL,CLMINT 1

18、0HENDMWIN MACRO ROWL,CLML,ROWR,CLMR,COLORMOV AL,0MOV CH,ROWLMOV CL,CLMLMOV DH,ROWRMOV DL,CLMRMOV BH,COLORINT 10HENDMASCBCD MACRO REGINC BXINC BXMOV REG,BXMOV CL,4SHL REG,CLINC BXMOV AL,BXAND AL,0FHOR REG,ALENDMBCDASC MACRO REGINC BXINC BXMOV AL,REGMOV CL,4SHR AL,CLMOV BX,ALINC BXMOV AL,REGAND AL,0FH

19、OR AL,30HMOV BX,ALENDMINCBCD MACRO REG,COUNTMOV AL,REGINC ALDAAMOV REG,ALCMP AL,COUNTJNZ DISPYMOV REG,0ENDMSTRDSPY MACRO ADRSLEA DX,ADRSMOV AH,9INT 21HENDMCLOCK PROC FARSTART:PUSH DSMOV AX,0MOV AX,DATAMOV DS,AXWIN 0,0,24,79,7WIN 6,9,18,70,01000001BSTRDSPY BUF3CURSOR 7,9STRDSPY BUF4CURSOR 14,32STRDSPY BUF1CURSOR 15,36LEA DX,BUF2MOV AH,0AHINT 21HLEA BX,BUF2ASCBCD CHASCBCD DHASCBCD DLTIMER:CALL DELYMOV AL,18MOV COUNT,ALINCBCD DL,60HINCBCD DH,60HINCBCD CH,24HDISPY:

温馨提示

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

评论

0/150

提交评论