单片机课程设计倒计时秒表..docxVIP

  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文档。上传文档
查看更多
一、设计目的 此次设计是我们更进一步了解基本电路的设计流程,提高自己的设计理念, 丰富自己的理论知识,巩固所学知识,使自己的动手动脑能力有更进一步提高, 为自己今后的学习和工作打好基础, 为自己的专业技能打好基础。 通过解决实际 问题,巩固和加深“单片机原理与应用”课程中所学的理论知识和实验能力, 基 本掌握单片机应用电路的一般设计方法提高电子电路的设计和实验能力, 加深对 单片机软硬知识的理解, 获得初步的应用经验以后从事生产和科研工作打下一定 的基础。本次设计注重对单片机工作原理以及键盘控制及显示原理的理解, 以便 今后自己在单片机领域的学习和开发打下基础,提高自己的动手能力和设计能 力,培养创新能力,丰富自己的理论知识,做到理论和实践相结合。本次设计的 重要意义还在于对单片机的内部结构和工作状态做更进一步的了解, 同时还对单片机的接口技术, 中断技术,存储方式和控制方式作更深层次的了解。 掌握单片机应用系统的软硬件设计过程、 方法及实现, 强化单片机应用电路的设计与分析能力。提高学生在单片机应用方面的实践技能和科学作风 ; 培育学生综合运用理论知识解决问题的能力, 实现理论结合实际, 学以至用的原则。 用所学的知识和自身课外的拓展学习加深对专业课的理解和学习; 锻炼综合运用电路设计及相关电子仪器、单片机软硬件结合的理论, 结合生产实际分析和解决工作工程实际问题的能力,加固、加深和扩展有关电子类,汇编语言,相关电子电路和仿真软件方面的知识和能力。通过本次课程设计,应加强培养如下能力: 加强自身独立的动手能力和思考解决问题的能力,提高创造能力; 学会使用软件 Proteus 画原理图和仿真调试。 学会基本焊接电路板的技能 通过本次课程设计加深对单片机课程的全面认识复习和掌握,对单片机课程 的应用进一步的了解。 二、设计要求 1、可以以实现正常秒表的所有功能,包括启动、暂停、复位等; 2、可以自由设定倒计时时间( 10s、20s、 30s···),并进行倒计时; 3、显示方式自选; 4、任选一款 51 单片机; 5、扩展功能:在秒表的基础上增加时钟功能,倒计时完成时加入报警单元,如声音、灯光等。 1 三、总体设计 3.1 总体框图 本硬件设计总共包括五部分电路:显示电路、振荡电路、复位电路、报警电路、按键电路。除了单片机工作必须的振荡电路,复位电路外,该设计增加了报警电路用来提示倒计时完成, 显示电路用来显示倒计时, 按键电路用来设定倒计时间以及控制开始暂停。总体设计框图如图 3.1 所示。 报警电路 显示电路 复位电路 AT89S51 单片机 振荡电路 按键电路 图 1 总体框图 3.2 工作原理 AT89S51单片机为核心元件,利用两位 7 段共阳极数码管作为显示器件。在此设计中共接入 2 个两位一体 7 段共阳 LED 数码管,来显示实时数字, 其中 1 个用于显示十位, 1 个用于显示个位,通过查表指令分别动态显示个位和十位。 2 个 LED数码管显示范围可达到 O--99 。按下开始键开始计时, 按下倒计时键开始设定倒计时时间,再按开始键开始倒计时。 利用中断实现记录,利用单片机的外部中断 0 和外部中断 1 来实现记录和显 示,把记录处理和显示处理做成分别做成外部中断 0 和外部中断 1 的中断服务程 序,通过中断服务程序处理不同的动作。利用 T0 做一个 1 秒的中断,从而实现 倒计时。另外通过数据区来记录记录值。 通过显示子程序来显示当前倒计时和记录值。 2 3.3 主程序框图 开始 有键按下吗 ? Y 取秒计数值 转为十进制 送显示缓冲区 调用显示程序 取得键值 K12,K2 键处理 K3,K4 键处理  N K5,K6 键处理 图 2 主程序流程图 本程序采用定时器 T0 产生 1 秒定时来实现秒表的倒计时,采用外部中断 0 来记录不同的记录值, 通过外部中断 1 来显示已经记录的记录值。 在主程序中初始化各个数值并且仅仅循环执行显示程序, 有中断来时才转去做相应的中断服务程序。 3 ( 1) 主程序 ORG 00H AJMP MAIN ORG 0BH AJMP T0INT ORG 30H MAIN: MOV SP,#60H MOV DPTR,#TAB MOV TMOD,#01H ;T0定时方式 1 SETB EA SETB ET0 MOV TH0,#3CH ;50ms定时常数 MOV TL0,#0B0H MOV R0,#20 ;20x50mS=1S ( 2) 定时中断程序 T0INT: MOV TH0,#03CH; ; 定时中断子程序。重装定时常数 MOV TL0,#0B0H; DJNZ R0,T0INTR ;50msX20=1S,未满 20 次,跳出中断子程序 MOV R0,#20 JNB 7FH

文档评论(0)

明若晓溪 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档