单片机原理课程设计报告题目:实时时钟院(系)专业年级姓名学号指导教师设计时间2013.11.25-2013.12.6电子信息工程专业10级学生单片机原理课程设计任务书课程设计题目二、实时时钟指导教师职称高级工程师设计任务和要求:1.基本要求(1)采用DS1302作为实时时钟芯片进行计时(2)读出DS1302中的时间数据(3)能显示时间数据,包括年月日,时分秒(4)显示方式不限2. 设计步骤(1) 使用Proteus按设计要求绘制电路图。
(2) 按要求编写相应程序。
(3) 使用Proteus仿真程序,对程序进行调试。
(4) 撰写课程设计报告3.撰写课程设计报告课程设计报告内容包括题目、摘要、目录、正文、结论、致谢、参考文献等。
学生在完成上述全部工作之后,应将全部内容以先后顺序写成设计报告一份,阐述整个设计内容,要求重点突出、特色鲜明、语言简练、文字通畅,字迹工整。
报告书以A4纸打印,装订成册(文字不少于3000 字)。
目录1. 设计要求与方法论证 (3)1.1 设计要求 (3)1.2 系统基本方案选择和论证 (3)1.2.1 单片机芯片的选择方案和论证 (3)1.2.2 显示模块选择方案和论证 (4)1.3 电路设计最终方案决定 (4)2. 系统的硬件设计与实现 (4)2.1 电路设计框图 (4)2.2 系统硬件概述 (5)2.3 系统硬件模块 (5)2.3.1 AT89C51 (5)2.3.2 DS1302 (6)2.3.3点阵式LCD (7)3.系统的软件设计 (7)4. 硬件电路调试 (7)5. 结论 (9)6. 致谢 (9)参考文献 (10)附录 (11)实时时钟摘要:二十一世纪是数字化技术高速发展的时代,而单片机在数字化高速发展的时代扮演着极为重要的角色。
实时时钟的开发与研究在信息化时代的今天亦是当务之急,因为它有极广阔的应用市场,可以说遍及人们生活的每一个角落。
本文设计的实时时钟属于小型智能家用电子产品。
利用单片机进行控制,实时时钟芯片DS1302时钟芯片进行记时,本文设计的实时时钟具有读数方便,操作简单,适用范围宽等特点。
关键字:实时时钟,Proteus,51单片机,DS13021.设计要求与方案论证1.1设计要求(1)采用DS1302作为实时时钟芯片进行计时(2)读出DS1302中的时间数据(3)能显示时间数据,包括年月日,时分秒(4)显示方式不限1.2系统基本方案选择和论证1.2.1 单片机芯片的选择方案和论证方案一:用中小规模集成电路74/54系列和CC4000系列及555集成电路构建秒脉冲源,再利用分频器、计数器、缓存器等得到分、时、日、月、年的计时信号,最后用译码器驱动数码管显示,得到时钟功能。
方案二:采用AT89C51单片机,完全兼容MCS-51系列单片机的所有功能,并且本身带有2K的内存储器,可以在编程器上实现闪烁式的电擦写达几万次以上,比以往惯用的8031CPU外加EPROM为核心的单片机系统在硬件上具有更加简单方便等优点,具体如下:1)AT89C51单片机是最早期也最典型的产品,低功耗、高性能、采用CHMOS 工艺的8位单片机。
2)它在硬件资源和功能、软件指令及编程上与Intel 80C3X单片机完全相同。
在应用中可直接替换。
3)在AT89C51内部有FLASH程序存储器,既可用常规的编程器编程,也可用在线使之处于编程状态对其编程。
编程速度很快,擦除时也无需紫外线,非常方便。
4)AT89C5X系列可认为是Intel 80C3X的内核与Atmel FLASH技术的结合体。
它为许多嵌入式控制系统提供了灵活、低成本的解决方案。
方案比较:由两种方案可以看出,用方案一实现设计要求需要使用大量的集成电路,系统结构复杂,电路连接困难。
单个芯片的质量对系统的稳定性影响甚大,逻辑功能出现错误不易定位,整体调试费时费力。
扩展系统功能工作量极大,甚至有可能要将整个设计方案推倒重来。
方案二利用单片机作为控制核心,硬件按照技术手册要求连接后基本不需要调试,相关的逻辑功能全部由软件实现,修改方便。
功能扩展只需要在现有程序的基础上增加函数即可实现,无需对已实现功能的程序进行改动,调试方便,问题定位快捷、准确。
综上所述,我们采用方案二实现系统总体要求。
1.2.2 显示模块选择方案和论证方案一:采用LED数码管动态扫描, LED数码价格适中,对于显示数字最合适,而且采用动态扫描方法与单片机连接时,占用的单片机口线少,驱动电路简单,且LED在亮度、功耗、可视角度和刷新速率等方面,都更具很大的优势。
但所需数码管太多焊接困难极易出错,所以不采用LED数码管作为显示。
方案二:采用点阵式LCD显示,LCD1602是字符型液晶,显示字母和数字比较方便,控制简单,功耗低,体积小,显示内容丰富,超薄轻巧,可以用电池供电,便于携带,成本较低。
在袖珍式仪表和低功耗应用系统中得到越来越广泛的应用。
本设计需要显示较多的数字和字符,因此,采用点阵式LCD显示。
1.3 电路设计最终方案决定综上各方案所述,对此次作品的方案选定:采用AT89C51作为主控制系统;点阵式LCD作为显示;DS1302提供时钟。
2.系统的硬件设计与实现2.1 电路设计框图0123456776543210XTAL218XTAL119ALE 30EA31PSEN29RST9P0.0/AD039P0.1/AD138P0.2/AD237P0.3/AD336P0.4/AD435P0.5/AD534P0.6/AD633P0.7/AD732P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78P3.0/RXD 10P3.1/TXD 11P3.2/INT012P3.3/INT113P3.4/T014P3.7/RD17P3.6/WR 16P3.5/T115P2.7/A1528P2.0/A821P2.1/A922P2.2/A1023P2.3/A1124P2.4/A1225P2.5/A1326P2.6/A1427U1AT89C51C S 11C S 22G ND 3V C C 4V 05R S 6R /W 7E 8D B 09D B 110D B 211D B 312D B 413D B 514D B 615D B 716R S T 17-V o u t 18LCD1AMPIRE128X64X1CRYSTALC133pC233pR110k R210k R310k R410k R510k R610k R710k R810k50%RV11kRST 5SCLK 7I/O6X12X23VCC18VCC21U2DS1302BAT13VX232.768MHzC31pFC410pFC510pFR101k C610uR910k2.2 系统硬件概述本电路是由AT89C51单片机为控制核心,具有在线编程功能,低功耗,能在4.5V 超低压工作;显示部分用LCD1602实现,能够同时显示16x02即32个字符;时钟电路由DS1302提供,它是一种高性能、低功耗、带RAM 的实时时钟电路,可以对年、月、日、星期、时、分、秒进行计时,具有闰年补偿功能,工作电压为2.5V~5.5V.采用三线接口与单片机进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM 数据。
DS1302内部有一个31×8的用于临时性存放数据的RAM 寄存器。
可产生年、月、日、周日、时、分、秒,具有使用寿命长,精度高和低功耗等特点,同时具有掉电自动保存功能,本设计中为DS1302增加了备用电池,当主电源掉电时,备用电池自动为其供电。
2.3 系统硬件模块2.3.1 AT89C51 各引脚的功能为:VCC :供电电压。
GND :接地。
P0口:P0口为一个8位双向I/O 口。
P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。
P1口:P1口是一个内部提供上拉电阻的8位双向I/O 口,P1口缓冲器能接收输出4TTL门电流。
P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。
P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。
并因此作为输入时,P2口的管脚被外部拉低,将输出电流。
这是由于内部上拉的缘故。
P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。
当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。
作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。
P3口也可作为AT89C51的一些特殊功能口,P3.0 RXD(串行输入口),P3.1 TXD(串行输出口),P3.2 /INT0(外部中断0),P3.3 /INT1(外部中断1),P3.4 T0(记时器0外部输入),P3.5 T1(记时器1外部输入)。
2.3.2 DS1302各引脚的功能为:1:Vcc2:5V电源。
当Vcc2>Vcc1+0.2V时,由Vcc2向DS1302供电,当Vcc2< Vcc1时,由Vcc1向DS1302供电;2、3:X1、X2 是外接晶振脚(32.768KHZ的晶振);4:地(GND);5:CE/RST:复位脚;6:I/O:数据输入输出口(双向);7:SCLK:串行时钟,输入;8:Vcc1:备用电池端。
2.3.3 点阵式LCD3. 系统的软件设计4. 硬件电路调试76543210C S 11C S 22G N D 3V C C 4V 05R S 6R /W 7E 8D B 09D B 110D B 211D B 312D B 413D B 514D B 615D B 716R S T 17-V o u t 18LCD1AMPIRE128X6450%RV11k当连接完电路、编写完程序以后,需要进行对各个器件进行检测,特别注意DS1302芯片。
进行仿真时如果LCD不显示数据应该检测编写的程序是否正确。
DS1302存在时钟精度不高,易受环境影响,出现时钟混乱等缺点。
DS1302可以用于数据记录,特别是对某些具有特殊意义的数据点的记录,能实现数据与出现该数据的时间同时记录。
这种记录对长时间的连续测控系统结果的分析及对异常数据出现的原因的查找具有重要意义。
传统的数据记录方式是隔时采样或定时采样,没有具体的时间记录,因此,只能记录数据而无法准确记录其出现的时间;若采用单片机计时,一方面需要采用计数器,占用硬件资源,另一方面需要设置中断、查询等,同样耗费单片机的资源,而且,某些测控系统可能不允许。
但是,如果在系统中采用时钟芯片DS1302,则能很好地解决这个问题。