DHT11实验

文章目录


在这里插入图片描述

  • DS18B20 只能检测温度 右边这几个 都能

在这里插入图片描述

1

1.1

在这里插入图片描述

  • 数字信号输出 指 0/1
  • 使用单总线通信 1个IO口就能获取温湿度 T/H
  • 要有 模数转化(内部还有个8位单片机)
  • 电容感湿元件 白色的 还有个ic NTC测温 可能在ic内部 使用单片机内部测温 精确度不高
  • 可用作智能家居 如果既想测湿度 又想 高精度温度 可以考虑 DHT22(贵两倍?) 可以达到DS18B20 的精度

1.2

在这里插入图片描述

  • 这两共用插槽(简单理解 应该是在原子的板子里面)
  • 这么看好简单 连接
  • DS18B20没用 GND引脚 DHT11 用了 4个引脚

在这里插入图片描述

  • 要想移植 就改一下 宏定义 估计就行
  • 这来说 时序代码 很重要

2

在这里插入图片描述

  • 起始信号 像DS18B20发出复位脉冲
  • 响应信号 像DS18B20应答脉冲(这里主机就接收就好了)
  • 这里没要结束信号

在这里插入图片描述
在这里插入图片描述

  • 图里这些典型值 选自 电容式 DHT11的pdf (旧版教程里 是电阻式)

在这里插入图片描述

  • 主机又不能控制从机 输出 只能检测
  • 响应信号里第一个while 是看 拉低没 第二个是看 拉高没 (有一个没做到就 rval=1 返回失败)
  • 起始信号 是实打实 影响数据线了 主动的

读数据

在这里插入图片描述
在这里插入图片描述

  • 拉高那部分 根据时间不同代表 0/1?

在这里插入图片描述

  • 要知道这对应哪个点/部分
  • 这是 读1bit位的
  • 100那个不必理会 && 前面有数据线卡着呢

在这里插入图片描述

  • 高位数据 先输出 所以左移
  • data不能 是 =
  • 获取1字节

3

在这里插入图片描述

  • 结束信号 不要

4

在这里插入图片描述
在这里插入图片描述

  • 解释为啥每隔 2s (好像这就是每隔两S 就是当前的 可能和运行时间有关)

实战

在这里插入图片描述

  • 宏定义
  • 输出 高低电平
  • 读取

在这里插入图片描述

  • dht11.c里 大部分相同 就这个和 初始化最后不一样
  • 这没看check的返回值吧
  • 这返回值 表示校验成功

在这里插入图片描述

  • 因为打印 所以包含串口 头文件

在这里插入图片描述

  • main.c 这么写的

先学LCD

相关推荐

  1. DHT11温湿度传感器要点和难点实际应用

    2024-04-22 12:18:02       12 阅读
  2. 51单片机——DHT11模块

    2024-04-22 12:18:02       35 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-22 12:18:02       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-22 12:18:02       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-22 12:18:02       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-22 12:18:02       20 阅读

热门阅读

  1. [leetcode] 946. 验证栈序列

    2024-04-22 12:18:02       14 阅读
  2. python scrapy 爬取豆瓣电影top250教程2

    2024-04-22 12:18:02       12 阅读
  3. 流量控制和差错控制

    2024-04-22 12:18:02       10 阅读
  4. 动规之377. 组合总和 Ⅳ

    2024-04-22 12:18:02       9 阅读
  5. 买卖股票的最佳时机

    2024-04-22 12:18:02       10 阅读
  6. docker入门

    2024-04-22 12:18:02       13 阅读
  7. UTC和RTC 以及本机时间

    2024-04-22 12:18:02       12 阅读