微机原理课程设计报告 联系客服

发布时间 : 星期六 文章微机原理课程设计报告更新完毕开始阅读604df4aedd3383c4bb4cd235

微机原理

课程设计报告

课 题: 定时器 姓 名: 王 刚 学 号: 060303236 班 级: 06计本(2)班 指导教师: 巫宗宾

二OO九年六月

电 子 钟

一、设计要求

1、用6位数码管显示时、分、秒,每一秒钟变化一次。并且能用小键盘控制走时、显示和 初始值设置 2、键盘设计要求:’C’ 键,清除计数器;‘G‘键,启动计数器;’D’ 键,暂停计数显示;’P’ 键,设置初值,不符合格式则显示出错标志’E’;’E’键,退出程序

二、开发环境及设备 1、设计环境

PC机一台、windows 98系统、实验箱、导线若干。 2、设计所用设备

8253定时器:用于产生秒脉冲,其输出信号可作为中断请示信号送IRQ2。 8255并口:用做接口芯片,和小键盘相连。 8259中断控制器:用于产生中断。

LED:六个LED用于显示时:分:秒值。 小键盘:用于控制设置。

三、设计思想与原理 1、设计原理

利用实验台上提供的定时器8253和扩展板上提供的8259以及键盘和数码显示电路,设计一个电子时钟,由8253中断定时,小键盘控制电子时钟的启停及初始值的预置。电子时钟的显示格式HH:MM:SS由左到右分别为时、分、秒,最大记时59:59:59超过这个时间时分秒位都清零从00:00:00重新开始。

基本工作原理:每百分之一秒对百分之一秒寄存器的内容加一,并依次对秒、分、小时寄存器的内容加一,六个数码管动态显示时、分、秒的当前值。

利用实验台上提供的定时器8253和扩展板上提供的8259以及键盘和数码显示电路,设计一个电子时钟,由8253中断定时,小键盘控制电子时钟的启停及初始值的预置。

电子时钟的显示格式HH:MM:SS由左到右分别为时、分、秒,最大记时59:59:59超过这个时间时分秒位都清零从00:00:00重新开始。 2、设计环境

PC机一台、windows 98系统、实验箱,导线若干。 3、设计所用设备

8253定时器:用于产生秒脉冲,其输出信号可作为中断请示信号送IRQ2。 8255并口:用做接口芯片,和小键盘相连。 8259中断控制器:用于产生中断。

LED:六个LED用于显示时:分:秒值。 小键盘:用于控制设置。

四、程序流程图 主程序流程图:

开始 8253A作为中断源产生20MS脉冲 设置堆栈 显示提示信息 用INT21H35H号功能保存系统中8259A原中断向量 用INT21H35H号功能设置0A中断新的中断向量,指向年,月,日加1的中断处理程序 置8259A的IMR第2位为0,允许IRQ2中断 调用键扫描子程序(KEY),键号的ASCII码在[CHAR1]单元中 是C键码? N 是G键码? N 是D键码? N 是P键码? N N 是E键码? Y Y 调用C键处理子程序 Y 调用G键处理子程序 Y 调用D键处理子程序 Y 调用P键处理子程序 用INT21H35H号功能恢复原中断向量 开中断 返回DOS

键盘扫描程序流程图:(KEY)

开始 置8255A控制字,A口为输出,B口为输入 A口全输出低电平,从B口读入数据 KKKKK Y 列线全为高电平吗 N 保存列值,延时取抖动 置8255控制字,A口为输入,B口为输出 往B口输出保存的列值 从A口读入行值 和键表比较 N 是否找到匹配键 Y 显示输入的字符 置8255A控制字,A口为输出,B口为输入 A口全输出低电平,从B口读入 N 键释放了吗? Y 返回