欢迎来到天天文库
浏览记录
ID:36296491
大小:121.00 KB
页数:10页
时间:2019-05-08
《基于89c51单片机sht11温湿度传感器电路图于程序作者》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、word完美格式基于89C51单片机SHT11温湿度传感器电路图于程序作者:张志杰SHT11.h文件:#ifndef__SHT11_H__#define__SHT11_H__/*************************SHT11相关命令**************************/#defineucharunsignedchar#defineuintunsignedint#defineTEM_TEST0x03//温度检测命令#defineHUM_TEST0x05//湿度检测命令#defineREG_READ0x07//读寄存器#define
2、REG_WRITE0x06//写寄存器#defineFUNCTION_SET0x01//设置SHT11的工作精度为8位/湿度12位温度/**************************SHT11端口定义***************************/sbitSHT11_DATA=P3^1;sbitSHT11_SCK=P3^0;sbitP33=P3^3;sbit精心整理学习帮手word完美格式P32=P3^2;sbitP36=P3^6;sbitP37=P3^7;ucharflag_tempeture=0;//显示温度位置的标志ucharflag_
3、humidity=0;//显示湿度位置的标志ucharcodestr1[]={0x10,0x06,0x09,0x08,0x08,0x09,0x06,0x00};//温度图标ucharcodestr6_sht11[]="%RH";ucharcodestr4_sht11[]="humi=";ucharcodestr2_sht11[]="temp=";ucharcodestr7_sht11[]="";//清除没不要的显示/***************************函数名称:Delay()函数功能:SHT11内部延时******************
4、**********/voidDelay(){;;}/***************************函数名称:Delay_Ms()函数功能:SHT11检测等待延时函数说明:11ms/55ms/210ms分别对应8位/12位/14位测量结果对应的形参为N则延时Nms****************************/voidDelay_Ms(uintms)//ms延时函数(AT89C51@11.0592MHz){uinti;ucharj;for(i=0;i5、);}}/**************************函数功能:SHT11启动时序***************************/voidSHT11_Start(){SHT11_SCK=1;SHT11_DATA=1;Delay();SHT11_DATA=0;精心整理学习帮手word完美格式Delay();SHT11_SCK=0;Delay();SHT11_SCK=1;Delay();SHT11_DATA=1;}/******************************函数名称:SHT11_Sendbyte(uchardat)函数功能:向6、SHT11发送8bite数据******************************/voidSHT11_Sendbyte(uchardat){uchari;SHT11_SCK=0;Delay();for(i=0;i<8;i++){if(dat&0x80){SHT11_DATA=1;Delay();}else{SHT11_DATA=0;Delay();}dat=dat<<1;SHT11_SCK=1;Delay();SHT11_SCK=0;}}/*********************************函数名称SHT11_Answer():函数功7、能:检测SHT11的响应信号(在第九个时钟周期)***********************************/voidSHT11_Answer(){SHT11_SCK=1;Delay();while(SHT11_DATA==1);精心整理学习帮手word完美格式SHT11_SCK=0;SHT11_DATA=1;}/************************************函数名称:SHT11_Test_Finish()函数功能:检测SHT11温湿度检测是否完毕*************************************8、/voidSHT11_Test_Finish(){while(SH
5、);}}/**************************函数功能:SHT11启动时序***************************/voidSHT11_Start(){SHT11_SCK=1;SHT11_DATA=1;Delay();SHT11_DATA=0;精心整理学习帮手word完美格式Delay();SHT11_SCK=0;Delay();SHT11_SCK=1;Delay();SHT11_DATA=1;}/******************************函数名称:SHT11_Sendbyte(uchardat)函数功能:向
6、SHT11发送8bite数据******************************/voidSHT11_Sendbyte(uchardat){uchari;SHT11_SCK=0;Delay();for(i=0;i<8;i++){if(dat&0x80){SHT11_DATA=1;Delay();}else{SHT11_DATA=0;Delay();}dat=dat<<1;SHT11_SCK=1;Delay();SHT11_SCK=0;}}/*********************************函数名称SHT11_Answer():函数功
7、能:检测SHT11的响应信号(在第九个时钟周期)***********************************/voidSHT11_Answer(){SHT11_SCK=1;Delay();while(SHT11_DATA==1);精心整理学习帮手word完美格式SHT11_SCK=0;SHT11_DATA=1;}/************************************函数名称:SHT11_Test_Finish()函数功能:检测SHT11温湿度检测是否完毕*************************************
8、/voidSHT11_Test_Finish(){while(SH
此文档下载收益归作者所有