基于ds1302和单片机的时钟设计_第1页
基于ds1302和单片机的时钟设计_第2页
基于ds1302和单片机的时钟设计_第3页
基于ds1302和单片机的时钟设计_第4页
基于ds1302和单片机的时钟设计_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

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

文档简介

单片机课程设计单片机课程设计报告主题:基于DS1302电子实时时钟名称: XXX伙伴: XXX类别编号: XX指导老师: XXXXX日期: 2011-12-22目录摘要第一部分:主题要求4第二部分:方案论证和选择4第三部分:电路设计和参数选择7第四部分:系统软件设计10第五部分:系统调试和设备使用12第六部分:测试数据和结果分析18第七部分:使用说明书19总结19摘要该作品以89C52单片机为核心,DS1302时钟芯片,数码管理是由显示器和74ls 08 andandandandandandand构成的24小时单功能电子实时时钟。 该单功能电子实时时钟不仅实现了一般的数字时钟的基本功能,还通过两个按钮实现了时钟的动作和停止功能。 要设置时间,只需在软件程序上更改时钟芯片的初始化程序。 在电子产品盛行的今天,这种设计可以给人以更大的发展空间。第一部分主题要求我们设计的该24小时控制功能表能够在数字密码管中显示时、分、秒,并且,能够通过按钮控制钟表的运转和停止(按钮KEY1停止钟表的运转,按钮KEY2控制钟表的运转)。第二部分方案的论证与选择一、系统功能框图在当今的这个社会,每天的时间都很紧迫,有些人害怕错过时间去做自己重要的事情。 特别是对现在的学生来说,他们必须早起,按时上课。 这需要时间。早上早上工作的人、外出的人、在工厂严格按照时间基准管理的产品等,我们周围经常有。 在这个重要部分,要用这次设计的表来计时。 介绍这次设计的基本设计方框图。单片机电脑时钟信号生成电路复位电路DS1302时钟芯片数字气管显示时、分、秒两个按钮控制时钟芯片的操作和停止二、系统的主要部分如下:1 :中央处理器电路:由单片机外围电路构成最小系统。2 :时钟信号发生电路:时钟芯片3 :人机接口电路:键电路、数码管显示电路。三、方案的论证和选择1 .时钟电路部分情况1 :利用单片机内部的计时器功能实现时钟时,通过计算,使计时器每25ms发生中断,发生40次中断时加上秒单位,以下同样实现时间、分钟、秒的时间进行显示。该方式在电源切断时停止,接通电源后需要重新初始化,并且需要调整时钟,因此不使用该方法。场景2 :我们选择DS1302时钟芯片。 该芯片是美国DALLAS公司推出的高性能、低功耗的实时时钟芯片,添加了31字节的静态RAM,使用SPI三线接口与CPU进行同步通信,能够以突发方式一次传输多个字节的时钟信号和RAM数据实时时钟提供秒、分钟、小时、日、周、月和年,一个月和31天可以自动调整,并具有闰年校正功能。 工作电压幅度为2.55.5V。 采用双电源供给(主电源和备用电源),设定备用电源的充电方式,提供以细电流充电备用电源的能力。 DS1302被用于数据记录,尤其是具有特定特殊含义的数据点的记录,因为能够同时记录数据及其数据出现的时间,所以被广泛应用于测量系统。外部端子分配每个针脚的功能如下Vcc1 :备用电源Vcc2 :主电源。 在Vcc2Vcc1 0.2V时,从Vcc2向DS1302供电,在Vcc2 Vcc1时,从Vcc1向DS1302供电。SCLK :串行时钟,输入I/O :三线接口时的双向数据线CE :在读写数据期间,输入信号必定高。 在此引脚上,CE首先提供控制对移位寄存器的字访问的控制逻辑,而CE则提供终止单字节或多字节数据传输的方法。在DS1302中具有日历、与时刻相关的寄存器12个,其中具有7个寄存器(读取时81h8Dh、写入时80h8Ch ),所存储的数据形式是BCD码形式。因此,最后在本设计中采用了DS1302时钟芯片。2 .显示部在本设计中,显示部采用1602液晶显示器和多个LED数字面板显示器,对这两种显示器进行比较,看看该显示器适合设计。采用比较LCD1602液晶显示器。 在我们的日常生活中,我们不知道LCD1602的液晶显示器。 在计算机、测试仪、电子钟表和许多家用电子产品中使用的主要是数字、专用符号和图形。 特别是在单片机的人机通信接口中,作为输出设备,显示质量高,采用数字接口,小型、轻量。 耗电量低等优点。 通常咳嗽是表示形式,分为段式、文字式、格式等。 但是,在显示器上使用时,例如,如果编程显示文字,就会变得复杂起来。 由于一个字符由68或88点构成,因此在找到与显示器上的某个位置对应的显示RAM区域的8个字节的同时,将每个字节不同的位点亮为“1”,除此之外点亮为“0”、“1”,不点亮为“0”。 在这样显示简单的数字的基础上,我们的设计难度变大了,所以不能在LCD1602液晶显示器上显示几个简单的数字。比较2 :使用多个LED导线管进行显示。 LED编码管实际上由7个发光管构成的8字型构成,加上小数点后为8个。 这些段分别以字母a、b、c、d、e、f、g、dp表示。 当电压施加到数字导线管的特定区段时,这些特定区段会变亮,以便可见2个8数字导线管有了字体。 如果出现“2”字样,那么a明亮,b明亮,g明亮,e明亮,d明亮,f不明亮,c不明亮,dp应该不明亮。 LED软线管有一般的亮度和亮度等不同,也有0.5英寸、1英寸等不同。 小型数码管的显示行程由一个发光二极管构成,而大型数码管由两个以上的发光二极管构成,通常,单个发光二极管的管压下降到1.8V左右,电流不超过30mA。 发光二极管的阳极与电源的阳极连接称为“共阳数字电码管”,发光二极管的阴极与电源的阴极连接称为“共阴数字电码管”。 常见LED数字代码中的数字和字符为0、1、2、3、4、5、6、7、8、9、a、b、c、d、e和f。 与LCD1602的液晶显示器相比,数字编码管具有亮度大、接口设计相对容易、价格相对便宜等优点。 在这次的设计中正好能够显示出我们想要显示的数字。 因此,在此次的设计中,使用多个LED数字面板显示器来显示数字。3 .按钮部分方案1 :并行输入表达式的键控件。 虽然其优点在于电路设计简单,但各引脚对应于一个按钮,在单片机上有多个外引脚,但本系统采用多个LED代码管显示、时钟芯片等外围电路,大多占用外部接口线, 如果此时向单片机添加一些按钮,则单片机的外部引脚不能供应一点,因此占用这样的多引脚时,该方案是不理想的。场景2 :我们可以使用芯片74LS08和门来扩展接口,在这种设计中只能使用两个按钮,但是这个芯片就足够了。 我们采用这种方式,只占有一条口线。 此外,按下按钮挥手方便,是明智的选择。第三部分电路设计与参数选择一、单片机最小系统电路设计与部件选择根据设计要求和计算简单的原则,我们选择了12M晶体振荡器、30PF陶瓷电容器、22uF陶瓷电容器、10k电阻、5V电源,最小系统图如下二、数字电码管显示电路设计电路如下图所示我们在此使用8个数字码管显示时分秒,在单片机的P0端子上连接了10公斤的上拉电阻。 P0端口输出段代码,P2端口输出位代码。三、DS1302时钟芯片电路设计部分电路图如下:在此,将32.768kMZ的晶体振荡器连接在DS1302的X1和X2之间,DS1302的5、6、7管脚分别连接在单片机的P1.2、P1.1、P1.0这3管脚上,VCC2连接在5V电源上,VCC1能够连接在电源上。四、按键电路设计部分电路图如下:在此,在使用74LS08和and芯片扩展接口的同时,在编程时使用外部中断0设计程序,实现更好的效果。 在按钮和单片机13和14针之间连接10公斤的上拉电阻,5V电源连接电阻。第四部分软件设计部一、主程序单元部分。MAIN1 .定义缓冲区数据ReadValue2、DS1302初始化外部中断设定从秒寄存器读出数据,保存到缓冲数据ReadValue中key1=0?key2=0?DS1302停止writeset1302(0x80,dat|0x80 )的执行是否DS1302可以运行writeset1302(0x80,dat|0x7f )是转换读取的数据调用时、分、秒显示程序主程序的流程图如上所述在主程序中调用时分秒显示子例程,并通过按下按钮来判定DS1302时钟芯片的动作。二、外部中断部分确定KEY1是否为0stoptime(1)确定KEY2是否为0stoptime(0)外部中断0时秒停止或计数开始。三、显示程序单元部分。该系统的显示部分采用多个LED数字代码显示,主要显示时分秒,内部的数据经由输出端口一次被输出到显示器。时、分、秒显示流程图如下所示P2位代码P0段代码延迟1ms注释:此显示的大致流程图是这样的,但在此程序设计中,分别提取时、分、秒的显示程序,制作子程序。四、DS1302时钟芯片是判断时钟是否已停止的流程图定义flag数据读取寄存器dat=readset1302(0x81 )无写保护命令writeset1302(0x8e,0x00 )确定flag是否变为1DS1302停止计数writeset1302(0x80,dat|0x80 )DS1302可计数writeset1302(0x80,dat0x7f )第五部分系统调试和设备的使用一、系统调试调试工作分为硬件调试和软件调试,调试方法介绍如下首先,硬件调试主要构建硬件平台,然后用测试仪等工具测试电路,最后用程序进行功能调试。 硬件调试需要花费时间,需要仔细注意和耐心,并且需要熟练掌握电路原理。之后,可以直接应用编辑软件和模拟软件进行调试。 例如单片机C51编辑软件Keil .该软件提供集成开发环境uVision,其中包括c编辑、宏编辑、连接器、库管理和强大的模拟调试器。 编译。 您可以执行此操作来检查程序错误。 但是,在该方法中,需要能够理解所使用的部件的动作方式和销连接方式。 调试软件时,必须小心编译成功,即使写入的字符超过一两个字符也是如此。 也可以用Keil编译。 运行没有错误,但是写入单片机运行有错误的话,编程时的引脚和定时编辑错误的可能性很高。另一种方式是利用仿真软件构建电路的软件平台,引入程序进行仿真调试,如果电路错误,可以在计算机上简单地修正电路,程序错误可以重新编辑程序我们在此应用的是Protuse7.5,即调试过程是硬件与软件结合调试的过程,硬件电路是基础,软件是实现硬件电路检查及其功能的关键。1 .钟表显示:我们首先进行时钟信号测试,调试多个LED数字代码显示,实现基本功能,引进程序,看看是否发生了线路未连接或未焊接的现象。在这个过程中,我们主要在数码上显示数字。 具体来说,任何数字都可以。2、调试DS1302该电路包括DS1302芯片、主电源、备用电源、石英振荡等部分。 在与单片机连接的过程中,需要注意以下几点1 ),对DS1302与单片机连接的针脚进行说明。 该设计定义为DS1302的SCLK连接P1.0、I/O端口连接P1.1、RST端口连接P1.22 )、注意电源的正负极连接。3 ),DS1302连接32.768KHz的晶体振荡器。 这个水晶振子小巧,焊接要小心,不要割水晶振子的针脚。 同时,晶体振荡器必须尽可能靠近DS1302的X1、X2引脚进行焊接。4 )如果可以制作DS1302的时钟/日历程序,正确地显示时刻的话。 写入单片机,检查电路电源的正负极是否正确连接。 确认检查没有错误之后再进行电气检查。3 .键电路调试由于键电路比较简单,调试也容易,只要保证键焊正确,不会忘记焊接和焊接的现象一般不会成为问题。二、引进程序时使用的设备采用51单片机开发板软件和PZISP软件,将程序导入89C51单片机。三、来源程序#include/头文件#include#define

温馨提示

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

评论

0/150

提交评论