以下是使用Arduino IDE编写的nodemcu代码,通过RX和TX引脚与JW01二氧化碳传感器进行RS-485通信并采集数据:

#include <SoftwareSerial.h>

#define RX D4
#define TX D3

SoftwareSerial rs485(RX, TX); //定义软串口

void setup() {
  Serial.begin(9600);
  rs485.begin(9600);
}

void loop() {
  byte request[] = {0xFF, 0x01, 0x86, 0x00, 0x00, 0x00, 0x00, 0x00, 0x79}; //请求命令
  rs485.write(request, sizeof(request)); //向JW01传感器发送请求
  delay(100);
  
  while(rs485.available()){
    byte response = rs485.read(); //读取JW01传感器返回的数据
    Serial.print(response, HEX); //将返回的数据以16进制形式输出到串口监视器
    Serial.print(" ");
  }
  Serial.println();
  
  delay(1000); //每隔1秒采集一次数据
}

连接线路如下:

NodeMCU RX引脚 -> JW01传感器A+端
NodeMCU TX引脚 -> JW01传感器B-端
NodeMCU GND引脚 -> JW01传感器GND端
NodeMCU 5V引脚 -> JW01传感器VCC端

需要注意的是,在使用RS-485通信时,需要将传感器的A+和B-端子交叉连接,即A+端子连接到NodeMCU的RX引脚,B-端子连接到NodeMCU的TX引脚。另外,如果NodeMCU的USB接口供电不足,还需额外接入5V电源。

ArduinoIDE 下 nodemcu使用RXDX引脚完成对RS-485通信的JW01二氧化碳传感器数据采集完整的代码是?怎么连接线路

原文地址: https://www.cveoy.top/t/topic/bRQH 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录