连接蓝牙时ESP32模拟引脚不读取
ESP32 Analog pin not reading when bluetooth is connected
我一直在使用 ESP32 并在 Arduino 中编写代码。但是,当我启用蓝牙时,GPIO4 和 GPIO15 无法读取模拟输入。我已在两个引脚上连接红外 LED 并读取模拟信号。如果不使用蓝牙代码,ESP32 正在读取模拟信号并将其显示在串口监视器上。如果使用以下蓝牙代码,则两个引脚上的读数均显示为 255(读数为 5v。是的,它们目前为 5v,并将电平转换为 3.3v)。
有人可以检查并提出解决方案吗?
我已经切换传感器,移除它们,无论我做什么,读取蓝牙时读数都是一样的
蓝牙代码:
void init_bluetooth() {
ESP_BT.begin("EKA Robot"); //Name of your Bluetooth Signal
Serial.println("Bluetooth Device is Ready to Pair");
}
红外编码:
// Read Infrared LED on GPIO4. Similar function exists to read GPIO15
int readIR() {
int sensorValue = analogRead(oaPinL);
delay(5);
sensorValue = map(sensorValue, 0, 4095, 0, 255);
return (sensorValue);
}
我希望读取传感器值。但是显示都是255,是不是被拉高了?
ESP32芯片中有两个A/D转换器,ADC1和ADC2。 Wi-Fi 或使用蓝牙时不能使用 ADC2 引脚。连接到 ADC1 的引脚可以工作。这些是 GPIO32-36 和 GPIO39。
我一直在使用 ESP32 并在 Arduino 中编写代码。但是,当我启用蓝牙时,GPIO4 和 GPIO15 无法读取模拟输入。我已在两个引脚上连接红外 LED 并读取模拟信号。如果不使用蓝牙代码,ESP32 正在读取模拟信号并将其显示在串口监视器上。如果使用以下蓝牙代码,则两个引脚上的读数均显示为 255(读数为 5v。是的,它们目前为 5v,并将电平转换为 3.3v)。
有人可以检查并提出解决方案吗?
我已经切换传感器,移除它们,无论我做什么,读取蓝牙时读数都是一样的
蓝牙代码:
void init_bluetooth() {
ESP_BT.begin("EKA Robot"); //Name of your Bluetooth Signal
Serial.println("Bluetooth Device is Ready to Pair");
}
红外编码:
// Read Infrared LED on GPIO4. Similar function exists to read GPIO15
int readIR() {
int sensorValue = analogRead(oaPinL);
delay(5);
sensorValue = map(sensorValue, 0, 4095, 0, 255);
return (sensorValue);
}
我希望读取传感器值。但是显示都是255,是不是被拉高了?
ESP32芯片中有两个A/D转换器,ADC1和ADC2。 Wi-Fi 或使用蓝牙时不能使用 ADC2 引脚。连接到 ADC1 的引脚可以工作。这些是 GPIO32-36 和 GPIO39。