资源简介
DH11库用于温湿度传感器,基于Arduino的温湿度传感器。

代码片段和文件信息
/
#include “DHT11.h“
//定义变量
unsigned char HUMI_Buffer_Int = 0;
unsigned char TEM_Buffer_Int = 0;
DHT11::DHT11(int pin)
{
DHT11_DQ = pin;
}
//****************************************************
//初始化DHT11
//****************************************************
void DHT11::DHT11_Init()
{
pinMode(DHT11_DQOUTPUT);
digitalWrite(DHT11_DQLOW); //拉低总线,发开始信号;
delay(30); //延时要大于 18ms,以便 DHT11 能检测到开始信号;
digitalWrite(DHT11_DQHIGH);
delayMicroseconds(40); //等待 DHT11 响应;
pinMode(DHT11_DQINPUT_PULLUP);
while(digitalRead(DHT11_DQ) == HIGH);
delayMicroseconds(80); //DHT11 发出响应,拉低总线 80us;
if(digitalRead(DHT11_DQ) == LOW);
delayMicroseconds(80); //DHT11 拉高总线 80us 后开始发送数据;
}
//****************************************************
//读一个字节DHT11数据
//****************************************************
unsigned char DHT11::DHT11_Read_Byte()
{
unsigned char idat = 0;
unsigned int j;
pinMode(DHT11_DQINPUT_PULLUP);
delayMicroseconds(2);
for( i=0; i<8; i++)
{
while(digitalRead(DHT11_DQ) == LOW); //等待 50us;
delayMicroseconds(40); //判断高电平的持续时间,以判定数据是‘0’还是‘1’;
if(digitalRead(DHT11_DQ) == HIGH)
dat |= (1<<(7-i)); //高位在前,低位在后;
while(digitalRead(DHT11_DQ) == HIGH); //数据‘1’,等待下一位的接收;
}
return dat;
}
//****************************************************
//读取温湿度值,存放在TEM_Buffer和HUMI_Buffer
//****************************************************
void DHT11::DHT11_Read()
{
DHT11_Init();
HUMI_Buffer_Int = DHT11_Read_Byte(); //读取湿度的整数值
DHT11_Read_Byte(); //读取湿度的小数值
TEM_Buffer_Int = DHT11_Read_Byte(); //读取温度的整数值
DHT11_Read_Byte(); //读取温度的小数值
DHT11_Read_Byte(); //读取校验和
delayMicroseconds(50); //DHT11拉低总线50us
pinMode(DHT11_DQOUTPUT);
digitalWrite(DHT11_DQHIGH); //释放总线
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 284 2017-07-27 09:34 DHT11.h
文件 135 2017-07-27 09:31 keywords.txt
文件 1428 2017-07-27 16:11 examples\DHT11_TEST\DHT11_TEST.ino
文件 2131 2017-07-27 09:34 DHT11.cpp
目录 0 2017-07-27 16:13 examples\DHT11_TEST
目录 0 2017-07-27 16:17 examples
----------- --------- ---------- ----- ----
3978 6
相关资源
- 基于STM32的温湿度检测系统实现
- 基于Arduino的智能环境监控系统设计
- 基于ZigBee的温湿度监控系统设计
- 基于Zigbee和GPRS的无线温湿度测量系统
- 详细讲解柔性电子传感器和构造
- 基于Bang-Bang控制的温湿度调节系统
- 单片机控制SHT75温湿度传感器测试
- 单片机通过ESP8266上传温湿度数据
- 基于zigbee温湿度传输及控制带wifiAPP查
- stm32单片机IIC通讯采集sht20温湿度传感
- 基于STM32F103ZE的STH3x温湿度传感器代码
- DHT11温湿度传感器项目代码.rar
- 基于蓝牙的室内温湿度的检测.pdf
- hdc1080.pdf
- 基于STM32的DHT11的温湿度采集GSM报警系
- 基于单片机的温湿度检测及远程控制
- SHT30温湿度传感器程序
- 基于单片机的温湿度控制仪的设计
- 基于单片机的大棚温湿度光强监测毕
- 基于LPC1768的远程数据采集
- 智能家居 环境温湿度采集系统
- STM32温湿度传感器DHT11代码,通过串口
- DTH11温湿度显示在IIC_OLED上,好用,自
- STM32-SHT20温湿度传感器驱动程序
- STM32F103C8T6-DHT11温湿度传感器.rar
- 基于单片机温湿度监控系统的设计
- 基于FPGA的DHT11的温湿度数据采集
- onenet_http_上传温湿度
- STM32F103--SHT30温湿度传感器
- 基于STC89C52的温湿度检测
评论
共有 条评论