单片机原理课程设计基于AT89C52的电子时钟设计说明 下载本文

内容发布更新时间 : 2024/5/5 17:36:22星期一 下面是文章的全部内容请认真阅读。

单片机原理课程设计

题 目:

姓 名: 学 院: 专 业: 班 级: 学 号: 指导教师:

基于AT89C52的电子时钟设计

年月日 农业大学教务处制

aortiu

目 录

摘要 ……………………………………………………………………………2 关键词 ……………………………………………………………………………2 引言 ……………………………………………………………………………2 1设计要求与方案论证 …………………………………………………………2 1.1设计要求 ………………………………………………………………2 1.2系统方案选择方案和论证 ……………………………………………2 1.2.1单片机芯片的选择方案和论证……………………………………2 1.2.2 显示模块选择方案和论证 …………………………………………3 1.2.3 时钟芯片的选择方案和论证 ………………………………………3 2.系统的硬件设计与实现…………………………………………………3 2.1电路设计框图 …………………………………………………………3 2.2系统硬件概述 …………………………………………………………3 2.3 主要单元电路的设计 ……………………………………………………4 2.3.1 单片机主控制模块的设计 ……………………………………………4 2.3.2时钟电路模块的设计 ………………………………………………4 2.3.3 键盘模块设计 …………………………………………………………5 2.3.4蜂鸣器模块的设计 …………………………………………………5 2.3.5显示模块的设计 ……………………………………………………5 3.系统的软件设计 ………………………………………………………6 3.1程序流程框图 ……………………………………………………………6 3.2程序的设计 ………………………………………………………………7 4.系统调试 ……………………………………………………………………7 4.1软件调试 …………………………………………………………………7 4.2硬件调试 …………………………………………………………………8 4.3 实验箱调试结果 ……………………………………………………………………8 5.总结心得体会 ……………………………………………………………………9

附录一:系统程序 ……………………………………………………………9

基于AT89C52的电子时钟设计

指导教师:吕成绪 胡飞

摘要:单片机在电子产品中的应用越来越广泛,特别是51系列的单片机,由于其使用方便、价格

低廉等优势,在市场上占有很大的份额。AT89C52就是51系列中的一个比较成熟的型号。本设计是一个多功能的实时时钟,带秒表、整点报时、闹铃、调整时间等功能。可按键直接设置闹铃时间。由AT89C51单片机、DS1302、LCD1602等模块组成。现代社会,时间就是金钱,时钟是每个人的必备品。本设计实现了所需功能,给大家带来方便,整体性好、人性化强、可靠性高,实现了时钟的多功能应用。

关键词:电子时钟;DS1302;LCD1602;

引言:

随着科技的快速发展,时间的流逝,从观太阳、摆钟到现在电子钟,人类不断研究,不断创新纪录。美国DALLAS公司推出的具有涓细电流充电能的低功耗实时时钟电路DS1302。它可以对年、月、日、周、时、分、秒进行计时,还具有闰年补偿等多种功能,而且DS1302的使用寿命长,误差小。对于数字电子时钟采用直观的数字显示,可以同时显示年、月、日、周日、时、分、秒和温度等信息,还具有时间校准等功能。该设计以AT89C51单片机作为核心,功耗小,能在3V的低压工作,电压可选用3~5V电压供电。

综上所述,此电子时钟具有读取方便、显示直观、功能多样、电路简洁、成本低廉等诸多优点,符合电子仪器仪表的发展趋势,具有广阔的市场前景。

1.设计要求与方案 1.1 设计要求:

(1)启动时显示制作的年、月、日、制作者的学号等信息。 (2)24小时计时功能(精确到秒) (3)整点报时功能。 (4)秒表功能

(5)省电功能模式(未设计) 1.2 系统基本方案选择

1.2.1单片机芯片的选择方案和论证 方案一:

采用89C51芯片作为硬件核心,采用Flash ROM,部具有4KB ROM 存储空间,能于3V的超低压工作,而且与MCS-51系列单片机完全兼容,但是运用于电路设计中时由于不具备ISP在线编程技术, 当在对电路进行调试时,由于程序的错误修改或对程序的新增功能需要烧入程序时,对芯片的多次拔插会对芯片造成一定的损坏。 方案二:

采用AT89S52,片ROM全都采用Flash ROM;能以3V的超底压工作;同时也与MCS-51

系列单片机完全该芯片部存储器为8KB ROM 存储空间,同样具有89C51的功能,且具有在线编程可擦除技术,当在对电路进行调试时,由于程序的错误修改或对程序的新增功能需要烧入程序时,不需要对芯片多次拔插,所以不会对芯片造成损坏。

相比之下,我们在实验箱实际仿真时选择采用AT89S52作为主控制系统,由于proteus库中没有AT89S52,在原理图仿真时采用了AT89C51. 1.2.2 显示模块选择方案和论证

方案一:采用点阵式数码管显示,点阵式数码管是由八行八列的发光二极管组成,对于显示文字比较适合,如采用在显示数字显得太浪费,且价格也相对较高,所以也不用此种作为显示.

方案二:采用LCD液晶显示屏,液晶显示屏的显示功能强大,显示多样,清晰可见. 本设计采用LCD1602.

1.2.3时钟芯片的选择方案和论证 方案一:

直接采用单片机定时计数器提供秒信号,使用程序实现年、月、日、时、分、秒计数。采用此种方案虽然减少芯片的使用,节约成本,但是,实现的时间误差较大。所以不采用此方案。

方案二:

采用DS1302时钟芯片实现时钟,DS1302芯片是一种高性能的时钟芯片,可自动对秒、分、时、日、周、月、年以及闰年补偿的年进行计数,而且精度高,位的RAM做为数据暂存区,工作电压2.5V~5.5V围,2.5V时耗电小于300nA.

综上各方案所述,对此次作品的方案选定: 采用AT89C52作为主控制系统, DS1302提供时钟计时,LCD1602屏幕显示.

2.系统的硬件设计与实现 2.1 电路设计框图 AT89C51 LCD1602 显示模块 单片机 键盘模块 DS1302 时钟模块 模 块 2.2 系统硬件概述

本电路是由AT89C51单片机为控制核心,具有在线编程功能,低功耗,能在3V超低压工作;时钟电路由DS1302提供,它是一种高性能、低功耗、带RAM的实时时钟电路,它可以对年、月、日、时、分、秒进行计时,具有闰年补偿功能,工作电压为2.5V~5.5V。采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。DS1302部有一个31*8的用于临时性存放数据的RAM寄存器。可产生年、月、日、周日、时、分、秒,具有使用寿命长,精度高和低功耗等特点,同时具有

掉电自动保存功能;显示部份由LCD1602构成.

2.3 主要单元电路的设计

2.3.1单片机主控制模块的设计

图-1 主控制系统

AT89C51单片机为40引脚双列直插芯片,有四个I/O口P0,P1,P2,P3。

单片机的最小系统如上图所示,18引脚和19引脚接时钟电路,XTAL1接外部晶振和微调电容的一端,在片它是振荡器倒相放大器的输入,XTAL2接外部晶振和微调电容的另一端,在片它是振荡器倒相放大器的输出.第9引脚为复位输入端,接上电容,电阻及开关后够上电复位电路.如图-1 所示.

2.3.2时钟电路模块的设计

图-2 DS1302的引脚图

图-2示出DS1302的引脚排列,其中Vcc1为后备电源,Vcc2为主电源。在主电源关闭的情况下,也能保持时钟的连续运行。DS1302由Vcc1或Vcc2两者中的较大者供电。当Vcc2大于Vcc1+0.2V时,Vcc2给DS1302供电。当Vcc2小于Vcc1时,DS1302由Vcc1供电。X1和X2是振荡源,外接32.768KHz晶振。RST是复位/片选线,通过把RST输入