@gorlanovmax,
Немного не понимаю. Сперва подключается, открывается вафля, где вы одобряете подключение к сети. И Вы хотите, чтобы после этого веб сервер дал некий волшебный ответ, который должен заставить приложение вафли открыть ссылку в браузере?
#include <GyverNTC.h>
GyverNTC therm(A0, 100000, 3950, 25, 7500); // пин, R термистора, B термистора, базовая температура, R резистора
uint32_t TimerTemp;
#include "GyverPID.h"
GyverPID regulator(0.1, 0.05, 0.01, 10); // коэф. П, коэф. И, коэф. Д, период дискретизации dt (мс) (можно П, И, Д, без dt)
float Kp, Ki, Kd;
void setup() {
Serial.begin(9600);
regulator.setDirection(NORMAL); // направление регулирования (NORMAL/REVERSE). ПО УМОЛЧАНИЮ СТОИТ NORMAL
regulator.setLimits(0, 255); // пределы (ставим для 8 битного ШИМ). ПО УМОЛЧАНИЮ СТОЯТ 0 И 255
regulator.setpoint = 50; // сообщаем регулятору температуру, которую он должен поддерживать
// в процессе работы можно менять коэффициенты
regulator.Kp = 5.2;
regulator.Ki += 0.5;
regulator.Kd = 0;
}
void loop() {
int (therm.getTempAverage()); // читаем с датчика температуру
regulator.input = (therm.getTempAverage()); // сообщаем регулятору текущую температуру
analogWrite(D5, regulator.getResultTimer()); // отправляем на мосфет
}
}
я вот это не понимаю) по нажатию какой кнопки) этой?)по нажатию кнопки
GP.SUBMIT(текст); // кнопка отправки формы
Как Динамически выводить значения текущей температуры therm.getTempAverage() (для мониторинга)
Как из области ввода GP.NUMBER_F передать введенное значение в regulator.Kp
bool copyFloat(имя, float& t);
bool copyFloat(куда сохранить, значение из формы);
#define GP_NO_DNS // отключаем DNS
#define GP_NO_DOWNLOAD // отключаем возможность скачивания файлов
#define GP_NO_MDNS // отключаем адресации по имени страницы
#include <Arduino.h>
#include <LittleFS.h> // подключить библиотеку файловой системы (до #include GyverPortal)
#include <GyverPortal.h> // подключаем библиотеку вэб-интерфейса
GyverPortal portal(&LittleFS);; // передать ссылку на fs (SPIFFS/LittleFS)
#include <Arduino.h>
#include <LittleFS.h> // подключить библиотеку файловой системы (до #include GyverPortal)
#include <GyverPortal.h> // подключаем библиотеку вэб-интерфейса
GyverPortal portal(&LittleFS);; // передать ссылку на fs (SPIFFS/LittleFS)
#define GP_NO_DNS // отключаем DNS
#define GP_NO_DOWNLOAD // отключаем возможность скачивания файлов
#define GP_NO_MDNS // отключаем адресации по имени страницы
// тест графиков AJAX_PLOT, вывод случайных значений
#include <LITTLEFS.h>
#include <GyverPortal.h>
GyverPortal portal(&LITTLEFS);
// конструктор
void build() {
GP.BUILD_BEGIN();
GP.THEME(GP_DARK);
GP.AJAX_PLOT("plot1", 1, 20, 1000);
GP.AJAX_PLOT_DARK("plot3", 3, 20, 1000);
GP.BUILD_END();
}
void setup() {
Serial.begin(115200);
char ssid_point[40] = "HotControl";
char password_point[40] = "0123456789";
WiFi.mode(WIFI_AP);
WiFi.softAP(ssid_point, password_point);
if (!LITTLEFS.begin()) Serial.println("FS Error");
// подключаем конструктор и запускаем
portal.attachBuild(build);
portal.attach(action);
portal.uploadAuto(true);
portal.start();
}
void action() {
if (portal.update("plot1")) portal.answer(random(200));
if (portal.update("plot3")) {
int answ[] = {random(200), random(200), random(200)};
portal.answer(answ, 3);
}
}
void loop() {
portal.tick();
}
#include <LittleFS.h>
GyverPortal portal(&LittleFS);
if (!LittleFS.begin()) Serial.println("FS Error");
//Смущает немного регистр(есть подозрение, что используется устаревшее ядро для esp)
portal.downloadAuto(true); // автоскачивание
GP.AJAX_PLOT("plot1", 1, 20, 1000,400,1);
GP.AJAX_PLOT_DARK("plot3", 3, 20, 1000,400,1);
if (!LittleFS.begin(true)) {
Serial.println("FS Error"); // подключаем хранилище
}