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. 实验结果
相关问答
dht温湿度传感器 装上显示不准?具体处理我不知道,但原理是:传感器上应该有一个调整的电位器,用标准温度计对照调整应该就可以了。或者文该传感器是的信号传输制式是频率的型的,用频率计对...
dht 22和 dht11 优劣?dht11数字温湿度传感器,是一款含有已校准数字信号输出的温湿度复合传感器。dht22专用的数字模块采集技术和温湿度传感技术,具有很高的可靠性与稳定性。dht11...
朋友们 谁了解:济宁中空玻璃 温湿度 控制设备生产周期, 温湿度 ...[回答]我用的STC89系列的单片机和DHT11温湿度传感器,也碰到这个问题。现在准备这样解决:首先,显示不用液晶什么的,一方面占用比较多的I/O,另一方面毕竟单...
湿度传感器 探头可以放进水里吗?湿度传感器探头可以放进水里。湿度传感器测试的湿度是一个相对值。把湿度传感器放进水里,在水里测湿度这个实验我没有试过,也实在想不通这样的测试有什么意...
老铁们,请教一下:施秉地磅 传感器 参数,地磅 传感器 外观好不好看?[回答]首先这种SHT10传感器焊接是个问题,焊接后需要进行12小时的水合时间,影响的因素也有很多,建议直接用DHT90温湿度传感器,是SHT10插针式的封装不会出现...
求教!全自动温湿表怎么接线,温湿表做得最好的有哪几家??[回答]东崎电气温控器主要应用于工业自动化各个领域,以及电力、通讯、轨道交通等智能监控领域东崎电气已涵盖电力仪表,工控仪表,智能电能表,变送器,传感器...
光照 传感器 什么品牌好?[回答]温湿度传感器:作物的生长与温度和湿度有密切关系,塑料大棚的控制参数中,温度与湿度检测、控制是主要参数之一。光照度传感器是采用的热点效应的原...
哪位前辈有谁知道!日照大叶茶有哪些品牌,大叶茶性能如何??[回答]嫩绿隐翠,香气清高带熟栗子香,滋味浓厚耐泡,叶底细嫩绿亮。信阳毛尖产区称鲜叶为茶草、茶青、青叶、生叶等。鲜叶质量优劣与成品茶质量关系...信阳...