我是靠谱客的博主 听话唇彩,这篇文章主要介绍安信可NodeMCU-32S驱动Ra-01模组实现温湿度数据传输并显示在OLED上介绍1. 开发环境以及驱动库2. 硬件3 软件4. 工程效果联系我们,现在分享给大家,希望可以做个参考。

文章目录

  • 介绍
  • 1. 开发环境以及驱动库
    • 1.1 开发环境
    • 1.2 模块驱动库
  • 2. 硬件
    • 2.1 硬件准备
    • 2.2 硬件接线
  • 3 软件
    • 3.1 程序流程图
    • 3.2 代码分析
      • 3.2.1 LoRa模块程序分析
      • 3.2.2 OLED显示屏程序分析
      • 3.3.3 SHT3x传感器程序分析
  • 4. 工程效果
    • 4.1 Gateway以及Node消息显示情况
    • 4.2 演示效果
  • 联系我们

介绍

本文主要介绍安信可NodeMCU-32S开发板驱动Ra-01模块实现LoRa信号传输温湿度数据,并显示到OLED显示屏上。其中LoRa通讯传输过程模拟网关与节点的单向传输方式,即:网关发送的数据只能被节点接收到,而节点发出的数据只能被网关接收到。

1. 开发环境以及驱动库

1.1 开发环境

基于ESP32的Arduino开发环境,版本号:1.8.12
ESP32 SDK版本号:2.0.0-alpha1

1.2 模块驱动库

  1. LoRa驱动库:arduino-LoRa
    驱动库下载链接:https://github.com/sandeepmistry/arduino-LoRa
  2. OLED显示屏(基于SSD1306芯片)驱动库:esp8266-oled-ssd1306(Version:4.2.0)
    驱动库下载链接:https://github.com/ThingPulse/esp8266-oled-ssd1306
  3. SHT3X温湿度传感器驱动库:ClosedCube_SHT31D_Arduino
    驱动库下载链接:https://github.com/closedcube/ClosedCube_SHT31D_Arduino

2. 硬件

2.1 硬件准备

  1. 开发板:NodeMCU-32S开发板
  2. Ra-01模块
  3. OLED显示屏:四线0.96寸OLED(SSD1306主控芯片)
  4. SHT3x温湿度传感器
  5. 安卓接口下载线

2.2 硬件接线

NodeMCU-32SOLED
V3.3V3.3
GNDGND
IO21SDA
IO22SCL
NodeMCU-32SSHT3X
V3.3V3.3
GNDGND
IO21SDA
IO22SCL
NodeMCU-32SRa-01
V3.3V3.3
GNDGND
IO23MOSI
IO19MISO
IO18SCK
IO5CS
IO17DIO0
IO16RST
  • LoRa Gateway

在这里插入图片描述

  • LoRa Node
    在这里插入图片描述

3 软件

工程代码下载链接:https://gitee.com/ritage/arduino-diy/tree/master

3.1 程序流程图

工程代码的流程图包含Gateway以及Node两个工程的代码

  1. Gateway的工程代码
    在这里插入图片描述

  2. Node的工程代码
    在这里插入图片描述

3.2 代码分析

3.2.1 LoRa模块程序分析

LoRa.setPins(csPin, resetPin, irqPin);	//设置LoRa模块的选择引脚,复位引脚以及DI00中断引脚
LoRa.begin(frequency)//驱动LoRa模块,通讯频率设置为frequency
LoRa.onReceive(ReceiveCallBack);	//启动接收中断,中断函数为ReceiveCallBack()
LoRa.onTxDone(onTxDone);			//启动发送完成中断,中断函数为onTxDone()
LoRa.enableInvertIQ();			//开启信号转换
LoRa.disableInvertIQ();			//关闭信号转换
LoRa.receive();					//设置为接收模式
LoRa.idle();					//设置为闲时模式

/*以下三个函数的组合用于发送消息*/
LoRa.beginPacket();                   // start packet
LoRa.print(message);                  // add payload
LoRa.endPacket(true); 				// end payload

3.2.2 OLED显示屏程序分析

display.init();				//初始化OLED显示屏
display.clear();				//清屏
display.drawString(0, 0, "Hello World"); 	//参数:x, y, text 指定x,y像素点显示text数据
display.display();			//完成显示动作(不可少)

3.3.3 SHT3x传感器程序分析

ClosedCube_SHT3XD sht3xd;	//声明sht3xd对象
sht3xd.begin(0x44);	//驱动地址为0x44的I2C从设备
sht3xd.readTempAndHumidity(repeatability, mode, timeout);	//设置以repeatability重复模式,mode读取模式,timeout超时
sht3xd.periodicStart(repeatability, frequency);		//设置以repeatability重复模式,frequency频率读取温湿度

4. 工程效果

4.1 Gateway以及Node消息显示情况

在这里插入图片描述

4.2 演示效果

在这里插入图片描述

联系我们

以上就是本期分享的内容,目的在于让大家快速适应新品方案的开发,以上提供的驱动源码联系我们可以免费提供

官方官网:https://www.ai-thinker.com
开发资料:https://docs.ai-thinker.com/
官方论坛:http://bbs.ai-thinker.com
商务合作:sales@aithinker.com
技术支持:support@aithinker.com
公司地址: 深圳市宝安区西乡固戍华丰智慧创新港C栋410
联系电话:0755-29162996

最后

以上就是听话唇彩最近收集整理的关于安信可NodeMCU-32S驱动Ra-01模组实现温湿度数据传输并显示在OLED上介绍1. 开发环境以及驱动库2. 硬件3 软件4. 工程效果联系我们的全部内容,更多相关安信可NodeMCU-32S驱动Ra-01模组实现温湿度数据传输并显示在OLED上介绍1.内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(114)

评论列表共有 0 条评论

立即
投稿
返回
顶部