SHT11程序代码

上传人:ali****an 文档编号:111075290 上传时间:2019-11-01 格式:DOC 页数:8 大小:36KB
返回 下载 相关 举报
SHT11程序代码_第1页
第1页 / 共8页
SHT11程序代码_第2页
第2页 / 共8页
SHT11程序代码_第3页
第3页 / 共8页
SHT11程序代码_第4页
第4页 / 共8页
SHT11程序代码_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《SHT11程序代码》由会员分享,可在线阅读,更多相关《SHT11程序代码(8页珍藏版)》请在金锄头文库上搜索。

1、#ifndef _SHT11_H_#define _SHT11_H_/*SHT11相关命令*/#define TEM_TEST 0x03/温度检测命令#define HUM_TEST 0x05/湿度检测命令#define REG_READ 0x07/读寄存器#define REG_WRITE 0x06/写寄存器#define FUNCTION_SET0x01/设置SHT11的工作精度为8位/湿度 12位温度/*SHT11端口定义*/sbit SHT11_DATA=P20;sbit SHT11_SCK=P22;uchar flag_tempeture=0; /显示温度位置的标志uchar fla

2、g_humidity=0; /显示湿度位置的标志uchar code str1= 0x10,0x06,0x09,0x08,0x08,0x09,0x06,0x00;/温度图标uchar code str6_sht11=%RH ; uchar code str4_sht11=humi=;uchar code str2_sht11=temp=;uchar code str7_sht11= ;/清除没不要的显示/*函数名称:Delay()函数功能:SHT11内部延时*/void Delay();/*函数名称:Delay_Ms()函数功能:SHT11检测等待延时函数说明:11ms/55ms/210ms

3、分别对应8位/12位/14位 测量结果对应的形参为N 则延时Nms*/void Delay_Ms(uint ms)uint i,j;for(i=ms;i0;i-)for(j=112;j0;j-);/*函数功能:SHT11启动时序*/void SHT11_Start()SHT11_SCK=1;SHT11_DATA=1;Delay();SHT11_DATA=0;Delay();SHT11_SCK=0;Delay();SHT11_SCK=1;Delay();SHT11_DATA=1;/*函数名称:SHT11_Sendbyte(uchar dat)函数功能: 向SHT11发送8bite数据*/void

4、 SHT11_Sendbyte(uchar dat)uchar i;SHT11_SCK=0;Delay();for(i=0;i8;i+)if(dat&0x80)SHT11_DATA=1;Delay();elseSHT11_DATA=0;Delay();dat=dat1;SHT11_SCK=1;Delay();SHT11_SCK=0;/*函数名称SHT11_Answer():函数功能:检测SHT11的响应信号(在第九个时钟周期)*/void SHT11_Answer()SHT11_SCK=1;Delay();while(SHT11_DATA=1);SHT11_SCK=0;SHT11_DATA=1

5、;/*函数名称:SHT11_Test_Finish()函数功能:检测SHT11温湿度检测是否完毕*/void SHT11_Test_Finish()while(SHT11_DATA=1);/*函数名称:SHT11_Receivebyte()函数功能:从SHT11接收8bite数据*/uchar SHT11_Receivebyte() uchar i;uchar dat;SHT11_SCK=0;Delay();for(i=0;i8;i+)SHT11_SCK=1;Delay();dat=dat2.47V 当位6为1时表明VDD2.47V即电量不足 位0表明当前的测量分辨率 当位0为1时表明测量精度

6、:8位/湿度 12位温度 当位0为0时表明测量精度:12位湿度 14位温度 默认为0*/uchar SHT11_Read_Register(uchar command)uchar dat;SHT11_Start();SHT11_Sendbyte(command);SHT11_Answer();dat=SHT11_Receivebyte();SHT11_End();return(dat);/*函数名称:SHT11_Measure(uchar command,uint time);函数功能:设置SHT11检测功能,并返回相应的检测结果函数说明:command形参用于设定温度检测还是湿度检测,tim

7、e形参用于设定检测过程中的等待时间,以确定检测结果的位数11ms/55ms/210ms 分别对应8位/12位/14位 */uint SHT11_Measure(uchar command,uchar time)uint dat=0;uchar data_high,data_low;SHT11_Start();SHT11_Sendbyte(command);SHT11_Answer();Delay_Ms(time);SHT11_Test_Finish();data_high=SHT11_Receivebyte();MCU_Answer();data_low=SHT11_Receivebyte();SHT11_End();dat=(dat|data_high);dat=(dat100.0)flag_tempeture=1;else if(tempeture10.0)

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号