




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、计 设 程课程名称:单片机技术设计题目:基于单片机的万年历设计院(部):电子信息与电气工程学院学生:电子信息工程10-1学 号:专业班级:指导教师:word格式.word格式.2013年05月17日课程设计任务书设计题目基于单片机的万年历设计学生所在院部电子信息与电气工程学院专业、年级、班2010级电子信息工程1班设计要求:1. 设计制作一个用LCD1602显示的带温度显示的万年历;2. 具有年、月、日、星期、b寸分、秒、温度等显示功能;3. 具备年、月、日、星期、时、分、秒校准功能;4. 具有闹钟显示、调节设定、整点呜叫功能。学生应完成的工作:根据万年历的工作原理,利用软件绘制电路原理图,利
2、用软件编写C语言程序并且生成HEX 文件,并利用软件进行电路仿真和调试-并设计制作电路的PCB板(或万用板的元件布局和连线), 该生应完成咬件部分的设计。根据设计原理对电路进行安装、调试,完成课程设计工作,并提交课 程设计报告。参考文献阅读:1 邱关源,罗先觉.电路(第五版)M.:高等教育,2006.2 郭天祥.51单片机C语言教程M,:电子工业,2012.3“殳刚,喜元,宇.单片机原理及应用M.:高等教育,2010.4升.单片机原理与接口技术M.:大学,2011.工作计划:5月6号:搜集资料;5月7号:方案论证拟定硬件方案;5月8号:讨论优化并确定硬件方案; 5月9号一 10号:讨论并确定程
3、序流程并绘制流程图;5月13号:根据流程图编写程序并且进行 软件的仿真与调试;5月13号一14号:硬件电路的制作并撰写课程设计报告;5月15号:烧录程 序并调试;5月16号:完成课程设计报告的撰写。任务下达日期:2013年5月6日 任务完成日期:2013年5月17日word格式.word格式.指导教师(签名):学生(签名):万年历设计摘 要:以AT89S52为主控芯片设计了一个带温度显示的万年历电路系统,该电路具 有年、月、日、星期、时、分、秒、闹钟显示和调整,并且还能显示温度和按键提示音、 整点鸣叫、定时闹钟鸣叫等功能。本设计由数据显示模块、温度采集模块、时间 处理模块和调整设置模块四个模块
4、组成。 温度采集选用DS18B20芯片,数 据显示采用1602A液晶显示模块,主芯片利用定时中斷产生时间,控制着液 晶的显示更新、温度的实时变化以及按键的读取处理,而对于闹钟,实际上 就是时间里的一个嵌套程序。时间和闹钟的值由按键调整设置,采用通用的 二十四小时制o关键词:单片机;液晶显示屏;温度传感器;时钟芯片word格式.1. 设计背景11.1概述11.2万年历设计目的12. 设计方案22.1按键控制模块设计与论证22.2时钟模块设计与论证22.3显示模块模块设计与论证33. 方案实施43.1系统整体框图43. 2原理图设计43. 2.1单片机最小系统模块43. 2.2电源模块53. 2.
5、3时钟芯片DS1302模块63. 2. 4温度采集DS18B20模块63. 2.5闹钟模块73. 2.6LCD1602 显示模块83. 2.7按键模块93.3软件设计93.4系统仿真10word格式.3.5系统制作114. 结果与结论124.1结果124.2结论125. 收获与致136. 参考文献147. 附件157.1原理图15系统电路图如图7.1所示:157.2元器件清单157.3实物图167. 3.1正常工作167. 3.2调试状态177. 3.3闹钟设置状态18word格式.word格式.1.设计背景1.1概述如今万年历已经在人们生活中广泛的使用,它不仅是记录日期和时间的工 具,而且也
6、成为了一种装饰品。现在的万年历可以说是多种多样,外观精美。放 在家里既可以计时也可作为风景壁画,因此越来越受到大众消费者的喜爱。1.2万年历设计目的随着电子技术的发展,人类不断研究,不断创新纪录。万年历目前已经不再 局限于以书本形式出现。以电脑软件或者电子产品形式出现的万年历被称为电子 万年历。与传统书本形式的万年历相比,电子万年历得到了越来越广泛的应用, 采用电子时钟作为时间显示已经成为一种时尚。目前市场上各式各样的电子时钟 数不胜数,但多数是只针对时间显示,功能单一不能满足人们日常生活需求。本文提出了一种基于AT89S52单片机的万年历设计方案,利采用一个LCI)显 示。本方案以AT89S
7、52单片机作为主控核心,与时钟芯片DS1302、温度芯片 DS18B20、闹钟模块、按键、LCI)显示等模块组成硬件系统。在硬件系统中设有5 个独立按键和一个LCI)显示器,能显示丰富的信息,根据使用者的需要可以随时 对时间进行校准、选择时间、温度显示、综上所述此万年历具有读取方便、显示 直观、功能多样、电路简洁、成本低廉等诸多优点,符合电子仪器仪表的发展趋 势,具有广阔的市场前景。word格式.word格式.2设计方案2.1按键控制棋块设计与论证方案一:直接加减:使用7按键,1按键切换闹钟,6按键对时分秒分别加减,控制 方式相当简单,但需要较多按键与I/O 口,功能一般,成本较高。方案二:矩
8、阵键盘:使用16按键对时分秒直接设置,能最为灵活的对数字钟进行设 置,功能强大,但控制方式相对困难,成本较高,需要较多按键与I/O 口。 方案三:换位调整:使用4按键,1设置闹钟,1键设置调整时间,1键调整,1键确 定,此种控制方式相对简单,占用I/O 口少,成本低廉,但功能一般。经过反复比较,在3种方案中选取了第3种一一换位调整,此方案成本低, 功能已经足够满足数字钟的需要,而且硬件软件均比较简单。2.2时钟棋块设计与论证方案一:不使用芯片,采用单片机的定时计数器这种方法原理是利用单片机芯片的定时器来产生固定的时间,模拟时钟的时, 分,秒。如:利用AT80C52芯片,定时器用工作方式1,每5
9、0ms产生一个中斷,循环20 次,即Is周期。每一个周期加1,那么lmin为60个周期,lh就是60*60=3600个周期, 一天就是3600*24=86400个周期。此方法优点是可以省去一些外围的芯片,但这种方法只能适用于一些要求不 是十分精确,不做长期保留的场合。方案二:并行接口时钟芯片DS12887word格式.特点:采用单片机应用系统并行总线(三总线)扩展的接口电路,采用这种接 口电路具有操作速度快,编程方便的优点。但是对于80C52单片机来说,低位地址线要通过锁存器输出,还要地址译码器,而 且并行口芯片的体积相对较大,会占用较多的空间。方案三:串行接口时钟芯片DS1302芯片主特性:
10、(1) 实时时钟具有能计算2100年之前的秒分时日日期星期月年的能力,还有闫 年调整的能力(2) 8位暂存数据存储RAM(3) 串行I/O 口方式使得管脚数量最少(4) 宽围工作电压2.05.5V(5) 工作电流2.0V时,小于300nA(6) 读/写时钟或RAM数据时有两种传送方式单字节传送和多字节传送字符组方 式(7) 8脚DIP封装或可选的8脚SOIC封装根据表面装配(8) 简单3线接口(9) 与 TTL 兼容V cc=5V(10) 可选工业级温度围-40+85优点:串行接口的日历时钟芯片,使用简单,接口容易,与微型计算机连线较 少等特点,在单片机系统尤其是手持式信息设备中己得到了广泛的
11、应用。比较以上三种方案的优缺点,综合考虑最终选择串行时钟芯片DS1302 -word格式.2.3显示棋块棋块设计与论证方案一:采用静态显示方法,静态显示模块的硬件制作较复杂及功耗大,要用到多个 移位寄存器,但不占用端口,只需两根串口线输出。方案二:采用动态显示方法,动态显示模块的硬件制作简单,段扫描和位扫描各占用 一个端口,总需占用单片机14个端口,采用间斷扫描法功耗小、硬件成本低及 整个硬件系统体积相对减小。方案三:采用LCD的方法,具有硬件制作简单可直接与单片机接口,显示容多,功耗小, 成本低等优点,LCM1602可显示32个字符,采用LCD的缺点是亮度不够。比较以上三种方案:方案一硬件复
12、杂体积大、功耗大;方案二硬件简单、功 耗小;方案三硬件简单,显示容多,功耗小,成本低等。本系统设计要求达到功耗 小、体积小、成本低,显示信息多等要求,权衡三种方案,选择方案三。3.方案实施3.1系统整体框图电源模块按照系统设计的要求,初步确定系统由电源模块、复位电路、时钟模块、显 示模块、按键模块、温度采集模块和蜂鸣器组成,电路系统构成责整体框图如图 3.1所示:时钟模块复位电路AT89S52温度采集模块word格式.显示模块按键模块蜂鸣器时钟电路U133pFPW IPl 12P123Pl :,P卩 6P167Pl? E9P30P3TP32P3 5Pi.OvccPl.lPO.OPl.2PO.l
13、Pl.3P0.2Pl.4P0.3Pl.SP0.4Pl.6P0.5Pl.7P0.6RS1WPDP0.74Q3036353T3237P00F0233pFZP3: 1,P 17IS1920GNDP3.2/TNT0PSEXP33TNT1P2.7P3.4T0P2.0P3.5,T1P2.5P36WRP2.4P3.7KDP2.3XTAL2P2.2XTAL1P2.1GNDP2.0P3.6KXD EAAppP3.1TxD ALE PROG芯片单片机7654321022222222-p-p-p.p.p.p.c_图3. 1整体框图3.2原理图设计3.2.1单片机最小系统棋块单片机最小系统设计为如图3.2 :VCC空
14、 0C2 卄 0.1 UF图3.2单片机最小系统本设计中选择了部时钟方式和按键电平复位电路,来构成单片机的最小电 路。复位是单片机的初始化操作,单片机在启动运行时,都需要先复位,其作用 是使CPU和系统中其他部件都处于一个确定的初始状态,并从这个状态开始工 作。此设计中P0 口做为输出口用来驱动LCD显示,而P0 口部又没有上拉电阻, 所以加上10K上拉电阻word格式.复位电路本设计中的复位电路集手动复位及上电自动复位于一体。1)上电自动复位通过外部复位电路的电容C3的充电来实现,只要电源VCC 的上升时间不超过Ims,就可以实现自动上电复位。2)按键手动复位是通过使复位端经电阻与VCC接通
15、而实现的。时钟振荡电路考虑系统运行速度,采用12MHZ的石英晶振,并使用两个小电容作为微调电 容。3. 2.2电源模块电源电路设计如图3. 3所示:如图3. 3所示为系统电源电源电路,在7805与9V电源之间用一个桥堆2W10来 提高系统的安全性。2W10能提供正向最大电流1A,最大反向峰值电压50V,能够 有效避免电源反接或电源不稳定给系统带来的安全隐患。然后经过滤波电容和微 调电容后变成直流电,再经过L7805三端稳压器输出5V直流电。7805输出端的电 容起到了防干扰和微调作用。在输出端5V电压处接一个红色发光二极管来做为 电源指示灯。word格式.3. 2.3时钟芯片DS1302模块时
16、钟芯片电路设计如图3.4 :VCC10K10Kres10KVcc2XIVccSCLK X2I/OGNDRSTU4芯片DS1302343v rH|l 电源电池87P36P34P35gSd图3.4时钟芯片电路如图3.4所示,其中Vccl为后备电源,Vcc2为主电源oVCC1在单电源与电 池供电的系统中提供低电源并提供低功率的电池备份。VCC2在双电源系统中提 供主电源,在这种运用方式中VCC1连接到备份电源,以便在没有主电源的情况 下能保存时间信息以及数据-DS1302由VCC1或VCC2两者中较大者供电。当VCC2大于VCC1+0. 2V时VCC2 给 DS1302 供电。当 VCC2 小于 V
17、CC1 时 DS1302 由 VCC1 供电 DS1302在每次进行读、写程序前都必须初始化,先把SCLK端置, 接着把RST端置ar ,最后才给予SCLK脉冲;DS1302的控制字的位7必须置1 若为0则不能对DS1302进行读写数据。对于位6,若对时间进行读/写时,CK二0 对程序进行读/写时RAM二1。位1至位5指操作单元的地址o位0是读/写操作位进行读操作时,该位为1 ;进行写操作时,该位为0。控制字节总是从最低位开始输入/输出的oI)S1302的日历、时间寄存器容:“CH是时钟暂停标志位,当 该位为1时 时钟振荡器停止,DS1302处于低功耗状态;当该位为0时,时钟word格式.开始
18、运行。“WP”是写保护位,在任何的对时钟和RAM的写操作之前,JVP”必 须为0。当5P”为1时,写保护位防止对任一寄存器的写操作。3.2.4温度采集DS18B20模块温度采集电路设计如图3. 5所示:VCCR31 IRes210KU3DQVCCGNDDS1820U3P372 DQVCC GND图3.5温度采集电路如3.5图所示,该系统中采用数字式温度传感器DS18B20,具有测量精度 高,电路连接简单特点,此类传感器仅需要一条数据线进行数据传输,用P3.7 与DS1802的DQ端口连接,V cc接电源,GND接地。DS18B20的读写时序和测温原理与DS1820相同,只是得到的温度值的位数
19、因分辨率不同而不同,且温度转换时的延时时间由2s减为750ms。DS18B20测 温原理如图3. 6所示。图中低温度系数晶振的振荡频率受温度影响很小,用于产 生固定频率的脉冲信号送给计数器1。高温度系数晶振随温度变化其振荡率明显 改变,所产生的信号作为计数器2的脉冲输入。计数器1和温度寄存器被预置在 -55C所对应的一个基数值。计数器1对低温度系数晶振产生的脉冲信号进行减word格式. 法计数,当计数器1的预置值减到0时,温度寄存器的值将加1,计数器1的预 置将重新被装入,计数器1重新开始对低温度系数晶振产生的脉冲信号进行计 数,如此循环直到计数器2计数到0时,停止温度寄存器值的累加,此时温度
20、寄 存器中的数值即为所测温度。3. 2.5闹钟棋块闹钟电路如图3. 6所示:3.6闹钟电路我们采用的有源蜂鸣器,由于单片机的输出电流较小所以我们采用PNP形的 三极管作为驱动电路,来驱动蜂鸣器发声,当单片机给低电平时蜂鸣器响。3. 2.6 LCD1602显示棋块显示电路如图3. 7所示:word格式.GNDLCD1602是指显示的容为16X2,即可以显示两行,每行16个字符液晶 模块(显示字符和数字)。第1脚:VSS为电源地。第2脚:VDI)接5V电 源正极。第3脚:V0为液晶显示器对比度调整端,接正电源时对比度最弱, 接地电源时对比度最高。第4脚:RS为寄存器选择,高电平1时选择数据 寄存器
21、、低电平0时选择指令寄存器。第5脚:RW为读写信号线,高电平 (1)时进行读操作,低电平(0)时进行写操作。第6脚:E(或EN)端为使能 (enable)端。第714脚:1)01)7为8位双向数据端。第1516脚:空脚 或背灯电源。15脚背光正极,16脚背光负极oLCI)的1)0D7分别接单片机的 的P0 口,作为数据线,因为P0 口部没有上拉电阻,所以外部另外加上10K的上 拉电阻;P2. 4-P2. 6分别接LCD的RS、RW、E三个控制管脚。3.2. 7按键模块按键电路设计如图3. 8所示:word格式. GND图3.8按键电路本系统用到了 5个按键,其中一个用作系统手动复位,另外4个采
22、用独立 按键,该种接法查询简单,程序处理简单,可节省CPU资源,按键电路如图3.18 所示,4个独立按键分别与AT89S52的P3. 0、P31、P3. 2、P3. 3接口相连。对以上4个按键作简要说明:S2SET键S3UP键,S4DOWN键 S5OUT/STOP 键。SET 键:按下SET键进入时间校准状态,按一下进入秒调整,两下分调整, 依此类推可进行各年月 日,时分秒以及星期的校准;UP键:当SET键按下时,UP进行SET选定项(如:小时)的加操作;DOWN键:当SET键按下时,DOWN进行SET选定项(如:小时)的减操作;OUT/STOP 键:1)当SET键按下时,此键功能为退出校准功
23、能;2)当SET键未按下时,UP关闭闹钟。3.3软件设计主程序流程图如图3.9所示:开始word格式.相关引脚的特殊位左义相关数字及字母数组设宜完成与DS18B20, LCD 1602, DS1302相关的子函数的编程完成与DS18B20, LCD 1602, DS1302相关的初始化设宜CPU读取DS18B20 , DS13O2的温度和时间数据CPU将数据送至LCD 1602显示word务式.是否有时间校准按键按下?返回图3.9主函数流程图3.4系统仿真Proteus进行仿真,正常工作状态仿真电路图如3. 10 :word格式.图3.10正常工作状态3.5系统制作根据设计好的万年历原理图,把
24、元器件在万用板上进行布局,分为几个模块, 使整个板面看起来比较整齐,然后根据原理图进行连接和焊接,焊接中为了减少 使用导线,就充分利用板面的资源,且在焊接过程中要小心,防止烙铁对器件的 破环,及虚焊和漏焊。word格式.4. 结果与结论4.1结果设计好原理图后,在proteus软件进行仿真,可知能够实现正常的功能,实 现时间和定时的设置,但在进行按键调整时,不是按单位递增和递减,然后在键 盘程序中,按键一次,向芯片写入一个新的数字,在写入数字后必须有一定延时才 再写入另一个数字,修改之后就可以正常调整。然后对照原理图进行焊接,先把 硬件依次正确插到电路板上相应的位置,然后再次检查器件是否都正确
25、,确定无 误后进行焊接。焊接完成后,然后进行測试,发现LCD1602无常显示,经检查发 现存在虚焊,然后加以修改后,显示屏可以显示数字最终显示功能:(1) 能显示年、月、日、星期、小时、分、秒、温度。(2) 具有定时闹钟功能。(3) 能够准确在LCI)上显示室温。4.2结论论文首先对本设计作了简要描述,随后提出了不同的设计方案,经过论证最 后确定该设计采用电源模块、时钟模块、显示模块、温度测量模块和闹钟模块共 五个模块组成,接着分别从硬件系统和软件系统两方面对基于单片机的电子万年 历设计作了详细论述,另外还简要介绍了一下系统的调试。在整个设计过程中,硬件方面主要设计了 AT89S52单片机的最
26、小系统、 DS1302接口电路、I)S18B20接口电路、闹钟及LCD显示;软件方面借助各个渠道 的资料,主要设计了阳历数据读取程序、温度采集程序、闹铃程序以及LCI)显示 程序;系统的调试主要是通过一块AT89S52开发板,再借助于Kiel、STC以及少 许自己搭建的外围电路实现的;再此过程中,分步调试时显示出了阳历的日期及word格式.时间,还有实时温度,集中调试时没有达到预期效果。但在此过程中培养了自己 的动手能力5. 收获与致这次为期两个星期万年历的课程设计实验,经过了原理的了解,开始进行 方案设计,然后在经过理论验证,然后开始进行原理图设计与仿真,之后又行了 PCB制作,最后进行焊接
27、与调试。在此过程中,认识到一些知识的缺乏,和Kiel、 Proteus软件的不熟悉。从而认识到了自己的不足,使自己明白还多东西还需加 强学习,弥补不足。同时还锻炼了自己思维能力与分析解决问题的能力。经过课 程设计,更好的学习和使用DXP软件,了解制图和仿真的全过程,使我受益匪浅。 这次课程设计我们基本掌握了 DXP Proteus软件的运用,进一步加深了对所用 到的各种元器件的功能的理解,这对我以后的学习会很有帮助。本次课程设计是 一个要求动手能力很强的设计,而且也是一个有严谨的态度才能完成的设计,它 要求我必须一丝不苟,这在很大程度上考验了我的耐心。自身的能力有一定的提 高,在此非常感学院安
28、排这次实践活动,在两周的课程设计中非常感段德功老师 的辅导和帮助!word格式.6. 参考文献1童诗白.模拟电子技术基础M.:高等教育,2005.阎石.数字电子技术(第五版)M.:高等教育,2005.3 邱关源,罗先觉.电路(第五版)1.:高等教育,2006.4 周灵彬,任开花基于Proteus的电路与PCB设计M.:电子工业 2010.5 穆秀春,王宇.Altium Designer原理图与PCB设计M.:电子工业* 2011.6 郭夭祥.51单片机C语言教程M,:电子工业,2012.7 穀刚,喜元,宇.单片机原理及应用M.:高等教育,2010.8 升.单片机原理与接口技术M.:大学,201
29、1.word格式.7.附件7.1原理图系统电路图如图7.1所示:3寮住bVCCVCCM钦苓a ILLword格式.7. 1系统电路图7.2元器件淸单表1元器件清单元器件名称型号规格数量备注单片机STC89S521加DIP40底座晶振132. 768M1DS1302外部晶振晶振211.0592MHZ1加2脚底座排阻4.7K (9 引脚)1P0 口的上拉电阻USBUSB电源接口1加USB电源线一根可调电阻10KiLCD 1602背光调节电阻I0K8电阻390欧2电阻1K 或 1004电解电容2200uF2电解电容100uF2电解电容10uF5非极性电容0. luF8非极性电容33pF2发光二极管红
30、色LED2电源-电池1.5V电池或3V电子2 (1)都需要底座四角开关微动(脉冲)开关6六角开关按绽(自锁式)1三极管PNP (8550)1液晶LCD1602I加16脚单排插座时钟芯片DS13021加DIP8底座温度传感器DS18B20I加3脚插座整流二极管1N40012桥堆2W101word格式.三端稳压器78051蜂呜器-BELL有源蜂鸣器i7.3实物图7. 3.1正常工作7.2正常工作图word格式.7. 3.2调试状态5S-22 二屈二圃hjjruU f 7d 0 M cvu7. 3调试状态图7. 3. 3闹钟设置状态word格式.7.4源程序7.4闹钟设置状态图#include #i
31、nclude/52单片机头文件,规定了 52单片机的寄存器和10 口等/_nop_空指令及左右循环移位子函数库#def inc uchar unsigned char /宏定义#definc uint unsigned int sbit lcden二P2飞;端sbit lcdwr=P25;sbit lcdrs=P2-4;sbit sda=Pl1;sbit rst=Pr2;sbit sck=PrO; sbit si二P30;sbit s2二P3J; sbit s3=P32;sbit s4=P33; sbit DQ =P20;sbit ACCO=ACCO; sbit ACC7=ACC7;sbit
32、BELL二Pl4/宏定义/定义下面通过lcdcn来操作P2 7 口,1602液晶使能控制/定义下面通过lcdrw来操作P25 口,1602读写选择端/定义选数据寄存器选指令寄存器控制端/定义DS1302数据总线/DS1320 复位/定义时钟总线/定义设置按钮/定义调时按钮/定义确定按钮/定义DS18B20通信端口char fen, shijniao, ri, yue, nian, zhou, si num, s2num, s4num, f lagl, flag2, lshi, lfcn; uchar code tablel=n 2013- -n;/要写入 1602 液晶的数据word格式./要
33、写入1602液晶的数据/要写入1602液晶的数据字库中的字可直接以外加号的形欢迎界面/欢迎界面uchar i, j;void dclayO(uint z) while(z);void dclay(uint z)uchar code alann=n CLOCK SEHINGS R);uchar code alarinl=n : ”; uchar code tablel=n : H; 式直接写入 uchar code table2=n Wan Nian Li !n); uchar code tablc3 = MWo Men Jie Zuo! !*;/* * 星 期编码 表 *ucharcodeWe
34、eks3=nSUNnMON1,TUE,fWED”,THU”,FR,SATUSUN;uint x, y; for(x=z;x0;x) for(y=110;y0;y);/DS18B20初始化函数 void Init_DS18B20(void) unsigned char x二0;DQ = 1;/DQ复位dclay0(8); DQ = 0; dclay0(80);DQ = 1; dclay0(14); x=DQ; dclay0(20);/稍做延时单片机将DQ拉低/精确延时大于480us拉高总线/稍做延时后 如果x=0则初始化成功x=l则初始化失败/DS18B20读一个字节 uchar ReadOne
35、Char(void)unsigned char i二0; unsigned char dat = 0;for (i=8;i0;i-)DQ = 0;/给脉冲信号dat=l;DQ = 1;/给脉冲信号word格式.if(DQ) dat|=0x80; delay0(4);ret uni(dat);/DS18B20写一个字节void WritcOneChar(unsigned char dat) unsigned char i二0;for (i=8; i0; i-)DQ = 0;DQ = dat&OxOl;delay0(5);DQ = 1;dat=l;/DS18B20读取温度uint RcadTemp
36、crature(void)unsigned char a二0; unsigned char b二0; unsigned int t二0; float tt=O;lnit_DS18B20();WritcOneChar(OxCC); /跳过读序号列号的操作WritcOneChar(0x44); Init_DS18B20();WritcOneChar(OxCC);WritcOneChar(OxBE); 度a=RcadOneChar(); b=RcadOneChar(); t=b;t=8;t=t|a;tt=t*O. 0625;/启动温度转换跳过读序号列号的操作/读取温度寄存器等(共可读9个寄存器)前两
37、个就是温t= tt*10+0. 5; return(t);/将温度的高位与低位合并/对结果进行4舍5入/ 1/ 1/ 1/ 1/ 1/ 1/ 1/ 1/ 1/ / f蜂鸣void didiOword格式.uchar i:for(i=0;i1/ 1/ 1/1/ 1/1/ 1/ 1/ 1/1/ 1/ 1/ 1/*/ void write_data(uchar date)lcdrs=l;/与写指令类似,这里lcdrs设为1P0=date;dclay(5);lcdcn=l;dclay(5); lcdcn=0;1602/9/ 9/ / vl/9/ 1/ 1/ / 9/ 1/1/ / / / 1/j wJ
38、/ wj/ u?/ 1/Jy uf/ wJ/ w 1/ 1/wJ/ uJ/ 1/J wJ/ wJ/ wJ/wJ/ mJ/ /fvoid initJ602()lcdwr二0;lcdcn=0;write,0x38);/设置LCD为16*2显示、5*7 A阵8位数据接口模式 write.(OxOc);/开显示 不显示光标write_(0x06);/写一个字符后,地址指针加1write.(OxOl);/显示清 0PO=Oxff;word格式./*void gudingtime602()uchar num;write, 0x80);for(num=0; nuin16; nuin+)write_da ta
39、(tablenum);write_(0x80+0x40);/将指针指向1602液晶的第二行for(num=0:num 16:num+)/功能与上同,用于将:write_da ta(tableinumJ);/将指针指向初始位置循环函数,用于将2012-写入液晶”写入void gudii】gtiinc_1602()uchar numl;write, 0x80);for (numl =0; numl 16; nuinl+)writc_da ta(alarmnum1);write_(0x80+0x40);/将指针指向1602液晶的第二行for(num 1=0;num 1 16;num 1+)/功能与上
40、同,用于将”:write_data(alarmlnuml);/将指针指向初始位置/循环函数,用于将2012-写入液晶写入/* 显 示 初 始*/void displaystar(void)uchar i;write, 0x80);for(i=0;i16;i+)write.data(table2i); writeJ0x80+0x40);for(i=0;i9/ 9/ / 1/3/1/ 1/9/ / 1/ xlz*1/ 9/显示周子函数*/void write_zhou(uchar timcl)/用于在1602上显示周信息,与显示/时间日期子函数类似uchar gcwei;gcwei=timel%1
41、6;/一周七天,因此只需个位write.C0x80+14);write.dataC0x30+gewei);/写一字节数据/* 写 数 据 */void Inputbyte(uchar TD)uchar i;ACC=TD;for(i=8;i0;i)s(la=ACC0; sck=l; sck=0;ACC=ACC1; /1/ 1/ 1/ 1/1/ 1/1/ 1/ 1/f9word格式.*/ uchar Outputbytc(void)/读一字节数扌居 uchar i:for(i=8;i0;i)ACOACC1;ACC7=sda;sck=l;sck二0;rcturn(ACC);/ 1/ 1/ 1/ 1/
42、 1/ 1/ 1/ 1/ 1/ 1/ 1/ fDS1302数 据函数*/void write. 1302(uchar DS_ADD,uchar DS_DAT)/写操作 rst=0;sck=0;rst=l;Iiiputbytc(DS_ADD); Inputbytc(DS_DAT); sck=l;rst=0;f1/ 1/ 9/1/ 1/ 1/ 1!/ 1/ 1/1/ 1/fDS1302数 据函数*/uchar rcad_ 1302( uchar DS_ADD)/读操作 uchar DS.INF;rst=0;sck=0;rst=l;Input_lbyte(DS_ADD);DS_INF=0utput_
43、1by tc();sck=l;rst=0;return(DS_INF);DS1302 子 函 数f xl/ xl/ xlz1Ia xl/ 1/t /不不不不不不不不不不不不不不不不不不不不不不浓不不彳刀始*/void initalJ302()word格式.wri tc_l302(0x8c, 0x00);禁止写保护 write302(0x90, Oxaa);/定义充电 write302(0x80, 0x53);/秒 write302(0x84, 0x09);/时write302(0x82, 0x56);/分 write302(0x8c, 0x13);/年 write302(0x8& 0x04);
44、/月 write302(0x86,0x14);/ 日 write302(0x8a, 0x07);/星期wri te302(OxcO, 0x08);/闹钟小时初始化 writc_1302(0xfc, 0x00);/闹钟分钟初始化 write302(0x8c, 0x80);/开保护void keyscan()f(sl=0&s4num=0)delay(5);i f(s10&s4num=0)flagl=l;slnum+;while(!sl);didi(); if(slnum=l)write.(0x80+0x40+8); write.(OxOf);if(slnum=2)write302(0x8c, 0x00);write302( 0x80, miao);write302(0x8c, 0x80); write_(0x80+0x40+5);)if(slnum=3)write_l302(0x8e, 0x00); write_l302(0x82, fen); write302(0x8c, 0x80); writej0x80+0x40+2);/按縫1按下且s4在此之前未曾按过光标移动到*位置/显示光标/禁止写保护/写入秒信息/开写保护word格式.if(slnum=4)write302(0x8c, 0
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 检验检测机构资质认定评审准则试题及答案
- 爱莲说默写题目及答案
- er图题目及答案
- 2025-2030中国炒瓜子产业销售动态及经营效益预测报告
- 工业互联网平台架构助力制造业数字化转型策略报告
- 特殊教育考试题库及答案
- 2025年数控机床智能化升级技术路径选择与市场拓展报告
- 武汉大学人民医院岗位招聘笔试真题2024
- 2025-2030特种设备安全监管趋严背景下的行业洗牌报告
- 2025-2030煤炭化工设备技术发展趋势与投资风险评估
- 风光储储能项目PCS舱、电池舱吊装方案
- 消防维保方案(消防维保服务)(技术标)
- 2023智联招聘行测题库
- 隧道洞渣加工石料组织管理方案
- 二年级下册音乐《每天》教案
- 音乐美学.课件
- 心肺复苏说课比赛课件模板(一等奖)
- 健康体检证明
- 2021年江西外语外贸职业学院教师招聘试题及答案解析
- 外科学肺部疾病教案(共18页)
- 电鱼机的相关知识与各级电路的电路图
评论
0/150
提交评论