电子发烧友App

硬声App

0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示
电子发烧友网>电子资料下载>电子资料>Arduino BME280环境传感器项目

Arduino BME280环境传感器项目

2022-12-21 | zip | 0.06 MB | 次下载 | 免费

资料介绍

描述

在开始这个项目之前...

pYYBAGOhJ4-AcSvHAAAz43w3OD4334.png

1 / 2

另一个适合初学者的简单项目,这个 Arduino BME280 环境传感器项目绝对简单易懂,传感器能够计算其周围的温度、湿度、压力和高度。为了使用这个传感器,DFRobot 提供了一个特殊的库,几行简单的串行通信函数就可以很好地完成这项工作。由于其广泛的工作温度范围和测量能力,您可以将此传感器用于各种应用,例如最恶劣环境中的气象站或时钟BoSCHMEMS 传感器确实让像我们这样的业余爱好者的事情变得更容易,我们可以利用板载接口 (i2c/SPI) 和微控制器从中提取数据。该项目需要以下组件:

1 DFRobot BME280 环境传感器

1 重力 4 针 i2c/UART 传感器线

4 根跳线(公对公)

1个Arduino(本例中使用的是Seeeduino v4.2)

1 根 USB 数据线(取决于 Arduino)

赞助商链接:

UTSource.net评论

这是一个值得信赖的电子元器件订购网站,价格便宜,质量优良。

安装电路

pYYBAGOhJ5OAT397AACq0zKX37k841.png

1 / 2

首先,在开始连接之前,请移除 Arduino 的所有外部设备或电源,因为连接电线时可能存在短路风险。我们将为此项目使用传感器提供的 i2c 接口,因此请将重力 4 针传感器线夹到 BME280 传感器的端口,如上图所示。然后,使用一根跨接线将 Gravity 电缆的红线连接到 Arduino 上的 5v(+5 伏)引脚。之后,将另一根跳线从 Gravity 电缆的黑线连接到 Arduino 的 GND 引脚。对于 i2c 连接,将一根跳线从 Gravity 电缆的蓝线连接到 A5(模拟引脚 5)以进行 SCL(串行时钟)连接。最后,使用跳线将 Gravity 电缆的绿线连接到 A4(模拟引脚 4)以实现 SDA(串行数据)i2c 连接。您现在应该完成硬件连接!

关于代码

有了 DFRobot BME280 传感器库,这个库使得从传感器读取数据变得更加容易,同时在这段代码中使用简单的命令。使用了各种变量、  无效 部分和串行命令,让我们开始演练吧。首先,在两条起始行中,我们包括用于从传感器读取数据的“DFRobot BME280”传感器库和用于 i2c 通信的“Wire”库。然后,我们使用 typedef函数修改另一个数据类型的名称。 我们通过创建新名称  BME来缩短DFRobot_BME280_IIC的原始数据类型名称 . 此数据类型随后可用于触发其他功能。接下来,我们选择用于 i2c 通信的 TwoWire 外设并设置传感器地址  0x77以仅与我们的 BME280 传感器通信。在下一行中,我们确定了一个已知常量 SEA_LEVEL_PRESSURE,它被设置为 1015.0f。让我们继续第一个void语句  void printLastOperateStatus,它用于打印出传感器的最后状态。我们引入了一个 switch case命令结构,它通过根据指定的条件执行多个命令来控制程序的流程。在这种 情况下,我们设置 BME 成为将要改变的变量,根据这个变量的状态,将执行各种命令。第一个 案例 命令表示,如果传感器的状态正常,“一切正常”将打印到串行监视器中。这与if语句非常相似 。接下来,这个 案例命令说如果有错误,将“未知错误”打印到串行监视器中。以下 案例命令现在声明,如果未连接 BME280 传感器,它将在串行监视器中打印出“设备未连接”,最后,如果传感器参数存在测量错误,它将在串行监视器中打印“参数错误” .但是,在下一行中,它表示如果系统状态与这些case命令中的任何一个都不匹配 ,它将向串行监视器打印 默认的“未知状态”。这就是 案例命令结构部分。现在,对于 无效设置阶段,我们首先将串行通信的波特率设置为 115200 波特。之后,我们使用BME.reset()清除 BME280 传感器的预先存在的数据 ,然后我们将“bme read data test”打印到串行监视器以启动整个程序。我们现在引入一个 while语句,这样两件事可以同时发生。基本上,这个 while语句表示当 BME 传感器开始并且没有 OK 状态(如 case命令结构中所述)时,向串行监视器打印出“bme begin failed”。随后打印出从 case 命令引用到串行监视器的最后一个操作状态消息。为了结束这个 while 语句,我们暂停 2 秒。但是 ,如果此时 语句被避免(没有错误),我们将向串行监视器打印“bme begin success”并暂停 100 毫秒,然后继续。继续, 空循环 部分非常容易理解,第一行声明了一个 名为 temp 的浮点 数据类型,该数据类型用于存储来自传感器的所有温度读数。第二行声明了一个 uint32_t 数据类型,它存储来自传感器的压力读数。第三行声明了另一个 名为 alti 的浮点 数据类型,用于存储来自传感器的所有高度读数,最后是 浮点 数据类型 humi 存储来自传感器的所有湿度读数。然后,我们逐行打印所有数据读数,并为打印的每个数据部分设置分隔符。您可以在顶部的图片中看到它的外观。最后一行然后暂停 1 秒,以便每秒将数据打印到串行监视器。这就是代码!

下载该资料的人也在下载 下载该资料的人还在阅读
更多 >

评论

查看更多

下载排行

本周

  1. 1山景DSP芯片AP8248A2数据手册
  2. 1.06 MB  |  532次下载  |  免费
  3. 2RK3399完整板原理图(支持平板,盒子VR)
  4. 3.28 MB  |  339次下载  |  免费
  5. 3TC358743XBG评估板参考手册
  6. 1.36 MB  |  330次下载  |  免费
  7. 4DFM软件使用教程
  8. 0.84 MB  |  295次下载  |  免费
  9. 5元宇宙深度解析—未来的未来-风口还是泡沫
  10. 6.40 MB  |  227次下载  |  免费
  11. 6迪文DGUS开发指南
  12. 31.67 MB  |  194次下载  |  免费
  13. 7元宇宙底层硬件系列报告
  14. 13.42 MB  |  182次下载  |  免费
  15. 8FP5207XR-G1中文应用手册
  16. 1.09 MB  |  178次下载  |  免费

本月

  1. 1OrCAD10.5下载OrCAD10.5中文版软件
  2. 0.00 MB  |  234315次下载  |  免费
  3. 2555集成电路应用800例(新编版)
  4. 0.00 MB  |  33566次下载  |  免费
  5. 3接口电路图大全
  6. 未知  |  30323次下载  |  免费
  7. 4开关电源设计实例指南
  8. 未知  |  21549次下载  |  免费
  9. 5电气工程师手册免费下载(新编第二版pdf电子书)
  10. 0.00 MB  |  15349次下载  |  免费
  11. 6数字电路基础pdf(下载)
  12. 未知  |  13750次下载  |  免费
  13. 7电子制作实例集锦 下载
  14. 未知  |  8113次下载  |  免费
  15. 8《LED驱动电路设计》 温德尔著
  16. 0.00 MB  |  6656次下载  |  免费

总榜

  1. 1matlab软件下载入口
  2. 未知  |  935054次下载  |  免费
  3. 2protel99se软件下载(可英文版转中文版)
  4. 78.1 MB  |  537798次下载  |  免费
  5. 3MATLAB 7.1 下载 (含软件介绍)
  6. 未知  |  420027次下载  |  免费
  7. 4OrCAD10.5下载OrCAD10.5中文版软件
  8. 0.00 MB  |  234315次下载  |  免费
  9. 5Altium DXP2002下载入口
  10. 未知  |  233046次下载  |  免费
  11. 6电路仿真软件multisim 10.0免费下载
  12. 340992  |  191187次下载  |  免费
  13. 7十天学会AVR单片机与C语言视频教程 下载
  14. 158M  |  183279次下载  |  免费
  15. 8proe5.0野火版下载(中文版免费下载)
  16. 未知  |  138040次下载  |  免费