单片机原理课程设计 基于AT89C52的电子时钟设计.pdf
《单片机原理课程设计 基于AT89C52的电子时钟设计.pdf》由会员分享,可在线阅读,更多相关《单片机原理课程设计 基于AT89C52的电子时钟设计.pdf(24页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、单片机原理课程设计单片机原理课程设计目:名:院:业:级:号:导教师:基于 AT89C52 的电子时钟设计年月日南京农业大学教务处制题姓学专班学指.aortiu目目录录摘要 2关键词 2引言 21 设计要求与方案论证 2 1. 1 设计要求2 1. 2 系统方案选择方案和论证2 1.2.1单片机芯片的选择方案和论证2 1.2.2显示模块选择方案和论证3 1.2.3时钟芯片的选择方案和论证32. 系 统 的 硬 件 设 计 与 实 现 3 2. 1 电路设计框图3 2. 2 系统硬件概述3 2. 3 主要单 元电路 的设计 4 2.3.1单片机主控制模块的设计4 2.3.2时钟电路模块的设计4 2
2、.3.3键盘模块设计5 2.3.4蜂鸣器模块的设计5 2.3.5显示模块的设计53.系 统 的 软 件 设 计 6 3. 1 程序流程框图 6 3. 2 程序的设计 74. 系统调试7 4. 1 软件调试 7 4. 2 硬件调试 84.3 实验箱调试结果 85. 总结心得体会9附附录录一一:系统程序9;.基于 AT89C52 的电子时钟设计指导教师:吕成绪 胡飞摘要:单片机在电子产品中的应用越来越广泛,特别是 51 系列的单片机,由于其使用方便、价格低廉等优势,在市场上占有很大的份额。AT89C52 就是 51 系列中的一个比较成熟的型号。本设计是一个多功能的实时时钟,带秒表、整点报时、闹铃、
3、调整时间等功能。可按键直接设置闹铃时间。由 AT89C51 单片机、DS1302、LCD1602 等模块组成。现代社会,时间就是金钱,时钟是每个人的必备品。本设计实现了所需功能,给大家带来方便,整体性好、人性化强、可靠性高,实现了时钟的多功能应用。关键词:电子时钟;DS1302;LCD1602;引言:随着科技的快速发展,时间的流逝,从观太阳、摆钟到现在电子钟,人类不断研究,不断创新纪录。美国 DALLAS 公司推出的具有涓细电流充电能的低功耗实时时钟电路DS1302。它可以对年、月、日、周、时、分、秒进行计时,还具有闰年补偿等多种功能,而且 DS1302 的使用寿命长,误差小。对于数字电子时钟
4、采用直观的数字显示,可以同时显示年、月、日、周日、时、分、秒和温度等信息,还具有时间校准等功能。该设计以 AT89C51 单片机作为核心, 功耗小, 能在 3V 的低压工作, 电压可选用 35V 电压供电。综上所述,此电子时钟具有读取方便、显示直观、功能多样、电路简洁、成本低廉等诸多优点,符合电子仪器仪表的发展趋势,具有广阔的市场前景。1.1.设计要求与方案设计要求与方案1.11.1设计要求:设计要求:(1)启动时显示制作的年、月、日、制作者的学号等信息。(2)24 小时计时功能(精确到秒)(3)整点报时功能。(4)秒表功能(5)省电功能模式(未设计)1.21.2 系统基本方案选择系统基本方案
5、选择 1.2.1 1.2.1 单片机芯片的选择方案和论证单片机芯片的选择方案和论证方案一:采用 89C51 芯片作为硬件核心,采用 Flash ROM,内部具有 4KB ROM 存储空间,能于3V的超低压工作,而且与MCS-51 系列单片机完全兼容,但是运用于电路设计中时由于不具备 ISP 在线编程技术, 当在对电路进行调试时,由于程序的错误修改或对程序的新增功能需要烧入程序时,对芯片的多次拔插会对芯片造成一定的损坏。方案二:采用AT89S52,片内ROM全都采用Flash ROM; 能以3V的超底压工作; 同时也与MCS-51;.系列单片机完全该芯片内部存储器为 8KB ROM 存储空间,同
6、样具有 89C51 的功能,且具有在线编程可擦除技术,当在对电路进行调试时,由于程序的错误修改或对程序的新增功能需要烧入程序时,不需要对芯片多次拔插,所以不会对芯片造成损坏。相比之下,我们在实验箱实际仿真时选择采用AT89S52 作为主控制系统,由于proteus 库中没有 AT89S52,在原理图仿真时采用了 AT89C51.1.2.21.2.2 显示模块选择方案和论证显示模块选择方案和论证方案一:采用点阵式数码管显示,点阵式数码管是由八行八列的发光二极管组成,对于显示文字比较适合,如采用在显示数字显得太浪费,且价格也相对较高,所以也不用此种作为显示.方案二:采用 LCD 液晶显示屏,液晶显
7、示屏的显示功能强大,显示多样,清晰可见.本设计采用 LCD1602.1.2.31.2.3 时钟芯片的选择方案和论证时钟芯片的选择方案和论证方案一:直接采用单片机定时计数器提供秒信号,使用程序实现年、月、日、时、分、秒计数。采用此种方案虽然减少芯片的使用,节约成本,但是,实现的时间误差较大。所以不采用此方案。方案二:采用 DS1302 时钟芯片实现时钟,DS1302 芯片是一种高性能的时钟芯片,可自动对秒、分、时、日、周、月、年以及闰年补偿的年进行计数,而且精度高,位的 RAM 做为数据暂存区,工作电压 2.5V5.5V 范围内,2.5V 时耗电小于 300nA.综上各方案所述,对此次作品的方案
8、选定: 采用 AT89C52 作为主控制系统, DS1302提供时钟计时,LCD1602 屏幕显示.2.2.系统的硬件设计与实现系统的硬件设计与实现2.12.1 电路设计框图电路设计框图AT89C51 LCD1602显示模块单片机键盘模块DS1302 时钟模块模 块2.22.2 系统硬件概述本电路是由 AT89C51 单片机为控制核心,具有在线编程功能,低功耗,能在 3V 超低压工作;时钟电路由 DS1302 提供,它是一种高性能、低功耗、带 RAM 的实时时钟电路,它可以对年、月、日、时、分、秒进行计时,具有闰年补偿功能,工作电压为 2.5V5.5V。采用三线接口与CPU 进行同步通信,并可
9、采用突发方式一次传送多个字节的时钟信号或 RAM 数据。DS1302 内部有一个 31*8 的用于临时性存放数据的 RAM 寄存器。可产生年、月、日、周日、时、分、秒,具有使用寿命长,精度高和低功耗等特点,同时具;.有掉电自动保存功能;显示部份由 LCD1602 构成.2.32.3 主要单元电路的设计 2.3.1 2.3.1 单片机主控制模块的设计单片机主控制模块的设计图-1 主控制系统 AT89C51 单片机为 40 引脚双列直插芯片,有四个 I/O 口 P0,P1,P2,P3。单片机的最小系统如上图所示,18引脚和19引脚接时钟电路,XTAL1接外部晶振和微调电容的一端,在片内它是振荡器倒
10、相放大器的输入,XTAL2 接外部晶振和微调电容的另一端,在片内它是振荡器倒相放大器的输出.第9引脚为复位输入端,接上电容,电阻及开关后够上电复位电路.如图-1 所示.2.3.22.3.2 时钟电路模块的设计时钟电路模块的设计;.图-2 DS1302 的引脚图图-2 示出 DS1302 的引脚排列,其中 Vcc1 为后备电源,Vcc2 为主电源。在主电源关闭的情况下, 也能保持时钟的连续运行。 DS1302 由 Vcc1 或 Vcc2 两者中的较大者供电。当 Vcc2 大于 Vcc1+0.2V 时, Vcc2 给 DS1302 供电。 当 Vcc2 小于 Vcc1 时, DS1302 由 Vc
11、c1供电。X1 和 X2 是振荡源,外接 32.768KHz 晶振。RST 是复位/片选线,通过把 RST 输入驱动置高电平来启动所有的数据传送。RST 输入有两种功能:首先,RST 接通控制逻辑,允许地址/命令序列送入移位寄存器; 其次, RST 提供终止单字节或多字节数据的传送手段。当 RST 为高电平时,所有的数据传送被初始化,允许对 DS1302 进行操作。如果在传送过程中 RSTS 置为低电平,则会终止此次数据传送,I/O 引脚变为高阻态。上电动行时,在 Vcc 大于等于 2.5V 之前,RST 必须保持低电平。中有在 SCLK 为低电平时,才能将 RST 置为高电平,I/O 为串行
12、数据输入端(双向) 。SCLK 始终是输入端。 2.3.3 2.3.3 键盘模块设计键盘模块设计图-3 键盘模块如图-3,K1、K2、K3、K4 均为多功能键。K1 为秒表设置键,按 K4 键时为时钟确定键;K2 在 K4 按下时为时钟下调键,在 K3 按下时为闹钟确定键,在 K1 按下时为秒表开始键;K3 为闹钟设置键,在 K4 按下时为时钟上调键,在 K1 按下时为秒表暂停键;K4为时钟设置键,在 K3 按下时为闹钟移位键,在 K1 按下时为秒表退出键。2.3.42.3.4 蜂鸣器模块的设计蜂鸣器模块的设计图-4 声音输出模块闹铃时间到和整点时,P3_7 给低电平,蜂鸣器响。;.2.3.5
13、2.3.5 显示模块的设计显示模块的设计图-5 LCD 显示输出模块如图5,1 脚 VSS 和 3 脚 VEE 为电源接地,第 2 管脚 VDD 接电源,第 4 管脚 RS 为寄存器选择,高电平 1 时选择数据寄存器、低电平 0 时选择指令寄存器;RW 为读写信号线,高电平 1 时进行读操作,低电平 0 时进行写操作;E(或 EN)端为使能(enable)端;第 714 脚 D0D7 为 8 位双向数据端。控制和数据端都接了上拉电阻用来驱动。3.3.系统的软件设计系统的软件设计3.1 程序流程框图图-A 主程序流程图;.图-B 时间调整程序流程图 3.2 3.2 程序的设计见附录4.4.系统调
14、试系统调试 4.1 4.1 软件调试结果软件调试结果时钟主界面用户;.设置闹铃界面秒表界面时钟仿真图4.24.2 硬件调试结果起初蜂鸣器有点问题不响,后来发现是定义错端口引起的。其他功能正常。4.34.3 实验箱调试结果实现功能的具体方法:时钟主界面时按下 K1 键进入秒表功能,按 K2 秒表开始,再按 K3 秒表停,按键 K4返回时间显示;按K4 开始调试(移位“年秒” ) ,接着按K2、K3 调节时间增减;按K2开启闹钟,K3 调节时间,K4(移位“时分” ) ;按“年秒”的顺序移位,按键 K2 进行减运算,按键 K3 进行加运算,按键 K1 返回到主界面并显示设置值。按下 K3 键,实现
15、闹钟定时调整,按键 K4 进行“分-秒”移位,按键 K3 进行上调,按键 K2 返回到主界面。主界面 K2 实现开启/关闭闹钟的功能。按下 K1 键进入秒表,按键 K2 开始计时,K3 暂停计时,K4 返回到主界面。;.5.5.总结心得体会:总结心得体会:这次实习我们组选择的是电子时钟设计。实习任务包括理论设计、调试与仿真、撰写设计报告等。其中理论设计又包括选择总体方案,硬件系统设计、软件系统设计;硬件设计包括单元电路,选择元器件及计算参数等;软件设计包括模块化层次结构图,程序流程图。程序设计是课程设计的关键环节,开始以为时钟会很简单,就算遇到问题应该也很好解决,但当自己真正去做的时候,发现了
16、好多困难。于是查资料,问同学。经过和同学的探讨,通过调试进一步完善程序设计,最后虽然省电模式没实现但其他基本达到课题所要求的指标。完成了实习任务。这次实习我更加了解了单片机的应用,更加牢牢的掌握了书本知识与现实的结合,总之这是实习收获很大,以后还需多动手实践,多练习编程,才能熟练掌握单片机。附录一:附录一:程序:#include#include#include#include#define uchar unsigned char#define uint unsigned int#define TIME (0X10000-50000)#define FLAG 0 xf4/闹钟标志sbit rst
17、=P12; /DSsbit clk=P10;sbit dat=P11;sbit rs=P20;/LCDsbit rw=P21;sbit e=P22;sbit beep=P13;sbit mbkey=P14;uchar k;uchar flag;uchar i=20,j,time116;uchar alarm2,time215,time3;time53;uchar code Day=31,28,31,30,31,30,31,31,30,31,30,31; /12(非闰年)uchar key2num,ms=0,mbmiao=0,mbfen=0,mbkeynum,num; /msmbmiao.mbf
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机原理课程设计 基于AT89C52的电子时钟设计 单片机 原理 课程设计 基于 AT89C52 电子 时钟 设计
限制150内