基于AT89C51的自动喷水系统毕业设计_第1页
基于AT89C51的自动喷水系统毕业设计_第2页
基于AT89C51的自动喷水系统毕业设计_第3页
基于AT89C51的自动喷水系统毕业设计_第4页
基于AT89C51的自动喷水系统毕业设计_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

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

文档简介

1、摘要本次设计的自动喷水系统包括土壤温湿度的采集与显示,计数器的设置与显示, 独立按键以及喷水报警等四大部分。土壤温湿度的采集和显示以AM2301作为温湿传感器 来采集温湿度将采集到的土壤温湿度值送入AT89S52单片机,再由其传输到LED数码 管进行显示。自动喷水系统设计为智能和手动两个部分:智能喷水部分是通过独立按键来 设定比较值并输入到单片机与传感器送入单片机的土壤湿度值相比较,比如:当湿度低于 下限值时,单片机将会输岀一个信号控制喷水同时,当温度高于上限值时,单片机也会 输岀一个信号控制喷水;手动部分也是由独立按键来设定喷水时间。 关键词AT89S52温湿度的采集与显示定时器LED AM

2、2301 引言 22世纪水资源正在变成一种宝贵的稀缺资源,水资源问题已不仅仅是资源问题更 成为关系到国家经济、社会可持续发展和长治久安的重大战略问题。基于此种情况采用节 水、节能的智能灌溉方法已成为全世界灌溉技术发展的趋势,推广使用智能化节水灌溉也 已成为世界各国为缓解水资源危机和实现农业现代化的必然选择。矚慫润厲彩瘗睞栃冼赖。 于是为了解决以上问题,我设计并初步实现了一套简单的智能化自动喷水系统。该 系统可对土壤的温湿度进行监控并对其进行适时适量的胶水。其核心是单片机控制模 块,温湿度采集及显示模块。用户可以通过数码管显示浏览采集到实时的温湿度信息。聞 創沟燻鐺險爱番谴净。 自动喷水系统的初

3、步设计 所谓的自动喷水系统即利用温湿度传感器采集或监测土 壤信息、田间信息和作物生长信息等。并将监测数据传到CPU,经过CPU相应程序的分 析决策,对终端发出相应的指令,从而实现自动喷水的功能。残鹫楼静链瀬濟淑塹籟。 起初,将系统划分为四个部分:温湿度传感器模块;显示模块;控制模块;单片机处 理模块。 控制模块有独立按键组成,设为4个按键第一个为电源按键,其次为模式切换按 键,然后分别为+,-功能键。 显示模块选用6个动态数码管。 温湿度传感器模块选用DS18B20和AM100K单片机处理模块采用单片机 AT89S51及其他相关硬件。 由于,传感器部分作为相对独立的部分,同时考虑到硬件问题,我

4、先初步的将定时 模块程序规划好。定时模块需要采用单片机的定时器,来实现时分秒的递减显示,当时间 归零时,报警器响。设计程序时,还要注意时分秒进位时,相关的细节操作。另外,独立 按键的扫描,要求控制和设定时间,起初考虑用中断的方式来控制实现其功能。酵钢极額閉 镇桧猪訣锥。 其次,考虑传感器部分参考DS18B20温度采集与显示设计,注意传感器的初始 化,写操作,读操作等,设计相应的程序。彈贸摄尔霁毙攬砖卤冼。 显示模块采用动态数码管显示,编程时注意CIK信号的设置,以及相应的延时子程 序,段码表和位选等都要设定妥当。謀养拎箧飆鐸葱类蒋薔。 最后,将温度传感器得到的实时温度与用户设定值进行比较,通过

5、if语句输出相应的 信号来控制报警器和电磁阀的工作。厦礴恳蹒骈時盡继價骚。 在控制技术方面,有诸如开环、闭环反馈控制,模糊控制,自适应控制,神经网络控 制等现代控制技术。模糊控制技术当前应用最广泛,一般用于有上、下位机的单片机控 制系统。本系统采用传统的闭环控制技术,系统控制原理逻辑框图实现如下茕桢广勘鮎选 块网羈泪。 以上是通过网上查找资料等方式,定制的最初的功能实现方案。 自动喷水系统功能设计进阶 现实生活中很多植物温度、湿度要保持在一个既定的值上,超出或者低于这个预定 值将对植物的生长产生影响。该系统要求用单片机测控来植物生长环境因子信息数据的实 时采集、处理,而后输出控制执行机构,以实

6、现环境湿度、温度的测控,达到节水节能, 省时省工的效果。具体功能如下:鹅娅尽損鹤惨歷茏鴛賴。 2、实现按需灌溉功能。按照植物的需求开启和关闭灌溉系统实现一般的控制。具 有结构简单,成本低,操作方便。 2、通过传感器检测植物生长的环境温度、土壤湿度;依据设定的植物要求的温度、 湿度的上下限值,由单片机来控制开关电磁阀,从而调节温湿度。籟丛妈輕为贍债蛭 练淨。 3、室内环境中土壤湿度是重要因子要求当土壤含水量过低而不能满足植物最低需 求时就打开电磁阀进行喷水,当湿度满足要求时关闭电磁阀。預頌圣鉉償歲龈讶骅 汆。 主要器件的选择 、单片机的选择: 电子技术飞速发展,使得计算机不断更新换代。其中单片机

7、更是一枝独 秀,广泛应用于各个领域,使其自动化程度大提高。渗銘呛俨匀谴鳖调硯錦。 单片机具有体积小,价格低廉,功能强大等优点。候选单片机AT89S51和 AT89S52.T面是两单片机的比较:铳誅卧泻喊圣骋贝兄頂廡。AT89S51功能特性 a. 兼容MCS-51指令系统 b. 32个双向I/O 口 c. 2个丄6位可编程定时/计数器 d. 全双工UART串行中断口线 e. 2个外部中断源 f. 中断唤醒省电模式 g. 看门狗(WD) T电路 h. 灵活的ISP字节和分页编程 i. 4k 可反复擦写(2000 次)ISP Flash ROM j. 4.5-5.5VT 作电压 k. 时钟频率0-3

8、3MHZ l. 128x8bit 内部 RAM m. 低功耗空闲和省电模式 n. 3级加密位 O.软件设置空闲和省电功能 P-双数据寄存器指针 AT89S52功能特性 a. 兼容MCS51指令系统 b. 8k可反复擦写(大于1000次)Flash ROM c. 32个双向I/O 口 d. 256x8bit 内部 RAM e. 3个丄6位可编程定时/计数器中断 f. 时钟频率0-24MHZ g. 2个串行中断,可编程UART串行通道 h. 2个外部中断源共8个中断源 i. 2个读写中断口线,3级加密位 j低功耗空闲和掉电模式软件设置睡眠和唤醒功能擁締凤袜备訊顎轮烂蔷。k.有 PDIP、PQFP、

9、TQFP及PLCC等几种封装形式,以适应不同产品的需求。 起初,我选择的是51单片机,但在编程设计中,为了更好地实现具体功 能,我发现实现过程中需要用到三个定时器,并且综合考虑,52单片机能发挥出 更强大的能效,同时我们手上正在使用的也是52单片机,因此相对熟悉。贓熱俣 闽歲匱阊邺镌騷。 、传感器的选择对于传感器的选择,起初我是选用两个传感器,温度采集使用 DS18B20,而湿度采用AM1001 o但是,在网上查找资料的过程中发现市场上拥有 已将温湿度采集集成在同一片传感器上的AM2301 .同时, 它是以效准数字信号输出的复合传感器,省去了模数转换的麻烦,节省了硬件资 源。综合考虑,我选用了

10、 AM230丄温湿度传感器。坛搏乡囂忏萎锲 铃氈淚三、显示器的选择 显示器可采用LED数码管和LCD显示屏将二者进行比较,LED结构简单, 它实际上是由七个发光二极管组成8字形构成的加上小数点就是8个。这些段分 别由字母a,b,c,d,e,f,g,dp来表示。当数码管特定的段加上电压后这些特定的段就 会发亮,以形成我们眼睛看到的七”数码管字样了。它的原理简单容易理解和操 作,对于一些简单的显示系统是非常理想的器件。LCD虽然功能强大,但是操作复 杂,并且LED在本系统中就足以发挥作用,加上成本低廉,所以在本次设计中选用 LED显示数据。蜡變黔瘪報低铉锚鋪赘。 主要模块分析 、主输入输出控制电路

11、 自动控制系统通过AM2301传感器对受控对象的有关参数信息数据的实时采 集及数字变化,进入单片机CPU进行必要的处理,而后输岀以驱动执行器件或机构 产生相应的动作,直接推动被控对象来调整被测参量,最终目的以使受控参量始终 处于要求值或范围内。買鯛鵰譜昙膚遙闫撷凄。 系统中我们选择主控制器芯片的时候需要考虑整个系统的功耗要低,并且有非 易失性的程序和数据存储器方便数据的掉电存储,要集成内部基准电压源并采用 at89s51单片机。AT89S52是一个低功耗,高性能CMOS 8位单片机,片内含8k Bytes ISP(ln-system programmable)的可反复擦写1000次的Flash

12、只读程序存储 器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51 指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储 单元,AT89S52在众多嵌入式控制应用系统中得到广泛应用。綾锚鯛駕襯鹏踪韦镂耀。 主机和传感器之间可通过三个步骤完成数据读取 步骤一: AM2301上电后(AM2302上电后要等待2S以越过不稳定状态,在此期间读取设 备不能发送任何指令),测试环境温湿度数据,并记录数据,此后传感器自动转入 休眠状态。AM2301的SDA数据线由上拉电阻拉高一直保持高电平,此时 AM2301的SDA引脚处于输入状态,时刻检测外部信号

13、。驅顒髏彦決绥譎饴憂锦。 步骤二 微处理器的I/O设置为输出,同时输出低电平,且低电平保持时间不能小 于800us ,典型值是拉低IMS,然后微处理器的I/O设置为输入状态,释放总线, 由于上拉电阻,微处理器的I/O即AM2301的SDA数据线也随之变高,等主机释 放总线后,AM2301发送响应信号,即输出80微秒的低电平作为应答信号,紧接 着输出80微秒的高电平通知外设准备接收数据。猫蛋驢绘燈鮒诛髅既疣。 步骤三:AM2301发送完响应后,随后由数据总线SDA连续串行输出40位数 据,微处理器根据I/O电平的变化接收40位数据。锹籁響迳琐筆襖鸥娅薔。 位数据“ 0”的格式为:50微秒的低电平

14、加26-28微秒的高电平; 位数据“丄”的格式为:50微秒的低电平加70微秒的高电平。 、电磁阀控制电路 电磁阀控制电路主要由NPN共集一共射复合管及继电器组成,当单片机P0.7 给出高电平,复合管导通,继电器接通将开关吸合,电磁阀接通开始放水。因为单 片机的带负载能力比较小,不足以驱动继电器和电磁阀,所以采用功率放大驱动电 路,使得电磁阀能够工作。同时可以减少电磁阀对主电路的干扰作用。構氽頑簧碩饨养 龈话鹫。 单片机驱动电路继电器电磁阀 电磁阀控制电路原理图如图所示: 三、报警电路设计报警电路设计作为一个独立的模块,采用市面上比较普遍的蜂鸣器电 路,结构比较简单使用AT89S52 的一根口线

15、驱动蜂鸣器发声。蜂鸣器原理图如图所 示:輒峰陽樫餅怖網儂號栄。 四、显示模块电路显示模块可采用两种方式,一种是采用动态显示方式驱动6个数码管工 作,左边四位显示温湿度值精确到小数点后一位,右边两位为温湿度的单位显示。其中 通过S4键切换温湿度,数码管通过位段扫描实现显示功能。尧侧閏繭絳闕绚勵覘贅。 键盘模块原理图如下 KI zL。七一1”妙 五、定时模块 定时模块其中分为定时部分和调时部分,同样通过S1和S2键来控制时间的减 和加,S3键来确定定时和切换设置时间。温湿度程序代识饒鎂錠缢濫覓嘴俨淒。 六、温湿度采集模块 首先是对AM2301的介绍。AM2301湿敏电容数字温湿度模块是一款含有己校

16、 准数字信号输出的温湿度复合传感器。它应用专用的数字模块采集技术和温湿度传感 技术,确保产品具有极高的可靠性与卓越的长期稳定性。传感器包括一个电容式感湿 元件和一个高精度测温元件,并与一个高性能8位单片机相连接。因此该产品具有品 质卓越、超快响应、抗干扰能力强、性价比极高等优点。每个传感器都在极为精确的 湿度校验室中进行校准。校准系数以程序的形式储存在单片机中,传感器内部在检测 信号的处理过程中要调用这些校准系数。标准单总线接口使系统集成变得简易快 捷。超小的体积、极低的功耗,信号传输距离可达20米以上,使其成为各类应用甚 至最为苛刻的应用场合的最佳选择。产品为3引线(单总线接口)连接方便。特

17、殊封装 形式可根据用户需求而提供。凍跛娥劳臘错痫婦胫汆。 AM2301引脚图及其分配 引脚 颜色 名称 描述 1 红色 VDD 电源(3.5-5.5V ) 2 黄色 SDA 串行数据,双向 3 黑色 GND 地 NC 空脚 AM2301的数据总线SDA输岀40位数据后,继续输出低电平50微秒后 转为输入状态由于上拉电阻随之变为高电平。同时AM2301内部重测环境温 湿度数据,并记录数据,测试记录结束,单片机自动进入休眠状态。单片机只 有收到主机的起始信号后,才重新唤醒传感器,进入工作状态。AM2301传感 器读单总线的流程图如图所示:恥誇銷灭萦欢煬鞏鸳錦。 AM2301传感器读单总线的流程图

18、温湿度采集原理图如下图所示 七、硬件抗干扰设计 在自动浇灌控制系统中系统可靠性的保证是非常重要的,单片机硬件系 统的可靠性决定了整个系统的可靠性。硬件抗干扰技术主要体现在过程通道抗 干扰设计、供电系统抗干扰设计和印刷电路板抗干扰设计三个方面。单片机硬 件系统的抗干扰能力与元器件质量、装配质量等因素都有关系,但主要取决于 设计的可制造性(DEM),本系统采取如下相应的抗干扰措施。簧腎鑰训漣鉀湄懼統 庫。 L采用抗干扰稳压电源 采用具有抗干扰能力的稳压电源绝大部分干扰都可以克服。提高稳压电 源抗干扰能力,通常采用的措施:采用电源滤波;通过低通滤波器接入电网。硕 癘鄴顽i刍撞檸攜釀薮。 2. 采用良

19、好的接地系统。 3. 强电与弱电之间采用继电器隔离。 /总纟吉由于水平、时间与试验条件有限,系统设计还不完善,程序不够简洁,功能没有完 整。设计中系统关键部分电磁阀由于没有购买,用蜂鸣器代替,定时器模块不够完善, 对定时器的定义有一定的误解,尚未找到比较好的解决办法。今后还应进行更多的学习和研究,例如自动控制部分,我并没有考虑外部扰动信号等更多地干 扰因素,今后要完善产品的结构与设计,使其更具有实用性。闽擞轅嬪諫迁择禎秘驚。 设计中遇到的问题和解决方法举例: 1、起初用3个按键来控制整个程序的切换和设定,经过反复试验,无法达到预期的 效果;最后经过假设和参考,在原来按键切换功能加减的设定上加上

20、了“设 定”按键,意在通过该按键可以实现修改上下限值,设定计时时间等功能。氫嚕躅 竄贸恳彈濾颔滎。 2、在程序实现过程中,发现数码管数据有闪烁的现象,经过老师的提醒加上自己通 过构思得到的方法,我采用了一个定时器,将温湿度扫描程序放在定时器中断里 面通过定时器的方式,避免程序的反复循环而导致数码管显示的延迟而造成闪 烁的缺陷。社鹄資贏車贖孙滅獅赘。 设计中,还有其他许多的问题,由于不是关键部分不予赘述。 在这次实习过程中,始终浸透着老师的心血和汗水,让我从中学到了许多重要的东 西,为自己将来的工作和就业,提供了良好的借鉴和帮助,在此,向老师致以最诚挚的敬 意禾口最美好的祝愿!怂阐譜綾迳導嘯畫長

21、凉。 附: 原理图: I 程序: #include #include / typedef unsigned char U8; typedef unsigned int U16; #define uchar unsigned char 谚辞調担銃谄动 禪泻類。 #define uint unsigned int sbit beep=P3A2; sbit sO=P3A3; sbit sl=P3A4; sbit s2=P3A5; sbit s3=P3A6; sbit HR二P3八7 ; sbit clk=P2A7; U8 U8FLAG,q,w,e; U8 U8temp; U8 U8T_data_H,

22、U8T_data_L,U8RH_data_H,U8 RH_data_L,U8checkdata;- U8 U8T_data_H_tennp,U8T_data_L_temp,U8RH _data_H_temp,U8RH_data_L_temp,U8check data_temp;熒绐譏铤鎂鯉鷹緇機库。 U8 data tab6,tabs6; U8 U8comdata; U8 outdata6; 定义发送的字节数 U8 count; U8str6; U16 U16templ,U16temp2; uchar shi,fen,miao, nam,dkey, nu m,key; uchar code w

23、ei二0 x01,0 x02,0 x04,0 x08,0 x10,0 x20;/ 八 位位 选召马表鵜渍蟆偉阅劍輙腎邏藪。 uchar code duan=0 x3f ,0 x06,0 x5 b ,0 x4f ,0 x66,0 x6d ,0 x7 d,0 x07,0 x7f,0 x6f;数码管显示编码(2-F)打忧蔣 氤頑签驅藥悯鸳。 void SendData(U8 *a) outdata0 = a0; outdatal = al; outdata2 = a 2; outdata3二 a; outdata4二 a 4; outdata5 = a5; count 二 1; SBUF=outda

24、ta0; void delayl(U161) U16 ij; for(i=t;i0;i-) for(j=25;j0;j-) void delay2(U8 z) uint ij; for(i=乙 i0;i-) for(j=110;j0;j-); void Delay(U16 j) U8i; for(;j0;j-) for(i=0;i27;i+); void Delay_10us(void) U8 i; void COM(void) U8i; for(i 二 0;i8;i+) U8FLAG 二 2; while(!HR) Delay_10us(); Delay_10us(); Delay_10us

25、(); U8temp 二 0; if(HR)U8temp=l; U8FLAG 二 2; while(HR) 超时则跳出for循环 if(U8FLAG=l)break; /判断数据位是0还是1 /如果高电平高过预定0高电平值则数据位 为1 U8comdata=l; U8comdata|=U8temp; /0 /rof void RH(void) /主机拉低18ms HR 二 0; Delay(180); HR 二 1; 总线由上拉电阻拉高主机延时20us Delay_10us(); Delay_10us(); Delay_10us(); Delay_10us(); 主机设为输入判断从机响应信号

26、HR 二 1; 判断从机是否有低电平响应信号 如不响 应则跳出,响应则向下运行 if(!HR)T! U8FLAG 二 2; 判断从机是否发岀80us的低电平响应信号 是否结束 while(!HR) U8FLAG 二 2; 判断从机是否发岀80us的高电平,如发出 则进入数据接收状态 while(HR) 数据接收状态 U8temp=(U8T_data_H_temp+U8T_data_L_te mp+U8RH_data_H_temp+U8RH_data_L_te mp);颖 刍莖峽悖亿顿袅赔浅。 if(U8temp=U8checkdata_temp) U8RH_data_H=U8RH_data_H

27、_temp; U8RH_data_L=U8RH_data_L_temp; U16templ 二U8RH_data_H; U16templ ip:suenpz:od fel9M=3d :0 二 MQ :OT%U9=6 :ot/u刃二s :(T)gXe|ap gQ 0=3d gQ :(D乙血即 迁二”13 :08X0l6uenp=0d QM二乙d :0 二 MQ :乙/feQp辽二桐 :0 二乙 d :0 二 MQ (l)sAepp :T=ip:suenpz:od :gi9M=3d :0 二 MQ :0科!片二b :Ol/ii|S 二 s QsRipn 0Ae|dsip_T9iua pioa (

28、:(Drqp gQ :0 二乙 d :o 二 MQ :(D乙血即 迁二HQ :6uenp=od :0pm 二玄 :0 二 MQ :(D乙伯op迁二桐 0-3d gQ :suenp=od :Tl8M=3d :0 二 MQ 0T%3=6 :0S 二 s :(T)gAe|9p :T=)p :0Nd :0 二 MQ (l)sAepp gQ 08)p :0 二乙 d :0 二 MQ :(诚阳P gQ :suenp=od :JQM 二玄 :0 二 MQ oi%q=6 :OT/q 二 s :(诚阳P gQ 0=3d :0 二 MQ :(T)gXe|9p gQ 08X0l6uenp=0d :切 I9M 二乙

29、d :0 二 MQ :(T)gXe|ap :T=|p 0-3d :0 二 MQ :(DeQP gQ :suenp=od :gi9M=3d :0 二 MQ :0 二 MQ :(D阳P 9/xo=Od :PM二乙d :0 二 MQ (g)lAepp gQ :0 二乙 d :0 二 MQ (S)lAeiap T=IP Z/xo=Od :Upm 二乙 d :0二桐 (S)lAepp -0=Zd :0 二 MQ (g)lAepp lP :quenp=od 诽m二乙d :0二桐 :(g);Xe|ap gQ :0二玄 :0 二 MQ (g)lAe|ap 1=IP :6uenp=od 诽m二乙d :0二桐 (

30、g)lAepp 辽二桐 0=Zd :0 二 MQ (S)lAepp gQ :suenp=od :加M二乙d :o 二 MQ (9)lAepp 1=IP :0二玄 :0二和 (g)lAepp 1=IP :08X0lfouenp=0d :gi9M=sd OP 也加二U :Tqe6 :0加二 s :q*6*s叫刑 ()Xe|dS!pHa Pioa :(D乙伯即 1=IP 0=3d :0 二 MQ (l)sAeiap 1=IP 6ue np 二 0d :0QM 二乙日 :0 二 MQ :(D乙伯即 1=IP :0 二乙 d OP :(D乙血即 迁二狐 :sue np 二 0d 航QM二乙d 0=IP

31、:0l%oeiiu=6 :Ol/oeiiu=s :(T)sAe|ap lP O=Zd :0 二 MP :(D乙伯即 :i=ip 08X0l6uenp=0d 也IOM二玄 :0 二 MQ :(诚阳P 迁二MQ :0二玄 :0 二 MQ delayl(5); clk=O; P2=0; clk=l; delayl(5); void RHS_display() uchar s,g,h; s=tabs0; g=tabsl; h=tabs2; clk=0; P2 二 w ei5; P0=duan0|0 x80; clk=l; delayl(5); elk 二 0; P2 二 0; clk=l; delay

32、l(5); elk 二 0; P2=wei4; P0=duans; clk=l; delayl(5); elk 二 0; P2 二 0; clk=l; delayl(5); clk=0; P2 二 wei ; P0=dua ng; elk 二 2; delayl(5); elk 二 0; P2 二 0; clk=l; delayl(5); clk=0; P2=wei2; P0=duanh; elk二2; delayl(5); clk=0; P2=0; clk=l; delayl(5); elk 二 0; P2=weil; PO二 0 x77; clk=l; delayl (5); elk 二

33、0; P2=0; clk=l; delayl(5); elk 二 0; P2 二 wei0; PO二 0 x76; elk 二 1; delayl(5); elk 二 0; P2=0; clE; delayl(5); void temp_display() uchar s,g,h; s 二 tab ; g 二 tab4; h=tab5; elk 二 0; P2 二 wei5; P0=duan0; elk 二 1; delayl ; elk 二 0; P2 二 0; clk=l; delayl(5); elk 二 0; P2 二 wei4; P0=duans; elk 二 1; delayl ;

34、 elk 二 0; P2 二 0; elk 二 1; delayl ; P2=wei5; clk=0; P0=duan0; clk=l; P2=w ei3; delayl ; P0=duang|0 x80; elk二 1; elk 二 0; delayl(5); P2 二 0; clk=0; elk二 1; delayl(5); P2=0; elk 二 0; clk=l; delayl(5); P2 二 wei4; clk=0; PO二duans; elk二 1; P2=wei2; delayl(5); P0=duanh; elk 二 0; clk=l; P2 二 0; delayl(5);

35、elk二 1; delayl(5); clk=0; elk 二 0; P2 二 0; P2 二 wei3; clk=l; delayl(5); P0=duang|0 x80 clk=0; elk二 1; delayl; P2=weil; elk 二 0; P0 二 0 x39; P2 二 0; clk=l; elk二 1; delayl; delayl(5); elk 二 0; clk=O; P2 二 wei2; P2=0; P0=duanh; clk=l; clk=l; delayl; delayl(5); elk二0; clk=O; P2 二 0; P2 二 wei0; elk二 1; d

36、elayl(5); P0=0 x3f; elk 二 0; clk=l; P2 二 weil; delayl(5); PO二0 x39; clE; elk 二 0; delayl ; P2 二 0; elk 二 0; clk=l; P2 二 0; delayl(5); elk 二 1; delayl ; void tempS_display() uchar sgh; s 二 tabs 3; g=tabs4; h 二 tabs5; clk=0; elk 二 0; P2 二 wei0; P0=0 x3f; clk=l; delayl ; elk 二 0; P2 二 0; clk=l; delayl

37、; void keyscan() if(sO 二二 1) delay2(50); if(sO=l) dkey+; if (d key 二二 3) dkey=O; delay2(2000); if(s2 二二 1) delayl ; if(sl=l) key+; if(key 二二 2) key=O; while(sl); if(s2=l) delayl ; if(s2 二二 1) num 二 1; while(s2) if(s3=l) delayl ; if(s3=l) num 二 2; while(s3); if(dkey=O) switch(key) case 0:TR2 二1; TRO

38、二 0; RH_display(); if(tab0*100+tabl*10+tab2)(tabs 3*10 0+tabs4*10+tabs5)銚錨綾咲鳗鸿银謎諏涼。 beep=l; Delay(20); break; case l:beep=O; TR1=O; tempS_display(); if(num二二 1) num二0; +tabs5; if (tabs5=10) tabs5二0; +tabs4; if(tabs4=二 10) tabs4二 0; +tabs3; )tempS_display(); if(num二二2) num二0; -tabs5; if(tabs5=- 1) tabs二9; -tabs 4; if(tabs4=-l

温馨提示

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

评论

0/150

提交评论