- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
西安科技大学微机接口课设电子闹钟.doc
西安科技大学
微机原理与接口技术
课程设计
题 目: 闹钟设计
学 院: 计算机科学与技术学院
专业班级: 计科1004班
组 员: 郭雅心1008030421
韦清松1008030422
2013年 7月 8日
目 录
1 闹钟设计要求与设计方案 1
1.1. 设计目的 1
1.2. 设计要求 1
1.3. 设计思路 1
2 闹钟设计的硬件设计 2
2.1 硬连线图: 2
2.2 四大模块: 2
2.2.1 8253定时、计数器模块 2
2.2.2 8255并行接口模块 3
2.2.3 8259中断控制模块 3
2.2.4 显示模块 3
3 闹钟设计的软件设计 4
3.1. 主程序设计 4
3.2. 按键处理程序设计 5
3.3. IRQ7中断设计 6
3.4. 七段数码管显示设计 7
4 闹钟设计的运行与调试 8
5 设计体会与小结 8
6 程序清单 9
7 参考文献 17
闹钟设计要求与设计方案
设计目的
学习和掌握计算机中常用接口电路的应用和设计技术,充分认识理论知识对应用技术的指导性作用,进一步加强理论知识与应用相结合的实践和锻炼。通过这次设计实践能够进一步加深对专业知识和理论知识学习的认识和理解,使自己的设计水平和对所学的知识的应用能力以及分析问题解决问题的能力得到全面提高。
设计要求
设计一个钟表。在数码管上显示时间。
定时时间到,屏幕显示“get up!”字符串。
显示同时,流水灯闪烁,蜂鸣器响1秒钟。
设计思路
本设计以唐都仪实验箱为载体,结合中断控制器8259A、并行接口8255、中断定时器8253、七段数码显示管LED及八个发光二极管的功能,用汇编语言编程实现了闹钟设计的实验。
闹钟的总体设计原理是:首先利用定时芯片8253的定时作用定时计数,每10ms开一次中断即8253计数18432次调用时间显示程序,数码管加1,毫秒部分加到99后清0向前进1 秒部分到显示59S过后变为0,执行此程序后8255就会工作,把时间在四个数码管上显示时间。当数码管显示时间与拨动KK1开关设置的定时时间相同时。在程序里面设置了一个蜂鸣器标志变量和流水灯标志变量,当变量为0的时候,表明蜂鸣器没有响,当变量为1的时候,表明蜂鸣器正在发声。每次秒钟加一之前,检测蜂鸣器标志变量,当蜂鸣器变量为1时,就关闭蜂鸣器,并置蜂鸣器标志变量为0。当秒钟加一之后,若当前设定时间与实时时间相同,就开启蜂鸣器,并置蜂鸣器标志变量为1。流水灯相似,只是多了几个判断,分别显示四个流水灯亮。在第一个流水灯亮时,屏幕显示“get up!”,流水灯闪烁,蜂鸣器响。
闹钟具体做法:时间显示程序要配合延时程序进行,为了得到良好的显示效果,延时程序要尽量接近1秒,精确的时间延迟程序,第一二块数码管显示分位,第三四块显示秒位。数码管显示一段时间60s后再跳回到初始位置00s,再显示,由此循环下去。设置一个闹钟开关标志变量,用来调节闹钟有效性,当开关为1时,定时设置有效,为0则无效,定时时间为有效时的时间设置。
闹钟设计的硬件设计
硬连线图:
图2-1硬线连接图
四大模块:
8253定时、计数器模块
8253A芯片在本实验中用了计数器2,工作在方式0下,8253计数次数为 10ms*1.1.8432MHz,中断每10ms有一次,这样就可以通过控制发中断的次数来得到想要的时间。8253的CLK0接系统时钟1.8432MHZ,门控信号GATE2接+5V。采用内部7号中断。
8255并行接口模块
8255的PA0~PA3负责4位7段数码管的位选,以及2x4键盘扫描的列信号。PA4~PA7负责4位流水灯的闪烁。PB0~PB7负责4位7段数码管的段选。PC0~PC1负责2x4键盘扫描的行信号。PC2负责接收开关信号。PC4负责蜂鸣器的发声。
8259中断控制模块
本次设计使用了8259中断控制器的IRQ7,通过IRQ7中断服务子程序设置DI来计数。每加到100即达到1秒,令秒加1,计数器清0以便重新计数。秒加到60,进位让分加1.选中数码管最右管让其显示分的个位,然后进位判断,数码管选择依次左移,显示整个时间时和分。
定时模块
该模块实现的功能是通过键盘设定一个定时时间,并将当前定时时间显示在计算机终端上。当实时时钟每走一分的时候,就与设定的定时时间比较,当定时时间与实时时间相同时,则触发相应的闹钟程序:显示“Get Up!”字符串,流水灯闪烁,蜂鸣器响一分钟。因为,键盘既可以修改实时时间,也可以修改定时时间,所以,为了区分,我们使用了一个开关KK2,通过与C口一个引脚相连来选择修改模式。当开关断开的时候,
文档评论(0)