|
本帖最后由 fenghai2ni 于 2020-8-28 09:55 编辑
问题已经解决 出在adc针脚上 esp32 在使用wifi的时候 adc2 的虚拟量读不出来 而只能用adc1
使用的是esp32 开发板
做 电压陶瓷震动传感器 案例
esp32用sta模式 连接网络后 不能使用analogRead ()方法读取到针脚的模拟数据 这个怎么办呢?
出现的问题:
单独测试这个是可以读取到数据的 代码如下
- #define LED_PIN 2
- int zhendong = 13; // ESP32 Pin D4
- int valq;
- void setup() {
- // put your setup code here, to run once:
- Serial.begin(115200);
- Serial.println("ESP32 Touch Test");
- pinMode(LED_PIN, OUTPUT);
- pinMode(zhendong, INPUT);
- digitalWrite(LED_PIN, 0);
- }
- void loop() {
- // put your main code here, to run repeatedly:
- valq = analogRead(zhendong);
- if (valq == 0) {
- digitalWrite(LED_PIN, 0);
- }
- else {
- digitalWrite(LED_PIN, 1);
- Serial.println(valq);
- }
- delay(1000);
- }
复制代码
当我想通过wifi将读取的数据传送到电脑上
这时候analogRead 方法 读取不到针脚的数据了
后来又试了digitalRead() 方法 确认是可以读到0.1数据的
增加后的代码:
- #include <WiFi.h>
- #define LED_PIN 2
- int zhendong = 13; // ESP32 Pin D4
- int valq;
- #define AP_SSID "111111" //这里改成你的wifi名字
- #define AP_PSW "123456788"//这里改成你的wifi密码
- void setup() {
- // put your setup code here, to run once:
- Serial.begin(115200);
- Serial.println("ESP32 Touch Test");
- pinMode(LED_PIN, OUTPUT);
- pinMode(zhendong, INPUT);
- digitalWrite(LED_PIN, 0);
- WiFi.mode(WIFI_STA);
- WiFi.begin(AP_SSID, AP_PSW);
- Serial.println("等待连接WiFi... ");
- while (WiFi.status() != WL_CONNECTED) {
- Serial.print(".");
- WiFi.begin(AP_SSID, AP_PSW);
- delay(1000);
- }
- Serial.println("");
- Serial.println("WiFi connected");
- Serial.print("IP address: ");
- Serial.println(WiFi.localIP());
- }
- void loop() {
- // put your main code here, to run repeatedly:
- valq = analogRead(zhendong);
- if (valq == 0) {
- digitalWrite(LED_PIN, 0);
- }
- else {
- digitalWrite(LED_PIN, 1);
- Serial.println(valq);
- }
- delay(1000);
- }
复制代码
|
|