我正在通过Arduino IDE编程ESP32,我对Arduino的WiFi库有一个奇怪的问题。当我连接到WiFi网络时,它会强制读取一个特定的引脚(引脚2)到4095。随着连接到WiFi的代码行被注释掉,我在连接到该引脚的传感器上得到了正确的读数,但包含它时,它被卡在4095。当微控制器与电路的其余部分断开连接时也会发生这种情况。注释掉这行后,我得到了一个白噪声读数,但是包含这行的4095读数。下面是代码:
//Libraries
#include <WiFi.h>
//Wi-Fi Connection Parameters
const char* ssid = "REMOVED";
const char* password = "REMOVED";
const int sensePin = 2;
//Initialize WiFi Server
WiFiServer server(80);
void setup() {
pinMode(sensePin, INPUT);
int senseOut = 0;
Serial.begin(115200);
// Connect to WiFi network
WiFi.begin(ssid, password); //THIS LINE CAUSES 4095 READING
}
void loop() {
TestSensor();
}
void TestSensor()
{
for (int i = 0; i < 100; i++)
{
senseOut = analogRead(sensePin);
Serial.println(senseOut);
delay(100);
}
}
白噪声读数示例:
1251
1263
1275
1254
1237
1200
1149
1095
1040
976
928
868
835
805
806
820
778
752
819
1002
1516
1675
1687
1693
1659
1674
1702
1713
1727
你知道是什么原因导致的吗?谢谢你。
您需要使用另一个模拟输入。
这些引脚在使用WiFi时不支持模拟输入:00,02年,04年,12,13日,14日,15日,25日,26日,
这些有:32岁的33岁的34岁,35,36岁,39,使用最后6个中的一个来连接您的传感器。