当前位置: 首页 > wzjs >正文

cpa网站建设教程湖南网站开发公司

cpa网站建设教程,湖南网站开发公司,西安家电商城网站建设,二手手机回收网站开发基于树莓派与DHT11的温湿度监测实验(使用wiringPi驱动) 引言 温湿度检测是物联网和嵌入式开发中常见的应用场景。本文将介绍如何利用树莓派(Raspberry Pi)和DHT11传感器搭建一个简单的温湿度监测系统,通过C语言和wir…

基于树莓派与DHT11的温湿度监测实验(使用wiringPi驱动)

引言

温湿度检测是物联网和嵌入式开发中常见的应用场景。本文将介绍如何利用树莓派(Raspberry Pi)和DHT11传感器搭建一个简单的温湿度监测系统,通过C语言和wiringPi库实现数据采集与处理。本实验成本低廉且代码开源,适合嵌入式开发初学者实践。


硬件准备

所需材料

  1. 树莓派(任意型号,需安装Raspbian系统)
  2. DHT11温湿度传感器模块
  3. 杜邦线若干
  4. 10kΩ电阻(部分模块已集成)

接线说明

  • VCC → 3.3V(物理引脚1)
  • DATA → GPIO0(wiringPi编号,对应物理引脚11)
  • GND → GND(物理引脚9)
    在这里插入图片描述

注意:DHT11为单总线协议,DATA引脚需上拉10kΩ电阻至VCC(已集成电阻的模块无需额外连接)


软件配置

安装wiringPi库

# 若未预装,可通过以下命令安装(注意:官方仓库已停止维护,建议从GitHub获取)
git clone https://github.com/WiringPi/WiringPi
cd WiringPi
./build

验证安装

gpio -v

代码实现

核心代码(dht11.c)

//
//
//mydht11.c
//
#include <wiringPi.h>
#include <stdio.h>
#include <stdlib.h>typedef unsigned char uint8;
typedef unsigned int  uint16;
typedef unsigned long uint32;#define HIGH_TIME 32int pinNumber =1;  //use gpio1 to read data
uint32 databuf;uint8 readSensorData(void)
{uint8 crc; uint8 i;pinMode(pinNumber,OUTPUT); // set mode to outputdigitalWrite(pinNumber, 0); // output a high level delay(25);digitalWrite(pinNumber, 1); // output a low level pinMode(pinNumber, INPUT); // set mode to inputpullUpDnControl(pinNumber,PUD_UP);delayMicroseconds(27);if(digitalRead(pinNumber)==0) //SENSOR ANS{while(!digitalRead(pinNumber)); //wait to highfor(i=0;i<32;i++){while(digitalRead(pinNumber)); //data clock startwhile(!digitalRead(pinNumber)); //data startdelayMicroseconds(HIGH_TIME);databuf*=2;if(digitalRead(pinNumber)==1) //1{databuf++;}}for(i=0;i<8;i++){while(digitalRead(pinNumber)); //data clock startwhile(!digitalRead(pinNumber)); //data startdelayMicroseconds(HIGH_TIME);crc*=2;  if(digitalRead(pinNumber)==1) //1{crc++;}}return 1;}else{return 0;}
}int main (void)
{printf("Use GPIO1 to read data!\n");if (-1 == wiringPiSetup()) {printf("Setup wiringPi failed!");return 1;}pinMode(pinNumber, OUTPUT); // set mode to outputdigitalWrite(pinNumber, 1); // output a high level printf("Enter OS-------\n");while(1) {pinMode(pinNumber,OUTPUT); // set mode to outputdigitalWrite(pinNumber, 1); // output a high level delay(3000);if(readSensorData()){printf("Congratulations ! Sensor data read ok!\n");printf("RH:%d.%d\n",(databuf>>24)&0xff,(databuf>>16)&0xff); printf("TMP:%d.%d\n",(databuf>>8)&0xff,databuf&0xff);databuf=0;}else{printf("Sorry! Sensor dosent ans!\n");databuf=0;}}return 0;
}
//

编译与运行

gcc -o dht11 dht11.c -lwiringPi
sudo ./dht11

实验结果

正常运行时将输出:

湿度: 45.0 %
温度: 25.0 ℃

在这里插入图片描述


常见问题排查

  1. 返回-1或错误值

    • 检查接线是否松动
    • 确保使用sudo权限运行
    • 验证上拉电阻连接
  2. 精度问题:DHT11温度误差±2℃,湿度误差±5%


扩展应用

  • 结合LCD模块显示实时数据
  • 通过HTTP协议上传至物联网平台
  • 设置温湿度报警阈值

结语

本实验演示了树莓派与DHT11传感器的典型应用。虽然DHT11精度有限,但其低成本易用性使其成为入门级项目的理想选择。后续可尝试升级到DHT22传感器或使用Python版本实现更复杂的功能。

参考资料:DHT11官方数据手册


希望这篇博客能帮助您快速上手温湿度监测项目!如有疑问欢迎在评论区留言讨论。


文章转载自:

http://Mxq3qxLT.pngph.cn
http://Eemegdzr.pngph.cn
http://C0j1RQRH.pngph.cn
http://7zsjAWQs.pngph.cn
http://TAixAl7y.pngph.cn
http://TAVFA26q.pngph.cn
http://W6cuR6YV.pngph.cn
http://DwUXhUSa.pngph.cn
http://vLYRlLVW.pngph.cn
http://W9PDTWpB.pngph.cn
http://6xvwGMS2.pngph.cn
http://JHwsZ4PY.pngph.cn
http://WAJsp68K.pngph.cn
http://HEPlc4xB.pngph.cn
http://UXLGCL7M.pngph.cn
http://bLdZqB5b.pngph.cn
http://9JBO5xZ5.pngph.cn
http://j0SYP8wT.pngph.cn
http://ACCI2ido.pngph.cn
http://Yft05NtA.pngph.cn
http://ifz0tlwA.pngph.cn
http://Lege4oAx.pngph.cn
http://m0FEPrqw.pngph.cn
http://7YAY9Zi3.pngph.cn
http://2WFzEpIe.pngph.cn
http://qjNYQWRM.pngph.cn
http://gWYO6fIS.pngph.cn
http://zQAQYyzg.pngph.cn
http://wnoyU8VL.pngph.cn
http://exX39rtr.pngph.cn
http://www.dtcms.com/wzjs/751630.html

相关文章:

  • 电脑建设网站在互联网访问南充做网站公司
  • 旅游网站建设的目标是什么青岛网站建设及app
  • 太原企业网站制作公司wordpress vr主题公园
  • 初二做网站的首页模板wordpress太卡
  • 网站设计欣赏中国建网站推广效果怎么样
  • 网站建设 新闻怎么样可以做网站充值代理
  • 网站建设公司销售技巧ajax+jsp网站开发从入门到精通
  • php 企业网站开发实例seo推广是什么意怿
  • 河北建设工程信息网站织梦做的网站页面打不开
  • dedecms 网站导航高级网站开发工程师证
  • 亿恩 网站备案长春怎么注册网站平台
  • 上海市建设协会网站模板网站会影响网站优化吗
  • 淘客网站如何做能加快收录wordpress商品管理
  • 网站注册地查询网店怎么开
  • 上海网站建设索王道下拉北京最新消息今天新闻
  • html网站服务器搭建网页设计html教程
  • 建设品牌网站公司有做ppt的兼职网站吗
  • 荥阳网页设计广州seo顾问服务
  • 东莞seo网站建设公司网站改版换了域名
  • 100m网站空间服务费怎么用别人网站做模板
  • 网站建设胶州天河区发布
  • 医疗器械为什么做网站重庆网上房地产网站
  • 自己的电脑做网站会收录吗网站建设的标准化建设是什么
  • wordpress无法发布文章502百度移动端关键词优化
  • 做网站感想学校开发网站公司
  • 做电影网站要很大的主机空间吗唯品会信息科技有限公司
  • 广州安全教育平台登录杭州网络排名优化
  • 南通网站建设公司哪家好沧州市做网站
  • 网页制作与网站建设知识框架图佛山网站seo优化排名公司
  • 石景山网站建设我想找工作没学历