沈阳航空航天大学 微机原理课设 电子秒表

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

沈阳航空航天大学课程设计报告课程设计名称:微机系统综合课程设计课程设计题目:电子秒表院(系):计算机学院专业:计算机科学与技术班级:84010101学号:2008040101023姓名:王冉指导教师:訾学博完成日期:2011年7月17日沈阳航空航天大学课程设计报告目录I目录第1章总体设计方案..................................................................................................11.1课程设计的内容和要求...................................................................................11.2课程设计原理...................................................................................................11.3课程设计思路...................................................................................................21.4设计环境...........................................................................................................2第2章详细设计方案..................................................................................................32.1实现方法...........................................................................................................32.2模块的设计与实现...........................................................................................42.2.1主程序模块...................................................................................................42.2.2初始化模块...................................................................................................52.2.3时钟模块.......................................................................................................62.2.4秒表模块.......................................................................................................62.3程序连线图.......................................................................................................8第3章调试及结果分析..............................................................................................93.1调试步骤及方法...............................................................................................93.1.1程序的语法错误...........................................................................................93.1.2时钟模块调试过程.......................................................................................93.1.3秒表模块调试过程.....................................................................................113.2实验结果.........................................................................................................11参考文献........................................................................................................................13附录(源程序)......................................................................................................14沈阳航空航天大学课程设计报告第1章总体设计方案1第1章总体设计方案1.1课程设计的内容和要求一、课程设计内容:设计一个带时间显示的电子秒表,具体内容如下:1.电子秒表的初始状态为零,分别显示分、秒、毫秒;2.设计一个按钮,按第一次开始计时,按第二次计时暂停,显示当前记录的时间,按第三次计时停止,回到初始态;3.有时间显示的功能,当不用电子秒表的功能时,显示当先的时间,分别为时、分、秒形式。二、课程设计要求:1.独立完成课程设计任务;2.通过老师当场验收;3.交出完整的课程设计报告。1.2课程设计原理题目要求实现电子秒表功能和显示当前时间的功能。这两部分的共同点是都需要实现时间显示和时间运行功能。除此之外,电子秒表还需要有开始计时和停止计时功能。因此电子秒表是本次课程设计的主要部分。在本次设计中主要使用了8255A并行接口芯片,8253定时/计数器,8259A中断控制器,8279键盘/显示芯片。具体原理和功能如下:1.利用8255A芯片实现时钟和秒表之间的切换。将其连接到一个开关上,读取开关的电位,以此来判断是时钟模式还是秒表模式。2.利用8253芯片计时。用8253的分频功能使其产生周期为1s和1ms的方波,分别为时钟和秒表计时。3.利用8259A芯片接收中断。中断分为三种类型,分别是一秒一次的时钟计时中断,一毫秒一次的秒表计时中断和控制秒表开始和停止的中断。4.利用8279芯片在数码管上显示当前时间或秒表时间。沈阳航空航天大学课程设计报告第1章总体设计方案21.3课程设计思路由于要求实现时钟和秒表两种功能。因此需要设计时钟和秒表两个模式。时钟模式下,以秒为计时单位,计时功能和显示当前时间功能。秒表模式下,以毫秒为计时单位,有开始、停止和显示计时结果的功能。首先,将8255A芯片的PC0接口连接到开关。读C端口的值。判断是0还是1。0代表时钟模式,1代表秒表模式。然后,根据判断结果调用相应模式下的显示功能。这样不停地读8255A芯片,然后判断,最后显示。构成一个死循环。若在这个过程中有中断,则会执行中断服务程序。时间中断由8253芯片产生,周期分别为1s和1ms。时钟的最大时间为23时59分59秒,超过后从零开始重新计时。秒表最大时间为59分59秒999毫秒。当计数大于这个值时,秒表不再更新。对秒表的控制中断由一个手动脉冲产生。将按键次数保存在名为pad的内存空间中。pad只能有0、1、2三个值,分别代表清零、开始计时和停止计时。8259芯片接收中断,并调用相应模式下的中断服务程序。在时钟模式下,直接将时间加一秒。在秒表模式下,或清零(重新开始,pad=0),或将时间加一毫秒(开始计时,pad=1),或不做任何处理(停止计时,pad=2)。要实现以上分析的功能,可以设计4个模块。模块名和作用见表1.1。表1.1模块划分及功能描述模块名称功能主程序模块调用初始化模块,判断时间模式,调用相应的显示函数初始化模块初始化各芯片,装入中断向量时钟模块实现时钟计时和显示功能秒表模块实现秒表的计时、显示和控制功能1.4设计环境硬件环境:AEDK实验箱软件环境:LCT88EA应用软件、WindowXP操作系统、PC机沈阳航空航天大学课程设计报告第2章详细设计方案3第2章详细设计方案2.1实现方法1.内存分配程序中所需定义的内存单元含义如下:timer0:存放当前时钟的值,共6个字节。时、分、秒各占两个字节;timer1:存放秒表的计数值,共7个字节。分和秒各占两个字节,毫秒占三个字节;pad:存放秒表的按键次数,共1个字节。可以有三种取值,0代表清零,1代表开始计时,2代表停止计时。当计数值大于2时,变为0重新开始计数;tab:存放0~9在数码管上显示的编码,共10个字节。2.按键设置秒表有一个按钮,接手动脉冲和8259A芯片的中断引脚。每次按键,pad都做相应改变。按第一次开始计时(pad=1),按第二次计时暂停(pad=2),显示当前记录的时间,按第三次计时停止(pad=0),回到初始态。3.时钟频率选择CPU的频率为HZ5103.072。用8253芯片产生方波。计数器1的1CLK接CPU时钟脉冲,计数初值为307,使0OUT产生周期为1ms的方波。计数器0的0CLK接1OUT,计数初值为1000,使0OUT产生周期为1s的方波。4.中断设置8259A芯片的中断引脚0IR、1IR、2IR分别接8253芯片的0OUT、1OUT和手动脉冲。5.显示设置显示功能由8279芯片和数码管实现。显示分为两种情况。时钟模式下的显示规则是(时-分-秒),即(00-00-00)。秒表模式下的显示规则是(分-秒.毫秒),即(00-00.000)。6.端口地址分配沈阳航空航天大学课程设计报告第2章详细设计方案4本次课程设计共使用了4种芯片,他们的端口号设置如表2.1所示。表2.1端口地址分配表芯片名称端口号含义8255A200H~203HA端口、B端口、C端口、控制端口8253210H~213H计数器0、计数器1、计数器2、控制端口8259A220H~221H偶地址端口、奇地址端口8279230H、232H数据端口、控制端口7.子程序子程序名称和功能如表2.2所示。表2.2子函数表名称作用名称作用i8255初始化8255A芯片i8253初始化8253芯片i8259初始化8259A芯片,装中断向量i8279初始化8279芯片int_timer0时钟中断服务程序display0显示时钟int_timer1秒表中断服务程序display1显示秒表int_pad更改按键次数2.2模块的设计与实现2.2.1主程序模块主程序的主要功能是初始化各芯片,模式选择以及调用显示函数。在初始化结束后,程序进入死循环,不断检测8255A芯片C端口的状态,CUP随时响应中断,更新时钟状态,把应显示的结果送入time0和time1中,以备显示。主程序的流程如图2.1。沈阳航空航天大学课程设计报告第2章详细设计方案5图2.1主程序流程图2.2.2初始化模块初始化模块主要用于初始化各芯片,设定芯片工作方式,以及装入中断向量等。各芯片初始化情况如表2.3所示。表2.3芯片的初始化芯片名称初始化8255AC口低四位输入

1 / 26
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功