基于DS1302的电子时钟设计_第1页
基于DS1302的电子时钟设计_第2页
基于DS1302的电子时钟设计_第3页
基于DS1302的电子时钟设计_第4页
基于DS1302的电子时钟设计_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2012 2013 学年学年 第第 二二 学期学期 单片机单片机 课课 程程 设设 计计 报报 告告 题题 目 目 基于基于 DS1302DS1302 的电子时钟设计的电子时钟设计 专专 业 业 电气工程系自动化电气工程系自动化 班班 级 级 1010 自动化 自动化 2 2 班 班 姓姓 名 名 费孝斌费孝斌 洪建勇洪建勇 刘云飞刘云飞 桑乐桑乐 陆欢欢陆欢欢 魏笑魏笑 指导教师 指导教师 林开司林开司 电气工程系 2013 年 5 月 12 日 任务书任务书 课题名称课题名称基于基于 DS1302 时钟芯片的电子时钟设计时钟芯片的电子时钟设计 指导教师 职称 指导教师 职称 林开司林开司 执行时间执行时间2012 2013 学年第学年第 二二 学期学期 第十周第十周 学生姓名学生姓名学号学号承担任务承担任务 费孝斌费孝斌1009111020编写实验报告编写实验报告 洪建勇洪建勇1009111030计算相关数据计算相关数据 刘云飞刘云飞1009111054查找有关资料查找有关资料 桑乐桑乐 1009111066绘图绘图 陆欢欢陆欢欢1009111058解决有关问题解决有关问题 魏笑魏笑1009111088检查并校对报告检查并校对报告 设计目的设计目的 基于单片机的电子时钟的设计基于单片机的电子时钟的设计 设计要求设计要求 1 1 计时 秒 分 时 天 周 月 年 计时 秒 分 时 天 周 月 年 2 2 时钟通过 时钟通过 LCD1602LCD1602 显示 显示 3 3 通过按键对时钟 分钟和秒钟进行调节 通过按键对时钟 分钟和秒钟进行调节 摘摘 要要 电子时钟主要是利用电子技术将时钟电子化 数字化 拥有时钟 精确 体积小 界面友好 可扩展性能强等特点 被广泛应用于生活 和工作当中 另外 在生活和工农业生产中 也常常需要温度 这就 需要电子时钟具有多功能性 本设计主要为实现一款可正常显示时钟 日历 带有定时闹铃的多功 能电子时钟 本文对当前电子钟开发手段进行了比较和分析 最终确定了采用单片 机技术实现多功能电子时钟 本设计应用 AT89C52 芯片作为核心 6 位 LED 数码管显示 使用 DS1302 实时时钟日历芯片完成时钟 日历的 基本功能 这种实现方法的优点是电路简单 性能可靠 实时性好 时间精确 操作简单 编程容易 该电子时钟可以应用于一般的生活和工作中 也可通过改装 提高性 能 增加新功能 从而给人们的生活和工作带来更多的方便 关键词 关键词 电子时钟 多功能 AT89C52 时钟日历芯片 基于单片机的电子时钟 0 目目 录录 摘要摘要 一 引言一 引言 4 4 二 基于单片机的电子时钟硬件选择分析二 基于单片机的电子时钟硬件选择分析 5 5 2 12 1 主要主要 ICIC 芯片选择芯片选择 5 5 2 1 12 1 1 微处理器选择微处理器选择 5 5 2 1 22 1 2 DS1302DS1302 简介简介 6 6 2 1 32 1 3 DS1302DS1302 引脚说明引脚说明 7 7 2 22 2 电子时钟硬件电路设计电子时钟硬件电路设计 8 8 2 2 12 2 1 时钟电路设计时钟电路设计 9 9 2 2 22 2 2 整点报时功能整点报时功能 10 10 三 三 protelprotel 软件画原理图软件画原理图 11 11 3 13 1 系统工作流程图系统工作流程图 12 12 3 23 2 原理图原理图 13 13 四 四 proteusproteus 软件仿真及调试软件仿真及调试 14 14 4 14 1 电路板的仿真电路板的仿真 15 15 4 24 2 软件调试软件调试 16 16 五 五 源程序源程序 17 17 六 参考文献六 参考文献 18 18 基于单片机的电子时钟 1 引引 言言 时间是人类生活必不可少的重要元素 如果没有时间的概念 社会将不会有所发展和进 步 从古代的水漏 十二天干地支 到后来的机械钟表以及当今的石英钟 都充分显现出了 时间的重要 同时也代表着科技的进步 致力于计时器的研究和充分发挥时钟的作用 将有 着重要的意义 1 11 1 多功能电子时钟研究的背景和意义多功能电子时钟研究的背景和意义 20 世纪末 电子技术获得了飞速的发展 在其推动下 现代电子产品几乎渗透到了社会 的各个领域 有力的推动和提高了社会生产力的发展与信息化程度 同时也使现代电子产品 性能进一步提升 产品更新换代的节奏也越来越快 时间对人们来说总是那么宝贵 工作的忙碌性和繁杂容易使人忘记当前的时间 然而遇 到重大事情的时候 一旦忘记时间 就会给自己或他人造成很大麻烦 平时我们要求上班准 时 约会或召开会议必然要提及时间 火车要准点到达 航班要准点起飞 工业生产中 很 多环节都需要用时间来确定工序替换时刻 所以说能随时准确的知道时间并利用时间 是我 们生活和工作中必不可少的 1 电子钟是采用电子电路实现对时 分 秒进行数字显示的计时装置 广泛应用于个人家 庭 车站 码头办公室等公共场所 成为人们日常生活中不可少的必需品 由于数字集成 电路的发展和石英晶体振荡器的广泛应用 使得数字钟的精度 远远超过老式钟表 钟表的 数字化给人们生产生活带来了极大的方便 而且大大地扩展了钟表原先的报时功能 诸如定 时自动报警 0 按时自动打铃 定时广播 自动起闭路灯 定时开关烘箱 通断动力设备 甚至各种定时电气的自动启用等 所有这些 都是以钟表数字化为基础的 因此 研究数字 钟及扩大其应用 有着非常现实的意义 1 21 2 电子时钟的功能电子时钟的功能 电子时钟主要是利用电子技术将时钟电子化 数字化 拥有时间精确 体积小 界面友 好 可扩展性能强等特点 被广泛应用于生活和工作当中 当今市场上的电子时钟品类繁多 外形小巧别致 也有体型较大的 诸如公共场所的大型电子报时器等 电子时钟首先是数字 化了的时间显示或报时器 在此基础上 人们可以根据不同场合的要求 在时钟上加置其他 功能 比如定时闹铃 万年历 环境温度 湿度检测 环境空气质量检测 USB 扩展口功 能等 本设计电子时钟主要功能为 1 具有时间显示和手动校对功能 24 小时制 2 具有年 月 日显示和手动校对功能 3 具有整点报时功 基于单片机的电子时钟 2 第第 2 2 章章 基于单片机的电子时钟硬件选择分析基于单片机的电子时钟硬件选择分析 考虑单片机货源充足 价格低廉 可软硬件结合使用 能够较方便的实现系统的多功能性 故采用单片机作为本设计的硬件基础 2 12 1 主要主要 ICIC 芯片选择芯片选择 2 1 12 1 1 微处理器选择微处理器选择 目前在单片机系统中 应用比较广泛的微处理器芯片主要为 8XC5X 系列单片机 该系 列单片机均采用标准 MCS 52 内核 硬件资源相互兼容 品类齐全 功能完善 性能稳定 体积小 价格低廉 货源充足 调试和编程方便 所以应用极为广泛 例如比较常用的 AT89C2052 单片机 带有 2KB Flash 可编程 可擦除只读存储器 E2PROM 的低压 高性能 8 位 CMOS 微型计算机 拥有 15 条可编程 I O 引脚 2 个 16 位定时器 计数器 6 个中断源 可编程串行 UART 通道 并能直接驱动 LED 输出 仅仅是为了完成时钟设计或者是环境温度采集设计 应用 AT89C2052 单片机完全可以实现 但是将两种功能结合在一片单片机上 就需要更多的 I O 引脚 故本设计采用具有 32 根 I O 引脚的 AT89C52 单片机 AT89C52 单片机是一款低功耗 低电压 高性能 CMOS 8 位单片机 片内含 4KB 可经 受 1000 次擦写周期 的 FLASH 可编程可反复擦写的只读程序存储器 EPROM 器件采 用 CMOS 工艺和 ATMEI 公司的高密度 非易失性存储器 NURAM 技术制造 其输出引 脚和指令系统都与 MCS 52 兼容 片内的 FLASH 存储器允许在系统内可改编程序或用常 规的非易失性存储器编程器来编程 因此 AT89C52 是一种功能强 灵活性高且价格合理 的单片机 可方便的应用在各个控制领域 6 AT89C52 具有以下主要性能 1 4KB 可改编程序 Flash 存储器 2 全静态工作 0 24Hz 3 128 8 字节内部 RAM 4 32 个外部双向输入 输出 I O 口 5 6 个中断优先级 2 个 16 位可编程定时计数器 6 可编程串行通道 基于单片机的电子时钟 3 7 片内时钟振荡器 此外 AT89C52 是用静态逻辑来设计的 其工作频率可下降到 0Hz 并提供两种可用软件 来选择的省电方式 空闲方式 Idle Mode 和掉电方式 Power Down Mode 在空闲 方式中 CPU 停止工作 而 RAM 定时器 计数器 串行口和中断系统都继续工作 在掉 电方式中 片内振荡器停止工作 由于时钟被 冻结 使一切功能都暂停 只保存片内 RAM 中的内容 直到下一次硬件复位为止 基于单片机的电子时钟 4 图 2 1 AT89C52 芯片 PDIP 封装引脚图 AT89C51 为适应不同的产品需求 采用 PDIP TQFP PLCC 三种封装形式 本系统采用 双列直插 PDIP 封装形式 2 1 22 1 2 DS1302DS1302 简介简介 DS1302 是美国 DALLAS 公司推出的一种高性能 低功耗的实时时钟日历芯片 附加 31 字节静态 RAM 采用 SPI 三线接口与 CPU 进行同步通信 并可采用突发方式一次传送 多个字节的时钟信号和 RAM 数据 实时时钟可提供秒 分 时 日 星期 月和年 一个 月小于 31 天时可以自动调整 且具有闰年补偿功能 工作电压宽达 2 5 5 5V 采用双电 源供电 主电源和备用电源 可设置备用电源充电方式 提供了对后备电源进行涓细电流 充电的能力 有主电源和备份电源双引脚 而且备份电源可由大容量电容 1F 来替代 需要强调的是 DS1302 需要使用 32 768KHz 的晶振 2 1 32 1 3 DS1302DS1302 引脚说明引脚说明 123456 A B C D 654321 D C B A Title NumberRevisionSize B Date 9 Jun 2008 Sheet of File C Documents and Settings Administrator 业业 业业业业业业 业业业 业业业业业业业业业业业业业业 ddbDrawn B y VC C1 1 X1 2 X2 3 GND 4 VC C2 8 SCLK 7 I O 6 RST 5 DS 1302 图 2 2 DS1302 芯片引脚图 其的引脚功能参照表 2 1 表 2 1 DS1302 引脚功能说明 引脚号名称功能 基于单片机的电子时钟 5 1VCC1 备份电源输入 2X1 32 768KHz 晶振输入 3X2 32 768KHz 晶振输出 4GND 地 5RST 控制移位寄存器 复位 6I O 数据输入 输出 7SCLK 串行时钟 8VCC2 主电源输入 2 22 2 电子时钟硬件电路设计电子时钟硬件电路设计 电子闹钟至少要包括秒信号发生器 时间显示电路 按键电路 供电电源 闹铃指示电 路等几部分 硬件电路框图参照图 2 3 该系统使用 AT89C51 单片机作为核心 通过读取时钟日历芯片 DS1302 数据 完成此电 子时钟的主要功能 时钟 使用比较通用的 8 段共阳数码管 做 7 位显示 分别显示时 分 秒 图 2 3 多功能电子时钟硬件系统框图 键盘是为了完成时钟 日历的校对和日历 温度的显示功能 由于此电子时钟要求具有闹铃功 能 所以设计有闹铃电路 进行声音响铃 整个电路使用了两种电源 5V 电源将为整个电路供电 而 3V 电源仅作为 DS1302 的备 用电源 当 5V 电源被切断后 DS1302 启用 3V 电源 可以保持 DS1302 继续工作 当 5V 电源恢复供电 LED 依旧显示当前时间 而不会因为断电使系统复位到初始化时间 避免了重新校时的麻烦 基于单片机的电子时钟 6 2 2 12 2 1 时钟电路设计时钟电路设计 系统时钟应用了实时时钟日历芯片 DS1302 其连接如图 2 4 该硬件电路设计简单 抗干扰能力强 如图 AT89C51 单片机 P1 7 直接接 DS1302 的 RST 端 上电后 AT89C51 的 P1 7 脚 自动输出高电平 P1 5 作为串行时钟接口 P1 6 作为时钟数据的 I O DS1302 采用双电 源供电 平时由 5V 电源供电 当 5V 掉电之后 由图中 BT1 3V 备用电池 供电 特别需要注意 X1 和 X2 两端连接的晶振 Y1 该晶振频率为 32 768KHz 123456 A B C D 654321 D C B A Title NumberRevisionSize B Date 5 Jun 2008 Sheet of File C Documents and Settings Administrator 业业 业业业业业业 业业业 业业业业业业业业业业业业业业 ddbDrawn B y Y1 32 768K Hz BT1 BA TTER Y VC C1 1 X1 2 X2 3 GN D 4 VC C2 8 SCLK 7 I O 6 RST 5 U2 DS 1302 P1 0 1 P1 1 2 P1 2 3 P1 3 4 P1 4 5 P1 6 7 P1 5 6 P1 7 8 RST 9 P3 0 RX D 10 P3 1 TX D 11 P3 2 INT0 12 P3 3 INT1 13 P3 4 T0 14 P3 5 T1 15 P3 6 WR 16 P3 7 RD 17 XTAL2 18 XTAL1 19 GN D 20 P2 0 21 P2 1 22 P2 2 23 P2 3 24 P2 4 25 P2 5 26 P2 6 27 P2 7 28 PSEN 29 ALE PR OG 30 EA VPP 31 P0 7 32 P0 6 33 P0 5 34 P0 4 35 P0 3 36 P0 2 37 P0 1 38 P0 0 39 VC C 40 U1 AT89S51 5 图 2 4 系统时钟电路 2 2 22 2 2 整点报时功能整点报时功能 采用蜂鸣器闹铃结构简单 控制方便 但是发出的闹铃声音单一 也可以在编程的时候 编写一段音乐程序 待闹铃时间到时 调用该音乐程序给扬声器 便响起音乐 不过该方法 只能做一些简单音乐 并且音乐程序会占用很多单片机存储资源 还有一种方法是采用录音放音芯片 1420 做闹铃 先对录放音设备录入一段音乐 当到设定 时间时 单片机控制录放音设备放音 采用录放音电路 铃声可以是预先设定的一段自己喜 欢的音乐 符合电器设备人性化的要求 且 1420 芯片可以分段录音 还具有语音报时功能 基于单片机的电子时钟 7 另外 也可以购置一块音乐集成电路 加置在单片机和蜂鸣器之间 当单片机连接闹铃电路 的管脚送出高电平时 音乐集成电路会给蜂鸣器特定脉冲 使蜂鸣器发声 此类集成电路体 积较小 使用方便 不足的是音乐简单 单一 闹铃的闹钟不是本设计中的重点 故采用最简单的方法 占用单片机一根 I O 口 P1 7 中 间用 PNP 型三极管 S9012 连接 P1 7 和蜂鸣器 当 P1 7 引脚为低电平时 S9012 的发射 极和集电极导通 使蜂鸣器发声 当响铃标志位为 1 时 P1 7 送一定频率脉冲 使蜂鸣 器 U11 发出声音 如图 2 5 123456 A B C D 654321 D C B A Titl e Nu mberRev isionSize B Date 8 J un 20 08 Sheet o f File C Do cuments an d Set tings Ad minis trator 业业 业业业业业业 业业业 业业业业业业业业业业业业业业 ddbDrawn B y U1 1 BU ZZER Q1 S90 12 R8 10K 5 P2 0 基于单片机的电子时钟 8 第三章第三章 ProtelProtel 软件画原理图软件画原理图 3 13 1 系统工作流程图系统工作流程图 基于单片机的电子时钟 9 3 23 2 原理图原理图 基于单片机的电子时钟 10 第第 4 4 章章 proteusproteus 软件仿真及调试软件仿真及调试 4 14 1 电路板的仿真电路板的仿真 利用 keil 软件编写源程序 在 protues 中画好其电路图如下图 4 1 所示 4 24 2 软件调试软件调试 在硬件调试完毕的基础上 需要进一步完善程序 也就是进入软件调试阶段 在本设计 中 软件调试主要分两大部分 实时时钟日历子程序调试 按键子程序调试 将这两部分调 试成功 那么整个设计的软件部分也就基本完成了 图 4 1 数字钟仿真图 基于单片机的电子时钟 11 第五章第五章 源程序源程序 用 C 语言编写 include include define uchar unsigned char define uint unsigned int uchar data 7seg 10 0 xc0 0 xf9 0 xa4 0 xb0 0 x99 0 x92 0 x82 0 xf8 0 x80 0 x90 uchar hour min sec sbit shi P1 0 sbit fen P1 1 sbit miao P1 2 sbit rst P1 4 sbit sck P1 5 sbit io P1 6 sbit fm P1 7 函数声明 void write ds1302 byte uchar dat void write ds1302 uchar add uchar dat uchar read ds1302 uchar add void read rtc void set rtc void display void delay int n void show void fmzz DS1302 单字节写入 void write ds1302 byte uchar dat 基于单片机的电子时钟 12 uchar i for i 0 i 1 sck 1 DS1302 多字节写入 void write ds1302 uchar add uchar dat rst 0 nop sck 0 nop rst 1 nop write ds1302 byte add write ds1302 byte dat rst 0 nop io 1 sck 1 DS1302 读取 uchar read ds1302 uchar add uchar i value rst 0 nop sck 0 nop rst 1 nop write ds1302 byte add for i 0 i 1 sck 0 基于单片机的电子时钟 13 if io value value 0 x80 sck 1 rst 0 nop sck 0 nop sck 1 io 1 return value 调整时间 void set rtc if shi 0 delay 100 if shi 0 hour hour 4 10 hour hour if hour 24 hour 0 hour hour 10 4 10 min min if min 60 min 0 min min 10 4 10 sec sec if sec 60 sec 0 sec sec 10 4 sec 10 write ds1302 0 x80 sec 读取时间 void read rtc hour read ds1302 0 x85 min read ds1302 0 x83 sec read ds1302 0 x81 显示时间 void display unsigned int

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论