|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
" o$ G( j, z- |# I z( |基于 51 单片机的电子时钟设计7 A$ e4 g) M3 _" [( b$ c
# ` F2 A1 W' w1 R) K
$ x5 T3 E3 u# A1 Z摘 要:单片机,是集 CPU ,RAM ,ROM ,定时器,计数器和多种接口于一体的微控制器。自20 世纪 70 年代问世以来,以其极高的性能价格比,受到人们的重视和关注。它体积小、重量轻、抗干扰能力强、环境要求不高、价格低廉、可靠性高、灵活性好、开发较为容易,广泛应用于智能生产和工业自动化上。7 |+ ]% K- m0 C8 Q# B# C4 i% D
本系统为基于DS12C887 的 多功能电子钟 ,以STC89C51单片机 作为主控芯,采用实时时钟芯片DS12C887,使用 1602 液晶作为显示输出。该系统走时精确,具有闹钟设置,时间模式切换,秒表以及可同时显示时间、日期等多种功能。本文将详细介绍STC89C51单片机和DS12C887 时钟芯片的基本原理,从软件和硬件电路的实现两大方面进行分析。
$ h! }$ x: _" x8 L【关键词】:STC89C51 单片机 液晶屏 时钟芯片 蜂鸣器
. I7 [0 \ V0 c9 P8 c/ g 6 \* e* d R1 |4 l5 n3 B
5 n' i' z+ P" k
目 录
) u$ w: C4 T( A O前 言 ................................................................. 1/ @3 g- z) b4 |$ Q8 K- F
一、方案选型: ......................................................... 2
! x$ z; a2 S3 t) N& n: G/ `二、系统硬件设计 ....................................................... 3
( } F$ G! D1 o+ [( t/ Q2.1 51 单片机最小系统设计 ........................................... 3
; N2 S9 [7 A) Z; w# Z6 e2.2 电源供电电路设计................................................ 3
7 f- m4 m/ Y. C. {5 [2.3 串口通信电路设计................................................ 4
5 ^7 h$ r3 u1 Z. e- M2 m$ f2.4 时钟芯片电路设计................................................ 4
. [1 h8 x0 @- D2 r1 y2.5 LCD显示电路设计................................................. 6! a9 s J% i; J2 F- S0 @1 m
2.6 报警电路设计.................................................... 6, G- s. q0 d3 x
2.7 键控电路设计.................................................... 6) m. K: M% p& l
三、系统软件设计 ....................................................... 73 b: F6 o3 s5 v1 H6 h. f
3.1 系统程序流程图设计.............................................. 7+ @$ X: o, `, x* _; @2 K
3.2 系统程序设计 (见附录)........................................ 9
; v v( G; |. a; q四、总结 ............................................................... 9
: J7 E' D5 e3 \* c4.1 作品功能、特色.................................................. 9
& m+ L4 q- i/ P7 B% o2 ~" z4.2 综合设计的体会.................................................. 9
' T) \9 X! f$ m9 g参考文献 .............................................................. 11
( y0 m7 t& a. h$ S附录 .................................................................. 12 C0 Z) u/ R5 f2 z0 G, q( a. W) @
8 K2 i; G. K7 c: k9 P+ [7 o7 q4 Y7 t0 w
前 言
1 U' n7 ~' s; \0 l随着科学技术的不断发展 , 人们对时间计量的要求越来越高 。在当今社会,电子时钟已经得到相当广泛的应用,产品多样,发展更是多元化。本作品是以STC89C51单片机 作为主控芯片,使用 12MHZ的晶振,使用专用时钟日历芯片DS12C887 产生时间信息,时间精确。软件部分以C语言为主体,用 1602LCD液晶屏显示输出信息,输出信息量多,更直观、人性化。该时钟可实现人机交互,可通过提供的键盘对其进行调整。系统具有以下功能:年、月、日、时、分、秒显示;12 小时/24 小时模式切换,在 12 小时模式中,用AM和PM区分上午和下午;秒表功能;整点闹铃和报时功能,且闹钟可设置多组。本次设计的电子时钟系统由单片机最小系统,1602LCD液晶屏,时钟芯片,调整按键,蜂鸣器,电源五大部分组成。
! p" w+ w& F. E L+ r$ H' `" `6 d8 z( E, i! V r! Y) I4 s2 m
+ z1 o5 ^/ ^- @" k" u+ p2 Z
一、方案选型: ; U& M' D: M0 `! H; v# E' z/ N
我们在设计电子时钟时遇到了芯片选型的问题,以下是三个设计方案:
2 a A% j3 G6 t: a3 l3 O5 l5 @4 _: ^4 ~1 S5 M$ \: a! C! A$ R
方案一:DS1302+数码管
" k4 J3 X, w' q" |DS1302 的使用非常方便,而且价格便宜而数码管显示的也很清楚,特别是显示时间很直观。但在制作过程中我们发现了这方案的一些问题。DS1302 是不自带电池,虽然可以通过外接纽扣电池来达到断电走时继续的目的,但在实际调试中会发现这是比较困难的。因为 DS1302 上电需要复位,而复位就会把正确的走时清零。如果不复位,DS1302 会出现各种各样的问题,如不走时、读出乱码等。要解决这个问题需要增加如 2402 等存储器,上电后先存储时间值,再复位。这么做无疑增加了电路设计和软件设计的复杂度。而使用数码管显示,虽然价格也便宜,显示效果好,但多位的数码管在动态扫描的时候会出现闪烁。如果少用几位,用切换的方法查看日期,时间等信息又显得麻烦。
( W4 c z9 M5 ~& K$ t3 t- X9 C, S$ \) V1 @) M' j
方案二:DS12C887+1602LCD 液晶屏
! `# ` F5 L% p6 f) v2 y6 i* \DS12C887 时钟芯片功能丰富价格适中,能够自动产生世纪、年、月、日、时、分、秒以及时间模式转换等的时间信息,芯片内部增加了世纪存储器,从而利用硬件电路解决了“千年”的问题。DS12C887 时钟芯片中还自带有锂电池,单片机掉电后时钟芯片内部的时间信息可以保持十年之久。1602LCD 液晶屏可以输出 2 行,每行显示 16 个字符。虽然 1602LCD 液晶屏较昂贵,但是该液晶屏显示清晰且不会闪烁,由于液晶屏是数字式的,因此和单片机系统的接口简单,操作方便。1602LCD 液晶屏的功耗主要消耗在其内部的电极和驱动 IC 上,因而耗电量比其它显示器要少得多,功耗较低。以上两种元件的程序编写简单,适用于多方面的应用。
* H3 Z7 e: n/ ~: u4 r6 ^, R L1 C e# ]: E# r
方案三:SD2068+1602LCD 液晶屏
& ?- r' {: r& f2 G9 M2 ISD2068 实时时钟芯片功能更加丰富,它除了具备有 DS12C887 时钟芯片的功能,另外还内置时钟精度数字调整功能,可以在很宽的范围内校正时钟的偏差;内置上电复位电路及指示位;内置电源稳压,内部计时电压可低至 1.5V。该芯片为工业级产品,是在选用实时时钟 IC 时的理想选择。但是该芯片是一款新型的芯片,使用并不广泛,操作不方便,可能会出现芯片不稳定等的因素。. i1 W9 c8 q3 C- w `3 N
因此由以上三种方案进行比较,我们选择方案二来设计电子时钟。以 STC89C51为主控芯片,DS12C887 为时钟芯片,1602LCD 液晶屏作为显示器。程序控制 DS12C887时钟芯片实现小时,分,秒和年,月,日的计时,并在 1602LCD 液晶屏上显示出来。通过按键对 12 小时/24 小时显示模式切换。当时间走到程序所设定的时间时,蜂鸣器响起,起到闹铃功能。当要显示秒表计时时,可以通过按键切换来实现。1 n9 r; s5 h2 r8 M6 B
8 `7 b* j+ m7 N3 K2 h4 x" ]! @! e
9 b/ E, l7 u x7 o) V/ [% p- z$ h1 b& d3 g# A
* D. Y8 y+ x% x% v& c
0 p) }7 z" n! F3 f% d0 q, A
- {5 c8 M6 V, B$ X6 P8 w: c' ~1 e
2 R2 D: F2 [7 ^) R4 o
3 [' B4 b; Z: D1 ?5 y
5 M- l: l$ Y9 `$ P |
|