基于DS1302和51单片机的电子时钟设计的开发与实现.docx
20页- QQ咨询

- 微信客服

- 返回顶部
目录第一章系统介绍 21.1电子钟介绍 21.2单片机AT89C51介绍 21.3时钟芯片DS1302简介 51.3.1主要功能 51.3.2内部结构及引脚功能 51.3.3工作原理 61.3.4控制字节及寄存器 71.3.5时钟/口历存储区(时分秒) 71.3.6数据的传送 7第二章硬件设计 82.1系统结构及总流程图 82.2系统硬件电路设计图 92.2.1整体电路设计 92.2.2 DS1302 电路设计 92.2.3按键电路 102.2.4显示电路 10第三章、程序源代码 113.1程序流程图 113.1源程序 12第四章PROTEUS软件仿真 18总结 19谢辞 20参考文献 21我的梦,我的理想,我的未来,我的中国梦第一章系统介绍1.1电子钟介绍电子钟已成为人们日常生活中的必需品,广泛应用于家庭、车站、办公室等场所钟表数字化给人 们生产生活带来了极大地方便而且大大地扩展了钟表原先的报时功能诸如定时自动报警、按时自动打 铃、时间程序自动控制、通断动力设备、甚至各种定时电气的自动启用,因此研究数字钟及扩大其应用 有着非常现实的意义数字电子钟设计与制作可采用数字电路实现,也可以采用单片机来完成。
若用数字电路完成,所设 计的电路相当复杂,大概需要十几片数字集成块,其功能也主要依赖于数字电路的各功能模块的组合来 实现,焊接的过程比较复杂,成本也非常高若用单片机来设计制作完成,由于其功能的实现主要通过 软件编程来完成,那么就降低了硬件电路的复杂性,而且其成本也有所降低截止今日,单片机应用技 术飞速发展,纵观现在各个领域,从导弹的导航装置,到飞机上各种仪表的控制,从计算机的网络通讯 与数据传输,到工业自动化过程的实时控制和数据处理,以及我们生活中广泛使用的各种智能IC卡、 电子宠物等,这些都离不开单片机单片机即单片微型计算机(Single-Chip Microcomputer ),是集 CPU,RAM,ROM淀时,计数和多种接口于一体的微控制器它体积小,成本低,功能强,广泛应用于 智能产业和工业自动化上同时,若采用单片机计时,一方面需要采用计数器,占用硬件资源,另一方面需要设置中断、查询 等,同样耗费单片机的资源,而且,某些测控系统可能不允许但是,如果在系统中采用时钟芯片,则 能很好地解决这个问题现在流行的串行时钟电路很多,如DS1302、DS1307. PCF8485等这 些电路的接口简单、价格低廉、使用方便,被广泛地采用。
美国Dallas公司生产的串行实时时钟芯 片DS1302是一种具有涓细电流充电能力的实时时钟芯片,采用普通32.768KHZ晶振,具有实时时钟和 31字节的静态RAM主要特点是采用串行数据传输,可方便地与单片机接口,可为掉电保护电源提供 可编程的充电功能,并且可以关闭充电功能本设计要求利用51单片机和DS1302设计制作一个LED电子钟,用8个LED显示时间,当按下 相应按键时,修改当前时间或闹铃时间,若当前时间与闹铃时间相同,蜂鸣器发音1分钟1.2单片机AT89C51介绍AT89C51 是一个低功耗,高性能 CMOS 8 位单片机,片内含 8k Bytes ISP (In-system programmable) 的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存 储单元,功能强大的微型计算机的AT89C51可为许多嵌入式控制应用系统提供高性价比的解决方案AT89C51具有如下特点:40个引脚,8k Bytes Flash片内程序存储器,256 bytes的随机存取数据 存储器(RAM), 32个外部双向输入/输出(I/O) 口,5个中断优先级2层中断嵌套中断,2个16位可 编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。
另外,AT89C51可降至0Hz静态逻辑操作,支持2种软件可选择节电模式空闲模式下,CPU停 止工作,允许RAM、定时器/计数器、串口、中断继续工作掉电保护方式下,RAM内容被保存,振 荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止芯片引脚功能AT89C51芯片DIP双列直插式封装引脚如图1-1所示 作为输出口,每位能驱动8个TTL逻辑电平对 P0端口写“1”时,引脚用作高阻抗输入当访问外部程序和数据存储器时,P0 口也被作为低8位地址 /数据复用在这种模式下,P0具有内部上拉电阻P1 口: P1 口是一个具有内部上拉电阻的8位双向I/O 口,P1输出缓冲器能驱动4个TTL逻辑 电平对P1端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用作为输入使用时, 被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)引脚口第二功能如下:Pl. 0/T2 (定时器/计数器T2的外部计数输入),时钟输出Pl. 1/T2EX (定时器/计数器T2的捕捉/重载触发信号和方向控制)Pl. 5/M0SI (在系统编程用)P1.6/MIS0 (在系统编程用)Pl. 7/SCK (在系统编程用)P2 口: P2 口是一个具有内部上拉电阻的8位双向I/O 口,P2输出缓冲器能驱动4个TTL逻辑电 平对P2端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用作为输入使用时, 被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)o在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVX @DPTR)时,P2 口送 出高八位地址。 在这种应用中,P2 口使用很强的内部上拉发送1在使用8位地址(如MOVX @RI)访 问外部数据存储器时,P2 口输出P2锁存器的内容P3 口: P3 口是一个具有内部上拉电阻的8位双向I/O 口,P2输出缓冲器能驱动4个TTL逻辑 电平对P3端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用作为输入使用时, 被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)P3 口亦作为AT89C51特殊功能(第二功 能)使用引脚口第二功能如下:P3. 0/RXD(串行输入口)P3. 1/TXD(串行输出口)P3. 2/INT0(外中断 0)P3. 3/INT1 (外中断 1)P3.4/T0(定时/计数器0)P3. 5/T1 (定时/计数器1)P3. 6/WR (外部数据存储器写选通)P3. 7/RD (外部数据存储器读选通)此外,P3 口还接收一些用于FLASH闪存编程和程序校验的控制信号RST—复位输入当振荡器工作时,RST引脚出现两个机器周期以上高电平将是单片机复位ALE/PR0G——当访问外部程序存储器或数据存储器时,ALE (地址锁存允许)输出脉冲用于锁存地 址的低8位字节。 一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出 时钟或用于定时目的要注意的是:每当访问外部数据存储器时将跳过一个ALE脉冲如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作该位 置位后,只有一条M0VX和M0VC指令才能将ALE激活此外,该引脚会被微弱拉高,单片机执行外部程 序时,应设置ALE禁止位无效PSEN—程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89C52由外部程序存储 器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲,在此期间,当访问外部数据 存储器,将跳过两次PSEN信号EA/VPP——外部访问允许,欲使CPU仅访问外部程序存储器(地址为OOOOH-FFFFH), EA端必须保持低电平(接地)需注意的是:如果加密位LB1被编程,复位时内部会锁存EA端状态 如EA端为高电平(接Vcc端),CPU则执行内部程序存储器的指令1.3时钟芯片DS1302简介 1.3.1主要功能DS1302是美国DALLAS公司推出的一种高性能、低功耗、带RAM的实时时钟电路,它可以对 年、月、日、周日、时、分、秒进行计时,具有闰年补偿功能,工作电压为2.5V〜5.5V。 采用三线接 口与CPU进行同步通信,并可釆用突发方式一次传送多个字节的时钟信号或RAM数据DS1302内 部有一个31x8的用于临时性存放数据的RAM寄存器DS1302是DS1202的升级产品,与DS1202 兼容,但增加了主电源/后备电源双电源引脚,同时提供了对后备电源进行涓细电流充电的能力特性:• 实时时钟,可对秒、分、时、日、周、月以及带闰年补偿的年进行计数 •用于高速数据暂存的31X8RAM• 2引脚的串行I/O• 2.5-5.5V满度工作范围•用于时钟或RAM数据读写的单字节或多字节数据传送•双电源引脚•可选慢速充电至VCC11.3.2内部结构及引脚功能DS1302内部主要包括实时时钟(real time clock)、输入移位寄存器(input shift registers)> 31字节静态RAM、电源控制部分(power control命令控制逻辑(command and control logic)、振 荡器和分频器(oscillator and divider)等部分DS1302内部结构如图1-2所示AD BUS图1-2 DS1302内部结构-1 2 3 4 - U匚=匚 rll 2 D a X X N2JCJ -rvaSCL»I/o_RST一nn n n一-8 7 6 5 一图1-3 DS1302引脚排列DS1302具有8脚DIP引脚排列如图1-3所示。 Vccl:后备电源,在主电源关闭的情况下,也能保持时钟的连续运行;当Vcc2大于Vccl + 0.2V 时,Vcc2给DS1302供电Vc.c.2:主电源,当Vc.c.2小于Vccl时,DS1302由Vccl供电XI、X2:振荡源,外接32. 768kHz晶振GND:接地端SCLK:串行时钟输入端I/O:串行数据输入输出端(双向)RST:复位/片选线,通过把RST输入驱动置高电平来启动所有的数据传送RST输入有两种功能: 首先,RST接通控制逻辑,允许地址/命令序列送入移位寄存器;其次,RST。3 5 匚 :WH: =3.6 匸 (RD: =>3 7 匚XTAL2 f~XTAL1CGNO IZ403933373635233323130爲 2253232221□ vcc□ =>c □□ =>D 1Zl *2□ PD.3
©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.





