【Espruino】NO.14 温湿度传感器DHT11

http://blog.csdn.net/qwert1213131/article/details/35828873

本文属于个人理解,能力有限,纰漏在所难免,还望指正!

【小鱼有点电】

【Espruino中文社区】

在第10节演示过一个DS18B20温度传感器,这节引入可以同时检测温度和湿度的传感器DHT11,可检测温度范围0~50℃(精度为+/-1℃),湿度20~90%(精度为 +/-
4%)。DHT11有时不能识别触发脉冲,或偶尔不能读取正确的数据,因此使用校验和机制来验证所以接收到的数据。若连续20次无法得到响应或者校验失败,则返回{“temp”:-1,"rh":-1}。因此建议对返回的数据进行再次检查。

通讯方式跟DS18B20一致,采用单线模式,供电范围为3-5.5V,本板采用3.3V供电,通讯线连接到引脚C9,建议在通讯线长短于20米时使用5K上拉电阻,大于20米时请根据实际情况选用合适的上拉电阻。

对于DHT11已经有现成的模块文件可以直接调用,操作如下:

var dht = require("DHT11").connect(C11);
dht.read(function (a) {console.log("Temp:"+a.temp.toString()+" RH:"+a.rh.toString());});

在espruino web IDE右边区域输入以上代码执行后,在左侧会显示温湿度,当然也可以使用setInterval函数来周期获得温湿度。

我们还可以综合LCD那节的内容,将数值显示在LCD上,代码如下,视频地址:

SPI1.setup({ sck:B3, mosi:B5, order: "lsb", baud: 2000000 });
var g = require("MemoryLCD").connect(SPI1, B4/*SCS*/, C12/*EXTCOMIN*/,128/*width*/, 128/*height*/);
g.clear();//清除缓冲区

var dht = require("DHT11").connect(C9);
temp="";
rh="";

setInterval(function(){
  dht.read(function (a) {temp=a.temp;rh=a.rh;console.log(temp+""+rh);});
  if(temp!==-1){
    LED1.set(1);
    g.setFontVector(30);
    g.fillRect(0, 0, 128-1, 60-1);
    g.setColor(0,0,0);
    g.drawString("DHT11",4,12);
    g.setFontVector(16);
    g.setColor(1,1,1);
    g.drawString("Temp: "+temp, 30, 70);
    g.drawString("RH: "+rh, 30, 100);
    g.flip();
    g.clear();
  }
  else{
    LED1.reset();
  }

},1000);
save();

【Espruino】NO.14 温湿度传感器DHT11,布布扣,bubuko.com

时间: 2024-08-11 03:22:41

【Espruino】NO.14 温湿度传感器DHT11的相关文章

温湿度传感器DHT11

如果想使用 Arduino 开发板驱动 DHT11 来获取温湿度的时候建议使用第三方的库,这样可以加快程序的开发速度,而且不容易出错,下面的代码我已经安转了第三方的库了.详细的安装方法请参考极客先锋的博客:http://www.cnblogs.com/jikexianfeng/p/6290203.html 作者安装的为最低版本(1.0.0).这样为了更好的兼容. 1 /********************************* 2 代码功能:温湿度传感器DHT11 3 使用函数: 4 s

Arduino 温湿度传感器DHT11模块实验

网上有很多DHT11的测试,试了N个程序,总是不得要领,各种报错,最后终于找到一套可用的库. 首先是DHT11.h文件 #ifndef __DHT11_H__ #define __DHT11_H__ #include <Arduino.h> //DHT11 IO设置 #define DHT11_DQ 2 #define DHT11_DQ_0 digitalWrite(DHT11_DQ,LOW) #define DHT11_DQ_1 digitalWrite(DHT11_DQ,HIGH) //函

STM32读取温湿度传感器DHT11和DHT21(AM2301)系列问题

1.DHT11和DHT21传感器 这两种传感器都是奥松公司的产品,具体的传感器说明书在其官网上有(www.aosong.com). DHT11 数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器.它应用专用的数 字模块采集技术和温湿度传感技术,确保产品具有枀高的可靠性与卓越的长期稳定性.传感器包括一 个电容式感湿元件和一个 NTC 测温元件,并与一个高性能 8 位单片机相连接. DHT21(AM2301)湿敏电容数字温湿度模块是一款含有己校准数字信号输出的温湿度复合传感器.它应用专用

12-开发板接入小五物联实现远程控制(stm32采集温湿度传感器DHT11)

采集DHT11温湿度数据, 使用stm32f103zet6 的GPIOG11引脚读取SHT11数据,通过串口打印采集的温湿度 dht11.c文件: #include "dht11.h" #include "delay.h" //复位DHT11 void DHT11_Rst(void) { DHT11_IO_OUT(); //SET OUTPUT DHT11_DQ_OUT=0; //拉低DQ delay_ms(20); //拉低至少18ms DHT11_DQ_OUT=

[转载] 树莓派读取温湿度传感器DHT11

原文地址: http://blog.csdn.net/liang890319/article/details/8739683 硬件: 树莓派 2.0 DHT模块  接树莓派5V GND GPIO1 功能:读取传感器数据并打印出来 // //mydht11.c // #include <wiringPi.h> #include <stdio.h> #include <stdlib.h> typedef unsigned char uint8; typedef unsign

传感器系列之4.5温湿度传感器

4.5 温湿数据采集实验 一.实验目的 了解智能传感器DHT11的原理与应用 掌握智能传感器DHT11的编程与操作方法 理解微处理器与湿度传感器DHT11之间的通讯 二.实验材料 具有USB 串口通讯的PC 机1 台 ADS1.2 集成开发软件1 套 J-Link-ARM 仿真器及软件1 套 NXP LPC2378 实验节点板1 个 LCD 显示实验板1 个 温湿度传感器模块1个 三.实验原理 振动传感器实验环境由PC机(安装有Windows XP操作系统.ADS1.2集成开发环境和J-Link

张高兴的 Windows 10 IoT 开发笔记:DHT11 温湿度传感器

原文:张高兴的 Windows 10 IoT 开发笔记:DHT11 温湿度传感器 GitHub : https://github.com/ZhangGaoxing/windows-iot-demo/tree/master/DHT11Demo

Arduino和C51开发DHT11温湿度传感器

技术:51单片机.Arduino.DHT11.温湿度传感器.传感器 概述 学习单片机离不开对传感器的学习,本文主要介绍DHT11温湿度传感器的使用方法,同学也可以了解更多的传感器,这对你以后开发产品的思维有很大的帮助 详细 代码下载:http://www.demodashi.com/demo/14729.html 一.DHT11温度传感器 DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器,它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性和卓越的长期稳

DH11数字温湿度传感器

DH11数字温湿度传感器是一种集温度.湿度一体的复合传感器,它能把温度和湿度物理量通过温.湿度敏感元件和相应电路转化成方便计算机.PLC.智能仪表等数据采集设备直接读取的数字量.DHT11由电阻式感湿器件和NTC系数感温器件构成,具有校准数字信号输出功能,采用单总线串行接口,输出数据一共5个字节,分别表示:湿度整数位.湿度小数位,温度整数位.温度小数位及校验和,其中检验和为湿度与温度之和的最低八位数据. arduino引脚 模块引脚 D2 S 5V VCC GND GND 1 double Fa