1、 摘要摘要 随着电子技术的发展,电子技术在各个领域的运用也越来越广泛,人对它的认 识也逐步加深。秒表计时器秒表计时器常常用于体育竞赛及各种其他要求有较精确 时间的各领域中。 其中启/停开关的使用方法与传统的机械计时器相同, 即按一下启 /停开关,启动计时器开始计时,再按一下启/停开关计时终止。而复位开关可以在 任何情况下使用,即使在计时过程中,只要按一下复位开关,计时应立即终止,并 对计时器清零。本设计就是利用所学到的电子元器件将脉冲源用数码管显示出来, 以制承诺简易的秒表。 以单片机为核心,设计一个秒表,具有计时功能,按键有启动计时、数据清零、 停止、时间显示。 采用3个 LED数码管显示时
2、间,计时范围设置为 099.9秒,即精确到0.1秒, 用按键控制秒表的“开始”、“暂停”、“复位”,按“开始”按键,开始计时; 按“暂停”按键,系统暂停计时;再按“开始”键,系统继续计时;数码管显示当 前计时值;按“复位”按键,系统清零。 1 目目 录录 一、设计任务 3 二、设计题目 3 三、功能分析 3 四、总体设计 3 4.1硬件设计 4 4.1.1 89C51 单片机 . 4 4.1.2 晶体振荡电路 5 4.1.3 复位电路 . 6 4.1.4 按键电路 . 7 4.1.5 显示电路 . 8 4.2引脚控制 9 五、电路原理图 10 六、程序流程图及程序设计. 11 6.1程序流程图
3、 11 2 6.2程序设计 12 七、程序仿真 22 八、心得体会 22 九、致谢 . 23 十、参考文献 24 3 一一、设计任务设计任务 以单片机为核心,设计一个秒表,具有计时功能,按键有启动计时、数据清 零、停止、时间显示。 二二、设计题目设计题目 秒表的设计 三三、功能分析功能分析 采用 3 个 LED 数码管显示时间, 计时范围设置为 099.9 秒, 即精确到 0.1 秒,用按键控制秒表的“开始” 、 “暂停” 、 “复位” ,按“开始”按键,开始计 时;按“暂停”按键,系统暂停计时;再按“开始”键,系统继续计时;数码 管显示当前计时值;按“复位”按键,系统清零。 四四、总体设计总
4、体设计 本实验利用单片机的定时器/计数器定时和计数的原理,通过采用Proteus 仿真软件来模拟实现。模拟AT89C51单片机、LED 数码管以及控件来控制秒表的 计数以及计时的开启、暂停、继续、与复位。其中有三个数码管来显示数据,两 个数码管显示秒(两位),另一个数码管显示十分之一秒,十分之一秒的数码管 计数从 09,满十进一后显示秒得数码管的个位加一,并且十分之一秒显示清零 重新从零计数。 同理当个位满十进一后个位也清零重新计数 , 当计时超过范围 (即 4 超过 99.9 秒)后,所有数码管全部清零从新计数 4.1硬件硬件设计设计 4.1.1 89C5189C51 单片机单片机 MCS-
5、51 系列单片机是 8 位单片机产品, 89C51 是其中的典型代表, 基本模块 包括以下几个部分: (1) CPU:89C51 的 CPU 是 8 位的,另外 89C51 内部有 1 个位处理器 (2) R0M:4KB 的片内程序存储器,存放开发调试完成的应用程序 (3) RAM:256B 的片内数据存储器,容量小,但作用大 (4) I/O 口:P0-P3,共 4 个口 32 条双向且可位寻址的 I/O 口线 (5) 中断系统:共 5 个中断源,3 个内部中断,2 个外部中断 (6) 定时器/计数器:2 个 16 位的可编程定时器/计数器 (7) 通用串行口:全双工通用异步接收器/发送器 (
6、8) 振荡器:89C51 的外接晶振与内部时钟振荡器为 CPU 提供时钟信号 (9) 总线控制:89C51 对外提供若干控制总线,便于系统扩展 89C51 单片机引脚如下图: 5 4.1.2 晶体振荡电路晶体振荡电路 89C51 单片机内部的振荡电路是一个高增益反相放大器,引线 XTAL1 和 XTAL2 分别为反相振荡放大器的输入及内部时钟工作电路的输入和来自反相 6 振荡器的输出,该反相放大器可以配置为片内振荡器。 这里选用 51 单片机 12MHZ 的内部振荡方式,电路如下:C2、C3 起稳定振 荡频率、快速起振的作用。 晶振电路 4.1.3 复位电路复位电路 采用上电复位,上电后,由于电容充电,使 RST 持续一段时间的高电平, 从而实现上电复位操作。 这不仅能使单片机复位, 还能是单片机的外围设备同 7 时复位,当程序出现错误时,可以随时使电路复位。 电路图如下: 复位电路 4.1.4 按键电路按键电路 当按键被按下时,相应的引脚被拉低,经扫描后,获得键值,并执行键功 8 能程序,因此按下不同的按键,将执行不同的功能程序。 电路图如下: 按键电路 4