电子秒表微机课程设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

课程设计报告

课程设计名称:电子秒表

系:

学生姓名:

班级:

学号:

成绩:

指导教师:

开课时间:2013-2014 学年 1 学期

目录

一、设计题目-------------------------------------------------------------3

二、主要内容-------------------------------------------------------------3

三、基本要求-------------------------------------------------------------3

四、设计原理与硬件电路----------------------------------------------3

五、程序流程图---------------------------------------------------------11

六、程序代码-------------------------------------------------------- ---12

七、程序运行结果------------------------------------------------------19

八、进程安排------------------------------------------------------------21

九、心得收获------------------------------------------------------------21

十、成绩评定------------------------------------------------------------22 十一、参考资料---------------------------------------------------------22

一、设计题目

电子秒表

二、主要内容

设计一个可任意启动/停止的电子秒表,要求用6位LED数码显示,计时单位为1/100秒。利用功能键进行启/停控制。其功能为:上电后计时器清0,当第一次(或奇数次)按下启/停键时开始计数。第2次(或偶数次)按下该键时停止计时,再一次按启/停键时清零后重新开始计时。可用开关控制,也可用按键控制。

三、具体要求

1)设计可以显示1~60秒的无存储功能的秒表,最小单位为毫秒。

2)通过键盘按键控制秒表清零、暂停、继续,退出等。其中数字0控制

清零,数字1控制继续和退出。

3)秒表可以分组存储、批量显示。

四、设计原理与硬件电路

1、整体设计思想

使用8253工作在方式0计数,对1/100S计数,并讲计数值写入bl中并与100比较若不相等,则将计数值装换为10进制后送8255控制端显示,如相等则1S计数程序加1之后并与59比较若不相等则将计数值装换为10进制后送8255控制端显示,如相等则1min计数程序加1之后并与59比较若不相等则将计数值装换为10进制后送8255控制端显示,如相等则计数程序加1之后产生溢出,跳转清零程序将计数清零,同时数码管清零。

2、使用各芯片的作用及工作原理

1)定时器/计数器8253

用系统8253定时器提供的55ms定时单位,设计秒表定时程序。

有关系统定时方法:PC机系统中的8253定时器0工作于方式3,外部提供一个时钟作为CLK信号,

频率:f=1.1931816MHz。

定时器0输出方波的频率:fout=1.1931816/65536=18.2Hz。

输出方波的周期Tout=1/18.2=54.945ms。8253A每隔55ms引起一次中断,

作为定时信号。可用55945ms作基本计时单位。

用BIOS调用INT 1AH可以取得该定时单位。例:1秒=18.2 (计时单位)

8253的引脚图及硬件连接图如下图示:

8253引脚图硬件连接图

当A1A0分别为00 01 10 11时分别选中三个通道和控制字寄存器在80 88系统中,8088的A1A0分别与8253的A1A0相连在8086系统中,通常将8 253的8位数据线与8086的低8位相连,即使用偶地址,所以8086的A2A1分别与8253的A1A0相连。计数器(0 ~ 2)即三个计数器/定时器通道。每个通道包括:8位控制字寄存器、16位计数初值寄存器、减一计数器和输出锁存器。作定时器用:其CLK端上的输入脉冲应是标准的、精确的;作计数器用:对其CLK端上的脉冲计数,脉冲宽度可以不等。采用减一计数器,为0时,从OUT端上输出一个脉冲定时时间 = 时钟脉冲周期X预置的计数初值。

控制功能表

CS RD WR A1A0功能

0 1 0 0 0 写计数器0

0 1 0 0 1 写计数器1

0 1 0 1 0 写计数器2

0 1 0 1 1 写控制字寄存器

由于8253的读/写操作对系统时钟没有特殊的要求,因此它几乎可以应用与由任何一种微处理器组成的系统中,可作为可编程的方波频率发生器、分频器、实时时钟、事件计数器和单脉冲发生器等。

8253是一片具有三个独立的16位计数器通道的可编程定时器/计数器芯片。每个通道都可以编程设定3种工作方式之一种;8253由以下几个部分组成:

(1) 数据总线缓冲器(8位、三态、双向);

(2) 读/写控制逻辑;CS:片选信号,低电平有效;

RD:读信号,低电平有效;

WR:写信号,低电平有效

A1A0:端口选择信号

(3) 三个通道( 0~2),由A0,A1控制选择;

(4) 一个控制寄存器;

相关文档
最新文档