1、 课程设计报告课程设计报告 ( 20132014 年度第 一 学期) 课 程: 微机原理及应用 题 目: 秒表设计 院 系: 自动化系 班 级: 学 号: 学生姓名: 指导教师: 设计周数: 一周 成 绩: 日期:2014 年 1 月 10 一、课程一、课程设计设计目的与要求目的与要求 1 通过对微机系统分析和具体设计,使学生加深对所学课程的理解。 2 掌握汇编语言程序设计的基本方法和典型接口电路的基本设计方法。 3 培养学生分析问题、解决问题的能力。 4 培养学生对微型计算机应用系统的基本设计能力。 5 提高学生的实践动手能力和创新能力 二、二、 课程课程设计正文设计正文 (一)(一)设计题
2、目:设计题目: 秒表设计:利用实验箱上的小键盘,自定义各按键为启动计时,数据清零,停止并显示。利用六 个数码管显示分、秒、毫秒。8253 产生 10ms 定时中断,在中断服务子程序中显示秒表计时。 附加部分:附加部分: 加入记录功能, 可通过按键记录多次时间, 然后在停止计时后, 通过键盘上的 0,1,2 等按键再把记录的时间取出并显示,达到实际秒表的分别计时功能。 (二)(二)总体设计方案:总体设计方案: 1 自定义小键盘中的三个按键分别为启动键、清零键、分别计时键、停止显示键(我们依次选 择了 MON、LAST、NEXT、RES 这三个按键) 。 2. 利用 8253 产生的 10ms 的
3、方波来触发 8259 产生中断,对秒表进行增 1 操作 3. 动态扫描键盘,判断按键情况,并利用蜂鸣器模拟按键声音 4. 根据按键情况确定要显示的内容, 然后对六位数码管进行扫描显示 (三)(三)系统的功能作用:系统的功能作用: 1. 实验箱启动后,六位数码管全部显示为 0,如果不对键盘进行操作将始终保持这个状态 2. 普通计时功能: 按下 MON(启动键) ,数码管开始从零开始显示计时,从左到右依次显示每两位之间用 八段数码管的小数点了隔开来作为分、秒、毫秒的区分,按下停止键 RES,计时结束,显示停 止时的时间。 3. 分记功能: 在计时过程中按下分别计时按键NEXT, 将按下瞬间的显示值
4、存储起来 (最多可取16次) , 再停止计时后,可通过按下 0、1、2 等按键依次读出第 1 次、第 2 次、第 3 次按键时记录下的 时间,并在数码管上显示,达到实际秒表的分别计时功能。 4. 清零复位: 按下清零键 LAST, 六位数码管全部显示为 0, 实现清零功能。 清零后再按下启动键 MON, 系统将又重新从 0 开始计时。 5. 按键同时伴随音效: 在按下小键盘上的按键时,会激活蜂鸣器发出短暂的声音,模拟实际秒表中按键的声音 6. 备注: (1) 注意最后两位毫秒表示位实际单位为 10ms,所以每加到 99 后向秒进位再重新从零开始 依次增 1。 (2) 秒表计时最长时间为 60
5、分钟,当大于这个时间后,数码管将又重新从零开始计时。 (3) 考虑到键盘上 0F 共十六个键,所以我们设计的系统对分记有次数限制,最多为 16 次,超过 16 次时,计时自动停止,但仍可以读出存储下的 16 个时间。 (四)(四)具体具体硬件硬件电路设计:电路设计: 1.片选地址的设计:片选地址的设计: 对 8086 地址线进行锁存后,利用 3-8 译码器进行译码,为匹配实验箱上的片选地址在电路中 我们选择了 A12,A13,A14 分别接 A,B,C,A15 接入高电平使能端 E1,这样 Y0 就对应 8000h-8fffh,Y1 对应 9000h-9fffh,依此类推。 地址线的锁存:地址
6、线的锁存: CPUCPU 接线设计接线设计 译码器设计译码器设计 1.82531.8253 设计:设计: 8253 片选信号地址为 0C000H ,即 8253 片选接 CS4。 分频器的 Fin 接 4MHz 时钟。8253 的 GATE1,GATE0 接 VCC。 8253 时钟源 CLK0 接分频电路的 F/4 输出,8253 时钟源 CLK1 接分频电路的 F/64 输出。 两个计数器都工作在方式 3 下。其中 out1 产生 100Hz 方波作为 8259 的中断申请信号,上升 沿触发中断;out0 产生的方波控制蜂鸣器在按键时同时响起。 82538253 线路图与蜂鸣器的接线线路图与蜂鸣器的接线 2.82592.8259 中断设计中断设计: 8259 片选信号地址为 0D000H ,即 8253 片选接 CS5。 8259