ESP32 несовместимость GyverButton и WiFi.h

_Vladimir

✩✩✩✩✩✩✩
11 Июл 2024
4
0
Коллеги, сталкивался ли кто-нибудь с несовместимостью библиотеки GyverButton и WiFi.softAP?

Поясняю
Имеем тестовый скетч, работающий с тремя кнопками и выдающий в консоль последнюю нажатую кнопку

Да, ESP32....


тестовый код:
#include "GyverButton.h"
#include <Arduino.h>
#include <WiFi.h>

#define BUTTON_1_PIN 2   // номер вывода кнопки 1 -
#define BUTTON_2_PIN 4   // номер вывода кнопки 2 -
#define BUTTON_3_PIN 15  // номер вывода кнопки 3-

GButton butt1(BUTTON_1_PIN, HIGH_PULL);  //
GButton butt2(BUTTON_2_PIN, HIGH_PULL);  // создадим три кнопки
GButton butt3(BUTTON_3_PIN, HIGH_PULL);  //


int state = 0;  // состояние

void setup() {
  // put your setup code here, to run once:
  Serial.begin(115200);                      // установим скорость уарт
  Serial.println("Starting configuration");  //
//  WiFi.softAP("1_net");
}

void loop() {
  // put your main code here, to run repeatedly:
  butt1.tick();  // обязательная функция отработки.
  butt2.tick();  // обязательная функция отработки.   ОПРОС КНОПОК
  butt3.tick();  // обязательная функция отработки.

    Serial.println("mode ");  //
    Serial.print(state);  //

if (butt1.isPress()) {          //проверка на нажатие 
    state = 1;
    Serial.println("mode ");  //
    Serial.print(state);  //

} else if (butt2.isClick()) {     //проверка на клик 
    state = 2;
    Serial.println("mode ");  //
    Serial.print(state);  //

} else if (butt3.isClick()) {     ////проверка на клик 
    state = 3;
    Serial.println("mode ");  //
    Serial.print(state);  //

}


}
если раскомментировать строку с инициализацией WiFi.softAP то работа с кнопками ломается- сразу же идет переход на обработку нажатия первой кнопки....
после чего ее нажатие не обрабатывается.
остальные две кнопки обрабатываются.