电子万年历设计.doc_第1页
电子万年历设计.doc_第2页
电子万年历设计.doc_第3页
电子万年历设计.doc_第4页
电子万年历设计.doc_第5页
已阅读5页,还剩47页未读 继续免费阅读

下载本文档

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

文档简介

52扬州工业职业技术学院2009 2010学年第 一 学期毕业设计课题名称: 设计时间: 系 部: 班 级: 姓 名: 指导教师: 总目录第一部分 任务书 第二部分 开题报告 第三部分 毕业设计正文 第 一 部 分任务书扬州工业职业技术学院毕业设计任务书系 部指导老师职称学生姓名班级学号设计题目电子万年历设计设计内容目标和要求本系统采用了以广泛使用的单片机技术为核心,软硬件结合,使硬件部分大为简化,提高了系统稳定性,并采用LED显示电路、键盘电路,使人机交互简便易行,此外结合音乐闹铃电路、看门狗和供电电路。本方案设计出的万年历可以显示日期时间、世界时、农历,设置闹铃功能。教研室审核系部审核第 二 部 分开题报告扬州工业职业技术学院 电子信息工程 系10届毕业设计(论文)开题报告书(表1)学生姓名 专业班级学号题 目电子万年历设计指导教师职称学 位题目类别 工程设计 基础研究 应用研究 其它【课题的内容与要求】本系统采用了以广泛使用的单片机技术为核心,软硬件结合,使硬件部分大为简化,提高了系统稳定性,并采用LED显示电路、键盘电路,使人机交互简便易行,此外结合音乐闹铃电路、看门狗和供电电路。本方案设计出的万年历可以显示日期时间、世界时、农历,设置闹铃功能。【前言】在当代繁忙的工作与生活中,时间与我们每一个人都有非常密切的关系,每个人都受到时间的影响。为了更好的利用我们自己的时间,我们必须对时间有一个度量,因此产生了钟表。钟表的发展是非常迅速的,从刚开始的机械式钟表到现在普遍用到的数字式钟表,即使现在钟表千奇百怪,但是它们都只是完成一种功能计时功能,只是工作原理不同而已,在人们的使用过程中,逐渐发现了钟表的功能太单一,没有更大程度上的满足人们的需求。因此在这里,我想能不能把一些辅助功能加入钟表中去。在此设计中所设计的钟表不但具有普通钟表的功能,它还能实现额外的功能:世界时、农历显示。【方案的比较与评价】方案一: 直接采用单片机定时计数器提供秒信号,使用程序实现年、月、日、星期、时、分、秒计数。采用此种方案虽然减少芯片的使用,节约成本,但是,实现的时间误差较大。所以不采用此方案。方案二: 采用DS1302时钟芯片实现时钟,DS1302芯片是一种高性能的时钟芯片,可自动对秒、分、时、日、周、月、年以及闰年补偿的年进行计数,而且精度高,位的RAM做为数据暂存区,工作电压2.5V5.5V范围内,2.5V时耗电小于300nA.【预期的效果及指标】【进度安排】200 年 月 - 200 年 月 选题、调研、收集资料201 年 月 日 - 201 年 月 日 论证、开题201 年 月 日 - 201 年 月 日 设计(写作初稿)201 年 月 日 - 201 年 月 日 修改、定稿、打印【参考文献】1李建忠.单片机原理及应用.西安电子科技大学出版,2006.022张俊谟.单片机中级教程.北京航空航天大学出版,2006.033余发山.单片机原理及及应用技术.中国矿业大学出版社,2003.124杨凌霄.微型计算机原理及应用.中国矿业大学出版社,2004.085李飞光.单片机课程设计实例指导.北京航空航天大学出版社,20046李振声实验电子技术(P182193).国防工业大学出版社,20017何立民.单片机应用技术选编.北京航空航天大学出版社,2000.088万光毅.单片机实验与实践教程.北京航空航天大学出版社,2005.019周航慈.单片机程序设计基础.北京航空航天大学出版社,1991.1110黄遵熹.单片机原理接口与应用.西北工业大学出版社,1997.05【指导教师意见】(有针对性地说明选题意义及工作安排是否恰当等)同意提交开题论证 修改后提交 不同意提交(请说明理由)指导教师签章: 年 月 日 【系部意见】同意指导教师意见 不同意指导教师意见(请说明理由) 其它(请说明)队系(部)主任签章: 年 月 日第 三 部 分毕业设计正文电子万年历设计 赵 玲 0501计算机【摘 要】 在当代繁忙的工作与生活中,时间与我们每一个人都有非常密切的关系,每个人都受到时间的影响。为了更好的利用我们自己的时间,我们必须对时间有一个度量,因此产生了钟表。钟表的发展是非常迅速的,从刚开始的机械式钟表到现在普遍用到的数字式钟表,即使现在钟表千奇百怪,但是它们都只是完成一种功能计时功能,只是工作原理不同而已,在人们的使用过程中,逐渐发现了钟表的功能太单一,没有更大程度上的满足人们的需求。因此在这里,我想能不能把一些辅助功能加入钟表中去。在此设计中所设计的钟表不但具有普通钟表的功能,它还能实现额外的功能:世界时、农历显示。本系统采用了以广泛使用的单片机技术为核心,软硬件结合,使硬件部分大为简化,提高了系统稳定性,并采用LED显示电路、键盘电路,使人机交互简便易行,此外结合音乐闹铃电路、看门狗和供电电路。本方案设计出的万年历可以显示日期时间、世界时、农历,设置闹铃功能。【关键词】 GUI界面设计;AT指令;多线程;PDU编码解码;ODBC API;Visual C+;SQL Server 2000Wireless SMS search platform designed Zhao ling0501 computerAbstract:Based on the GSM wireless Communication Networks, the Short Message System working on Personal Computer supplies data communication for user. Due to its cheapness, wireless network, wide coverage and many other advantages, it can be used in many fields. In the thesis, a Short Message System based on PC-GSM Modem mode was analyzed and designed. The System logins and accesses the GSM networks through the GSM-Modem with a SIM card. The GSM-Modem controlled by AT(Attention) Command, exchanges data with computer through the PS232 COM port. PDU Mode encoding and sending, receiving and decoding of the Short Message and storing were solved by the multithreading technology of Win32. The sending message box, receiving message box, telephone book and user were managed by ODBC Data Base. In the end, some advices for further development and other applications were given.Keywords:GUI;AT Command;multithreading PDU Encoding and Decoding;ODBC API;Visual C+;SQL Server 2000 目录一、设计要求与方案论证 41.1 设计要求 41.2 系统基本方案选择和论证 41.2.1单片机芯片的选择方案和论证 41.2.2 显示模块选择方案和论证 41.2.3 时钟芯片的选择方案和论证 41.2.4 温度传感器的选择方案与论证 5二.系统的硬件设计与实现52.1 电路设计框图 52.2 系统硬件概述 52.3 主要单元电路的设计 62.3.1单片机主控制模块的设计 62.3.2时钟电路模块的设计 62.3.3温度采集模块设计 72.3.4 电路原理及说明 72.3.5显示模块的设计 8三、系统的软件设计 93.1程序流程框图 9四. 指标测试114.1 测试仪器114.2硬件测试114.3软件测试114.测试结果分析与结论124.4.1 测试结果分析124.4.2 测试结论12五、作品总结12六、致谢词12参考文献13附录一:系统程序清单15一、设计要求与方案论证1.1设计要求:1.1.1基本功能设计一个能够显示年、月、日、时、分、秒、星期功能的数字万年历。采用LED或LCD显示年、月、日、时、分、秒、星期,并具备以下功能。(1)能够任意设定年、月、日、时、分、星期;(2)能够任意设定报时时间;(3)能够区分平年、闰年、大小月份;1.1.2发挥部分(1)能够完成掉电保护(停电后保持时钟正常运行,但可以不显示);(2)夜间自动关闭LCD显示;(3)具有温度显示功能。1.2 系统基本方案选择和论证1.2.1单片机芯片的选择方案和论证:方案一: 采用89C51芯片作为硬件核心,采用Flash ROM,内部具有4KB ROM 存储空间,能于3V的超低压工作,而且与MCS-51系列单片机完全兼容,但是运用于电路设计中时由于不具备ISP在线编程技术, 当在对电路进行调试时,由于程序的错误修改或对程序的新增功能需要烧入程序时,对芯片的多次拔插会对芯片造成一定的损坏。方案二: 采用AT89S52,片内ROM全都采用Flash ROM;能以3V的超底压工作;同时也与MCS-51系列单片机完全该芯片内部存储器为8KB ROM 存储空间,同样具有89C51的功能,且具有在线编程可擦除技术,当在对电路进行调试时,由于程序的错误修改或对程序的新增功能需要烧入程序时,不需要对芯片多次拔插,所以不会对芯片造成损坏。所以选择采用AT89S52作为主控制系统.1.2.2 显示模块选择方案和论证:方案一:采用LED数码管动态扫描,LED数码管价格适中,对于显示数字最合适,而且采用动态扫描法与单片机连接时,占用的单片机口线少。但所需数码管太多焊接困难极易出错。所以不采用LED数码管作为显示。方案二: 采用点阵式数码管显示,点阵式数码管是由八行八列的发光二极管组成,对于显示文字比较适合,如采用在显示数字显得太浪费,且价格也相对较高,所以也不用此种作为显示.方案三:采用LCD液晶显示屏,液晶显示屏的显示功能强大,可显示大量文字,图形,显示多样,清晰可见,但是价格昂贵,需要的接口线多,本设计所需显示较多且需要文字。所以在此设计中采用LCD液晶显示屏.1.2.3时钟芯片的选择方案和论证:方案一: 直接采用单片机定时计数器提供秒信号,使用程序实现年、月、日、星期、时、分、秒计数。采用此种方案虽然减少芯片的使用,节约成本,但是,实现的时间误差较大。所以不采用此方案。方案二: 采用DS1302时钟芯片实现时钟,DS1302芯片是一种高性能的时钟芯片,可自动对秒、分、时、日、周、月、年以及闰年补偿的年进行计数,而且精度高,位的RAM做为数据暂存区,工作电压2.5V5.5V范围内,2.5V时耗电小于300nA. .2.4温度传感器的选择方案与论证:方案一:使用热敏电阻作为传感器,用热敏电阻与一个相应阻值电阻相串联分压,利用热敏电阻阻值随温度变化而变化的特性,采集这两个电阻变化的分压值,并进行A/D转换。此设计方案需用A/D转换电路,增加硬件成本而且热敏电阻的感温特性曲线并不是严格线性的,会产生较大的测量误差。方案二:采用数字式温度传感器DS18B20,此类传感器为数字式传感器而且仅需要一条数据线进行数据传输,易于与单片机连接,可以去除A/D模块,降低硬件成本,简化系统电路。另外,数字式温度传感器还具有测量精度高、测量范围广等优点。1.3 电路设计最终方案决定综上各方案所述,对此次作品的方案选定: 采用AT89S52作为主控制系统; DS1302提供时钟;数字式温度传感器;LCD液晶显示屏作为显示。二.系统的硬件设计与实现2.1 电路设计框图LCD液晶显示模块AT89S52主控制模 块键盘模块 温度采集模块DS1302时钟模块 2.2 系统硬件概述本电路是由AT89S52单片机为控制核心,具有在线编程功能,低功耗,能在3V超低压工作;时钟电路由DS1302提供,它是一种高性能、低功耗、带RAM的实时时钟电路,它可以对年、月、日、周日、时、分、秒进行计时,具有闰年补偿功能,工作电压为2.5V5.5V。采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。DS1302内部有一个31*8的用于临时性存放数据的RAM寄存器。可产生年、月、日、周日、时、分、秒,具有使用寿命长,精度高和低功耗等特点,同时具有掉电自动保存功能;温度的采集由DS18B20构成;显示部份为LCD液晶显示屏,能够实现字符与数字同时显示的功能。2.3 主要单元电路的设计2.3.1主要单元电路的设计 AT89S52单片机为40引脚双列直插芯片,有四个I/O口P0,P1,P2,P3, MCS-51单片机共有4个8位的I/O口(P0、P1、P2、P3),每一条I/O线都能独立地作输出或输入。单片机的最小系统如下图所示,18引脚和19引脚接时钟电路,XTAL1接外部晶振和微调电容的一端,在片内它是振荡器倒相放大器的输入,XTAL2接外部晶振和微调电容的另一端,在片内它是振荡器倒相放大器的输出.第9引脚为复位输入端,接上电容,电阻及开关后够上电复位电路,20引脚为接地端,40引脚为电源端. 如图-1 所示图-1 主控制系统 2.3.2时钟电路模块的设计图-2示出DS1302的引脚排列,其中Vcc1为后备电源,Vcc2为主电源。在主电源关闭的情况下,也能保持时钟的连续运行。DS1302由Vcc1或Vcc2两者中的较大者供电。当Vcc2大于Vcc1+0.2V时,Vcc2给DS1302供电。当Vcc2小于Vcc1时,DS1302由Vcc1供电。X1和X2是振荡源,外接32.KHz晶振。RST是复位/片选线,通过把RST输入驱动置高电平来启动所有的数据传送。RST输入有两种功能:首先,RST接通控制逻辑,允许地址/命令序列送入移位寄存器;其次,RST提供终止单字节或多字节数据的传送手段。当RST为高电平时,所有的数据传送被初始化,允许对DS1302进行操作。如果在传送过程中RSTS置为低电平,则会终止此次数据传送,I/O引脚变为高阻态。上电动行时,在Vcc大于等于2.5V之前,RST必须保持低电平。中有在SCLK 为低电平时,才能将RST置为高电平,I/O为串行数据输入端(双向)。SCLK始终是输入端。 图-2 DS1302的引脚图2.3.3温度采集模块设计如图-3所示。采用数字式温度传感器DS18B20,它是数字式温度传感器,具有测量精度高,电路连接简单特点,此类传感器仅需要一条数据线进行数据传输,使用3.7与DS18B20的I/O口连接加一个上拉电阻,Vcc接电源,Vss接地。 图-3 DS18B20温度采集2.3.4 电路原理及说明(1) 时钟芯片DS1302的工作原理: DS1302在每次进行读、写程序前都必须初始化,先把SCLK端置 “0”,接着把RST端置“1”,最后才给予SCLK脉冲;读/写时序如下图4所示。图5为DS1302的控制字,此控制字的位7必须置1,若为0则不能把对DS1302进行读写数据。对于位6,若对程序进行读/写时RAM=1,对时间进行读/写时,CK=0。位1至位5指操作单元的地址。位0是读/写操作位,进行读操作时,该位为1;该位为0则表示进行的是写操作。控制字节总是从最低位开始输入/输出的。表6为DS1302的日历、时间寄存器内容:“CH”是时钟暂停标志位,当该位为1时,时钟振荡器停止,DS1302处于低功耗状态;当该位为0时,时钟开始运行。“WP”是写保护位,在任何的对时钟和RAM的写操作之前,WP必须为0。当“WP”为1时,写保护位防止对任一寄存器的写操作。(2) DS1302的控制字节DS1302的控制字如表-1所示。控制字节的高有效位(位7)必须是逻辑1,如果它为0,则不能把数据写入DS1302中,位6如果0,则表示存取日历时钟数据,为1表示存取RAM数据;位5至位1指示操作单元的地址;最低有效位(位0)如为0表示要进行写操作,为1表示进行读操作,控制字节总是从最低位开始输出 RAM RD 1 A4 A3 A2 A1 A0 / CK /WR 表-1 DS1302的控制字格式(3) 数据输入输出(I/O)在控制指令字输入后的下一个SCLK时钟的上升沿时,数据被写入DS1302,数据输入从低位即位0开始。同样,在紧跟8位的控制指令字后的下一个SCLK脉冲的下降沿读出DS1302的数据,读出数据时从低位0位到高位7。如下图-4所示 图-4 DS1302读/写时序图(4) DS1302的寄存器DS1302有12个寄存器,其中有7个寄存器与日历、时钟相关,存放的数据位为BCD码形式,其日历、时间寄存器及其控制字见表-2。 表-2 DS1302的日历、时间寄存器 此外,DS1302 还有年份寄存器、控制寄存器、充电寄存器、时钟突发寄存器及与RAM相关的寄存器等。时钟突发寄存器可一次性顺序读写除充电寄存器外的所有寄存器内容。 DS1302与RAM相关的寄存器分为两类:一类是单个RAM单元,共31个,每个单元组态为一个8位的字节,其命令控制字为C0HFDH,其中奇数为读操作,偶数为写操作;另一类为突发方式下的RAM寄存器,此方式下可一次性读写所有的RAM的31个字节,命令控制字为FEH(写)、FFH(读)。 2.3.5液晶显示模块概述一.YM 12832C是一种图形点阵液晶显示器,它主要由行驱动器/ 列驱动器及12832全点阵液晶显示器组成。可完成162个(168点阵)ASCII码显示,也可以显示82个(1616点阵)汉字。与外部CPU接口可采用并行方式控制。主要技术参数和性能:1.电源:VDD:+2.7+5V。2.显示内容:128(列)32(行)点。3.全屏幕点阵。4.2M ROM(CGROM)总共提供8192个汉字(1616点阵)。5.16K ROM(HCGROM)总共提供128个字符(168点阵)。6.2MHZ频率。7.工作温度: -10 +55 ,存储温度: -20 +60 2. 外形尺寸图 项目 正常尺寸单位模块体积1106514.5mm视域7625.2mm行列点阵数12832DOTS点距离0.520.52mm点大小0.570.57mm三、模块主要硬件构成说明RSR/W功能说明LLMPU写指令到指令暂存器(IR)LH读出忙标志(BF)及地址记数器(AC)的状态HLMPU写入数据到数据暂存器(DR)HHMPU从数据暂存器(DR)中读出数据RS,R/W的配合选择决定控制界面的4种模式: 忙标志:BF 到DB7总线,从而检验模块之工作状态. 字型产生ROM(CGROM) 字型产生ROM(CGROM)提供8192个此触发器是用于模块屏幕显示开和关的控制。DFF=1为开显示(DISPLAY ON),DDRAM 的内容就显示在屏幕上,DFF=0为关显示(DISPLAY OFF)。 DFF 的状态是指令DISPLAY ON/OFF和RST信号控制的。 显示数据RAM(DDRAM)显示数据RAM提供642个位元组的空间,最多可控制4行16字(64个字)的中文字型显示,当写入显示数据RAM时,可分别显示CGROM与CGRAM的字型;此模块可显示三种字型,分别是瘦长的英数字型、CGRAM字型及CGROM的中文字型,三种字型的选择,由在DDRAM中写入的编码选择,在000F的编码中将选择CGRAM的字定义字型,107F的编码中将选择瘦长英数字的字型,至于A0以上的编码将自动的结合下一个位元组,组成两个位元组的编码形成中文字型的编码(A140D75F)。 字型产生RAM(CGRAM) 字型产生RAM提供图象定义(造字)功能, 可以提供四组1616点的自定义图象空间,使用者可以将内部字型没有提供的图象字型自行定义到CGRAM中,便可和CGRAM中的定义一般的通过DDRAM显示在荧屏中。 地址计数器AC地址计数器是用来贮存DDRAM/CGRAM之一的地址,它可由设定指令暂存器来改变,之后只要读取或是写入DDRAM/CGRAM的值时,地址计数器的值就会自动加一,当RS为“0”时而R/W为“1”时,地址计数器的值会被读取到DB6DB0中。 ICON RAM(IRAM) IC1提供256点的ICON 显示,它分别由16组的IRAM地址来组成,每一组IRAM 地址由16个位元构成,每次写入一组IRAM时,必须通过连续写入两个位元组的资料来完成,先写入高位元组再写入低位元组。 LCD 驱动电路LCD 驱动电路提供33 COMMON 以及64 SEGMENT 信号来驱动LCD 棉板,SEGMENT数据从CGRAM/CGROM转换储存到64位元的SEGMENT串列锁存,当33个COMMON 中的一个COMMON 输出时,相对应的SEGMENT 数据将从64位元的串列锁存输出到SEGMENT 驱动电路。 游标/闪烁控制电路 此模块提供硬体游标及闪烁控制电路,由地址计数器的值来指定DDRAM中的游标或闪烁位置四模块的外部接口外部接口信号如下表2所示(并行接口):表 2管脚号管脚名称LEVER管脚功能描述1EL/AAC/+5V背光源电压2EL/KAC/0V背光源电压3VSS0V电源地4VCC+5V电源正5VEE05.0V液晶显示器驱动电压6RSH/LRS=“H”,处理显示数据RS=“L”,处理控制指令7R/WH/LR/W=“H”,E=“H”,数据被读到DB7DB0R/W=“L”,E=“HL”, DB7DB0的数据被写到IR或DR8EH/L使能信号9DB0H/L数据线10DB1H/L数据线11DB2H/L数据线12DB3H/L数据线13DB4H/L数据线14DB5H/L数据线15DB6H/L数据线16DB7H/L数据线三、系统的软件设计3.1程序流程框图开始初始化读、写日期、时间和温度分离日期时间温度显示值显示子程序确认返回日期、时间修改子程序闰月子程序返回确认返回图-A 主程序流程图图-B计算阳历程序流程图图-C 时间调整程序流程图 四. 指标测试4.1 测试仪器序号名称型号1PC机LXB-HF769A2双路直流稳压电源CA17303D3KeiluVision24数字万用表DT92085ISP在线编程器4.硬件测试电子万年历的电路系统较大,对于焊接方面更是不可轻视,庞大的电路系统中只要出于一处的错误,则会对检测造成很大的不便,而且电路的交线较多,对于各种锋利的引脚要注意处理,否则会刺破带有包皮的导线,则会对电路造成短路现象。在本电子万年历的设计调试中遇到了很多的问题。回想这些问题只要认真多思考都是可以避免的,以下为主要的问题:()LCD显示出现重叠,,原因出于没有给出正确的显示地址。解决:重新排列选取合适地址。( 2)对万年历修改时间或日期时,有时LCD数码管被屏蔽掉,造成不显示现象。解决:根据仪器的测试,发现电路的驱动能力不足,最后在DS1302时钟芯片的/CS、SCLK、RET端接入5.1K的上拉电阻后,电路的驱动能力才能满足,即可解决不亮现象。4.软件测试电子万年历是多功能的数字型,可以看当前日期,时间,还有温度的仪器。电子万年历功能很多,所以对于它的程序也较为复杂,所以在编写程序和调试时出现了相对较多的问题。最后经过多次的模块子程序的修改,一步一步的完成,最终解决了软件。在软件的调试过程中主要遇到的问题如下:1烧入程序后,LCD液晶显示闪动,而且亮度不均匀。解决:首先对调用的延时进行逐渐修改,可以解决显示闪动问题。其次,由于本作品使作动态扫描方式显示的数字,动态扫描很快,人的肉眼是无法看出,但是调用的显示程序时,如果不在反回时屏蔽掉最后的附值,则会出现很亮的现象,所以在显示的后面加了屏蔽子令,最后解决了此问题。 2加入温度的程序后,进行修改时间、日期时相应的液晶屏没有按要求显示。 解决:由于DS18B20是串行通信数据,只用一个口线传输,在处理采集的模拟信号时需要一定的时间,当把万年历的程序相接入时,会对延时有很大的影响。所以在调用温度子程序时,先关闭定时器1中断允许,在温度子程序反回时再打开定时器1中断允许。最终解决了此问题。五、作品总结在整个设计过程中,发挥团队精神,分工合作,充分发挥人的主观能动性,自主学习,学到了许多没学到的知识。较好的完成了作品。达到了预期的目的,在最初的设计中,发挥“三个臭皮匠,顶个诸葛亮”的作用。相互学习、相互讨论、研究。完了最初的设想。在电路焊接时虽然没什么大问题,但从中也知道了焊接在整个作品中的重要性,电路工程量大,不能心急,一个个慢慢来不能急于求成。反而达到事半功倍的效果。对电路的设计、布局要先有一个好的构思,才显得电路板美观、大方。程序编写中,由于思路不清晰,开始时遇到了很多的问题,经过静下心来思考,和同组员的讨论,理清了思路,反而得心应手。在此次设计中,知道了做凡事要有一颗平常的心,不要想着走捷径,一步一脚印。也练就了我们的耐心,做什么事都在有耐心。此次比赛中学到了很多很多东西,这是最重要的。总之,参加电子竞赛我们的能力得到了全方位的提高。致谢词首先我必须感谢院领导对我们毕业生在毕业设计过程中的支持与关怀!其次我要特别感谢我的指导老师,不管在选题阶段,还是在设计阶段,在制作阶段,正是他给予我不断的指导与鼓励,我才能顺利地完成我的毕业设计,他那种对待学生和蔼亲切,对待工作一丝不苟的品质和精神值得我们每一个人学习。借此机会,向我的指导老师陈思表示衷心的感谢。最后我要感谢我的同学们,在设计和焊接过程遇到困难时,正是由于同学们的帮助我才能顺利的克服困难,我毕业设计的完成离不开同学们的帮助! 参考文献1李建忠.单片机原理及应用.西安电子科技大学出版,2006.022张俊谟.单片机中级教程.北京航空航天大学出版,2006.033余发山.单片机原理及及应用技术.中国矿业大学出版社,2003.124杨凌霄.微型计算机原理及应用.中国矿业大学出版社,2004.085李飞光.单片机课程设计实例指导.北京航空航天大学出版社,20046李振声实验电子技术(P182193).国防工业大学出版社,20017何立民.单片机应用技术选编.北京航空航天大学出版社,2000.088万光毅.单片机实验与实践教程.北京航空航天大学出版社,2005.019周航慈.单片机程序设计基础.北京航空航天大学出版社,1991.1110黄遵熹.单片机原理接口与应用.西北工业大学出版社,1997.05附录一:系统程序清单#include/#include#define uchar unsigned char#define uint unsigned int#define yy_set 1#define mm_set 2#define dd_set 3#define hh_set 4#define ff_set 5#define ss_set 6#define ww_set 7#define time_run 8#define temperature_run 9/按键定义#define key0 0x06#define key1 0x05#define key2 0x03#define nokey 0x07/12832液晶定义sbit CLK = P26; /clock input 同步时钟输入端 sbit SID = P25; /data input/output 串行数据输入、输出端 sbit CS = P27; /chip select 片选端 /定义时钟ds1302和温度ds18b20sbit cclk = P32;sbit cdat = P31;sbit crst = P30;sbit dq = P37;sbit a0 = ACC0;sbit a1 = ACC1;sbit a2 = ACC2;sbit a3 = ACC3;sbit a4 = ACC4;sbit a5 = ACC5;sbit a6 = ACC6;sbit a7 = ACC7;uchar yy,mm,dd,hh,ff,ss,ww;uchar date_new8=0x20,0x09,0x05,0x30,0x18,0x30,0x00,0x05;uchar zhou14=0xd2,0xbb,0xb6,0xfe,0xc8,0xfd,0xcb,0xc4,0xce,0xe5,0xc1,0xf9,0xc8,0xd5;/延时函数void delay(uchar dly)while(dly-);/DS1302设置void clockinput(uchar dat)/向DS1302写入数据uchar i;for(i=0;i=1;uchar clockoutput(void)/从DS1302读数据uchar dat;cdat=1; a0=cdat; cclk=1;cclk=0;a1=cdat;cclk=1;cclk=0;a2=cdat;cclk=1;cclk=0;a3=cdat;cclk=1;cclk=0;a4=cdat;cclk=1;cclk=0;a5=cdat;cclk=1;cclk=0;a6=cdat;cclk=1;cclk=0;a7=cdat;dat=ACC;return(dat);uchar cread(uchar ord)/从DS1302日期时间等,由ord值决定uchar dat=0;cclk=0;crst=0;crst=1;clockinput(ord);dat=clockoutput();crst=0;cclk=1;return(dat);void cwrite(uchar ord,uchar dat)/向DS1302不同单元写入日期时间等,由ord值决定cclk=0;crst=0;crst=1;clockinput(ord);clockinput(dat);crst=0;cclk=1;/初始化ds18b20void rst18b20(void)dq=1;delay(8);dq=0;delay(80);dq=1;delay(35);/read one char from ds18b20uchar read18b20(void)uchar i,dat=0;for(i=0;i=1;dq=1;if(dq=1)dat|=0x80;delay(4); return(dat);/write one cha

温馨提示

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

评论

0/150

提交评论