logo资料库

基于AT89S51的单片机电子时钟设计.pdf

第1页 / 共6页
第2页 / 共6页
第3页 / 共6页
第4页 / 共6页
第5页 / 共6页
第6页 / 共6页
资料共6页,全文预览结束
中国科技论文在线 http://www.paper.edu.cn 基于 AT89S51 的电子时钟的设计 周琛晖 中国矿业大学计算机学院,江苏 徐州(221000) E-mail: zhou1232006@126.com 摘 要:本文研究了基于 AT89S51 单片机的电子时钟的设计方法,给出了硬件和软件系统 设计,包括单片机的选取、键盘电路的设计,显示电路的接口设计以及系统初始化和中断定 时程序的部分代码。该系统结构简单,成本较低,显示直观,计时精确,可显示秒、分、时、 天、月、年。 关键字:AT89S51 单片机;电子时钟;DS1302;LCD1602 1.引言 采用 LED 数码管的数字显示以其亮度高、显示直观等优点被广泛应用于智能仪器及家 用电器等领域.本文介绍一种以 AT89S51 单片机为核心,以 LED 数码管作为显示器件组成 7 实用多功能电子时钟的设计,该时钟可显示星期、时、分、秒.也可切换为年、月、日显 示。 2.系统设计 电子时钟系统结构主要包括单片机、时钟电路、复位电路、键盘电路、显示电路,系统 结构图如图 1 所示: 图1.电子时钟系统结构图 3.硬件设计 3.1AT89S51 单片机 本系统的单片机选用 AT89S51 单片机,AT89S51 是一个低功耗,高性能 CMOS 8 位单 片机,片内含 4k Bytes ISP(In-system programmable)的可反复擦写 1000 次的 Flash 只读程序 存储器,器件采用 ATMEL 公司的高密度、非易失性存储技术制造,兼容标准 MCS-51 指令 系统及 80C51 引脚结构,芯片内集成了通用 8 位中央处理器和 ISP Flash 存储单元。[1][2][5] AT89S51 具有如下特点:40 个引脚,4k Bytes Flash 片内程序存储器,128 bytes 的随机 存取数据存储器(RAM),32 个外部双向输入/输出(I/O)口,5 个中断优先级 2 层中断嵌 套中断,2 个 16 位可编程定时计数器,2 个全双工串行通信口,看门狗(WDT)电路,片内 时钟振荡器。 此外,AT89S51 设计和配置了振荡频率可为 0Hz 并可通过软件设置省电模式。 - 1 -
中国科技论文在线 http://www.paper.edu.cn AT89S51 在空闲模式下,CPU 暂停工作,而 RAM 定时计数器,串行口,外中断系统可继 续工作,掉电模式冻结振荡器而保存 RAM 的数据,停止芯片其它功能直至外中断激活或硬 件复位。同时该芯片还具有 PDIP、TQFP 和 PLCC 等三种封装形式,以适应不同产品的需 求。 3.2 时钟电路 本电子时钟的设计主要用到的芯片是 DS1302, DS1302 是美国 DALLAS 公司推出的一 种高性能、低功耗、带 RAM 的实时时钟电路,它可以对年、月、日、周日、时、分、秒进 行计时,具有闰年补偿功能,工作电压为 2.5V~5.5V。采用三线接口与 CPU 进行同步通信, 并可采用突发方式一次传送多个字节的时钟信号或 RAM 数据。DS1302 内部有一个 31×8 的 用于临时性存放数据的 RAM 寄存器。DS1302 是 DS1202 的升级产品,与 DS1202 兼容,但 增加了主电源/后背电源双电源引脚,同时提供了对后背电源进行涓细电流充电的能力。 DS1302 管脚图如图 2 所示。 图2.DS1302 管教图 3.3复位电路 为了初始化单片机内部的某些特殊功能寄存器,必须采用复位的方式,复位后可使CPU 及系统各部件处于确定的初始状态,并从初始状态开始正常工作。单片机的复位是靠外电路 来实现的,复位操作有两种情况,即上电复位和手动(开关)复位。本系统采用上电复位方式。 [3][6] 3.4 显示电路 显示电路主要用到的器件是 LCD1602,LCD1602 液晶显示的原理是利用液晶的物理特 性, 通过电压对其显示区域进行控制,有电就有显示,这样即可以显示出图形。液晶显示 器具有厚度薄、适用于大规模集成电路直接驱动、易于实现全彩色显示的特点。 LCD1602 实物图如图 3 所示. - 2 -
中国科技论文在线 http://www.paper.edu.cn 4.电子时钟原理及 Protues 仿真图 图 3.LCD1602 实物图 本电子时钟以 AT89C2051 单片机作为核心,具有时、分、秒、年、月、日的调整、显 示功能。利用定时器中断和软件编程实现电子钟秒计数功能。具体原理如下:单片机晶振为 12MHz,定时器 0 工作在方式 1,定时时间为 50ms,定时器 0 溢出中断 20 次即可实现 1 秒 定时,寄存器 B 用于存放定时器 0 的中断次数,其初值为 10H,即定时器中断 20 次后产生 1 秒定时信号,实现了电子钟的秒信号。本设计 Protues 仿真图如图 4 所示。 图 4.电子时钟 Protues 仿真图 - 3 -
中国科技论文在线 5.软件设计 软件采用模块化设计,其流程图如下: http://www.paper.edu.cn 图 5.系统程序流程图 下面介绍下程序的部分代码: 5.1 系统初始化 系统初始化包括:选择定时器工作在模式 1,开定时器 0 中断,启动定时器以及开总中 断。代码如下: void system_initial(void) { TMOD=0x11; ET0=1; TR0=1; EA=1; } 5.2 中断定时程序 中断定时程序是电子时钟的核心,在这里主要介绍一下本设计电子时钟的定时过 程: void timer0_isr(void) interrupt 1 using 1 //定时器 0 中断处理函数 { TL0=0xB9; TH0=0x3C; //定时器重装。定时 50mS 中断一次 n_50m_second++; if(n_50m_second>=20) //1 秒到 { n_50m_second=0; //清 50 毫秒计数 - 4 -
中国科技论文在线 http://www.paper.edu.cn second++; //秒加 1 if(second==60) //如果秒到 60 { second=0; //秒清 0 minute++; //分加 1 if(minute==60) //如果分到 60 { minute=0; //分清 0 hour++; //小时加 1 if(hour==24) //如果小时到 24 { hour=0; //小时清零 day++; //天加 1 if(day>days_of_month) //如果天大于本月最后一天 { day=1; //天置 1 month++; //月加 1 if(month>12) //如果月大于 12 { month=1; //月置 1 year++; //年加 1 if(year>=100) //如果年大于 100 { year=0; //年清零 } } } } } } } } 6.结束语 单片机体积小、重量轻、抗干扰能力强、环境要求不高、价格低廉、可靠性高、灵活性 好、开发较为容易。尤其是 MCS-51 单片机可以用高级语言编程, 极容易地实现系统移植, 并 且加快了软件的开发过程。这里以 AT89S51 单片机为核心, 辅以必要的电路, 采用高级 C 语 言编程, 设计了一个简易的电子时钟,电路简单, 由单电源供电, 通过数码管能够准确显示 时间,适合使用于家庭、办公室等场所.经实际使用,该电子时钟计时准确、显示直观、使 用方便。 - 5 -
中国科技论文在线 http://www.paper.edu.cn 参考文献 [1] 龙威林, 杨冠声, 胡山编. 单片机应用入门:AT89S51 和 AVR[M].北京:化学工业出版社,2008 [2] 董军堂,冯晓艳,贾培军.基于 AT89C2051 单片机的电子钟设计[J]. 电子制作,2008 [3]赵亮, 侯国锐.单片机 C 语言编程与实例[M].北京:人民邮电出版社,2003 [4]杨恢先,黄辉先.单片机原理及应用[M]. 北京:人民邮电出版社,2006 [5]张虹.单片机原理及应用[M].北京:中国电力出版社,2009 [6] 李云钢, 邹逢兴, 龙志强. 单片机原理与应用系统设计.[M]北京:中国水利水电出版社,2008 Based on AT89S51 electronic clock design China University Of Mining and Technologe,Jiangsu , Xuzhou (221000) Zhou Chen-Hui Abstract This article has studied based on at89S51 monolithic integrated circuit's electronic clock's design method, has given the hardware and the software system design, including monolithic integrated circuit's selection, keyboard electric circuit's design, display circuit's connection design as well as system initialization and interrupt fixed time procedure partial codes. This system structure is simple, the cost is low, demonstrates intuitively, the time is precise, may demonstrate the second, divides, day, month, year. Key words: AT89S51 monolithic; Integrated circuit; DS1302; LCD1602 - 6 -
分享到:
收藏