微机原理课设_电子秒表.docVIP

  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文档。上传文档
查看更多
微机原理课设_电子秒表

湖南文理学院芙蓉学院 微机原理课程设计报告 课程名称: 电子秒表 专业班级: 学生学号: 学生姓名: 指导教师: 完成时间: 目 录 第1章 总体设计方案 1 1.1 课程设计的内容和要求 1 1.2 课程设计原理 1 1.3 课程设计思路 2 1.4 设计环境 2 第2章 详细设计方案 3 2.1 实现方法 3 2.2 模块的设计与实现 4 2.2.1主程序模块 4 2.2.2初始化模块 5 2.2.3时钟模块 6 2.2.4秒表模块 6 2.3 程序连线图 8 第3章 调试及结果分析 9 3.1 调试步骤及方法 9 3.1.1程序的语法错误 9 3.1.2时钟模块调试过程 9 3.1.3秒表模块调试过程 11 3.2 实验结果 11 参考文献 13 附 录(源程序) 14 第1章 总体设计方案 1.1 课程设计的内容和要求 一、课程设计内容: 设计一个带时间显示的电子秒表,具体内容如下: 电子秒表的初始状态为零,分别显示分、秒、毫秒; 设计一个按钮,按第一次开始计时,按第二次计时暂停,显示当前记录的时间,按第三次计时停止,回到初始态; 有时间显示的功能,当不用电子秒表的功能时,显示当先的时间,分别为时、分、秒形式。 二、课程设计要求: 独立完成课程设计任务; 通过老师当场验收; 交出完整的课程设计报告。 1.2 课程设计原理 题目要求实现电子秒表功能和显示当前时间的功能。这两部分的共同点是都需要实现时间显示和时间运行功能。除此之外,电子秒表还需要有开始计时和停止计时功能。因此电子秒表是本次课程设计的主要部分。 在本次设计中主要使用了8255A并行接口芯片,8253定时/计数器,8259A中断控制器,8279键盘/显示芯片。具体原理和功能如下: 利用8255A芯片实现时钟和秒表之间的切换。将其连接到一个开关上,读取开关的电位,以此来判断是时钟模式还是秒表模式。 利用8253芯片计时。用8253的分频功能使其产生周期为1s和1ms的方波,分别为时钟和秒表计时。 利用8259A芯片接收中断。中断分为三种类型,分别是一秒一次的时钟计时中断,一毫秒一次的秒表计时中断和控制秒表开始和停止的中断。 利用8279芯片在数码管上显示当前时间或秒表时间。 1.3 课程设计思路 由于要求实现时钟和秒表两种功能。因此需要设计时钟和秒表两个模式。 时钟模式下,以秒为计时单位,计时功能和显示当前时间功能。秒表模式下,以毫秒为计时单位,有开始、停止和显示计时结果的功能。 首先,将8255A芯片的PC0接口连接到开关。读C端口的值。判断是0还是1。0代表时钟模式,1代表秒表模式。然后,根据判断结果调用相应模式下的显示功能。这样不停地读8255A芯片,然后判断,最后显示。构成一个死循环。若在这个过程中有中断,则会执行中断服务程序。 时间中断由8253芯片产生,周期分别为1s和1ms。时钟的最大时间为23时59分59秒,超过后从零开始重新计时。秒表最大时间为59分59秒999毫秒。当计数大于这个值时,秒表不再更新。 对秒表的控制中断由一个手动脉冲产生。将按键次数保存在名为pad的内存空间中。pad只能有0、1、2pad=0),或将时间加一毫秒(开始计时,pad=1),或不做任何处理(停止计时,pad=2)。 要实现以上分析的功能,可以设计4个模块。模块名和作用见表1.1。 表1.1 模块划分及功能描述 模块名称 功能 主程序模块 调用初始化模块,判断时间模式,调用相应的显示函数 初始化模块 初始化各芯片,装入中断向量 时钟模块 实现时钟计时和显示功能 秒表模块 实现秒表的计时、显示和控制功能 1.4 设计环境 硬件环境:AEDK实验箱 软件环境:LCT88EA应用软件、WindowXP操作系统、PC机 第2章 详细设计方案 2.1 实现方法 内存分配 程序中所需定义的内存单元含义如下: timer0:存放当前时钟的值,共6个字节。时、分、秒各占两个字节; timer1:存放秒表的计数值,共7个字节。分和秒各占两个字节,毫秒占三个字节; pad:存放秒表的按键次数,共1个字节。可以有三种取值,0代表清零,1代表开始计时,2代表停止计时。当计数值大于2时,变为0重新开始计数; tab:存放0~9在数码管上显示的编码,共10个字节。 按键设置 秒表有一个按钮,接手动

文档评论(0)

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

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

1亿VIP精品文档

相关文档