多功能时钟—微机原理及应用课程设计.docVIP

多功能时钟—微机原理及应用课程设计.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
多功能时钟—微机原理及应用课程设计

课 程 设 计 课程名称 微机原理及应用课程设计 题目名称 多功能时钟 学生学院 专业班级 学 号 学生姓名 指导教师 2013年 1 月 2 日 多功能时钟 一.小组介绍 二.任务要求 用8086/8088CPU设计一个多功能时钟。要求实现:日常使用时正确显示的是时、分、秒;根据需要,还可以作为秒表使用;还可以显示日期。 三.设计方案 整个时钟分为5个模块,主程序模块,时钟模块,数码管模块,键盘模块,秒表模块。 1.主程序模块:主程序模块为循环键盘扫描和显示模块 2.时钟模块:时钟新号由8254跟模拟8259A共同提供,8254的clk0接18.432KHZ的时钟源,分频为1HZ的时钟信号,作为8259A的中断(IRQ6)请求(即每秒加1),然后控制时钟的增加 3.数码管模块:用了动态扫描数码管的方法显示 4.键盘模块用了四个按键:日期,秒表,计时/暂停,清零 A.日期:控制日期与其他显示的切换(一般是显示时间的) B.秒表:控制秒表与其他显示的切换 C.计时/暂停:控制秒表的计时/暂停 D.让秒表清零,并暂停 5.秒表模块:在IRQ6中控制秒表是否计数 四、上机操作记录 1.按照电路装置连线,输入源程序且检查无误,编译连接并加载,点击run开始运行 2.一开始数码管显示时间(时分秒) 3.按“日期”按键,数码管显示日期(年月日),再按“日期”按键,退出日期显示,显示回时间 4.A按“秒表”按键,数码管显示秒表(开始的时候记时为0); B接着按“计时/暂停”按键,秒表开始计时,再按“计时/暂停”按键,秒表暂停计时; C按“清零”按键,秒表的数值变为0,并暂停记时,再按“计时/暂停”按键,秒表重新从0开始记时; D按“秒表”按键,数码管退出秒表显示,返回时间显示。 五、心得及体会 虽然有一定的基础,且经过近一个学期的汇编实训,对简单系统的设计有一定的经验,但是完成规模相对较大的课程设计仍然会有困难。任务下发伊始感觉无从下手,不过经过仔细查找阅读相关资料,小组的设计思路慢慢清晰。设计时我们采用分模块设计的思想,程序的核心是算法的运用,经过大家的思考和不断讨论,终于顺利写出算法,课程设计也突破了最大的难关,直至最后整个程序成功完成。 经过此次课程设计,不仅增强了编程技巧和实验操作技能,对代码的运用更加熟练,也让小组成员对系统设计有了更清晰的认识,强化了合理的设计思想,更重要的是让大家对汇编产生了更强烈的兴趣,我们也已计划查阅相关书籍资料,更加深入地了解使用汇编语言,争取在复杂系统的设计上有所建树。 六、系统设计流程图 (见下页) 注:要进入秒表,需先退出日期显示。 七、程序清单 STACK SEGMENT STACK DW 64 DUP(?) STACK ENDS DATA SEGMENT DATA1 DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,39H,5EH,79H,71H DATA2 DB 0DFH,0EFH,0F7H,0FBH,0FDH,0FEH;位选 BUFFER1 DB 3FH,3FH,3FH,3FH,3FH,3FH ;存放时间的数码管段选 BUFFER2 DB 06H,3FH,06H,3FH,5BH,06H ;存放日期的数码管段选 BUFFER3 DB 3FH,3FH ;存放秒表的数码管段选 GETKEY DB 00H;00无按键,0FF有按键 XIANRIQI DB 00H;00不显,0FF有PC4按下,显示日期 XIANMIAOBIAO DB 00H;00退出,0FF有PC5按下,显示秒表,并且为秒表计数加1的条件 JISHU DB 00;00暂停,0FF有PC6按下开始计数 SECOND DB 00H MINUTE DB 00H HOUR DB 09H DATE DB 01H MONTH DB 01H YEAR DB 12H BIAO DB 00H DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACK START:MOV AX,DATA MOV DS,AX CLI ;-------------------------------------------------------设置irq6向量 PUSH DS MOV AX,0 MOV DS,AX MOV AX,OFFSET IRQ6 MOV

文档评论(0)

yan698698 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档