求教!(ardunio esp32 智能温控)

本文介绍了使用ardunio esp32进行智能温控的实现过程,包括设置温湿度传感器DHT11的引脚,初始化继电器和OLED显示屏,并通过读取传感器数据来控制继电器的状态,实现温度控制。
摘要由CSDN通过智能技术生成

下面三行变量赋值一直报错是哪里有问题

#include <dht11.h>

#include <Wire.h>

#include <ACROBOTIC_SSD1306.h>

#define DHT11PIN 2        //定义温湿度针脚号为2号引脚

int relayPin = 3;         //继电器引脚

void setup()

{

  Serial.begin(9600);        //连接到电脑串口监视器

  pinMode(relayPin, OUTPUT);        //继电器输出模式

  pinMode(DHT11PIN,OUTPUT);        //温湿度模块输出模式

  Wire.begin();

  oled.init();                      // Initialze SSD1306 OLED display

  oled.clearDisplay();//清屏

  delay(1000);        //延时1000ms

}

void loop ()

{

  int chk = read(DHT11PIN); //将读取到的值赋给chk

int tem=(float)dht11.temperature;        //将温度值赋值给tem

int hum=(float)dht11.humidity;  

Serial.print("Humidity:");        //打印出Humidity:

Serial.print(hum);  

Serial.print("Tempeature:");

     Ser

Arduino ESP32 中,可以使用软串口(SoftwareSerial)库来实现串口通信。软串口是通过软件模拟的串口,可以通过任意两个 GPIO 引脚来实现串口通信。 下面是一个示例代码,演示了如何使用软串口在 ESP32 上进行串口通信: ```c++ #include <SoftwareSerial.h> // 设置软串口的引脚 SoftwareSerial mySerial(2, 3); // RX, TX void setup() { Serial.begin(9600); // 打开硬串口,用于调试输出 mySerial.begin(9600); // 打开软串口 } void loop() { if (mySerial.available()) { // 如果软串口有数据可读 char c = mySerial.read(); // 读取一个字符 Serial.print(c); // 在硬串口上输出字符 } if (Serial.available()) { // 如果硬串口有数据可读 char c = Serial.read(); // 读取一个字符 mySerial.write(c); // 在软串口上发送字符 } } ``` 在上面的代码中,我们使用了引脚 2 和 3 作为软串口的 RX 和 TX 引脚,分别连接到另一个串口设备。在 `setup()` 函数中,我们打开了硬串口和软串口,分别用于调试输出和串口通信。 在 `loop()` 函数中,我们使用了 `mySerial.available()` 和 `Serial.available()` 函数来检查软串口和硬串口是否有数据可读。如果有数据可读,我们就使用 `mySerial.read()` 和 `Serial.read()` 函数来读取数据,并通过 `mySerial.write()` 和 `Serial.print()` 函数来发送和输出数据。 需要注意的是,在使用软串口时,需要确保 RX 和 TX 引脚不会被其他设备占用。此外,软串口的波特率需要与另一个串口设备的波特率相同,否则数据可能无法正确传输。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值