电子综合课程设计与实践1.docx

上传人:小飞机 文档编号:2093210 上传时间:2023-01-09 格式:DOCX 页数:40 大小:337.15KB
返回 下载 相关 举报
电子综合课程设计与实践1.docx_第1页
第1页 / 共40页
电子综合课程设计与实践1.docx_第2页
第2页 / 共40页
电子综合课程设计与实践1.docx_第3页
第3页 / 共40页
电子综合课程设计与实践1.docx_第4页
第4页 / 共40页
电子综合课程设计与实践1.docx_第5页
第5页 / 共40页
点击查看更多>>
资源描述

《电子综合课程设计与实践1.docx》由会员分享,可在线阅读,更多相关《电子综合课程设计与实践1.docx(40页珍藏版)》请在三一办公上搜索。

1、 电子综合课程设计与实践课程设计 题 目: 数字温度计设计学院(系): 自动化学院 年级专业: 自动化专业 学生姓名: 张纪炜 张熠 代涛 彭彬 指导教师: 刘海涛 重庆大学本科学生课程设计指导教师评定成绩表学 号指导教师 刘海涛学 院自动化学院专 业自动化专业学生姓名 张纪炜 张熠 代涛 彭彬课程设计题目指导教师评语课程设计成绩指导教师签名: 年 月 日 重庆大学本科学生课程设计任务书课程设计题目数字温度计设计学院自动化学院专业自动化年级2011级设计要求:设计一个可测量一定温度范围的数字温度计,实时显示当前温度值。1. 基本要求(1)可测量温度范围:000.0102.0(2)温度温度分辨力

2、:0.4(3)测量相对误差:2%(4)系统响应时间:5s(5)用数码管实时显示被测温度2.提高要求 (1)实现多个温度点的实时测量 (2)实现温度的分档测量3.发挥部分 (1)实现零下温度测量并显示 (2)实现摄氏、华氏的转换并显示 (3)温度过高报警 (4)自己设计的其他功能学生应完成的工作:完成设计任务基本要求,并实现部分或全部提高要求和发挥部份。参考资料:1白泽生. 用MCS-51单片机实现温度的检测J.现代电子技术,2005,(10):1-3.2张开生,郭国法.MCS-51单片机温度控制系统的设计J.微计算机信息,2005,21(7):68-69.3何立民.单片机应用技术选编M.北京:

3、北京航空航天大学出版社,2004.4杨刚,周群.电子系统设计与实践M.北京:电子工业出版社,2004.5丁元杰,单片机原理及运用,机械工业出版社,2003.课程设计工作计划:第一周:动员大会,师生见面,布置任务,确定初步硬件制作、软件设计设计方案。第二周:硬件制作、软件设计中。第三周:软硬件仿真调试,检查设计结果,归还仪器设备。任务下达日期 2014 年 2 月 27 日 完成日期 2009 年 3 月 6 日指导教师 (签名) 学生 (签名) 前 言 单片机技术作为计算机技术的一个分支,广泛地应用于工业控制,智能仪器仪表,机电一体化产品,家用电器等各个领域。“单片机原理与应用”在工科院校各专

4、业中已作为一门重要的技术基础课而普遍开设。学生在课程设计,毕业设计,科研项目中会广泛应用到单片机知识,而且,进入社会后也会广泛接触到单片机的工程项目。鉴于此,提高“单片机原理及应用”课的教学效果,让学生参与课程设计实习甚为重要。单片机应用技术涉及的内容十分广泛,如何使学生在有限的时间内掌握单片机应用的基本原理及方法,是一个很有价值的教学项目。为此,我们进行了“单片机的学习与应用”方面的课程设计,锻炼学生的动脑动手以及协作能力。 单片机课程设计是针对模拟电子技术,数字逻辑电路,电路,单片机的原理及应用课程的要求,对我们进行综合性实践训练的实践学习环节,它包括选择课设任务、软件设计,硬件设计,调试

5、和编写课设报告等实践内容。通过此次课程设计实现以下三个目标:第一,让学生初步掌握单片机课程的试验、设计方法,即学生根据设计要求和性能约束,查阅文献资料,收集、分析类似的相关题目,并通过元器件的组装调试等实践环节,使最终硬件电路达到题目要求的性能指标;第二,课程设计为后续的毕业设计打好基础,毕业设计是系统的工程设计实践,而课程设计的着眼点是让学生开始从理论学习的轨道上逐渐引向实际运用,从已学过的定性分析、定量计算的方法,逐步掌握工程设计的步骤和方法,了解科学实验的程序和实施方法。第三,培养学生勤于思考乐于动手的习惯,同时通过设计并制作单片机类产品,使学生能够自己不断地学习接受新知识(如在本课设题

6、目中存在智能测温器件DS18B20,就是课堂环节中不曾提及的“新器件”),通过多人的合作解决现实中存在的问题,从而不断地增强学生在该方面的自信心及兴趣,也提高了学生的动手能力,对学生以后步入社会参加工作打下一定良好的实践基础。 目 录摘要1一 单片机简介2二 设计方案3三 设计方案的总体设计框图5四 系统软件算法及设计12五 总结与体会13附录一 元件清单14附录二 电路图15附录三 源程序16参考文献34 数字温度计设计 摘要 随着时代的进步和发展,单片机技术已经普及到我们生活,工作,科研,各个领域,已经成为一种比较成熟的技术,单片机具有体积小、功耗低、控制功能强、扩展灵活、微型化和使用方便

7、等优点,广泛应用于仪器仪表中,结合不同种类的传感器,可实现诸如电压、湿度、温度、速度、硬度、压力等的物理量的测量。本文将介绍一种基于单片机控制理论及其应用系统设计的数字温度计。 本文主要介绍了一个基于AT89C51单片机的测温系统,详细描述了利用数字温度传感器DS18B20开发测温系统的过程,重点对传感器在单片机喜爱的硬件连接,软件编程以及各模块系统流程进行了详尽分析,对各部分的电路也进行一一介绍,该系统可以方便的是实现温度采集和显示,并可以根据需要任意设定上下限报警温度,它使用起来方便,具有精度高、量程宽、灵敏度高、体积小、功耗低等优点,适合我们日常生活和工农业生产中的温度测量,也可以当做温

8、度处理模块嵌入其他系统中,作为其他主系统的辅助扩展。DS18B20和AT89C51结合实现最简温度检测系统,该系统结构简单,抗干扰能力强,适合与恶劣环境下进行现场温度测量,有广泛的应用前景。 本设计首先是确定目标,气候是各个功能模块的设计,再在Proteus软件上进行仿真,修改,仿真。本温度计属于多功能温度计,可以设置上下报警温度,当温度不在设置范围内时,可以报警。 关键词:单片机,数字控制,温度计, DS18B20,AT89C52 一 单片机简介 二十世纪跨越了三个“电”的时代,即电气时代、电子时代和现已进入的电脑时代。不过,这种电脑,通常是指个人计算机,简称PC机。它由主机、键盘、显示器等

9、组成。还有一类计算机,大多数人却不怎么熟悉。这种计算机就是把智能赋予各种机械的单片机(亦称微控制器)。顾名思义,这种计算机的最小系统只用了一片集成电路,即可进行简单运算和控制。因为它体积小,通常都藏在被控机械的“肚子”里。它在整个装置中,起着有如人类头脑的作用,它出了毛病,整个装置就瘫痪了。现在,这种单片机的使用领域已十分广泛,如智能仪表、实时工控、通讯设备、导航系统、家用电器等。各种产品一旦用上了单片机,就能起到使产品升级换代的功效,常在产品名称前冠以形容词“智能型”,如智能型洗衣机等。计算机的产生加快了人类改造世界的步伐,但是它毕竟体积大。单片机在这种情况下诞生了。截止今日,单片机应用技术

10、飞速发展,纵观我们现在生活的各个领域,从导弹的导航装置,到飞机上各种仪表的控制,从计算机的网络通讯与数据传输,到工业自动化过程的实时控制和数据处理,以及我们生活中广泛使用的各种智能IC卡、电子宠物等,这些都离不开单片机。单片机自70年代问世以来得到蓬勃发展,目前单片机功能正日渐完善:单片机集成越来越多资源,内部存储资源日益丰富,用户不需要扩充资源就可以完成项目开发,不仅是开发简单,产品小巧美观,同时抗干扰能力加强,系统也更加稳定,使得它更加适合工业控制领域,具有更加广阔的市场前景;提供在线编程能力,加速了产品的开发进程,为企业产品上市赢得宝贵时间。此外单片机具有性能高、速度快、体积小、价格低、

11、稳定可靠、应用广泛、通用性强等突出优点。单片机的设计目标主要是增强“控制”能力,满足实时控制(就是快速反应) 的需要。 我们作为21世纪的工科大学生,学的是自动化专业,无论是从事科学研究工作,还是开办电子器件的工厂还是经营电子厂品的贸易,不仅要熟练地使用通用微机进行各种数据处理,还要把计算机技术运用到本专业领域或相关领域,既具有开发创新能力。这就要求我们要熟练地掌握单片机。单片机是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器

12、、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。这些电路能在软件的控制下准确、迅速、高效地完成程序设计者实现规定的任务。 二 设计方案21设计务任和要求1、基本范围-201252、精度误差小于0.5 3、LED 数码直读显示 4、可以任意设定温度的上下限报警功能.22方案辩证1温度计软件设计流程图: 设置堆栈指针将温度转换为BCD码发读存储器命令读温度数据复位DS18B20发跳过ROM命令显示缓冲区初始化更新数据缓冲区延时发温度转换命令复位DS18B20发跳过ROM命令开始 2.元器件的选取单片机芯片的选取:方案一 采用AT89C52芯片作为硬件核心,利用Flash RO

13、M,内部具有4KB ROM 存储空间,能于3V的超低压工作,而且与MCS-51系列单片机完全兼容,但是运用于电路设计中时由于不具备ISP在线编程技术, 当在对电路进行调试时,由于程序的错误修改或对程序的新增功能需要烧入程序时,对芯片的多次拔插会对芯片造成一定的损坏。方案二 采用AT89C52单片机与MCS-51系列单片机相比有两大优势:第一,片内程序存储器采用闪存,使程序的写入更加方便;第二,提供了更小尺寸的芯片,使整个硬件电路的体积更小,且管脚数目为20个,与MCS-51相比减少一倍,使理解更容易。 综上所述:本课设中单片机芯片采用AT89C52。温度传感器的选取:方案一采用热敏电阻传感器。

14、利用热敏电阻随温度变化而显著变化,能直接将温度的变化转换为能量的变化,进而制成温度计。但是其测温传感器比较复杂,而且不易通过编制程序来控制测温精度,增大系统设计的难度。 方案二 采用DS18B20温度传感器。DS18B20的内部3脚(或8脚)封装;使用特有的温度测量技术,将被测温度转换成数值信号;3.05.5V的电源供电方式和寄生电源供电方式;ROM由64位二进制数字组成,共分为8个字节;RAM由9个字节的高速暂存器和非易失性电擦写ROM组成。 综上所述:温度传感器选取智能测温器件DS18B20。 本设计显示电路采用1602液晶显示模块芯片。3系统最终设计方案: 综上各方案所述,对此次课设的方

15、案选定: 采用AT89C52作为主控制系统; 1602液晶显示模块芯片作为温度数据显示装置;而智能温度传感器DS18B20器件作为测温电路主要组成部分。至此,系统最终方案确定。 三 设计方案的总体设计框图 温度计电路设计总体设计方框图如图所示,控制器采用单片机AT89C52,温度传感器采用DS18B20,用1602液晶显示屏以串口传送数据实现温度显示。3.1硬件电路框图 单片机芯片AT89C52复位电路晶振控制1602 显示器温度检测电路DS18B20报警温度调整键蜂鸣器,指示灯 图总体设计方框图3.2硬件电路概述 系统由单片机最小系统、显示电路、按键、温度传感器等组成。 本电路是由AT89C

16、2051单片机为控制核心,具有与MCS-51系列单片机完全兼容,程序加密等功能,带2KB字节可编程闪存,工作电压范围为2.76V,全静态工作频率为024MHZ;显示电路由1602液晶显示模块芯片,可以进行多行显示;温度报警按键设为五个,可以显示华氏温度,调节高低报警温度;温度传感器电路主要由DS18B20测温器件构成,该器件主要功能有:采用单总线技术;每只DS18B20具有一个独立的不可修改的64位序列号;低压供电,电源范围为35V;测温范围为-20+125,误差为0.5;复位电路是10K电阻构成的上电自动复位。3.3主控电路单片机AT89C52具有低电压供电和体积小等特点,四个端口只需要两个

17、口就能满足电路系统的设计需要,很适合便携手持式产品的设计使用系统可用二节电池供电。晶振采用12MHZ。复位电路采用上电加自动复位。主控芯片AT89C52 晶振电路 复位电路3.4显示电路 本设计显示电路采用1602液晶显示模块芯片,该芯片可现实16x2个字符,比以前的七段数码管LED显示器在显示字符的数量上要多得多。另外,由于1602芯片编程比较简单,界面直观,因此更加易于使用者的操作和观测。1602A芯片的接口信号说明如下表:1602A芯片的接口信号说明液晶显示电路35报警温度调节电路本系统一共设置了五个按键,k1键只是显示华氏温度,k4键按下不松开显示高低报警温度,松开后恢复显示正常温度,

18、k2键和k3键是分别用来调节高低报警温度,k键控制调节时的上调或下调。具体调节如将高温报警温度调高,第一步将k4键按下不松,k键升起位置,调节k2键,则高温报警温度向上增加,反之亦然。低温报警同理。 报警节点电路3.6温度传感器及DS18B20测温原理DS18B20温度传感器是美国DALLAS半导体公司最新推出的一种改进型智能温度传感器,与传统的热敏电阻等测温元件相比,它能直接读出被测温度,并且可根据实际要求通过简单的编程实现9-12位的数字值读数方式。DS18B20的性能特点如下:(1)独特的单线接口仅需要一个端口引脚进行通信,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与

19、DS18B20的双向通讯。(2)DS18B20支持多点组网功能,多个DS18B20可以并联在惟一的三线上,实现多点组网测温;(3)无须外部器件,全部传感元件及转换电路集成在形如一只三极管的集成电路内;(4)可通过数据线供电,电压范围为3.0-5.5;(5)零待机功耗;(6)温度以9或12位数字,对应的可分辨温度分别为0.5、0.25、0.125和0.0625,可实现高精度测温;(7)用户可定义报警设置;(8)报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件;(9)负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作;(10)测量结果直接输出数字温度信号,以一线总线串行

20、传送给CPU,同时可传送CRC校验码,具有极强的抗干扰纠错能力DS18B20采用3脚PR35封装或8脚SOIC封装,其引脚排列及内部结构框图如图及测温原理图如下所示:图 引脚排列预置斜率累加器比较低温度系数振荡器计数器1温度寄存器Tx预置=0高温度系数振荡器-0计数器2T1加1停止T2 图 DS18B20测温原理图 64位ROM的结构开始8位是产品类型的编号,接着是每个器件的惟一的序号,共有48位,最后8位是前面56位的CRC检验码,这也是多个DS18B20可以采用一线进行通信的原因。温度报警触发器TH和TL,可通过软件写入户报警上下限。DS18B20温度传感器的内部存储器还包括一个高速暂存R

21、AM和一个非易失性的可电擦除的EERAM。高速暂存RAM的结构为8字节的存储器,结构如图4所示。头2个字节包含测得的温度信息,第3和第4字节TH和TL的拷贝,是易失的,每次上电复位时被刷新。第5个字节,为配置寄存器,它的内容用于确定温度值的数字转换分辨率。DS18B20工作时寄存器中的分辨率转换为相应精度的温度数值。该字节各位的定义如图5所示。低5位一直为1,TM是工作模式位,用于设置DS18B20在工作模式还是在测试模式,DS18B20出厂时该位被设置为0,用户不要去改动,R1和R0决定温度转换的精度位数,来设置分辨率。温度 LSB温度 MSBTH用户字节1TL用户字节2配置寄存器保留保留保

22、留CRCTMR1R011111 图5 DS18B20的字节定义DS18B20的分辨率定义如表1所示表1 分辨率设置表R0R1分辨率最大温度转移时间009位96.75ms0110位187.5ms1011位375ms1112位750ms由表1可见,DS18B20温度转换的时间比较长,而且分辨率越高,所需要的温度数据转换时间越长。在实际应用中要将分辨率和转换时间权衡考虑。主机控制DS18B20完成温度转换过程是:每一次读写之前都要对DS18B20进行复位,即将数据总线下拉500us,然后释放,DS18B20收到信号后等待16-60us左右,之后发出60-240us的存在低脉冲,主CPU收到此此信号表

23、示复位成功;复位成功后发送一条ROM指令,然后发送RAM指令,对DS18B20进行预先读写操作。表2 ROM指令集指令约定代码功能读ROM33H读DS18B20中的编码符合ROM55H发出此命令后,接着发出64位ROM编码,访问单线总线上与该编辑相对应的DS18B20使之做出响应,为下一步对该DS18B20的读写作准备搜索ROM0F0H用于确定挂接在同一总线上的DS18B20个数和识别64位ROM地址,为操作各器件作准备跳过ROM0CCH忽略64位ROM地址,直接向DS18B20发送温度变换指令告警搜索命令0ECH执行后,只有温度跳过设定值上限或下限的片子才能做出反应表3 RAM指令集指令约定

24、代码功能温度转换44H启动DS18B20进行温度转换读暂存器0BEH读暂存器9个字节内容写暂存器4EH将数据写入暂存器的TH、TL字节复制暂存器48H把暂存器的TH、TL字节写到E2RAM中重调E2RAM0B8H把E2RAM中的TH、TL字节写到暂存器TH、TL字节读供电方式0B4H启动DS18B20发送电源供电方式的信号给主CPUDS18B20的测温原理是这这样的,器件中低温度系数晶振的振荡频率受温度的影响很小,用于产生固定频率的脉冲信号送给减法计数器1;高温度系数晶振随温度变化其振荡频率明显改变,所产生的信号作为减法计数器2的脉冲输入。器件中还有一个计数门,当计数门打开时,DS18B20就

25、对低温度系数振荡器产生的时钟脉冲进行计数进而完成温度测量。计数门的开启时间由高温度系数振荡器来决定,每次测量前,首先将最低温所对应的一个基数分别置入减法计数器1、温度寄存器中,计数器1和温度寄存器被预置在最低温所对应的一个基数值。 减法计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当减法计数器1的预置值减到0时,温度寄存器的值将加1,减法计数器1的预置将重新被装入,减法计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到减法计数器计数到0时,停止温度寄存器的累加,此时温度寄存器中的数值就是所测温度值。其输出用于修正减法计数器的预置值,只要计数器门仍未关闭就重复上述过程,直

26、到温度寄存器值大致被测温度值。 四 系统软件算法及设计整个系统是由硬件配合软件来实现的,在硬件确定后,编写的软件的功能也就基本定型了。所以软件的功能大致可分为两个部分:一是监控,这也是系统的核心部分,二是执行部分,完成各个具体的功能。系统程序主要包括主程序,读出温度子程序,温度转换命令子程序,计算温度子程序,显示数据刷新子程序等。4.1主程序主程序的主要功能是负责温度的实时显示、读出并处理DS18B20的测量的当前温度值,温度测量每1s进行一次。这样可以在一秒之内测量一次被测温度。4.2读出温度子程序读出温度子程序的主要功能是读出RAM中的9字节,在读出时需进行CRC校验,校验有错时不进行温度

27、数据的改变。4.3温度转换命令子程序 温度转换命令子程序主要是发温度转换开始命令,当采用12位分辨率时转换时间约为750ms,在本程序设计中采用1s显示程序延时法等待转换的完成。4.4 计算温度子程序计算温度子程序将RAM中读取值进行BCD码的转换运算,并进行温度值正负的判定。4.5 显示数据刷新子程序显示数据刷新子程序主要是对显示缓冲器中的显示数据进行刷新操作,当最高显示位为0时将符号显示位移入下一位。 五 设计体会与小结 经过将近三周的单片机课程设计,终于完成了我们的数字温度计的设计,虽然没有完全达到设计要求,但从心底里说,还是高兴的,毕竟这次设计把实物都做了出来,高兴之余不得不深思! 在

28、本次设计的过程中,我发现很多的问题,虽然以前还做过这样的设计但这次设计真的让我长进了很多,单片机课程设计重点就在于软件算法的设计,需要有很巧妙的程序算法,虽然以前写过几次程序,但我觉的写好一个程序并不是一件简单的事,举个例子,以前写的那几次,数据加减时,我用的都是BCD码,这一次,我全部用的都是16进制的数直接加减,显示处理时在用除法去删分,感觉效果比较好,有好多的东西,只有我们去试着做了,才能真正的掌握,只学习理论有些东西是很难理解的,更谈不上掌握。从这次的课程设计中,我真真正正的意识到,在以后的学习中,要理论联系实际,把我们所学的理论知识用到实际当中,学习单机片机更是如此,程序只有在经常的

29、写与读的过程中才能提高,这就是我在这次课程设计中的最大收获。在这次课程设计中也使我们的同学关系更进一步了,同学之间互相帮助,有什么不懂的大家在一起商量,听听不同的看法对我们更好的理解知识,更好的学会了团体协调作战。 总之,不管学会的还是学不会的的确觉得困难比较多,真是万事开头难,不知道如何入手。最后终于做完了有种如释重负的感觉。此外,还得出一个结论:知识必须通过应用才能实现其价值!有些东西以为学会了,但真正到用的时候才发现是两回事,所以我认为只有到真正会用的时候才是真的学会了。经过这次的课程设计,也为我们以后毕业设计的制作奠定了一定的基础。 附录一 元件清单 序号 名称 型号 数量1实验板1个

30、2AT89C521个3DS18B202个422pf电容10个510uf电容10个6晶振12MHZ1个710k电阻10个8普通按键SW-PB15个9蜂鸣器2个10LED灯5个11排阻20孔12液晶屏JHD162A1个13DIP401个14DIP161个15插针1个16插座2排17双排插针2排18电烙铁1个19镊子1个20小起子1个21斜口钳1个22导线若干23 附录二 电路图键盘说明:第一个键第二个键第三个键第四个键第一排初始化进入设置界面测量2口传感器测量3口传感器第二排最高温度最低温度增加减少第三排摄氏变华氏华氏变摄氏改变精准度显示 附录三 源程序#include sbit DQ1=P32;

31、/ds18b20与单片机连接口sbit DQ2=P33;sbit RS=P36;sbit RW=P35;sbit EN=P34;sbit LED1=P07;sbit LED2=P05;sbit BEEP=P02;unsigned char code str1=YEAH! ;unsigned char code str2= LETS DO IT!;unsigned int upper_v1=0x004f;unsigned int upper_v2=0x003f;unsigned int lower_v1=0x0001;unsigned int lower_v2=0x0005;unsigned c

32、har data t_data=0,0,0,0xdf,0x43;unsigned char sensor_flag=0;unsigned char sensor_num=0;unsigned char setup_flag=0;unsigned char upper_flag=0;unsigned char lower_flag=0;unsigned char upper_set=0;unsigned char lower_set=0;unsigned char data disdata8;unsigned int tvalue1;/温度值unsigned int tvalue2;unsign

33、ed int tvalue;unsigned char tflag;unsigned char tflag1;unsigned char tflag2;unsigned char flagdat;unsigned char t_change=0;unsigned char res_flag1=0;unsigned char res_flag2=0;unsigned char beep_flag=0;unsigned char beep_flag2=0;void delay1ms(unsigned int ms)/延时1毫秒(不够精确的)unsigned int i,j; for(i=0;ims

34、;i+) for(j=0;j100;j+);/*lcd1602程序*/void wr_com(unsigned char com)/写指令/ delay1ms(1); RS=0; RW=0; EN=0; P2=com; delay1ms(1); EN=1; delay1ms(1); EN=0;void wr_dat(unsigned char dat)/写数据/ delay1ms(1); RS=1; RW=0; EN=0; P2=dat; delay1ms(1); EN=1; delay1ms(1); EN=0;void lcd_init()/初始化设置/delay1ms(15);wr_com

35、(0x38);delay1ms(5); wr_com(0x08);delay1ms(5); wr_com(0x01);delay1ms(5); wr_com(0x06);delay1ms(5); wr_com(0x0c);delay1ms(5);void display(unsigned char *p)/显示/while(*p!=0)wr_dat(*p);p+;delay1ms(1);void init_play()/初始化显示 lcd_init(); wr_com(0x80);display(str1);wr_com(0xc0);display(str2);sensor_flag=0; s

36、ensor_num=0; setup_flag=0; upper_flag=0; lower_flag=0;upper_set=0; lower_set=0;t_change=0;LED1=0;LED2=0;BEEP=1;beep_flag=0;void setup()/进入设置界面unsigned char code setup=SET UP: ;/lcd_init();wr_com(0x01);wr_com(0x80);display(setup);setup_flag=1;sensor_num=0;upper_flag=0;lower_flag=0;upper_set=0;lower_s

37、et=0;void beep() if(beep_flag=1) BEEP=0;delay1ms(200);if(beep_flag=0) BEEP=1; delay1ms(200);void beep2() if(beep_flag2=1) BEEP=0;delay1ms(200); else BEEP=1;delay1ms(200) ; void show_temp(unsigned int limit_v,tflag) /输出温度函数 unsigned char t_flag;t_data0=limit_v/100+0x30;t_data1=limit_v%100/10+0x30;t_d

38、ata2=limit_v%10+0x30;if(tflag=0) t_flag=0x20;else t_flag=0x2d;if(t_data0=0x30) t_data0=0x20;if(t_data1=0x30) t_data1=0x20;wr_com(0xc8);wr_dat(t_flag);wr_com(0xc9);display(t_data);void upper() /显示上限值if(sensor_num=0) ;if(sensor_num=1)wr_com(0xc0);display(Upper: );wr_com(0xc8);if(upper_v10x0fff) tflag=0;else upper_v1=upper_v1+1;tflag=1;show_temp(upper_v1,tflag);upper_flag=2;if(sensor_num=2)wr_com(0xc0);display(Upper: );wr_com(0xc8);if(upp

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号