单片机课程设计秒表定时器

  • 格式:doc
  • 大小:232.50 KB
  • 文档页数:17

下载文档原格式

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

单片机原理与应用课程设计说明书

题目:秒表计时器

系部:信息与控制工程学院

专业:自动化

班级:

学生姓名: 学号:

指导教师:

2011年12月8 日

目录

1 设计任务与要求 (1)

2 设计方案 (2)

3 硬件电路设计 (7)

4 软件设计 (8)

5 结论 (12)

参考文献 (14)

1 设计任务与要求

1.1课程设计的目的

1.1.1根据单片机课程所学内容,结合其他相关课程知识,设计电子秒表,以加深对单片机知识的理解,锻炼实践动手能力,为以后的毕业设计和工作打下坚实基础;1.1.2 熟悉汇编语言或C语言的程序设计方法,熟悉51系列单片机的使用;

1.1.3掌握单片机的内部功能模块的应用,如定时器/计数器、中断、I/O口、串行口通讯等功能;

1.1.4掌握单片机应用系统的软硬件设计过程、方法及实现。

1.2课程设计的任务

设计一个单片机控制的秒表系统。利用单片机的定时器/计数器定时和记数的原理,结合显示电路、LED数码管以及按键来设计秒表计时器。

基本要求:用AT89C51设计一个2位LED数码显示“秒表”,显示时间为00~99秒,每秒自动加一。当按“开始”按键,开始计数,数码管显示从00开始每秒自动加一;按“暂停”按键,系统暂停计数,数码管显示当时的计数;按“复位”按键,系统清零,数码管显示00。

1.3课程设计的要求

1.1.1利用单片机内部定时器设计一个秒表, 要求能实现秒表的启动、停止和复位。

1.1.2焊接电路,编制程序,实现秒表计时器的基本功能,并完成课程设计说明书。

1.1.3课程设计期间遵守纪律,注意安全,爱护设备,合理分工,加强合作。

2 设计方案

2.1设计方案介绍及工作原理说明

该实验要求进行计时并在数码管上显示时间,则可利用pretues仿真软件设计电路并仿真STC89C51。

使用STC89C51单片机作为核心控制部件,采用12M晶体振荡器及微小电容构成振荡电路;用两个四位一体共阳极或共阴极数码显示管作为显示部分,构成数字式秒表的主体结构,配合独立式键盘和复位电路完成此秒表的计时、清零、停止各项功能。

对于时钟,它有两方面的含义:一是指为保障系统正常工作的基准振荡定时信号,主要由晶振和外围电路组成,晶振频率的大小决定了单片机系统工作的快慢;二是指系统的标准定时时钟,即定时时间,是用软件实现,即用单片机内部的可编程定时/计数器来实现,但误差很大。

LED数码显示器有如下两种连接方法:共阳极接法:把发光二极管的阳极连在一起构成公共阳极,使用时公共阳极接+5V,每个发光二极管的阴极通过电阻与输入端相连。共阴极接法:把发光二极管的阴极连在一起构成公共阴极,使用时公共阴极接地。每个发光二极管的阳极通过电阻与输入端相连。

键盘部分方案:键盘控制采用独立式按键,每个按键的一端均接地,另一端直接和P1口相连,在按键和P1口之间通过10K电阻与+5V电源相连。键盘通过检测输入线的电平状态就可以很容易地判断哪个键被按下了,这种方法操作速度高而且软件结构很简单,比较适合按键较少或操作速度较高的场合,这种独立式接口的应用很普遍。

显示部分方案:显示部分采用动态显示。数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8个显示笔划"a,b,c,d,e,f,g,dp"的同名端连在一起,另外为每个数码管的公共极COM增加位选通控制电路,位选通由各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通COM端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。通过分时轮流控制各个数码管的的COM端,就使各个数码管轮流受控显示,这就是动态驱动。动态显示是利用人眼视觉暂留特性来实现显示的。事实上,显示器上任何时刻只有一个数码管有显示。由于各数码管轮流显示的时间间隔短、节奏快,人的眼睛反应不过来,因此看到的是连续显示的现象。为防止闪烁延时的时间在1ms左右,不能太长,也不能太短。

通过编写程序使用单片机的定时计数器,以及软件延时,中断资源来实现秒计时和相关控制。

2.2数字式秒表硬件系统各模块功能简要介绍

2.2.1七段数码管简介

七段数码管与段位控制代码

3FH 071H

F

79H E 5EH d 39H C 7CH b 77H A 6FH 97FH 807H 7

7DH 66DH 566H 44FH 35BH 206H 1

a b

c

d

e

f

g

显示控制过程:

如第一个数码管显示数字‘1’,数字‘1’对应的16进制显示码为0xf9。

1、 首先将显示码送到单片机的PA 口: PORTA=0XF9;

2、然后使能第一个数码管的位码:单片机的PC0口置1--PORTC|=(1<

3、延时

执行上述过程将在第一个数码管上显示数字‘1’。重复上述过程,就可以依次点亮每一个数码管

轮流点亮每个数码管的时间是及其短暂的,只有几毫秒。如果出现闪烁现象,说明上面第三步的延时时间过长。改变延时时间,加快扫描的频率。

2.2.2 STC89C51简介

STC89C51是一种低功耗、高性能的片内含有4KB 快闪可编程/擦除只读存储器(FPEROM-Flash Programmable and Eraseable Read Only Memory )的8位CMOS 微控制器,使用高密度、非易失存储技术制造,并且与80C51引脚和指令系统完全兼容。

主要性能:

与MCS-51 微控制器产品系列兼容。