毕业论文-基于STC90C516单片机的水温控制系统设计.docx_第1页
毕业论文-基于STC90C516单片机的水温控制系统设计.docx_第2页
毕业论文-基于STC90C516单片机的水温控制系统设计.docx_第3页
毕业论文-基于STC90C516单片机的水温控制系统设计.docx_第4页
毕业论文-基于STC90C516单片机的水温控制系统设计.docx_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

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

文档简介

水温控制课程总结题目:基于stc90c516单片机的水温控制系统设计 学 院: 电子工程学院 专 业: 电子信息工程 年 级: 2012级 指导教师: 成 员: 2015年 05月摘 要本设计采用的主控芯片是stc90c516单片机,数字温度传感器ds18b20。本设计用数字传感器ds18b20测量温度,测量精度高,传感器体积小,使用方便。所以本次设计的数字温度计在工业、农业、日常生活中都有广泛的应用。单片机技术已经广泛应用社会生活的各个领域,已经成为一种非常实用的技术。51单片机是最常用的一种单片机,而且在高校中都以51单片机教材为蓝本,这使得51单片机成为初学单片机技术人员的首选。本次设计采用的stc90c516是一种flash型单片机,可以直接在线编程,向单片机中写程序变得更加容易。本次设计的数字温度计采用的是ds18b20数字温度传感器,ds18b20是一种可组网的高精度数字式温度传感器,由于其具有单总线的独特优点,可以使用户轻松地组建起传感器网络,并可使多点温度测量电路变得简单、可靠。本设计根据设计要求,首先设计了硬件电路,然后绘制软件流程图及编写程序。本设计属于一种多功能温度计,温度测量范围是-55到125。温度值的分辨率可以被用户设定为9-12位,可以设置上下限报警温度,当温度不在设定的范围内时,就会启动报警程序报警。本设计的显示模块是用四位一体的数码管动态扫描显示实现的。在显示实时测量温度的模式下还可以通过查询按键查看设定的上下限报警温度。 关键词:单片机、数字温度计、ds18b20、stc90c516目 录1.系统总体方案及硬件设计31.1设计要求31.2 各模块选择与论证32.系统的硬件设计与实现62.1 系统总体设计框图62.2 系统硬件概述62.3 主要单元电路的设计73.软件设计143.1 ds18b20程序设计143.2 显示程序设计183.3 按键程序设计194.系统测试204.1硬件测试204.2软件测试204.3 测试结果结论205.设计体会21参考文献22附录1:原理图和实物图23附录2:程序291.系统总体方案及硬件设计1.1设计要求:()基本要求 具有实时获取水温功能; 能够自动判断实际温度是否达到限值,并自动报警控制继电器;( 2 ) 创新要求 用户能够通过按键根据自己情况设置限值并保存起来;1.2 各模块选择与论证1.2.1 控制模块本设计采用stc90c516芯片作为硬件核心,该芯片采用flash rom,内部具有8kb rom存储空间,相对于本设计而言程序存储空间完全够用。89c52是intel公司mcs-51系列单片机中基本的产品,它采用atmel公司可靠的cmos工艺技术制造的高性能8位单片机,属于标准的mcs-51的hcmos产品。它结合了cmos的高速和高密度技术及cmos的低功耗特征,它基于标准的mcs-51单片机体系结构和指令系统,属于89c51增强型单片机版本,集成了时钟输出和向上或向下计数器等更多的功能,适合于类似马达控制等应用场合。89c52内置8位中央处理单元、512字节内部数据存储器ram、8k片内程序存储器(rom)32个双向输入/输出(i/o)口、3个16位定时/计数器和5个两级中断结构,一个全双工串行通信口,片内时钟振荡电路。此外,89c52还可工作于低功耗模式,可通过两种软件选择空闲和掉电模式。在空闲模式下冻结cpu而ram定时器、串行口和中断系统维持其功能。掉电模式下,保存ram数据,时钟振荡停止,同时停止芯片内其它功能。stc90c516有pdip(40pin)和plcc(44pin)两种封装形式。1.2.2.显示模块的选择与论证方案一:采用点阵式数码管显示,点阵式数码管是由八行八列的发光二极管组成,对于显示文字比较合适,如采用在显示数字显得太浪费,成本较高,所以不采用该方案。方案二:采用led数码管动态扫描显示,led数码管价格适中,而却对于显示数字比较合适,控制方式简单,电路只需添加一个三极管驱动电路就可以实现显示。方案三:采用lcd1602液晶显示屏,液晶显示功能强大,可以显示2*16个字母或数字或者自定义字符,价格也比较合理,需要的接口只需要9根就可以完成。成本相对比较高,对于本设计显示内容的不多采用该方案显得有点大材小用。因此综合上述最终决定采用数码管动态扫描方式作为显示。1.2.3.温度传感器模块选择与论证方案一:使用热敏电阻作为传感器,用热敏电阻与一个相应阻值电阻相串联分压,利用热敏电阻阻值随温度变化而变化的特性,采集这两个电阻变化的分压值,并进行a/d转换。此设计方案需用a/d转换电路,增加硬件成本而且热敏电阻的感温特性曲线并不是严格线性的,会产生较大的测量误差。方案二:采用模拟温度传感器ad590,该传感器的输出电流会随温度的变化而变化,从而需要设计电路转换成电压的变化,进而通过a/d转换后接到单片机中,这种方法固然麻烦,而却费用比较高,而却在电流电压转换和a/d转换中会产生误差。方案三:采用数字式防水型温度传感器ds18b20,此类传感器为数字式传感器而且仅需要一条数据线进行数据传输,易于与单片机连接,可以去除a/d模块,降低硬件成本,简化系统电路。另外,数字式温度传感器还具有测量精度高、测量范围广等优点。所以最终我们采用数字防水型ds18b20作为温度采集芯片。1.2.4 编程语言的选择和论证对于指令系统兼容mcs51系列的单片机,其较为常用的编程语言有c和汇编语言。c语言是一种结构化编程语言,可产生压缩代码。c语言在硬件结构上仅要求对单片机存储器等硬件结构有初步了解,寄存器分配,不同存储器寻址及数据类型等细节可由编译器管理。c语言程序本身并不依赖于机器硬件系统,基本上不做修改就可以在不同种类的单片机之间相互移植。程序可划分为不同函数,结构规范,可读性强。c语言提供的库包含许多标准子程序,具有很强的数据处理能力。c语言作为一种方便、容易掌握的语言得到了广泛的应用,是目前单片机编程中应用最多的语言之一。汇编语言同样在单片机编程中得到了广泛的应用,其具有简单实用,控制灵活,实时性强,程序效率高等特点。汇编语言有着极强的硬件控制能力,用其它的高级语言所无法控制的软硬件细节,在汇编语言中都可以实现,但是编程复杂。综合考虑,软件的设计语言选择c语言。1.2.5 调节模块介绍调节模块是由四个按键接地后直接接单片机的i/o口完成的。当按键没有按下时单片机管脚相当于悬空,默认下为高电平,当按键按下时相当于把单片机的管脚直接接地,此时为低电平。程序设计为低电平触发。1.2.5 继电器模块介绍继电器模块是由由一个npn型的三极管8550驱动。当输入低电平时三极管导通,继电器吸合,从而控制外围器件。1.2.6 报警模块介绍报警模块是由一个npn型的三极管8550驱动的5v蜂鸣器,和一个加一限流电阻的发光二极管组成的。报警时蜂鸣器间歇性报警,发光二极管闪烁。2.系统的硬件设计与实现2.1 系统总体设计框图由于ds18b20数字温度传感器具有单总线的独特优点,可以使用户轻松地组建起传感器网络,并可使多点温度测量电路变得简单、可靠,所以在该设计中采用ds18b20数字温度传感器测量温度。 温度计电路设计总体设计框图如图2-1所示,控制器采用单片机stc90c516,温度传感器采用ds18b20,显示采用4位led数码管,报警采用蜂鸣器、led灯实现,按键用来设定报警上下限温度并将设置好的值保存在stc90c516的eeprom中(具有掉电保护功能)。数码管显示stc90c516主控芯片ds18b20温度采集蜂鸣器报警按键调节限值led灯提示图2-1 温度计电路总体设计框图2.2 系统硬件概述本系统所设计的数字温度计采用的是ds18b20数字温度传感器测温,ds18b20直接输出的就是数字信号,与传统的温度计相比,具有读数方便,测温范围广,测温准确,上下限报警功能。其输出温度采用led数码管显示,主要用于对测温比较准确的场所。该设计控制器使用的是51单片机stc90c516,stc90c516单片机在工控、测量、仪器仪表中应用还是比较广泛的。测温传感器使用的是ds18b20,ds18b20是一种可组网的高精度数字式温度传感器,由于其具有单总线的独特优点,可以使用户轻松地组建起传感器网络,并可使多点温度测量电路变得简单、可靠。显示是用4位共阴极led数码管实现温度显示,led数码管的优点是显示数字比较大,查看方便。蜂鸣器用来实现当测量温度超过设定的上下限时的报警功能。2.3 主要单元电路的设计2.3.1单片机主控制模块的设计 stc90c516单片机为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引脚为电源端. 如图-2 所示图-2 主控制系统 2.2.2 ds18b20电路设计如图-3所示。采用数字式温度传感器ds18b20,它是数字式温度传感器,具有测量精度高,电路连接简单特点,此类传感器仅需要一条数据线进行数据传输,使用0.7与ds18b20的i/o口连接加一个上拉电阻,vcc接电源,vss接地。图-3 ds18b20温度采集ds18b20温度传感器是美国dallas半导体公司最新推出的一种改进型智能温度传感器,与传统的热敏电阻等测温元件相比,它能直接读出被测温度,并且可根据实际要求通过简单的编程实现912位的数字值读数方式。ds18b20的性能特点如下:独特的单线接口仅需要一个端口引脚进行通信;多个ds18b20可以并联在惟一的三线上,实现多点组网功能;无须外部器件;可通过数据线供电,电压范围为3.05.5v;零待机功耗;温度以9或12位二进制数字表示;用户可定义报警设置;报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件;负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作; ds18b20采用3脚to92封装或8脚so或sop封装,其其封装形式如图4所示。图4 ds18b20的封装形式ds18b20的64位rom的结构开始8位是产品类型的编号,接着是每个器件的惟一的序号,共有48位,最后8位是前面56位的crc检验码,这也是多个ds18b20可以采用一线进行通信的原因。温度报警触发器th和tl,可通过软件写入户报警上下限。ds18b20温度传感器的内部存储器还包括一个高速暂存ram和一个非易失性的可电擦除的eepram。高速暂存ram的结构为8字节的存储器,结构如图5所示。图5 ds18b20的高速暂存ram的结构头2个字节包含测得的温度信息,第3和第4字节th和tl的拷贝是易失的,每次上电复位时被刷新。第5个字节,为配置寄存器,它的内容用于确定温度值的数字转换分辨率,ds18b20工作时寄存器中的分辨率转换为相应精度的温度数值,该字节各位的定义如表2-1所示。表2-1:配置寄存器d7 d6 d5 d4 d3 d2 d1 d0tmr1r011111配置寄存器的低5位一直为1,tm是工作模式位,用于设置ds18b20在工作模式还是在测试模式,ds18b20出厂时该位被设置为0,用户要去改动,r1和r0决定温度转换的精度位数,来设置分辨率,“r1r0”为“00”是9位,“01”是10位,“10”是11位,“11”是12位。当ds18b20分辨率越高时,所需要的温度数据转换时间越长。因此,在实际应用中要将分辨率和转换时间权衡考虑。高速暂存ram的第6、7、8字节保留未用,表现为全逻辑1。第9字节读出前面所有8字节的crc码,可用来检验数据,从而保证通信数据的正确性。当ds18b20接收到温度转换命令后,开始启动转换。转换完成后的温度值就以16位带符号扩展的二进制补码形式存储在高速暂存存储器的第1、2字节。单片机可以通过单线接口读出该数据,读数据时低位在先,高位在后,数据格式以0.0625lsb形式表示。当符号位s0时,表示测得的温度值为正值,可以直接将二进制位转换为十进制;当符号位s1时,表示测得的温度值为负值,要先将补码变成原码,再计算十进制数值。输出的二进制数的高5位是符号位,最后4位是温度小数点位,中间7位是温度整数位。表2-2是一部分温度值对应的二进制温度数据。表2-2 ds18b20输出的温度值温度值二进制输出十六进制输出+1250000 0111 1101 000007d0h+850000 0101 0101 00000550h+25.06250000 0001 1001 00010191h+10.1250000 0000 1010 001000a2h+0.50000 0000 0000 10000008h00000 0000 0000 00000000h-0.51111 1111 1111 1000fff8h-10.1251111 1111 0101 1110ff5eh-25.06251111 1110 0110 1111ff6fh-551111 1100 1001 0000fc90hds18b20完成温度转换后,就把测得的温度值与ram中的th、tl字节内容作比较。若tth或ttl,则将该器件内的报警标志位置位,并对主机发出的报警搜索命令作出响应。因此,可用多只ds18b20同时测量温度并进行报警搜索。在64位rom的最高有效字节中存储有循环冗余检验码(crc)。主机rom的前56位来计算crc值,并和存入ds18b20的crc值作比较,以判断主机收到的rom数据是否正确。2.2.3 显示电路设计显示电路是由四位一体的共阳数码管进行显示的,数码管由三极管8550驱动。四位一体的共阳数码管的管脚分布图如图6所示。图6 四位一体的共阳数码管管脚分布图显示电路的总体设计如图7所示。图7 显示电路2.2.4 按键电路设计按键电路是用来实现调节设定报警温度的上下限和查看上下报警温度的功能。电路原理图如图8所示。图8 按键电路原理图2.2.5 报警电路设计报警电路是在测量温度大于上限或小于下限时提供报警功能的电路。该电路是由一个蜂鸣器和一个红色的发光二极管组成,具体的电路如图9所示。图9 报警电路原理图2.2.6 继电器模块介绍继电器模块是由由一个pnp型的三极管9015驱动。当输入低电平时三极管导通,继电器吸合,从而控制外围器件。电路图如图10所示:图10 继电器电路图3 软件设计3.1 ds18b20程序设计3.1.1 ds18b20传感器操作流程根据ds18b20的通讯协议,主机(单片机)控制ds18b20完成温度转换必须经过三个步骤: 每一次读写之前都要对ds18b20进行复位操作 复位成功后发送一条rom指令 最后发送ram指令这样才能对ds18b20进行预定的操作。复位要求主cpu将数据线下拉500s,然后释放,当ds18b20收到信号后等待1660s左右,后发出60240s的存在低脉冲,主cpu收到此信号表示复位成功。ds18b20的操作流程如图3-1所示。如图3-1 ds18b20的操作流程3.1.2 ds18b20传感器的指令表ds18b20传感器的操作指令如表3-1所示。传感器复位后向传感器写相应的命令才能实现相应的功能。表3-1 ds18b20的指令表指 令指令代码功 能读rom0x33读ds1820温度传感器rom中的编码(即64位地址)符合 rom0x55发出此命令之后,接着发出 64 位 rom 编码,访问单总线上与该编码相对应的 ds1820 使之作出响应,为下一步对该 ds1820 的读写作准备。搜索 rom0xf0用于确定挂接在同一总线上 ds1820 的个数和识别 64 位 rom 地址。为操作各器件作好准备。跳过 rom0xcc忽略 64 位 rom 地址,直接向 ds1820 发温度变换命令。适用于单片工作。告警搜索命令0xec执行后只有温度超过设定值上限或下限的片子才做出响应。温度变换0x44启动ds1820进行温度转换,12位转换时最长为750ms(9位为93.75ms)。结果存入内部9字节ram中。读暂存器0xbe读内部ram中9字节的内容写暂存器0x4e发出向内部ram的3、4字节写上、下限温度数据命令,紧跟该命令之后,是传送两字节的数据。复制暂存器0x48将ram中第3 、4字节的内容复制到eeprom中。重调 eeprom0xb8将eeprom中内容恢复到ram中的第3 、4字节。读供电方式0xb4读ds1820的供电模式。寄生供电时ds1820发送“ 0 ”,外接电源供电 ds1820发送“ 1 ”。3.1.3 ds18b20传感器的初始化时序ds18b20传感器为单总线结构器件,在读写操作之前,传感器芯片应先进性复位操作也就是初始化操作。ds18b20的初始化时序如图10所示。首先控制器拉高数据总线,接着控制器给数据总线一低电平,延时480s,控制器拉高数据总线,等待传感器给数据线一个60-240s的低电平,接着上拉电阻将数据线拉高,这样才初始化完成。图10 ds18b20初始化时序3.1.4 ds18b20传感器的读写时序 1.写时序ds18b20传感器的读写操作是在传感器初始化后进行的。每次操作只能读写一位。当主机把数据线从高电平拉至低电平,产生写时序。有两种类型的写时序:写“0”时序,写“1”时序。所有的时序必须有最短60s的持续期,在各个写周期之间必须有最短1s的恢复期。在数据总线由高电平变为低电平之后,ds18b20在15s至60s的时间间隙对总线采样,如果为“1”则向ds18b20写“1”, 如果为“0”则向ds18b20写“0”。如图3-2的上半部分。对于主机产生写“1”时序时,数据线必须先被拉至低电平,然后被释放,使数据线在写时序开始之后15s内拉至高电平。对于主机产生写“1”时序时,数据线必须先被拉至低电平,且至少保持低电平60s。2.读时序在数据总线由高电平变为低电平之后,数据线至少应保持低电平1s,来自ds18b20的输出的数据在下降沿15s后有效,所以在数据线保持低电平1s之后,主机将数据线拉高,等待来自ds18b20的数据变化,在下降沿15s之后便可开始读取ds18b20的输出数据。整个读时序必须有最短60s的持续期。如图11的下半部分。读时序结束后数据线由上拉电阻拉至高电平。图11 ds18b20传感器的读写时序3.1.5 ds18b20获取温度程序流程图ds18b20的读字节,写字节,获取温度的程序流程图如图12所示。图12 ds18b20程序流程图3.2 显示程序设计显示电路是由四位一体的数码管来实现的。由于单片机的i/o口有限,所以数码管采用动态扫描的方式来进行显示。程序流程图如图13所示。图13 显示程序流程图3.3 按键程序设计按键是用来设定上下限报警温度的。具体的程序流程图如图14所示。图14 按键程序流程图4.系统测试4.1硬件测试温度检测的电路系统比较简单,对于焊接方面更是不可轻视,庞大的电路系统中只要出于一处的错误,则会对检测造成很大的不便,而且电路的交线较多,对于各种锋利的引脚要注意处理,否则会刺被带有包皮的导线,则会对电路造成短路现象。在本设计调试中遇到了很多的问题。回想这些问题只要认真多思考都是可以避免的,以下为主要的问题:(1) 在硬件设计好后把软件程序写好后下载进单片机后数码管不显示。经过自己检测电路发现电路连接都没有发现问题,反复检查程序也没有发现问题,心想是不是p0口驱动能力不强,可是想已经加上拉电阻了。经过查阅资料发现排阻具有方向,将排阻焊锡来换一下方向,重新上电后果然显示了。所以对于有方向的元器件焊接需要特别的注意。4.2软件测试电子成年历是多功能的数字型,可以看当前日期(阴、阳历),时间,还有温度的仪器。电子成年历功能很多,所以对于它的程序也较为复杂,所以在编写程序和调试时出现了相对较多的问题。最后经过多次的模块子程序的修改,一步一步的完成,最终解决了软件。在软件的调试过程中主要遇到的问题如下:1.数码管动态显示时发现只会显示一个数字。经过检查程序发现数码管动态扫描显示时延时不够,通过改大延时解决了问题。4.3 测试结果结论经过多次的反复测试与分析,可以对电路的原理及功能更加熟悉,同时提高了设计能力与及对电路的分析能力.同时在软件的编程方面得到更到的提高,对编程能力得到加强.同时对所学的知识得到很大的提高与巩固.5.设计体会经过将近一个月的设计、焊接、编程、调试,我们终于完成了数字温度计的设计,基本能够达到设计要求,而且还设计了一些其他功能,比可以开启或消除按键音功能,开机动画功能,查看报警上下限温度功能。此次的设计使我从中学到了一些很重要的东西,那就是如何从理论到实践的转化,怎样将我们所学到的知识运用到实践中去。在大学课堂的学习只是给我们灌输专业知识,而我们应把所学的知识应用到我们现实的生活中去。这次的设计不仅使我们将课堂上学到的理论知识与实际应用结合了起来,而且使我们对电子电路、电子元器件、印制电路板等方面的知识有了更进一步的认识,同时在软件编程、焊板调试、相关调试仪器的使用等方面得到较全面的锻炼和提高,为今后能够独立进行某些单片机应用系统的开发设计工作打下一定的基础。此次单片机设计也为我们以后进行更复杂的单片机系统设计提供了宝贵的经验。通过此次的综合设计,我们初步掌握了单片机系统设计的基本原理。充分认识到理论学习与实践相结合的重要性,对于书本上的很多知识,不但要学会,更重要的是会运用到实践中去。在以后的学习中,我们会更加注重实践方面的锻炼,多提高自己的动手实践能力。参考文献【1】 朱定华,戴淑萍,单片机微机原理与应用m,清华大学出版社.2003【2】 刘勇 编 数字电路 电子工业出版社 2004【3】 陈正振 编 电子电路设计与制作 广西交通职业技术学院信息工程系 2007【4】 杨子文 编 单片机原理及应用 西安电子科技大学出版社 2006【5】 王法能 编 单片机原理及应用 科学出版社 2004【6】 谭浩强.c程序设计(第三版).北京:清华大学出版社,2005.7 【7】 余发山,王福忠.单片机原理与应用技术.徐州:中国矿业大学出版社,2008.6 【8】 求是科技.单片机典型模块设计实例导航.北京:人民邮电出版社,2005.5 【9】 求是科技.8051系列单片机c程序设计完全手册.北京:人民邮电出版社,2006.4 【10】 于永,戴佳,刘波.51单片机c语言常用模块与综合系统设计实例精讲(第2版).北京:电子工业出版社,2008.10 附录一:原理图和实物图原理图实物图附录二:程序mian.c:#include#include #include#include#define uchar unsigned char#define uint unsigned int/*灯、蜂鸣器、按键引脚定义*/sbit led_shang = p32;sbit led_xia = p33;sbit relay = p35;sbit buzz = p26;sbit key_set = p12;sbit key_jia = p11;sbit key_jian = p10;/*全局变量定义*/uchar temperature_up,temperature_down;/存储温度上、下限值uint set_f; /设置模式标志位/*按键检测函数*/void scan(void)/设置键,不支持连按if(key_set=0)delayms(7);if(key_set=0)led_shang=1;/关闭上限报警灯led_xia=1;/关闭下限报警灯buzz=1; /关闭蜂鸣器relay=1;/关闭继电器set_f+;if(set_f=3)set_f=0;eeprom_delete(0x2002);/擦除扇区eeprom_write(0x2002,temperature_up);/写入上限值数据保存eeprom_delete(0x2202); /擦除扇区eeprom_write(0x2202,temperature_down);/写入下限值保存if(set_f=1) /选择设置、显示上限值display2(temperature_up/1000,temperature_up%1000/100,temperature_up%100/10,temperature_up%10);if(set_f=2) /选择设置、显示下限值display2(temperature_down/1000,temperature_down%1000/100,temperature_down%100/10,temperature_down%10);while(!key_set);/检测按键松开/加值键,支持连按if(key_jia=0&set_f!=0)delayms(7);if(key_jia=0&set_f=1)/设置上限值temperature_up+; /上限自加if(temperature_up125)temperature_up=125;display2(temperature_up/1000,temperature_up%1000/100,temperature_up%100/10,temperature_up%10);/显示if(key_jia=0&set_f=2)/设置下限值temperature_down+; /下限自加if(temperature_down125)temperature_down=125;display2(temperature_down/1000,temperature_down%1000/100,temperature_down%100/10,temperature_down%10);/显示/减值键,支持连按if(key_jian=0&set_f!=0)delayms(7);if(key_jian=0&set_f=1)/设置上限值if(temperature_up=0)temperature_up=1;temperature_up-; /上限自减display2(temperature_up/1000,temperature_up%1000/100,temperature_up%100/10,temperature_up%10);/显示if(key_jian=0&set_f=2)/设置下限值if(temperature_down=0)temperature_down=1;temperature_down-; /下限自减display2(temperature_down/1000,temperature_down%1000/100,temperature_down%100/10,temperature_down%10);/显示/*主函数*/void main()buzz=1; /开机关闭蜂鸣器led_shang=1;/开机关闭上限报警灯led_xia=1; /开机关闭下限报警灯relay=1;/开机关闭继电器temperature_up=eeprom_read(0x2002); /上电先读取温度上限值temperature_down=eeprom_read(0x2202); /上电先读取温度下限值ds18b20_init(); while(1)scan(); /进行按键检测if(set_f=0)/正常显示温度ds18b20_read_temperature(); /读取温度ds18b20_temperature(); /读取转换if(temperature=temperature_up|temperature=temperature_up)led_shang=0; /打开上限报警灯relay=1; /关闭继电器elseled_xia=0; /打开下限报警灯relay=0; /打开继电器elsebuzz=1; /开机关闭蜂鸣器led_shang=1;/开机关闭上限报警灯led_xia=1; /开机关闭下限报警灯relay=1;/开机关闭继电器 display(temp_d0,temp_d1,temp_d2,temp_d3); /显示实际温度if(set_f!=0)/设置模式显示if(set_f=1)display2(temperature_up/1000,temperature_up%1000/100,temperature_up%100/10,temperature_up%10); /显示上限值if(set_f=2)display2(temperature_down/1000,temperature_down%1000/100,temperature_down%100/10,temperature_down%10);/显示下限值您好,为你提供优秀的毕业论文参考资料,请您删除以下内容,o(_)o谢谢!anationalsurveywasrecentlylaunchedtoevaluatetheeyehealthofchinesechildrenandteenagers.onjune6,chinasannualnationaldayforeyecare,thechinayouthdevelopmentservicecenterandzhejiangmedicine,aleadinglistedchinesepharmaceuticalcompany,jointlyannouncedthekickoffofthesurvey.inaboutonemonth,aquestionnairecompiledbytopeyecaremedicalexpertsinchinawillbedistributedthroughmultipleonlinepartners,includingh,aswellasthroughofflinesurveyeventsheldinuniversities,middleschoolsandprimaryschoolsacrossthecountry.areportwillbereleasedbasedonthesurveystatisticsandanalysis,andmostimportantly,guidelinesforparentsandyouthonhowtocarefortheeyesandpreventmyopiaagrowingprobleminchinasdigitizedsociety,willalsobeattachedonthereport.myopiaisnotonlyadiseasethatmakespeopleseethingsblurrily,butalsoleadstoseverecomplications,suchasglaucoma(increasedpressurewithintheeyeball),andcancauseblindness,saidzhouyuehua,anestablishedeyecarespecialistwithbeijingtongrenhospital.itisveryimportantforparentsandchildrentoknowabouttheriskandcarefortheireyes.thereareabout450millionmyopiapatientsinchina.amongchinesemyopiapatients,30millionareseverepatients,accordingtozhoutheprevalenceofmyopiaamonghighschoolandcollegestudentsismorethan70percent,andthesituationiscontinuouslyworsening,headded.sunzhu,directorwiththechinayouthdevelopmentservicecenter,saidlonghoursofstudy,lackofexercise,especiallyoutdooractivities,andattachmenttoelectronicscreenaresomeofthetopreasonsbehindthewidespreadmyopiaproblems,andtheincreaseofyoungerpatients,althoughchinahasmadegreatprogressinimprovingthehardwarefacilitiesandlightingconditionsinschools.hesaidhehopesthesurveywillalertpeopleonthethreateningsituation,andalsohelpmedicalexpertstobetterguidelineparentsandchildrensbehaviorstocareforeyes,basedonthetimelyandfactualstatisticsthesurveycollected.aseriesoffollow-upeventswillalsobeheldinsixcities,includingjinaninshandongprovince,andchangshainhunanprovince,toeducatepeopleonhowtocareforeyesafterthesurveystarted. more and more chinese are jogging to get and stay fit. most joggers will run alone, but some will jog with friends or even coaches. the beijing olympic forest park is one of the most popular spots. it is packed with runners in the afternoon, usually after work, and at weekends. jogging after a whole days work can be a way to unwind. it is true for he wenjun, whose workplace is right near the forest park. she discovered her athletic aptitude at the age of seven, when she began playing tennis. then she turned to jogging, and she has persevered with it for 10 years. i come to jog almost every day after work, whenever i have time. i think jogging is good for my health. and for me, a girl, it helps me to achieve to eternal goal, to keep slim, he said. he says she prefers jogging alone, so she can focus better. she loves jogging, even during beijings smoggy days. if the smog is severe, ill hold off jogging for a while. but if i really want to get away from work, ill wear a mask, or just ignore the smog and go on jogging, she said. for those who are not so athletic, jogging also has its attractions. wu houbin started roughly two years ago, when he was severely obese. within two months, his weight dropped from 82 kilograms to 64 kilograms. the success helped him recover health, and he has made friends. jogging does not require speed, but stamina. if you want to stick to the game, you need to take it

温馨提示

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

评论

0/150

提交评论