• 大小: 51KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-08-25
  • 语言: 其他
  • 标签: HTU21D  温湿度  

资源简介

使用51系列单片机 驱动传感器HTU21D 显示温度 湿度在液晶LCD1602显示 按键设置上下限报警 设置的数值掉电保存

资源截图

代码片段和文件信息

#include
#include 
#include “IIC.h“
#include “HTU.h“
unsigned char flag;
/*================================================================
【名 称】void Delay(unsigned int t)
【功 能】延时长
================================================================*/
void Delay(unsigned int t)
{
unsigned char i;
while(t--)
{
for(i = 0;i < 200;i++);
}    
}

/*================================================================
【名 称】void SHT21Init(void)
【功 能】SHT21初始化函数
================================================================*/
void HTU21DInit(void)
{
I2CInit(); //I2C初始化
I2CStart(); //启动I2C
I2CWriteByte(HTU21DADDR&0xfe); //写SHT21的I2C地址
I2CWriteByte(0xfe);
I2CStop(); //停止I2C
Delay(600); //短延时
}


/*================================================================
【名 称】long Sht21Work(unsigned char order)
【功 能】Sht21测量温湿度
================================================================*/
int HTU21DWork(unsigned char order)
{
float temp = 0TH = 0;
unsigned char MSBLSB;
unsigned int shiduwendu;

I2CStart();
if(I2CWriteByte(HTU21DADDR & 0xfe) == ACK)
{
if(I2CWriteByte(order) == ACK)
{
do
{
Delay(30);
I2CStart();
}
while(I2CWriteByte(HTU21DADDR | 0x01) == NACK);
MSB = I2CReadByte(ACK);
Delay(30);
LSB = I2CReadByte(ACK);
I2CReadByte(NACK);
I2CStop();
LSB &= 0xfc;
temp = MSB*256+LSB;
if (order == 0xf3)//触发开启温度检测
{
TH=(175.72)*temp/65536-46.85;//温度:T= -46.85 + 175.72 * ST/2^16
wendu =(unsigned int)(fabs(TH)*100);
if(TH >= 0)
flag = 0;
else
flag = 1;
return wendu;
}
else
{
TH = (temp*125)/65536-6;
shidu = (unsigned int)(fabs(TH)*100);//湿度: RH%= -6 + 125 * SRH/2^16
return shidu;
}
}
}
return 0;
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       1941  2017-03-02 09:41  HTU21d程序 成功\eeprom.h

     文件       1894  2017-09-06 10:36  HTU21d程序 成功\HTU.c

     文件        148  2015-11-23 19:00  HTU21d程序 成功\HTU.h

     文件      26425  2017-09-13 15:01  HTU21d程序 成功\HTU21D

     文件      10268  2017-09-13 15:01  HTU21d程序 成功\HTU21D.hex

     文件         58  2017-09-13 15:01  HTU21d程序 成功\HTU21D.lnp

     文件      33713  2017-09-13 15:01  HTU21d程序 成功\HTU21D.M51

     文件        198  2017-09-13 15:59  HTU21d程序 成功\HTU21D.plg

    .......     59012  2017-09-13 15:57  HTU21d程序 成功\HTU21D.uvopt

    .......     13400  2017-09-06 16:37  HTU21d程序 成功\HTU21D.uvproj

    .......     58969  2017-09-06 16:37  HTU21d程序 成功\HTU21D_uvopt.bak

    .......         0  2017-09-06 10:18  HTU21d程序 成功\HTU21D_uvproj.bak

     文件       3001  2017-09-06 10:35  HTU21d程序 成功\IIC.c

     文件        324  2017-09-06 10:52  HTU21d程序 成功\IIC.h

     文件       2873  2017-09-06 11:34  HTU21d程序 成功\lcd.c

     文件        552  2017-09-06 10:25  HTU21d程序 成功\lcd.h

     文件       4681  2017-09-06 12:14  HTU21d程序 成功\main.c

     文件      12103  2017-09-13 15:01  HTU21d程序 成功\main.LST

     文件      29352  2017-09-13 15:01  HTU21d程序 成功\main.OBJ

     文件       6376  2009-05-07 14:37  HTU21d程序 成功\STARTUP.A51

     文件      14048  2017-09-13 15:01  HTU21d程序 成功\STARTUP.LST

     文件        749  2017-09-13 15:01  HTU21d程序 成功\STARTUP.OBJ

     目录          0  2017-09-13 15:59  HTU21d程序 成功

----------- ---------  ---------- -----  ----

               280085                    23


评论

共有 条评论