基于单片机的秒表时钟计时器设计_第1页
基于单片机的秒表时钟计时器设计_第2页
基于单片机的秒表时钟计时器设计_第3页
基于单片机的秒表时钟计时器设计_第4页
基于单片机的秒表时钟计时器设计_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、毕业设计论文毕业设计论文 基于单片机的秒表基于单片机的秒表/ /时钟计时器设计时钟计时器设计 摘摘 要要 近年来,随着科学技术的进步和时代的发展,人们对时钟的功能和精度提出了越 来越高的要求,各种时钟的设计也越来越重要。秒表/时钟计时器是在一种计时器上实 现两种基本功能的一种器件。它广泛应用于各种场所,同时,它以其小巧,价格低廉, 走时精度高,使用方便,功能多,便于集成化,而受到广大消费者的喜爱。 本文介绍了一种以 at89s51 单片机为核心的秒表/时钟计时器的设计,实时时钟芯 片 ds1302 提供实时时间,6 位 led 动态显示时、分、秒,并在计时过程中具有报时 功能, 定时时间到时,

2、音乐电路播放悦耳的乐曲。该数字钟设有五个按键: k1, k2,k3,k4 和 k5 键,使之具备了校时、定时功能,在设计中分别介绍了它们的工作 特点、原理和使用方法,并给出了它们与单片机 at89s51 的接口电路。 单片机和集成芯片的应用使得本设计硬件电路简化、编程方便,同时功能也更稳 定。由于单片机可以重新写入不同程序这就便于时钟功能的扩充和改变,同时时钟芯 片时间精确度高可以保证系统的精度。 关键词:关键词:单片机;秒表;时钟;实时时钟芯片;动态 led 显示; the design of stopwatch/electronic-clock system based on single

3、- chip-microcomputer abstract in recent years, with the scientific progress and the development of the times, people requirements of the clock function and accuracy are more and more high. the various design of the clock also becomes increasingly important. as long as the existence of timing、countin

4、g ,the clock will be used. meanwhile ,in daily lives, with its feature of compact, low price ,high accuracy, ease to use, multi-functional, ease of integration, the digital clock are fond of majority of consumers. this paper introduces the design of digital alarming clock ,which was based on the cor

5、e of single-chip microcomputer at89s51.real-time clock chip ds1302 provides real-time, six bit led display hours, minutes and seconds dynamically, the clock also having the function of timekeeping in the process of timing .when timing time, the music circuit broadcast delightful music. the digital c

6、lock with five keys: the button of k1, k2, k3, k4, with these keys, the digital clock has the function of regulating stopwatch;clock;real-time clock chip;dynamic led display; 目目 录录 引引 言言 -1 第第 1 章章绪论绪论 -2 1.1 概述 -2 1.2 课题的总体设计及思路 -2 第第 2 2 章章硬件电路设计硬件电路设计 -4 2.1 单片机最小系统 -4 2.1.1 单片机的介绍及选择 -4 2.1.2 at

7、89s51 单片机性能与应用 -4 2.1.3 单片机的时钟电路 -6 2.1.4 单片机的复位电路 -7 2.2 实时时钟电路 -7 2.3 显示电路 -8 2.3.1 led 显示的基本原理 -9 2.3.2 显示电路原理图 -9 2.4 键盘电路 -10 2.5 闹铃电路 -11 第第 3 章章 系统软件设计系统软件设计 -13 3.1 主程序流程图 -13 3.2 读 ds1302 程序流程图 -14 3.3 显示程序流程图 -14 3.4 秒表计时子程序流程图 -14 3.5 时钟计时子程序流程图 -15 3.6 设定时间子程序流程图 -15 3.7 闹钟子程序流程图 -17 第第

8、4 章章 调试调试 -18 结论与展望结论与展望 -19 致致 谢谢 -20 参考文献参考文献 -21 附录附录 a:系统原理图:系统原理图 -22 附录附录 b:外文文献及其译文:外文文献及其译文 -23 附录附录 c:主要参考文献题录及摘要:主要参考文献题录及摘要-29 附录附录 d:程序清单:程序清单-31 插图清单插图清单 图1-1 系统原理框图 -3 图2-1 at89s51的引脚结构图-5 图2-2 时钟电路-6 图2-3 复位电路-7 图2-4 ds1302引脚图-8 图2-5 ds1302与单片机at89s51的接口电路 -8 图2-6 数码管引脚图-9 图2-7 数码管的共阴

9、和共阳接法-9 图2-8 显示电路-10 图2-9 键盘电路-11 图2-10 lm386的引脚图-12 图2-11 闹铃电路-12 图3-1 主程序流程图-13 图3-2 读ds1302时间子程序流程图-14 图3-3 显示程序流程图-14 图3-4 秒表计时子程序流程图-15 图3-5 时钟计时子程序流程图-15 图3-6 设定时间子程序流程图-16 图3-7 调时/定时子程序流程图-16 图3-8 时钟闹铃子程序流程图-17 插表清单插表清单 表 2-1 p3 口的第二功能表-6 引引 言言 近年来随着计算机技术的飞速发展,计算机也正式形成了通用计算机系统和嵌入 式计算机系统二个分支。单

10、片机作为最典型的嵌入式系统,由于其微小的体积和极低 的成本,广泛应用于家用电器、仪器仪表、工业控制单元以及通信产品中,成为现代 电子系统中最重要的智能化工具。同时数模电技术、微电子技术也快速发展使得大量 集成芯片出现,从而实现很多简单功能代替了原来的模拟电路。这样利用单片机、集 成芯片和电子电路就可以很方便的进行设计,其中最典型、现在应用也很多的就是电 子产品的设计。 本设计就是利用单片机技术将秒表和时钟两种计时器的功能集中到一种计时装置上, 从而实现计时器功能的集成化,使其使用起来更加方便。本设计的一大特点就是在硬 件设计中采用实时时钟芯片来实现计时,大大简化了硬件电路,从而使设计更加简便

11、易行。 本设计共分四章来进行介绍。第一章为概述,主要介绍了设计的主要内容、总体 思路及方案的确定,使大家对本系统有一个大致的了解。第二章为硬件设计,将方案 中的各模块分节进行介绍,并对其中的器件和芯片等的特点和应用给以分析。第三章 为软件的设计,根据硬件电路和设计要求设计软件,包括系统主程序和各子程序框图 并对各程序简单介绍,在设计的最后将附上软件源程序. 第第 1 章章 绪论绪论 1.1 概述 单片微型计算机作为微型计算机的一个重要分支,它成为今天工业控制领域、通 信设备、信息处理以及日常生活中最广泛使用的计算机。如数控电梯机床、交通管理 系统、电脑、手机、电子词典和各种智能医疗器械等,其中

12、单片机用于电子产品的设 计是非常方便的。秒表和时钟是我们日常生活中最常见、应用也最广泛的电子产品。 现在的体育及其他各种比赛非常的多,其中时间的控制是非常重要的,而秒表在时间 控制中起着举足轻重的作用;而时钟的应用更广泛,它不但可以告诉人们时间,还可 以应用于其它一些产品中实现时间的控制,比如应用于工业控制中实现定时报警、家 用电器定时工作等等。因此研究这两种计时器有着非常现实的意义,本设计是将这两 种计时器的功能集中于一个计时器上,使其使用更加方便。 随着计时器广泛的应用,其无论在各种体育比赛还是人们的日常生活中抑或是在 其它生产制造领域都起到非常重要的作用,随着各领域的发展人们应用计时器并

13、对计 时器的功能提出了更高的要求。怎样让计时器实现更多的功能很好的为人们服务,这 就要求人们在原有计时器的基础上不断改进设计制造出更多新型多功能计时器件。本 设计基于单片机的秒表/时钟计时器的设计电路中,除了基本的单片机系统和外围电路 外,还需要外部的控制和显示装置。在单片机技术日趋成熟的今天,其灵活的硬件电路 的设计和软件的设计,让单片机得到了广泛的应用,几乎是从小的电子产品,到大的 工业控制,单片机都起到了举足轻重的作用。单片机小的系统结构几乎是所有具有可 编程硬件的一个缩影,单片机的学习和研究是对微机系统学习和研究的简捷途径。用 单片机技术实现不仅具有秒表和时钟的基本功能,还能在各种恶劣

14、环境下工作。充分 挖掘了单片机的资源和运算控制能力,具有功能多、显示全、成本低的特点。 1.2 课题的总体设计及思路 本设计秒表/时钟计时器的设计以单片机为控制核心,从各个控制模块,如显示模 块、键盘模块、实时控制模块等来实现硬件电路的设计。通过定时芯片来实现实时控 制,再经过单片机将时间数据由 led 数码管显示,系统中通过按键完成秒表和时钟计时 功能的切换以及时间的调整。此外,系统中时钟计时器的定时也采用按键来设定,当 定时时间到时,系统中的音乐电路播放动听的乐曲。 计时器的设计方法有多种,如可用中小规模集成电路组成,也可以用专用的时钟 芯片配以显示电路及其所需要的外围电路来组成,还可以利

15、用单片机配以专用时钟芯 片来实现。这些方法都各有特点,其中利用单片机进行设计的时钟编程灵活,便于时 钟功能的扩充,精确度也很高。本设计采用的就是最后一种方法。即以单片机为核心, 时钟芯片计时,键盘设定、校正时间,数码管显示相应时间来进行设计的。因此时钟 系统中我们需设计较好的单片机的最小系统、显示电路、键盘电路和时钟芯片与单片 机的接口电路。经过以上简单的分析可以得到本系统设计的原理方框图如图 1-1 所示 单片机最小系统 显示电路 键盘电路 时钟电路 闹铃电路 图 1-1 系统原理框图 本系统的设计采用的是常用的模块分析法,即将系统分为几个子模块分别设计。 主要分为五个大模块设计,即单片机最

16、小系统模块、时钟电路模块、显示模块、键盘 模块和闹铃模块,在以后的硬件电路设计中就按照以上的各模块分别进行设计。 第第 2 章章 硬件电路设计硬件电路设计 设计思路和方案确定后就可进行系统的硬件电路设计。硬件电路是一个系统非常 重要的部分,它设计的结果直接影响系统软件设计的复杂程度和系统的性能指标。第 1 章中已经指出本系统的设计采用模块法,将系统分为单片机最小系统、时钟电路、显 示电路和键盘电路四个子模块,本章将对各模块分别进行设计介绍。系统的总原理图 将在附录里给出 2.1 单片机最小系统 单片机的最小系统是指单片机能正常工作所必需的最小组成部分,主要包括单片 机及其时钟电路和对其进行复位

17、的复位电路及电源电路。因此需选择合适单片机、设 计时钟电路和复位电路以保证单片机的工作。 2.1.1 单片机的选择及介绍 单片机虽然种类繁多但不论哪种其内部结构都大同小异,都是把中央处理器 cpu、随机存储器 ram、只读存储器 rom、中断系统、定时器/计数器以及 i/o 口电 路等主要微型机部件集成在一个芯片上,使单片机向着稳定可靠、体积小、功能强、 速度快和价格廉的方向发展。单片机的典型代表是 mcs-51 系列单片机,后来又以其 的技术核心为主导生产出很多功能更好的单片机,例如 atmel 公司推出的 at89 系列 单片机1。 atmel 公司将 flash 存储器技术与 mcs-5

18、1 核相结合,形成了 flash 单片机 at89 系列。at89 系列单片机和 mcs-51 单片机在内部功能、引脚以及指令系统方面完全兼 容。由于 at89 系列单片机继承了 mcs-51 的原有功能,内部含有大量的 flash 存储器, 又增加了新的功能,如看门狗定时器 wdt、isp 及 spi 串行接口技术等,因此在电子 产品开发及智能化仪器仪表中有着广泛的应用,是目前取代 mcs-51 系列单片机的主 流芯片之一。at89s 系列是在 at89c 系列的基础上增加一些特别的功能部件组成的。 at89s51、52 是 2003 年 atmel 推出的新型品种,除了完全兼容 8051

19、外,还多了 isp 编程和看门狗功能。根据本课题的特点,我们选用 at89s51。 2.1.2 at89s51 单片机性能与应用 at89s51 是一个低功耗,高性能 cmos 8 位单片机,片内含 4k bytes isp(in- system programmable)的可反复擦写 1000 次的 flash 只读程序存储器,器件采用 atmel 公司的高密度、非易失性存储技术制造,兼容标准 mcs-51 指令系统及 80c51 引脚结构,芯片内集成了通用 8 位中央处理器和 isp flash 存储单元,功能强大的微型 计算机的 at89s51 可为许多嵌入式控制应用系统提供高性价比的解

20、决方案。 at89s51 具有如下特点: 40 个引脚; 4k bytes flash 片内程序存储器; 128 bytes 的随机存取数据存储器(ram) ; 32 个外部双向输入/输出(i/o)口; 5 个中断优先级 2 层中断嵌套中断; 2 个 16 位可编程定时计数器; 2 个全双工串行通信口; 看门狗(wdt)电路; 片内时钟振荡器 此外,at89s51 设计和配置了振荡频率可为 11.0592mhz 并可通过软件设置省电模 式。空闲模式下,cpu 暂停工作,而 ram 定时计数器,串行口,外中断系统可继续 工作,掉电模式冻结振荡器而保存 ram 的数据,停止芯片其它功能直至外中断激

21、活或 硬件复位。同时该芯片还具有 pdip、tqfp 和 plcc 等三种封装形式,以适应不同产品 的需求。看门狗(wdt)电路主要是实现复位功能.当单片机运行出现死循环时,看门狗 (wdt)电路可以起保护功能,实现复位作用. at89s51 单片机作为控制部件. 该型号单片机一共有 40 个引脚,有双脚直插式和 方形封装方式,可用于不同的场合。本次采用的是双列直插式,其引脚结构图如图功 能 2-1 所示。下面对这些引脚的功能加以说明2。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 2021 22 23 24 25 26 27 28 29 3

22、0 31 32 33 34 35 36 37 38 39 40 p1.0 p1.1 p1.2 p1.3 p1.4 p1.5 p1.6 p1.7 rst p3.0/rxd p3.1/txd p3.2/int0 p3.3/int1 p3.4/t0 p3.5/t1 p3.6/wr p3.7/rd xtal1 xtal2 vssp2.0 p2.1 p2.2 p2.3 p2.4 p2.5 p2.6 p2.7 psen ale ea vcc p0.0 p0.1 p0.2 p0.3 p0.4 p0.5 p0.6 p0.7 图 2-1 at89s51 的引脚结构图 1、i/o 口线 p0 口8 位、漏极开路的

23、双向 i/o 口。 p1 口8 位、准双向 i/o 口,具有内部上拉电阻。 p2 口8 位、准双向 i/o 口,具有内部上拉电阻。 p3 口8 位、准双向 i/o 口,具有内部上拉电阻。p3 口还具有第二功能,第 二功能见表 2-1。 2、控制信号线 rst复位输入信号,高电平有效。 ea/vpp外部程序存储器访问允许信号/编程电压输入端。 psen片外程序存储器读选通信号,低电平有效。 ale/prog低字节地址锁存信号/编程脉冲输入端。 3、电源和外部晶振引脚 vcc电源电压输入引脚。 gnd电源地。 xtal1、xtal2外部晶振引脚。 以上就是关于本设计中用的单片机 at89s51 的

24、特性、引脚功能的简单介绍。 表 2-1 p3 口的第二功能表 引脚 替代功能说明 p3.0 rxd 串行数据接受 p3.1 txd 串行数据发送 p3.2 0int 外部中断 0 申请 p3.3 1int 外部中断 1 申请 p3.4 t0 定时器 0 外部事件计数输入 p3.5 t1 定时器 1 外部事件计数输入 p3.6 wr 外部 ram 写选通 p3.7 rd 外部 ram 读选通 2.1.3 单片机的时钟电路 时钟电路用于产生单片机工作所需的时钟信号,单片机本身就如同一个复杂的同 步时序电路,为了保证同步工作,电路应在唯一的时钟信号控制下,严格的按规定时 序工作。 单片机内含振荡器电

25、路,但晶体振荡器和电容在片外,由引脚 xtal1 和 xtal2 接 入片内。xtal1 为振荡器反相放大器和时钟发生电路的输入,xtal2 为反相放大器的输 出。 时钟电路的接法有二种: 当使用片内振荡器时,片外振荡源和电容与 xtal1 和 xtal2 的接法如图 2-2 的 a) 所示。当使用晶体谐振器时,c1、c2=(3010)pf 当使用陶瓷谐振器时 c1、c2=(40 10)pf。c1 和 c2 虽然没有严格的要求,但电容的大小影响振荡器电路的稳定性和快 速性,通常选在 20pf 到 30pf。在设计电路板时,晶振和电容等应尽可能的靠近芯片, 以减小分布电容,保证振荡器振荡的稳定性

26、。 当使用外部振荡器信号时,外部始终信号接入 xtal1 引脚,xtal2 引脚悬空,如图 3-2 的 b)所示。对外部时钟信号的占空比没有要求,但高低电平持续时间应不短于 20ms。 本次设计采用图 3-2 的 a)中的时钟电路的接法,晶振取 11.0592mhz3。 xtal2 xtal1 gnd gnd (a) nc 外部振荡器信 号 xtal2 xtal1 gnd gnd (b) 图 2-2 时钟电路 2.1.4 单片机的复位电路 复位是单片机的初始化操作,其主要功能是把pc初始化为0000 h,使单片机从 0000 h单元开始执行程序,除了进入系统的正常初始化之外,当由于程序进行出错

27、或 操作出错使系统处于死锁状态时,为摆脱困境,也需按复位键以重新启动。因此熟悉 单片机的复位状态非常必要。 通过mgs-51单片机的复位引脚rst引脚(9)加上持续两个机器周期(即24个振荡周 期)的高电平,即可使器件复位,只要rst一直保持高电平,那么cpu就一直处于复位状 态。当rst由高变低后复位结束,cpu从初始状态开始工作。单片机的复位都是靠外部 电路实现的,分为上电自动复位和手动按键复位。如图2-3所示。 上电自动复位是通过外部复位电路的电容充电来实现的,其电路如图2-3(a)所示。 这样,只要电源vcc的上升时间不超过1ms,就可以实现自动上电复位,即接通电源就 完成了系统的复位

28、初始化。上电复位电路的特点是很方便,当有电源接通给单片机时, 此电路就可以自动产生复位信号。 除上电自动复位以外,在系统运行时有时还需要在不关闭电源的情况下对单片机 进行复位操作,此时,一般是通过一个手动复位按钮4,如图2-3(b)所示。在需要复位 时只要按一下复位按钮即可使单片机复位。按键复位电路的特点就是上电以后,可以 随时通过按键来发出复位信号。该电路除具有上电复位功能外。这对系统的可控性是 很有帮助的。 在本次设计中采用手动复位。 vcc vcc rst vss 22uf 1k at89s51 vcc vcc rst vss 22uf 1k at89s51 r2 200 r1 rst

29、(a)上电复位电路 (b)手动复位电路 图2-3 复位电路 2.2 实时时钟电路 本次设计的基于单片机的秒表/时钟计时器所使用的时钟芯片是ds1302,下面将主 要介绍该芯片的用法。 ds1302内含有一个实时时钟/日历和31b态ram,通过简单的spi串行接口与单片机 进行通信。可提供秒、分、时、日期、月、年的信息,每月和闰年的天数可自动调整, 可采用24或12小时格式5。ds1302与单片机之间能采用spi同步串行的方式进行通信, 仅需用复位、数据和时钟三根i/o口线。主要指标如下: 内含31b数据存储器。 工作电压:2.05.5v。 工作电流:在低压2.0v时,小于300na。 串行sp

30、i三线接口方式。 8引脚dip或soic表贴封装。 ds1302引脚顺序如图2-4所示: x1、x2:32.768khz晶振引脚。 gnd:地。 rst:复位引脚。 i/o:数据输入/输出引脚。 sclk:串行时钟。 vcc1,vcc2:电源,vcc1可接后备电池。 实时芯片ds1302与单片机at89s51的连接电路如图2-5所示: vcc2 x1 x2 gnd 1 2 3 4 rst i/o sclk vcc1 5 6 7 8 图2-4 ds1302引脚图 p3.3 p3.2 p3.4 20 vss vcc 21 vcc 30 ea 1 2 3 45 6 7 8 vcc2 x1 x2 gn

31、d vcc1 sclk i/o rst c0 c1 6pf 6pf vcc ds1302 图2-5 ds1302与单片机at89s51的连接电路 2.3 显示电路 显示电路是整个电路的输出部分,显示电路有led数码管显示和lcd液晶显示。 本次设计采用的是led数码管显示。在单片机系统中,led数码管显示是反映系统输 出和操作输入的有效器件。数码管具备数字接口,可以很方便地和单片机系统连接, 数码管的体积小、重量清,并且功耗低,是一种理想的显示单片机数据输出的器件。 2.3.1 led 显示的基本原理 led(light emitting diode)是发光二极管的缩写,led 显示器是由发光

32、二极管构 成的,所以在显示器前面冠以“led”。led 显示器在单片机技术中的使用非常普遍。 led 显示原理:通常所说的 led 显示器由 7 个发光二极管组成,因此也称为七段 led 显示器,其排列形状如图 2-6 所示。此外,显示器中还有一个圆点型发光二极管 (在图中以 dp 表示) ,用以表示小数点。通过七段发光二极管亮暗的不同组合,可以 显示多种数字、字母以及其它符号6。 led 显示器中的发光二极管共有两种连接方法见图 2-7: 共阳极接法:把发光二极管的阳极连在一起构成公共阳极。使用时公共阳极接 +5v。这样阴极端输入低电平的段发光二极管就导通点亮,而输入高点平的则不亮。 共阴极

33、接法:把发光二极管的阴极连在一起构成公共阴极。使用时公共阴极接地, 这样输入高电平的段发光二极管就导通点亮,而输入低点平的则不亮。 dp a b c d e f g cgndde g fgnda b 符号和引脚 r 8 a b c d e f g dp 共阴极 r 8 a b c d e f g dp +5v 共阳极 图 2-6 数码管引脚图 图 2-7 数码管的共阴和共阳接法 2.3.2 显示电路原理图 在单片机应用系统中,显示器显示常用两种方法:静态显示和动态扫描显示。所 谓静态显示,就是每一个显示器都要占用单独的具有锁存功能的 i/o 接口用于笔划段 字形代码。这样单片机只要把要显示的字

34、形代码发送到接口电路,就不用管它了,直 到要显示新的数据时,再发送新的字形码,因此,使用这种方法单片机中 cpu 的开销 小。可以提供单独锁存的 i/o 接口电路很多,这里采用串并转换电路 74ls164,单片机 串行口方式 0 为移位寄存器方式,外接 6 片 74ls164 作为 6 位 led 显示器的静态显示 接口。74ls164 为 ttl 单向 8 位移位寄存器,可实现串行输入,并行输出。其中 a、b(第 1、2 脚)为串行数据输入端,2 个引脚按逻辑与运算规律输入信号,共一个 输入信号时可并接。t(第 8 脚)为时钟输入端,可连接到串行口的 txd 端。每一个 时钟信号的上升沿加到

35、 t 端时,移位寄存器移一位,8 个时钟脉冲过后,8 位二进制数 全部移入 74ls164 中。r(第 9 脚)为复位端,当 r=0 时,移位寄存器各位复 0,只 有当 r=1 时,时钟脉冲才起作用。q1q8(第 3-6 和 10-13 引脚)并行输出端分别接 led 显示器的 hga 各段对应的引脚上。在给出了 8 个脉冲后,最先进入 74ls164 的 第一个数据到达了最高位,再来一个脉冲,第一个脉冲就会从最高位移出7。 显示电路原理图如图2-8所示。 19 5 p1.4 p1.5 p1.6 20 vss 21 vcc 30 vcc gnd vcc a b clk /cr gnd 14 1

36、 2 8 9 22 23 24 25 26 27 28 29 vcc p0.0 p0.1 p0.2 p0.3 p0.4 p0.5 p0.6 p0.7 ea ale psen p2.7 p2.6 p2.5 p2.4 p2.3 p2.2 p2.1 p2.0 vcc 4*4.7k vcc 4*4.7k abcdefgdpab cdefgdp c1 c2 c3 c4 c1 c2 vcc q1q2q3q4q5q6 p1.0 p1.1 p1.2 p1.3 p1.7 rxd/p3.0 txd/p3.1 int0/p3.2 int1/p3.3 t0/p3.4 t1/p3.5 wr/p3.6 rd/p3.7 x

37、tal1 xtal2 1 2 3 4 6 7 8 9 10 11 12 13 14 15 16 17 18 31 32 33 34 35 36 37 38 39 40 图 2-8 显示电路 2.4 键盘电路 计时器需要用到按键对其控制,如调整时间、设置闹钟时间等。本次设计的秒表/ 时钟计时器是一个既可以进行正常执行时钟功能又能作为秒表进行倒计时操作的计时 装置,键盘的功能主要是秒表和时钟功能的切换、调整时间、设定时间。用四个按键 就可以满足要求。 单片机使用的键盘可分为独立式和矩阵式两种,独立式实际上就是一组相互独立的 按键,这些按键可直接与单片机的 i/o 口连接,即每个按键独占一条口线,接

38、口简单, 对键盘数目不多的设计可用这种键盘。矩阵式键盘也称行列式键盘,键盘上的键按行 列组成矩阵,在行列的交点上都对应有一个键,故键的数目较多8。矩阵式键盘还有 专用的键盘接口芯片,其可以完成键盘的扫描、键的识别、产生闭合键的键码以及排 除多键、串键和去抖动等功能,键盘接口芯片可以与单片机结合设计出很好的键盘, 在需要很多键盘的设计中应用该种键盘比较好。 本设计中用到的四个按键,可采用独立键盘实现。四个按键分别独立与单片机的 i/o 口相接,由于对单片机正常工作时其口线输入一般为高电平较好,则可以设计按键 电路使按键不按下时输入单片机 i/o 口的数据是高电平,按键按下时输入的是低电平, 即在

39、键盘电路中低电平有效。当有键按下时输入单片机一个低电平单片机处理,没有 键按下时单片机正常工作。图 2-9 是本设计的键盘电路。p3.2 到.p3.5 是单片机的 i/o 口,s1 到 s4 是四个独立按键。 (1)s1:秒表和时钟功能切换键。 (2)s2:校准时间键,校准后的确认键,在复位后的待机状态下,用于启 动设定时间参数。 (3)s3:校准时间时,用于对时位、分位、秒位进行+1操作。 (4)s4:定时确认键,用来确定闹钟设定的时间。或是作为秒表使用时的启动、 暂停和复位键。 5 p1.4 p1.5 p1.6 6 7 20 vss vcc 21 vcc 30 ea vcc 12345 s

40、1 s2 s3 s4 1 2 3 4 p1.0 p1.1 p1.2 p1.3 rp5 at89s51 图 2-9 键盘电路 2.5 闹铃电路 闹铃是时钟的一个重要功能,其响铃时可用蜂鸣器和扬声器来实现,为了使其响 铃效果更好这里采用扬声器播放音乐来实现其闹铃功能。要使扬声器能在整点报时必 须要有音频放大器来驱动扬声器才能工作。在这里采用lm386音频放大器9。 lm386是美国国家半导体公司生产的音频功率放大器,为使外围元件最少,电压 增益内置为20。但在1脚和8脚之间增加一只外接电阻和电容,便可将电压增益调为任 意值,直至200。输入端以地为参考,同时输出端电压为电源电压的一半,在5v电源电

41、 压下,它的静态功耗仅为24mw,使得lm386特别适用于电池供电的场合。lm386的封 装形式有塑封8引线双列直插式和贴片式。引脚图如图2-10所示。引脚2为反相输入端, 3为同相输入端;引脚5为输出端;引脚6和4分别为电源和地;引脚1和8为电压增益设 定端;对增益要求不高时可以去掉不接,此时的增益内置为20。使用时在引脚7和地之 间接旁路电容,通常取547f。工作稳定后,该管脚电压值约等于电源电压的一半, 在器件上电、掉电时的噪声就是由该偏置电压的瞬间跳变所致,工作稳定后,该管脚 电压值约等于电源电压的一半。增大这个电容的容量,能减缓直流基准电压的上升、 下降速度,可有效抑制噪声10。它的

42、电子特性如下: 1.静态功耗低,约为4ma,可用于电池供电; 2.工作电压范围宽:412v或518v。lm386-1和lm386-3的电源电压为 412v,lm386-4的电源电压为518v; 3.外围元件少; 4.电压增益可调范围为:20200; 5.低失真度; 在这里的采用增益为20的电路,其输入端与单片机的p3.7口相连,输出端接内阻 为8欧姆的扬声器,则报时器的连接图如图2-11所示。 gait input input gnd gain bypass vcc output 1 2 3 4 5 6 7 8 lm386 图2-10 lm386的引脚图 10k 10k 3 2 4 7 8 1

43、 6 5 lm386 0.0047uf 47uf micro +5v p3.7 图2-11 闹铃电路 第第 3 章章 系统软件设计系统软件设计 基于单片机系统的设计一般包括系统硬件设计和系统软件设计二部分,上一章已 经对系统硬件进行了设计,本章将根据系统硬件电路和设计要求设计系统的软件。软 件也可模块化设计,将软件系统分为主程序和几个子程序设计即主程序、中断子程序、 x5045 初始化子程序、ds1302 初始化子程序、键盘设定时间子程序、显示子程序,本 章主要对各程序设计流程图并简单介绍各程序的原理。语言编程采用汇编语言,系统 的汇编语言程序将在附录中给出。 3.1 主程序流程图 程序的执行

44、是从主程序开始的,主程序是软件设计的总体框架,因此主程序流程 图的设计决定了程序编写的好坏。主程序的功能主要是读 ds1302 的时间将时间数据送 到 led 显示,当有按键按下时,将引发外部中断,程序会调用相应的中断子程序。如 当 s1 按下时,计时器由时钟模式转换到秒表计时模式,此时会调用秒表计时中断子程 序执行秒表计时功能,在 led 上将显示秒表时间;当按键 s1 未被按下或被再次按下时 为时钟工作模式,将调用时钟计时程序并执行与其相关的子程序,在 led 上将显示时 钟时间并进行校时、定时功能。其流程图如图 3-1 所示。 开 始 初 始 化 s1是否按下? 读ds1302的时间 y

45、 n 运行秒表 计时程序 运行时钟 计时程序 调用秒表计时 显示子程序 调用时钟 显示子程序 图 3-1 主程序流程图 3.2 读 ds1302 子程序流程图 本节的主要功能是读取 ds1302 的数据11,其流程图如图 3-2 所示。 3.3 显示程序流程图 在从 ds1302 读出时间后要在 led 上显示,本设计中时钟初值设计为 12 点 00 分 00 秒,秒表初值定为 00 分 00 秒 00,采用 led 动态显示,其流程图如 3-3 所示: 取时间低位 显 示 开 始 初 始 化 取时间高位 显 示 显示完? 显 示 n y 返 回 开 始 秒地址送r0 设置长度 地址写入ds1

46、302 读ds1302时间存相应单元 地址指针加1 秒、分、时 读完? 返回 y n 图 3-2 读 ds1302 时间子程序流程图 图 3-3 显示程序流程图 3.4 秒表计时子程序流程图 当按键 s1 按下时 p1.0 引脚处有低电平脉冲,计时器进入秒表计时功能,调用秒表计时子程序,其 程序流程图如 3-4 所示12: 3.5 时钟计时子程序流程图 当按键 s1 未被按下或被再次按下时,该计时器将执行时钟计时功能,其流程图如 下图 3-5 所示: 运行秒表 计时 百分秒位+1 1秒到? 秒位+1;百 分秒位清零 60秒到? 分位+1;秒位清零 100分钟 到? 分位清零 返 回 y n y

47、 n y n 运行时钟 计时 秒位+1 60秒到? 分位+1 秒位清零 60分到? 小时+1 分位清零 24时到? 时位清零 返 回 y n n y n y 图 3-4 秒表计时子程序流程图 图 3-5 时钟计时子程序流程图 3.6 设定时间子程序流程图 定时间子程序的主要功能是通过键盘扫描判断是否有校时或定时键按下,从而进 行校时或定时。其流程图如图3-6所示。 调时子程序流程图如图3-7所示 : 中 断 子程序 s2按下? y n y n s4按下? 调用调时子程序调用定时子程序 返 回 按s4确认按s2确认 图3-6 设定时间子程序流程图 中断服务 子程序 分位调整? 分 位 加 1 1

48、小时到? 分 位 清 零 小 时 位 清 零 小时位调整? 小 时 位 加 1 24小时到? 返 回 n y y y n n y n 图 3-7 调时/定时子程序流程图 3.7 时钟闹铃子程序流程图 时钟的闹铃功能是通过此程序来实现的。定时后将定时时间送缓冲单元暂存,然 后将它的时、分、秒分别与时钟时间的时、分、秒进行比较,若比较结果都相等,则 闹铃响,否则返回继续比较,直至完全相等闹铃响。 返 回 设置定时时 间存暂存器 时钟时间与 定时时间比较 小时相等? 分钟相等? 秒钟相等? 闹 铃 响 y n n y y n 图3-8 时钟闹铃子程序流程图 第第 4 章章 调试调试 单片机应用系统的

49、调试,包括硬件调试和软件调试,是一个很重要的步骤。在调 试过程中要不断地找出其中的错误,并进行现场解决,然后再重复,直至系统可以正 常运行为止。系统的硬件调试与软件调试是分不开的,许多硬件故障是在调试软件时 才被发现和纠正的。通常是先排除系统中明显的硬件故障后再和软件结合起来调试。 一、硬件调试一、硬件调试 第一步:在没通电之前,先用万用表检查线路的正确性,并核对元器件的型号、 规格是否符合要求。特别注意电源的正负极以及电源之间是否有短路,并重点检查地 址总线、数据总线、控制总线是否存在相互间的短路或其他信号线的短路。晶体振荡 器和电容应尽可能靠近单片机芯片安装,以减少寄生电容,更好是保证振荡

50、器稳定和 可靠地工作。在本系统中我们都进行了仔细的检查,所以此步骤不会发生故障,这一 步如果检查不细通电后可能会造成不可想象的后果,所以这一步也至关重要。 第二步:通电后检查各器件引脚的电位,仔细测量各点电位是否正常,尤其应注 意单片机的插座上的各点电位,若有高压,将有可能损坏单片机仿真器。同样,如果 电压过低就没有能力驱动其负载。 第三步:在断电的情况下,除单片机以外,用仿真插头将所连接电路与单片机仿 真器的仿真接口相连,为软件调试做好准备。 二、软件调试二、软件调试 该系统的软件调试,是把程序输入单片机,然后连接单片机仿真器进行模拟调试, 在调试时程序应该以模块的形式进行调试,这样可以方便

51、解决软件的问题,进行及时 修改,最后再将调试好的小段程序连接在一起进行整体调试,当整个程序都没错误时, 软件调试已经成功。 程序调试中出现的问题及解决的办法: 1程序调试时若发现无法运行出结果,应首先检查各个子程序是否有错误,如有 错要改正,如果没有错误应检查单片机与仿真器的连接是否有问题。 2程序中的跳转指令的运用很重要,为保险起见,都用 ljmp,我们就遇到过跳转 指令用错程序无法正常运行的现象。当用 jnz 指令时,跳转范围比较少,这时要用一 个标号中转。 3编程时要注意,在程序开始时,要写入各定时器中断的入口地址。 4编程过程中要注意加注释或分割线,否则,在程序过长时容易变得很乱,不便

52、 于查找或更改。 结论与展望结论与展望 经过一个学期的时间完成了基于单片机的秒表、时钟计时器的设计,本系统是基 于单片机及其接口技术、计算机技术、微电子技术综合应用的设计。系统的设计主要 包括单片机最小、实时时钟芯片的选取,键盘电路和显示电路的设计,各芯片与单片 机接口电路的设计等。在系统设计中查阅了大量相关的中文和外文资料以及各芯片的 厂家技术资料手册,借鉴了很多前人成熟的经验。 通过本次设计可以总结出:首先单片机的广泛应用使现在的电子产品设计越来越 方便,功能越来越好,集成度也越来越高。通过对单片机的重新编程可以很方便改变 时钟的功能。其次单片机和微电子等技术是密切相关的,它们如何应用将直

53、接对设计 结果产生影响,应用不同的元器件和设计方法可以使时钟的设计结果截然不同,时钟 的性能也将有差别。同时在本设计中应用的元器件都是集成的,特别是单片机和实时 时钟芯片 ds1302 的应用,使该设计只要稍加修改就可以很方便的开发出其它基于单片 机的时钟。 从本次设计也可以初步预测到以后计时器的发展状况: 首先,随着很多性能更好新材料的应用、设计方法的不断完善、大规模集成电路 的发展以及驱动技术的进步,计时器的发展会很快,系统性能更稳定、精度更高而且 功能也更多,性价比更高。 其次,随着显示器件,如液晶显示器件性能的拓宽,传统的机械时钟显示形式也 将演变成高清晰度的显示方式。 最后,未来计时

54、器的功能将会大大的拓展。使用单片机以软件方式驱动芯片,不 但可以通过改变编程方法实现不同的功能,而且还可以方便灵活地控制时间的运行状 态以满足不同用户的要求。计时器的功能使用软件方法进行设计,这样既简化了电路 也降低了成本。 致致 谢谢 本设计是在彭超老师的悉心指导下完成的。四年来,老师创造了多次学习和交流 的机会,提供了良好的实验环境和学习环境,并且在学习、生活等各方面,老师都给 了无微不至的关怀。彭老师严谨的治学态度、渊博的学识,使我在完成论文期间少走 了许多弯路。在此向尊敬的彭老师表示最衷心的感谢。 本设计能够及时完成还得到了众多老师和同学的帮助,系统的硬件设计得到同学 指点,软件设计得

55、到了同学的帮助。其他师兄弟妹们对论文的撰写也都提出了不少宝 贵的意见和建议。技术细节问题的解决更离不开网上那些不知名的热情网友的大力支 持与帮助。在生活上特别离不开室友提供的帮助。在此,对他们并表示最衷心的感谢。 最后,感谢父母给予精神上的鼓励和生活上的关怀,我唯有以更出色的成绩来回 报他们。感谢其他关心和帮助过我所有人。 作者:杨 静 2008 年 6 月 5 日 参考文献参考文献 1 付家才.单片机控制工程实践技术m. 北京:化学工业出版社,2004.3 2 向继文,廖立新.基于 at89s51 的电子钟系统设计j.机电产品开发与创新, 2007,20(2):62-63 3 赵淑范.数字电

56、子钟设计j.长春大学学报,2004,14(4):36-39 4 张景元,陈平.一种基于单片机的多功能数字钟j.中文核心期刊微计算机信息 , 2005,21(9-2):136-137 5 求是科技,靳达.单片机应用系统开发实例导航m.北京:人民邮电出版社, 2003.10 6 沈红卫.单片机应用系统设计实例与分析m.北京:北京航空航天大学出版社, 2003.1 7 杨将新等 单片机程序设计及应用从基础到实践m 电子工业出版社 2006 8 冯育长主编.单片机设计与实例分析.西安:西安电子科技大学 2007 9 范立南,谢子殿 单片机原理及应用教程m.北京:北京大学出版社,2006.1 10 李广

57、弟.单片机基础m. 北京:北京航空航天大学出版社,2001.7 11 杨振江,等.流行单片机实用子程序及应用实例.西安:西安电子科技大学出版社 2002 12 王振宇.基于单片机设计的多功能定时器j.贵州教育学院 2005 13 曹巧媛.单片机原理与应用m.北京:电子工业出版社,2002 14 程小东等.电气工程专业英语实用教程m.北京:清华大学出版社,2006 15 楼然苗等.51 系列单片机设计实例m.北京:北京航空航天大学出版社,2006 16 王幸之等.at89 系列单片机原理与接口技术m.北京:北京航空航天大学出版社 2004 17 刘瑞新.单片机原理及应用教程m.北京:机械工业出版

58、社,2003 18 余永权.atmel89 系列单片机应用技术m.北京:北京航空航天大学出版社, 2002 19 周航慈.单片机程序设计基础m.北京:北京航空航天大学出版社,1997 20 atmel.8-bit microcontroller with 8k bytes at89c51,1999 附录附录 a a 系统原理图系统原理图 123456 a b c d 654321 d c b a title numberrevisionsize b date:9-jun-2008 sheet of file:h:杨杨杨杨yu.ddbdrawn by: c2 104 c3 104 c4 104

59、+5v 1 2 con2 1 2 3 4 5 6 7 8 9 re14.7k 390r 390r 390r p1.0 1 p1.1 2 p1.2 3 p1.3 4 p1.4 5 p1.5 6 p1.6 7 p1.7 8 rst 9 p3.0/rxd 10 p3.1/txd 11 p3.2/int0 12 p3.3/int1 13 p3.4/t0 14 p3.5/t1 15 p3.6/wr 16 p3.7/rd 17 xtal 1 18 xtal 2 19 vss 20 p2.0 21 p2.1 22 p2.2 23 p2.3 24 p2.4 25 p2.5 26 p2.6 27 p2.7 28

60、 psen 29 ale 30 ea 31 p0.7 32 p0.6 33 p0.5 34 p0.4 35 p0.3 36 p0.2 37 p0.1 38 p0.0 39 vcc 40 u1 at89s51 390r 390r 390r 390r 390r +5v +5v +5v +5v a d1 in5048 32.768 xtal 1 xtal 2 11.0592m c11 15p c12 15p c13 15p c14 15p nc 1 x1 2 x2 3 gnd 4 rst 5 i/o 6 scl k 7 vdd 8 u2 dis302 +5v e1 10uf r9 2k +5v sc

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论