汽车室外温度传感器英文缩写(26dht11 温湿度传感器 openwrt入门经典教程)

Posted

篇首语:今日长缨在手,何时缚住苍龙。本文由小常识网(cha138.com)小编为大家整理,主要介绍了汽车室外温度传感器英文缩写(26dht11 温湿度传感器 openwrt入门经典教程)相关的知识,希望对你有一定的参考价值。

汽车室外温度传感器英文缩写(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. 实验结果

相关参考

温湿度传感器应用场景(26dht11 温湿度传感器 openwrt入门经典教程)

dht11温湿度传感器本实验目标掌握dht11的驱动程序原理掌握使用dht11温湿度传感器1.硬件原理下图是我们温度传感器的接入引脚,3.3V供电,io口接P13的GP0(GPIO0的简称)。DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度...

湿度传感器DHT11(树莓派 DHT11 温湿度传感器读取 C 语言版)

树莓派DHT11温湿度传感器读取C语言版2020年5月19日Spoony未分类0我们之前介绍过三种读取DHT11温湿度传感器数值的方法:用系统功能直读、用Adafruit的库读取、用Python编程读取。尽管方法很多,但是在不同的树莓派上、使用不同的生...

湿度传感器DHT11(树莓派 DHT11 温湿度传感器读取 C 语言版)

树莓派DHT11温湿度传感器读取C语言版2020年5月19日Spoony未分类0我们之前介绍过三种读取DHT11温湿度传感器数值的方法:用系统功能直读、用Adafruit的库读取、用Python编程读取。尽管方法很多,但是在不同的树莓派上、使用不同的生...

汽车水温传感器英文缩写(85-300A-8C传感器在电喷系统的应用)

大家好,我是【广州工控传感★科技】85-300A-8C传感器事业部,张工。电喷摩托车上的电控系统由85-300A-8C压力传感器、节气门位置传感器、发动机温度传感器、电控单元ECU(简称ECU,下同)、点火线圈、喷油器、氧传感器和倾角...

热电偶型号对照表(Arduino-5种温度传感器使用详解NTC, LM35, DS18B20, DHT11,热电偶)

...来找出其中的规律。下面我们将详细讲解几种常用的温度传感器,并利用Arduino来实现温度的测量,包括热敏电阻、LM35、DS18B20、DHT11和热电偶。1.热敏电阻1.1热敏电阻简介热敏电阻是电阻值随温度变化的

热电偶型号对照表(Arduino-5种温度传感器使用详解NTC, LM35, DS18B20, DHT11,热电偶)

...来找出其中的规律。下面我们将详细讲解几种常用的温度传感器,并利用Arduino来实现温度的测量,包括热敏电阻、LM35、DS18B20、DHT11和热电偶。1.热敏电阻1.1热敏电阻简介热敏电阻是电阻值随温度变化的

湿度测试仪精度(高精度DHT22温湿度传感器 SEN0137 标准版)

DHT22数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器。它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性与卓越的长期稳定性。传感器包括一个电容式感湿元件和一个NTC测温元...

湿度测试仪精度(高精度DHT22温湿度传感器 SEN0137 标准版)

DHT22数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器。它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性与卓越的长期稳定性。传感器包括一个电容式感湿元件和一个NTC测温元...

汽车传感器名称英文缩写(压力传感器技术大全)

...、引言能够测量压力并提供远程电信号的设备统称为压力传感器。压力传感器是压力检测仪表的重要组成部分,其结构形式多种多样。常见类型有应变式压力传感器、压阻式压力传感器、电容式压力传感器、压电式压力传感器和...

温湿度显示(袖珍版温湿度检测装置外加led显示,让简易也变得高大上,,,)

视频加载中...Nodemcu上接入dht11温湿度传感器,再加上u8g2图形显示器,让温度展示在你眼前,,,,