dht11温湿度传感器介绍 DHT11温湿度传感器介绍
DHT11温湿度传感器介绍
DHT11是一款有已校准数字信号输出的温湿度传感器。 其精度湿度+-5%RH, 温度+-2℃,量程湿度20-90%RH, 温度0~50℃。
DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器,它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性和卓越的长期稳定性。传感器包括一个电阻式感湿元件和一个NTC测温元件,并与一个高性能8位单片机相连接。因此该产品具有品质卓越、超快响应、抗干扰能力强、性价比极高等优点。每个DHT11传感器都在极为精确的湿度校验室中进行校准。校准系数以程序的形式存在OTP内存中,传感器内部在检测信号的处理过程中要调用这些校准系数。单线制串行接口,使系统集成变得简易快捷。超小的体积、极低的功耗,使其成为该类应用中,在苛刻应用场合的最佳选择。产品为4针单排引脚封装,连接方便。
一、折叠应用领域
暖通空调 测试及检测设备汽车 数据记录器消费品 自动控制气象站 家电湿度调节器 医疗除湿器二、折叠特性
相对湿度和温度测量全部校准,数字输出卓越的长期稳定性无需额外部件超长的信号传输距离超低能耗4引脚安装26dht11 温湿度传感器 openwrt入门经典教程
dht11 温湿度传感器
本实验目标
掌握 dht11 的驱动程序原理
掌握使用 dht11 温湿度传感器
1. 硬件原理
下图是我们温度传感器的接入引脚, 3.3V 供电, io 口接 P13 的 GP0( GPIO0 的简称 )。
DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器,它应
用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性和卓越的长期稳 定性。传感器包括一个电阻式感湿元件和一个NTC测温元件,并与一个高性能 8 位单片机 相连接。因此该产品具有品质卓越、超快响应、抗干扰能力强、性价比极高等优点。每个 DHT11 传感器都在极为精确的湿度校验室中进行校准。校准系数以程序的形式存在OTP内 存中,传感器内部在检测型号的处理过程中要调用这些校准系数。单线制串行接口,使系统 集成变得简易快捷。超小的体积、极低的功耗,使其成为该类应用中,在苛刻应用场合的最 佳选择。
2. dht11 相关时序
初始化(复位)时序图:
1) 控制器首先至少拉低 18ms ,然后拉高 20-40us 后等待 DHT11 的应答
2) 当 DHT11 检测到信号后,首先将总线拉低约 80us 然后在拉高 80us 作为应答信号。
读取数据时序图:
其中,表示 0 的时序如下:
表示 1 的时序如下:
1) DHT11 以低电平应答主机,然后拉高总线准备输出。输出 0 信号和 1 信号都是以低电 平开始高电平结束。
2) DHT11 输出 0、 1 信号的低电平时间相同,而高电平的时间不同,输出 0 信号时高电平 约 26-28us,而当输出 1 信号时高电平约为 70us。
2. 驱动程序 (需要详细注释的话参考 cc2540/cc2530 的 dht11 程序)
关于字符设备驱动程序的使用,我们可以参照点亮 led 灯的那个实验,这里只给出跟 dht11 密切相关的驱动程序,详细的程序请查看我们的驱动文件!
//从 dht11 中读取一个字节
static unsigned char read_byte(void)
{
unsigned char r_val = 0;
unsigned char t_count = 0; //计时器,防止超时;
unsigned char i;
for(i = 0 ; i < 8 ; i++)
{
t_count = 0;
while(!DHT11_STA)
{
udelay(1);
t_count++; if(t_count>250)
{
printk("read_byte error1\n");
return 100;
}
}
t_count = 0;
udelay(32);
if(DHT11_STA == 1)
{
r_val <<= 1; r_val |= 1;
}
else
{
r_val <<= 1; continue;
}
while( DHT11_STA == 1 )
{
udelay(2);
t_count++; if(t_count>250)
{
printk("read_byte error2\n");
return 100;
}
}
}
return r_val;
}
//从 dht11 中读出数据
static unsigned int read_dht11(void)
{
unsigned char t_count = 0; //计时器;
unsigned int dht11 = 0;
unsigned char h_i = 0 , h_f = 0; unsigned char t_i = 0 , t_f = 0;
unsigned char check_sum = 0;
DHT11_OUT;
DHT11_L;
mdelay(30); //>18ms;
DHT11_H;
udelay(30);
DHT11_IN;
while(DHT11_STA == 1)
{
udelay(1); t_count++;
if(t_count > 50)
{
printk("device error: dht11!\n");
return 0;
}
}
t_count = 0;
while(!DHT11_STA)
{
udelay(1); t_count++;
if(t_count > 250)
{
printk("read_dht11 error1\n");
return 0;
}
}
t_count = 0;
udelay(50);
while(DHT11_STA)
{
udelay(1);
t_count++; if(t_count > 250)
{
printk("read_dht11 error2\n");
return 0;
}
}
h_i = read_byte();
h_f = read_byte();
t_i = read_byte();
t_f = read_byte(); check_sum = read_byte();
if(check_sum == (h_i+h_f+t_i+t_f) || (h_i!=100 && t_i != 100))
{
dht11 = t_i;
dht11 <<= 8; //高 8 位用来放温度值;
dht11 += h_i; //低 8 位存放湿度值;
}
else
{
dht11 = 0;
printk("read_dht11 error3\n");
}
return dht11;
}
3. 应用程序
int main(int argc, char **argv)
{
int fd;
unsigned int dht11 = 0; unsigned int humi,temp;
//打开温度传感器驱动模块
fd = open("/dev/dht11", O_RDWR | O_NONBLOCK);
if (fd < 0)
{
printf("can't open /dev/dht11\n");
return -1;
}
read(fd, &dht11, sizeof(dht11));
temp = dht11>>8; //取出温度值;
humi = dht11 &0x000000ff; //取出湿度值; printf("the current temperature is: %d\n",temp); printf("the current humidity is: %d\n",humi);
close(fd);
return 0;
}
4. 实验结果
相关问答
dh 11温湿度传感器介绍 ?DH11数字温湿度传感器是一种集温度、湿度一体的复合传感器,它能把温度和湿度物理量通过温、湿度敏感元件和相应电路转化成方便计算机、PLC、智能仪表等数据采...
dht11温湿度传感器 应该安装在哪里?家里有个大宝宝还不到一岁...[回答]小孩子对于环境的变化比较敏感,有时候大人是捕捉不到的,像青岛这种天气夏天热冬天冷变化很大,尤其是靠近海边现在五月份的时候还是很冷,家里湿度也...
提高电子 温湿度传感器湿度 方法?电子温湿度传感器的湿度测量精度和响应速度可以通过以下几种方式来提高:1.优化传感器工作环境:保持传感器所处环境的稳定,防止温度、气压等因素对测量结果的...
dht11 为什么要接上拉电阻?上拉电阻,当没数据时,该信号线被拉成高电平上拉电阻,当没数据时,该信号线被拉成高电平
dht 22能不能替代 dht11 ?1.能够替代2.因为dht22和dht11都是温湿度传感器,都可以测量环境的温度和湿度。但是dht22相对于dht11来说具有更高的精度和更广的测量范围,所以在一些对温湿...
中央空调 温湿度传感器 的作用是什么_住范儿家装官网常用温度传感器和温度变送器按变换原理,温度传感器分为膨胀式、压力式、热电阻式和热电偶式等数种。建筑物智能化主要应用前三种(1).膨胀式温度传...
sht1! 温湿度传感器 工作原理?温湿度传感器的工作原理:利用探头作为测温元件,将温度和湿度信号采集出来,经过稳压滤波、运算放大、非线性校正、V/I转换、恒流及反向保护等电路处理后,转换...
kill4sth 11温湿度传感器 ?SHT11的湿度检测运用电容式结构,并采用具有不同保护的“微型结构”检测电极系统与聚合物覆盖层来组成传感器芯片的电容,除保持电容式湿敏器件的原有特性外,还...
温湿度传感器 怎么用?①.选择温湿度传感器的测量范围与测量重量、温度的方法一致,使用湿度传感器步要确定测量它的范围。除了气象以及科研部门,进行温湿度测控的通常情况下不需要...
温湿度传感器 工作原理是什么?_土巴兔装修问答温度:度量物体冷热的物理量,是国际单位制中7个基本物理量之一。在生产和科学研究中,许多物理现象和化学过程都是在一定的温度下进行的人们的生活也...