基于89C51单片机SHT11温湿度传感器电路图于程序作者_第1页
基于89C51单片机SHT11温湿度传感器电路图于程序作者_第2页
基于89C51单片机SHT11温湿度传感器电路图于程序作者_第3页
基于89C51单片机SHT11温湿度传感器电路图于程序作者_第4页
基于89C51单片机SHT11温湿度传感器电路图于程序作者_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

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

文档简介

1、基于89C51单片机的SHT11温湿度传感器电路图由张志杰编写SHT11.h文件:#ifndef _SHT11_H_#定义_SHT11_H_/*SHT11相关命令*#定义uchar无符号字符#定义uint无符号整数# define tem _ test0x 03/温度检测命令# define hm _ test0x 05/湿度检测命令# define gr _ read0x 07/读取寄存器# define gr _ write0x 06/写寄存器#define FUNCTION_SET0x01/将SHT11的工作精度设置为8位/湿度12位温度/*SHT11端口定义*/sbit sht11_d

2、ata=p31;sbit sht11_sck=p30;sbit p33=p33;sbit p32=p32;sbit p36=p36;sbit p37=p37;uchar flag _ tempeture=0;/显示温度位置的标志uchar标志湿度=0;/显示湿度位置的标志uchar代码str1=0x10,0x06,0x09,0x08,0x08,0x09,0x06,0x 00 ;/温度图标uchar代码str 6 _ sht 11= % RH ;uchar代码str4_sht11=米虎=;uchar代码str 2 _ sht 11= temp=;uchar代码str 7 _ sht 11= ;/

3、清除所有不必要的显示/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *函数名:Delay()功能功能:SHT11内部延迟*/无效延迟();/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *函数名:延迟_毫秒()功能功能:SHT11检测延迟功能描述:11毫秒/55毫秒/210毫秒分别对应8位/12位/14位测量结果当相应参数为n时,延迟Nms被延迟。*/void edelay _ ms(uintms)/ms延迟功能(AT89C51 11.0592MH

4、z)uint I;uchar j;对于(I=0;当位6为1时,表示电源不足。位0表示当前测量分辨率当位0为1时,表示测量精度:8位/湿度12位温度当位0为0时,表示测量精度:12位湿度和14位温度默认值为0* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */uchar SHT11 _读取_寄存器(uchar命令)uchar datSHT11 _开始();SHT11 _发送字节(命令);SHT11 _答案();dat=SHT11 _ Receivebyte();SHT11 _结束();返回

5、(dat);/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *函数名3336sht11 _ measure (ucharcommand,uint time);功能功能:设置SHT11检测功能并返回相应的检测结果功能描述:命令参数用于设置温度检测或湿度检测。时间参数用于设置检测过程中的等待时间,以确定检测结果的位数。11毫秒/55毫秒/210毫秒分别对应8位/12位/14位* * * * * * * * * * * * * * * * * * * * * * * * * *

6、* * * * * * * * * * * */uint SHT11_Measure(uchar命令,uchar时间)uint dat=0;uchar data_high,data _ lowSHT11 _开始();SHT11 _发送字节(命令);SHT11 _答案();延迟_毫秒(时间);SHT11 _测试_完成();data _ high=SHT11 _ Receivebyte();单片机_应答();data _ low=SHT11 _ Receivebyte();SHT11 _结束();dat=(dat | data _ high);dat=(dat 8)| data _ low;返回(

7、dat);/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *函数名: convert _ tempeture 12位(uin dat);功能:将检测到的数据转换成相应的温度数据功能描述:温度转换公式-t=d1d2 * sot公式中的参数d1=-40,d2=0.04适用于12位测量精度*/浮点SHT11 _ Convert _ Tempeture12bit位(单位数据)浮动温度1;温度1=-400.04 * dat;if(tempeture123)tempeture1=tempeture1 1if(tempeture155)tempeture1=tempeture1 1if(P37=1)if(温度1=16温度130)p33=1;p32=0;其他p3

温馨提示

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

评论

0/150

提交评论