收藏 分销(赏)

实验五 温湿度数据采集实验.docx

上传人:pc****0 文档编号:6264092 上传时间:2024-12-04 格式:DOCX 页数:25 大小:1.10MB 下载积分:10 金币
下载 相关 举报
实验五 温湿度数据采集实验.docx_第1页
第1页 / 共25页
实验五 温湿度数据采集实验.docx_第2页
第2页 / 共25页


点击查看更多>>
资源描述
实验五 温湿数据采集实验 一、实验目的 1.了解智能传感器DHT11的原理与应用 2.掌握智能传感器DHT11的编程与操作方法 3.理解微处理器与湿度传感器DHT11之间的通讯 二、实验材料 1.具有USB 串口通讯的PC 机1 台 2.ADS1.2 集成开发软件1 套 3.J-Link-ARM 仿真器及软件1 套 4.NXP LPC2378 实验节点板1 个 5.LCD 显示实验板1 个 6.温湿度传感器模块1个 三、实验原理 振动传感器实验环境由PC机(安装有Windows XP操作系统、ADS1.2集成开发环境和J-Link-ARM-V410i仿真器)、J-Link-ARM仿真器、NXP LPC2378实验节点板、温湿度传感器、实验模块和LCD显示实验模块组成,如图4.5.1所示。 图4.5.1 传感器实验环境 A型接口 B型接口 USB连接线 J-Link-ARM 仿真器 实验节点板 通讯 模块 接口 传感 模块 接口 显示 模块 接口 20针 JTAG 连接线 PC机 1.温湿度传感器简介 (1)温度、湿度的相关概念 由于温度与湿度不管是从由于温度与湿度不管是从物理量本身还是在实际人们的生活中都有着密切的关系,所以温湿度一体的传感器就会相应产生。温湿度传感器是指能将温度量和湿度量转换成容易被测量处理的电信号的设备或装置。市场上的温湿度传感器一般是测量温度量和相对湿度量。 温度:度量物体冷热的物理量,是国际单位制中7个基本物理量之一。在生产和科学研究中,许多物理现象和化学过程都是在一定的温度下进行的,人们的生活也和他密切相关。 湿度:湿度很久以前就与生活存在着密切的关系,但用数量来进行表示较为困难。日常生活中最常用的表示湿度的物理量是空气的相对湿度。用%RH表示。在物理量的导出上相对湿度与温度有着密切的关系。一定体积的密闭气体,其温度越高相对湿度越低,温度越低,其相对湿度越高。其中涉及到复杂的热力工程学知识。 有关湿度的一些定义: 相对湿度:在计量法中规定,湿度定义为“物象状态的量”。日常生活中所指的湿度为相对湿度,用RH%表示。总之,即气体中(通常为空气中)所含水蒸气量(水蒸气压)与其空气相同情况下饱和水蒸气量(饱和水蒸汽压)的百分比。 绝对湿度:指单位容积的空气里实际所含的水汽量,一般以克为单位。温度对绝对湿度有着直接影响,一般情况下,温度越高,水蒸气发得越多,绝对湿度就越大;相反,绝对湿度就小。 饱和湿度:在一定温度下,单位容积,空气中所能容纳的水汽量的最大限度。如果超过这个限度,多余的水蒸气就会凝结,变成水滴,此时的空气湿度变称为饱和湿度。空气的饱和湿度不是固定不变的,它随着温度的变化而变化。温度越高,单位容积空气中能容纳的水蒸气就越多,饱和湿度就越大。 露点:指含有一定量水蒸气(绝对湿度)的空气,当温度下降到一定程度时所含的水蒸气就会达到饱和状态(饱和湿度)并开始液化成水,这种现象叫做凝露。水蒸气开始液化成水时的温度叫做“露点温度”简称“露点”。如果温度继续下降到露点以下,空气中超饱和的水蒸气就会在物体表面上凝结成水滴。此外,风与空气中的温湿度有密切关系,也是影响空气温湿度变化的重要因素之一。 (2)温度、湿度的测量方法 ①湿度测量传感器常见的几个测量方法 湿度测量技术来由已久。随着电子技术的发展,近代测量技术也有了飞速的发展。湿度测量从原理上划分二、三十种之多。对湿度的表示方法有绝对湿度、相对湿度、露点、湿气与干气的比值(重量或体积)等等。但湿度测量始终是世界计量领域中最著名的难题之一。一个看似简单的量值,深究起来,涉及相当复杂的物理—化学理论分析和计算,初涉者可能会忽略在湿度测量中必需注意的许多因素,因而影响[2]的合理使用。 常见的湿度测量方法有:动态法(双压法、双温法、分流法),静态法(饱和盐法、硫酸法),露点法、干湿球法和形形色色的电子式传感器法。 这里双压法、双温法是基于热力学P、V、T平衡原理,平衡时间较长,分流法是基于绝对湿气和绝对干空气的精确混合。由于采用了现代测控手段,这些设备可以做得相当精密,却因设备复杂,昂贵,运作费时费工,主要作为标准计量之用,其测量精度可达±2%RH -±1.5%RH。 静态法中的饱和盐法,是湿度测量中最常见的方法,简单易行。但饱和盐法对液、气两相的平衡要求很严,对环境温度的稳定要求较高。用起来要求等很长时间去平衡,低湿点要求更长。特别在室内湿度和瓶内湿度差值较大时,每次开启都需要平衡6~8小时。 露点法是测量湿空气达到饱和时的温度,是热力学的直接结果,准确度高,测量范围宽。计量用的精密露点仪准确度可达±0.2℃甚至更高。但用现代光—电原理的冷镜式露点仪价格昂贵,常和标准湿度发生器配套使用。 干湿球法,这是18世纪就发明的测湿方法。历史悠久,使用最普遍。干湿球法是一种间接方法,它用干湿球方程换算出湿度值,而此方程是有条件的:即在湿球附近的风速必需达到2.5m/s以上。普通用的干湿球温度计将此条件简化了,所以其准确度只有5~7%RH,明显低于电子湿度传感器。显然干湿球也不属于静态法,不要简单地认为只要提高两支温度计的测量精度就等于提高了湿度计的测量精度。 需要强调两点: 第一,由于湿度是温度的函数,温度的变化决定性地影响着湿度的测量结果。无论那种方法,精确地测量和控制温度是第一位的。须知即使是一个隔热良好的恒温恒湿箱,其工作室内的温度也存在一定的梯度。所以此空间内的湿度也难以完全均匀一致。 第二,由于原理和方法差异较大,各种测量方法之间难以直接校准和认定,大多只能用间接办法比对。所以在两种测湿方法之间相互校对全湿程(相对湿度0~100%RH)的测量结果,或者要在所有温度范围内校准各点的测量结果,是十分困难的事。例如通风干湿球湿度计要求有规定风速的流动空气,而饱和盐法则要求严格密封,两者无法比对。最好的办法还是按国家对湿度计量器具检定系统(标准)规定的传递方式和检定规程去逐级认定。 2.数字温湿度传感器DHT11 (1)DHT11简介 DHT11数字温湿度传感器是广州奥松电子有限公司生产的一款含有已校准数字信号输出的温湿度复合传感器。它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性与卓越的长期稳定性。传感器包括一个电阻式感湿元件和一个NTC测温元件,并与一个高性能8位单片机相连接。因此该产品具有品质卓越、超快响应、抗干扰能力强、性价比极高等优点。每个DHT11传感器都在极为精确的湿度校验室中进行校准。校准系数以程序的形式储存在OTP内存(一次性可编程只读存储器,One Time Programmable Read Only Memory, OTPROM,简称OTP)中,传感器内部在检测信号的处理过程中要调用这些校准系数。单线制串行接口,使系统集成变得简易快捷。超小的体积、极低的功耗,信号传输距离可达20米以上,使其成为各类应用甚至最为苛刻的应用场合的最佳选择。产品为 4 针单排引脚封装。连接方便,特殊封装形式可根据用户需求而提供。 图4.5.2 DHT11产品实物图 (2)DHT11的应用领域 DHT11广泛应用在一下几个方面:暖通、空调、测试及检测设备、汽车数据记录器、消费品自动控制、气象站、家电、湿度调节器、医疗、除湿器 (3)DHT11的产品特点 l 相对湿度和温度测量 l 全部校准,数字输出 l 卓越的长期稳定性 l 无需额外部件 l 超长的信号传输距离 l 超低能耗 l 4引脚安装 l 完全互换 (4)DHT11的外形尺寸 图4.5.3 DHT11的外形尺寸图 (5)产品参数 图4.5.4 DHT11引脚图 表4.5.1 DHT11 引脚说明 Pin 名称 注释 1 VDD 供电 3-5.5VDC 2 DATA 串行数据,单总线 3 NC 空脚,请悬空 4 GND 接地,电源负极 表4.5.2 DHT11特性表 参数 条件 Min Typ Max 单位 湿度 分辨率 1 1 1 %RH 8 Bit 重复性 ±1 %RH 精度 25℃ ±4 %RH 0-50℃ ±5 %RH 互换性 可完全互换 量程范围 0℃ 30 90 %RH 25℃ 20 90 %RH 50℃ 20 80 %RH 响应时间 1/e(63%)25℃,1m/s 空气 6 10 15 S 迟滞 ±1 %RH 长期稳定性 典型值 ±1 %RH/yr 温度 分辨率 1 1 1 ℃ 8 8 8 Bit 重复性 ±1 ℃ 精度 ±1 ±2 ℃ 量程范围 0 50 ℃ 响应时间 1/e(63%) 6 30 S 表4.5.3 DHT11电气特性 参数 条件 min type max 单位 供电 DC 3 5 5.5 V 供电电流 测量 0.5 2.5 mA 平均 0.2 1 mA 待机 100 150 uA 采样周期 秒 1 次 注: VDD=5V,T = 25,除非特殊标注。采样周期间隔不得低于1秒钟。 (6)典型电路 l 典型应用1 建议连接线长度短于20米时用5KΩ上拉电阻,大于20米时根据实际情况使用合适的上拉电阻。示意图见图4.5.6。 图4.5.6 DHT11典型应用1 l 典型应用2 微处理器与 DHT11 的连接典型应用电路如图4.5.7所示,DATA上拉后与微处理器的 I/O 端口相连。典型应用电路中建议连接线长度短于20米时用5.1KΩ上拉电阻,大于20m时根据实际情况降低上拉电阻的阻值。使用 3.5V 电压供电时连接线长度不得大于20cm。否则线路压降会导致传感器供电不足,造成测量偏差。每次读出的温湿度数值是上一次测量的结果,欲获取实时数据,需连续读取两次,但不建议连续多次读取传感器,每次读取传感器间隔大于5秒即可获得准确的数据。 图4.5.7 DHT11典型应用2 (7)串行通信说明(单线双向) l 单总线说明 DHT11 器件采用简化的单总线通信。单总线即只有一根数据线,系统中的数据交换、控制均由单总线 完成。设备(主机或从机)通过一个漏枀开路或三态端口连至该数据线,以允许设备在不发送数据时能够 释放总线,而让其它设备使用总线;单总线通常要求外接一个约 5.1kΩ 的上拉电阻,这样,当总线闲置时, 其状态为高电平。由于它们是主从结极,只有主机呼叫从机时,从机才能应答,因此主机访问器件都必须 严格遵循单总线序列,如果出现序列混乱,器件将不响应主机。 l 单总线传送及数据位定义 DATA 用于微处理器与 DHT11 之间的通讯和同步,采用单总线数据格式,一次传送 40 位数据,高位先出。 数据格式:8bit 湿度整数数据 + 8bit 湿度小数数据+8bit 温度整数数据 + 8bit 温度小数数据+8bit 校验位。 l 校验位数据定义 8bit 湿度整数数据 + 8bit 湿度小数数据+8bit 温度整数数据 + 8bit 温度小数数据8bit校验位等于所得结果的末8位。 示例一:接收到的40位数据为: 0011 0101 0000 0000 0001 1000 0000 0000 0100 1101 湿度高8位 湿度低8位 温度高8位 温度低8位 校验位 计算: 0011 0101+0000 0000+0001 1000+0000 0000= 0100 1101 接收数据正确: 湿度:0011 0101=35H=53%RH 温度:0001 1000=18H=24℃ 示例二:接收到的 40 位数据为: 0011 0101 0000 0000 0001 1000 0000 0000 0100 1001 湿度高 8 位 湿度低 8 位 温度高 8 位 温度低 8 位 校验位 计算: 0011 0101+0000 0000+0001 1000+0000 0000= 0100 1101 01001101 不等于 0100 1001 本次接收的数据不正确,放弃,重新接收数据。 (8)数据时序图 图4.5.8 数据时序图 总线空闲状态为高电平,主机把总线拉低等待DHT11响应,主机把总线拉低必须大于18毫秒,保证DHT11能检测到起始信号。DHT11接收到主机的开始信号后,等待主机开始信号结束,然后发送80us低电平响应信号。主机发送开始信号结束后,延时等待20-40us后,读取DHT11的响应信号,主机发送开始信号后,可以切换到输入模式,或者输出高电平均可,总线由上拉电阻拉高。 总线为低电平,说明DHT11发送响应信号,DHT11发送响应信号后,再把总线拉高80us,准备发送数据,每一bit数据都以50us低电平时隙开始,高电平的长短定了数据位是0还是1。如果读取响应信号为高电平,则DHT11没有响应,请检查线路是否连接正常。当最后一bit数据传送完毕后,DHT11拉低总线50us,随后总线由上拉电阻拉高进入空闲状态。 图4.5.9 主机发送起始信号及从机响应信号 数字0信号表示方法如图4.5.10所示。 图4.5.10 数字0信号表示方法 数字1信号表示方法如图4.5.11所示。 图4.5.11 数字0信号表示方法 (9)应用信息 l 工作与贮存条件 超出建议的工作范围可能导致高达3%RH的临时性漂移信号。返回正常工作条后,传感器会缓慢地向校准状态恢复。在非正常工作条件下长时间使用会加速产品的老化过程。 l 暴露在化学物质中 电阻式湿度传感器的感应层会受到化学蒸汽的干扰,化学物质在感应层中的扩散可能导致测量值漂移和灵敏度下降。在一个纯净的环境中,污染物质会缓慢地释放出去。下文所述的恢复处理将加速实现这一过程。高浓度的化学污染会导致传感器感应层的彻底损坏。 l 恢复处理 置于极限工作条件下或化学蒸汽中的传感器,通过如下处理程序,可使其恢复到校准时的状态。在50-60℃和< 10%RH的湿度条件下保持2小时(烘干);随后在20-30℃和>70%RH的湿度条件下保持 5小时以上。 l 温度影响 气体的相对湿度,在很大程度上依赖于温度。因此在测量湿度时,应尽可能保证湿度传感器在同一温度下工作。如果与释放热量的电子元件共用一个印刷线路板,在安装时应尽可能将DHT11远离电子元件,并安装在热源下方,同时保持外壳的良好通风。为降低热传导,DHT11与印刷电路板的其它部分的铜镀层应尽可能最小,并在两者之间留出一道缝隙。 l 光线 长时间暴露在太阳光下或强烈的紫外线辐射中,会使性能降低。 l 配线注意事项 DATA信号线材质量会影响通讯距离和通讯质量,推荐使用高质量屏蔽线。 3.DHT11获取温湿度关键程序 unsigned char U8FLAG,k; unsigned char U8count,U8temp; unsigned char U8T_data_H; unsigned char U8T_data_L; unsigned char U8RH_data_H; unsigned char U8RH_data_L; unsigned char U8checkdata; unsigned char U8T_data_H_temp; unsigned char U8T_data_L_temp; unsigned char U8RH_data_H_temp; unsigned char U8RH_data_L_temp; unsigned char U8checkdata_temp; unsigned char U8comdata; unsigned char count, count_r=0; unsigned int U16temp1; unsigned int U16temp2; void RH_com()//命令函数 { unsigned char i; unsigned int count; U8comdata=0; for(i=0;i<8;i++) { //低电平时隙 50us count=2; while(((FIO3PIN&0x00000002)!=0x00000002)&&count++);//test4 //数据位,26us~28us为数据0,70us为数据1 U8temp=0; if((FIO3PIN&0x00000002)==0x00000002) { U8temp=1; } count=2; while(((FIO3PIN&0x00000002)==0x00000002)&&count++);//test4 if(count>180) U8comdata=(U8comdata<<1)+1; else U8comdata =U8comdata<<1; }//rof } void RH_read()//获取温湿度值并校验 { unsigned int count; //主机IO3.1口输出模式,主机拉低至少18ms FIO3DIR |= (1<<1); FIO3PIN &=~(1<<1); Delay_1us(1000*18);//count); //总线由上拉电阻拉高20-40us FIO3SET |= (1<<1); Delay_1us(30); //将主机IO口置为输入 FIO3DIR &=~(1<<1); //判断从机是否有低电平响应信号 如不响应则跳出,响应则向下运行 if((FIO3PIN&0x00000002)!=0x00000002) //T ! { //判断从机是否发出 80us 的低电平响应信号是否结束 count=2; while(((FIO3PIN&0x00000002)!=0x00000002)&&(count++)); //判断从机是否发出 80us 的高电平,如发出则进入数据接收状态 count=2; while(((FIO3PIN&0x00000002)==0x00000002)&&(count++)); //数据接收状态 RH_com();//湿度的整数部分 U8RH_data_H_temp=U8comdata; RH_com();//湿度的小数部分 U8RH_data_L_temp=U8comdata; RH_com();//温度的整数部分 U8T_data_H_temp=U8comdata; RH_com();//温度的小数部分 U8T_data_L_temp=U8comdata; RH_com();//校验和 U8checkdata_temp=U8comdata; //数据校验 U8temp=(U8T_data_H_temp+U8T_data_L_temp+U8RH_data_H_temp+U8RH_data_L_temp); if(U8temp==U8checkdata_temp) { U8RH_data_H=U8RH_data_H_temp; U8RH_data_L=U8RH_data_L_temp; U8T_data_H=U8T_data_H_temp; U8T_data_L=U8T_data_L_temp; U8checkdata=U8checkdata_temp; } } } 四、实验内容 1.实验器材连线 本实验所使用的DHT11传感器实物图如图4.5.12所示。 图4.5.12 DHT11模块实物图 将温湿度传感模块安装到NXP LPC2378节点板上,然后用JLINK仿真器的一端用USB接口与电脑相连,一端的20Pin的JTAG引脚与NXP LPC2378节点板的J2相连,并给NXP LPC2378节点板上电,如图4.5.13所示。 图4.5.13 实验电路连接图 2.温湿度测量实验 本实验通过DHT11实验模块测量实验室室内的温湿度,并通过LCD显示在屏幕上,模拟万年历上的温度和湿度功能。打开工程TemHum,修改Main.c中的main()函数内容如下。 int main() { int xpos,ypos; uint8 sndBuf[20]; //传感板IO控制引脚设置 FIO3DIR =0;//初始设置引脚为输入 if((IO1PIN&(1<<16))==(1<<16)) { PINSEL6=PINSEL6&0xFFFFFFF3;//温湿模块,使用IO_2口作GPIO FIO3DIR=FIO3DIR|0x00000002; //温湿模块,设置IO_2连接的引脚为输出 } //设置LCD屏幕引脚 PINSEL3=PINSEL3 & 0x00000000; IO1DIR=IO1DIR|0x05700000; //屏幕初始化 RESET0; //复位 delay(50); RESET1; delay(100); lcd_init(); delay(20); LCD_Frame(); DispAscStr(0,12," ",1,&xpos,&ypos); DispChnStr(xpos,ypos,"温湿度模块测试",7,&xpos,&ypos); /*************************温湿度采集******************************/ U8T_data_H=0; U8T_data_L=0; U8RH_data_H=0; U8RH_data_L=0; PINSEL6 &= ~(3<<2);//P3.1引脚0xFFFFFFF3;//温湿模块,使用IO_2口作GPIO PINMODE6 &=~(3<<2); //使用内部上拉电阻 FIO3DIR |=(1<<1); FIO3PIN |=(1<<1); while(1) { RH_read(); DispChnStr(0,40,"温度",2,&xpos,&ypos); DispAscStr(xpos,ypos,":+",1,&xpos,&ypos); if(U8T_data_H>=10) { sndBuf[0]=U8T_data_H/10+'0'; sndBuf[1]=U8T_data_H%10+'0'; sndBuf[2]='.'; sndBuf[3]=U8T_data_L/10+'0'; DispAscStr(xpos,ypos,sndBuf,4,&xpos,&ypos); DispChnStr(xpos,ypos,"度",1,&xpos,&ypos); } else { sndBuf[0]=U8T_data_H%10+'0'; sndBuf[1]='.'; sndBuf[2]=U8T_data_L/10+'0'; DispAscStr(xpos,ypos,sndBuf,3,&xpos,&ypos); DispChnStr(xpos,ypos,"度",1,&xpos,&ypos); } DispChnStr(0,100,"湿度",2,&xpos,&ypos); if(U8RH_data_H>=10) { sndBuf[0]=':'; sndBuf[1]=U8RH_data_H/10+'0'; sndBuf[2]=U8RH_data_H%10+'0'; sndBuf[3]='.'; sndBuf[4]=U8RH_data_L/10+'0'; sndBuf[5]='%'; sndBuf[6]='R'; sndBuf[7]='H'; DispAscStr(xpos,ypos,sndBuf,8,&xpos,&ypos); } else { sndBuf[0]=':'; sndBuf[1]=U8RH_data_H%10+'0'; sndBuf[2]='.'; sndBuf[3]=U8RH_data_L/10+'0'; sndBuf[4]='%'; sndBuf[5]='R'; sndBuf[6]='H'; DispAscStr(xpos,ypos,sndBuf,7,&xpos,&ypos); } Delay_1us(500000); } /**************************************************************/ return 0; } 3.自动晾衣架实验 本实验测量空气中的湿度,当湿度达到临界值时,通知开始回收,防止阴雨天气淋湿衣物。修改Main.c中的代码如下: while(1) { RH_read(); //晾衣架提示 if(U8RH_data_H>50) { DispAscStr(0,40,"Get the laundry!",16,&xpos,&ypos); } else { DispAscStr(0,40,"In the air... ",16,&xpos,&ypos); } DispChnStr(0,100,"温度",2,&xpos,&ypos); DispAscStr(xpos,ypos,":+",1,&xpos,&ypos); if(U8T_data_H>=10) { sndBuf[0]=U8T_data_H/10+'0'; sndBuf[1]=U8T_data_H%10+'0'; sndBuf[2]='.'; sndBuf[3]=U8T_data_L/10+'0'; DispAscStr(xpos,ypos,sndBuf,4,&xpos,&ypos); DispChnStr(xpos,ypos,"度",1,&xpos,&ypos); } else { sndBuf[0]=U8T_data_H%10+'0'; sndBuf[1]='.'; sndBuf[2]=U8T_data_L/10+'0'; DispAscStr(xpos,ypos,sndBuf,3,&xpos,&ypos); DispChnStr(xpos,ypos,"度",1,&xpos,&ypos); } DispChnStr(0,120,"湿度",2,&xpos,&ypos); if(U8RH_data_H>=10) { sndBuf[0]=':'; sndBuf[1]=U8RH_data_H/10+'0'; sndBuf[2]=U8RH_data_H%10+'0'; sndBuf[3]='.'; sndBuf[4]=U8RH_data_L/10+'0'; sndBuf[5]='%'; sndBuf[6]='R'; sndBuf[7]='H'; DispAscStr(xpos,ypos,sndBuf,8,&xpos,&ypos); } else { sndBuf[0]=':'; sndBuf[1]=U8RH_data_H%10+'0'; sndBuf[2]='.'; sndBuf[3]=U8RH_data_L/10+'0'; sndBuf[4]='%'; sndBuf[5]='R'; sndBuf[6]='H'; DispAscStr(xpos,ypos,sndBuf,7,&xpos,&ypos); } Delay_1us(500000); } 4.室内温湿度监控 本实模拟检测实验室内的温度和湿度,当温度和湿度不在其上下限范围内时,提示开启相应设备进行调节。修改Main.c中的代码如下: while(1) { RH_read(); //室内温湿度监控 //温度提示 if(U8T_data_H>25) { DispAscStr(0,40,"Too hot! ",12,&xpos,&ypos); } else if (U8T_data_H<18) { DispAscStr(0,40,"Too cold! ",12,&xpos,&ypos); } else { DispAscStr(0,40,"Warm or cool",12,&xpos,&ypos); } //湿度提示 if(U8RH_data_H<20) { DispAscStr(0,60,"Too dry! ",13,&xpos,&ypos); } else if (U8RH_data_H>50) { DispAscStr(0,60,"Too wet! ",13,&xpos,&ypos); } else { DispAscStr(0,60,"Dry and loose",13,&xpos,&ypos); } DispChnStr(0,100,"温度",2,&xpos,&ypos); DispAscStr(xpos,ypos,":+",1,&xpos,&ypos); if(U8T_data_H>=10) { sndBuf[0]=U8T_data_H/10+'0'; sndBuf[1]=U8T_data_H%10+'0'; sndBuf[2]='.'; sndBuf[3]=U8T_data_L/10+'0'; DispAscStr(xpos,ypos,sndBuf,4,&xpos,&ypos); DispChnStr(xpos,ypos,"度",1,&xpos,&ypos); } else { sndBuf[0]=U8T_data_H%10+'0'; sndBuf[1]='.'; sndBuf[2]=U8T_data_L/10+'0'; DispAscStr(xpos,ypos,sndBuf,3,&xpos,&ypos); DispChnStr(xpos,ypos,"度",1,&xpos,&ypos); } DispChnStr(0,120,"湿度",2,&xpos,&ypos); if(U8RH_data_H>=10) { sndBuf[0]=':'; sndBuf[1]=U8RH_data_H/10+'0'; sndBuf[2]=U8RH_data_H%10+'0'; sndBuf[3]='.'; sndBuf[4]=U8RH_data_L/10+'0'; sndBuf[5]='%'; sndBuf[6]='R'; sndBuf[7]='H'; DispAscStr(xpos,ypos,sndBuf,8,&xpos,&ypos); } else { sndBuf[0]=':'; sndBuf[1]=U8RH_data_H%10+'0'; sndBuf[2]='.'; sndBuf[3]=U8RH_data_L/10+'0'; sndBuf[4]='%'; sndBuf[5]='R'; sndBuf[6]='H'; DispAscStr(xpos,ypos,sndBuf,7,&xpos,&ypos); } Delay_1us(500000); } 五、实验思考 1.画出DHT11获取温湿度关键程序的流程图。 2.列出你身边的含有温湿度传感器的电器。 3.调研10种以上其他温湿度传感器的信息。
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服