基于AT89S51单片机的万年历设计与实现
刘彦华1邢鹏康2
(河南工业职业技术学院电子工程系 河南南阳 473009)
中图分类号:TH-39 文献标识码:A 文 章 编 号 :1007-9416( 2010)10-0116-01
1 引言
随着技术的发展,电子万年历逐渐代替传统的钟表,用于个人家庭以及车站、银行、办公室等公共场所,给人们的生活、学习、工作、娱乐带来了极大的方便。
我们利用AT89S51单片机设计制作的万年历, 能够准确阳历年、月、日、星期、时、分、秒和阴历月、日的同时,还能具有很多其他的功能。如设定闹钟、阴阳历的转换等,同时体积小、携带方便。通过样机的调试、实验证明万年历计时准确、显示清晰、性能稳定。
2 系统设计方案
系 统 由 主 控 模 块 、时 钟 芯 片 、显示电路、键盘扫描电路共四个部分组成,电路构成框图如图1所示。
主控芯片使用51系列AT89S51单片机,时钟芯片使用美国DALLAS公司推出的一种高性能、低功耗、带RAM的实时时钟DS1302。采用 DS1302作为主要计时芯片,可以作到计时准确。更重要的是,DS1302可以在很小的后备电源(2.5~5.5V电源,在2.5V时耗电小于300Na)下继续计时,并可编程选择多种充电电源来对后备电源进行慢速充电,可以保证后备电源基本不耗电。显示电路采用普通的共阳极LED数码管,键输入采用独立式按键实现调整功能。
3 硬件电路设计
3.1 单片机最小应用系统
对AT89S51来说,最小应用系统一般包括:电源、复位电路、晶振电路、程序存储器选择等,是单片机能够正常工作最简单的电路。
3.2 实时时钟电路
DS1302是美国Dallas公司推出的串行接口实时时钟芯片,其内部具有实时时钟、日历和用户可用RAM,可根据月份和闰年的情况自动调整月份的日期。DS1302时钟芯片包括实时时钟/日历和31字节的静态RAM。实时时钟 /日历提供秒、分、时、日、周、月和年等信息。对于小于31天的月和月末的日期自动进行调整,还包括闰年校正的功能。时钟的运行可以采用24h或带AM/PM的 12h格式。工作电压宽达 2.5— 5.5V。采用双电源供电(主电源和备用电源)。可设置备用电源充电方式,提供了对后备电源进行涓细电流充电的能力。
DS1302与单片机之间采用同步串行的方式进行通信,仅需用到三根口线:CE接P3.4、SCLK接 P3.3、I/O接 P3.2,X1,X2脚外接32.768kHz晶振,为芯片提供计时脉冲。
3.3 显示电路
显示电路采用3片串行输入并行输出芯片74HC595串联来驱动19位 共 阳 数 码管。考虑到一次扫描19位数码管显示时会出现闪烁现象,设计时19位数码管分三排同时扫描,第一排6个数码管分别为千年、百年、十年、年、十月、月,第二2排6位数码管分别为十时、时、十分、分、十秒、秒,第三排7位数码管分别为星期、阴历十月、阴历月、阴历十日、阴历日、阳历十日、阳历日。显示时采用位传送输出段码,通过74HC595实现数据传送。把三片74HC595的10、11、12、13串联接到单片机的一个并行输入口,把第一个74HC595的14管脚接到单片机的一个管脚,然后把第一个74HC595的9管脚接到第二个74HC595的14管脚,第二个74HC595的9管脚接到第三个74HC595的14管脚。当对74HC595的11管脚输入一个脉冲时,它的14管脚就从单片机与其14管脚相连的接口接受一个数据,当输入8个脉冲时就接收一个字节,而当第二个8个脉冲到来后,第一个字节数据就会进入第二片74HC595中,而随后的第二个字节的数据就会进入第一片74HC595,这样当第三个8个脉冲完成后,首次送出的数据被送到了最下面的595(第三片)中,其它数据依次出现在第二和第一片74HC595中,实现了数据的串行输入,并行输出。
相关文章
- 2023-09-11一种计算空间平面的平面度误差新方法
- 2022-07-14国产Nz一T型扭振分析记录仪及其应用实例
- 2022-03-09基于计算机视觉的石油钻杆裂纹检测系统研析
- 2023-12-09关于热声驱动器水冷却器传热和压降的讨论
- 2023-12-19拉压不同模量有限元法剪切弹性模量及加速收敛
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。