#include <LittleFS.h>
#include <GyverPortal.h>
#define humidity_sensor_pin 0
GyverPortal ui(&LittleFS); // для проверки файлов
int humidity = 0;
int max_humidity = 250;
GPdate nowDate;
GPtime nowTime;
int valNum;
// поддержка wifi связи
void wifiSupport() {
if (WiFi.status() != WL_CONNECTED) {
WiFi.softAP("MyESP8266", "12345678");
WiFi.softAPConfig(IPAddress(192,168,4,1), IPAddress(192,168,4,1), IPAddress(255,255,255,0));
Serial.println(WiFi.localIP());
}
}//wifiSupport()
// конструктор страницы
void build() {
GP.BUILD_BEGIN();
GP.THEME(GP_DARK);
GP.PAGE_TITLE("StartUp");
GP.ONLINE_CHECK();
GP.BUILD_BEGIN();
GP.THEME(GP_DARK);
GP.AJAX_PLOT("plot1", 1, 200, 30000,400,1);
GP.BUILD_END();
GP.UPDATE("nowDate,nowTime");
GP.TITLE("График влажности в %", "t1");
GP.HR();
GP.BUTTON("btn", "Калибровка");
GP.BREAK();
GP.BREAK();
GP.BUILD_END();
}
void action() {
// было обновление
if (ui.update("plot1")) ui.answer(humidity); // установка значения
//ui.update();
// был клик по компоненту внутри веб странички
if (ui.click()) {
if (ui.click("btn")) {
max_humidity = humidity;
Serial.println("Button click");
Serial.println(max_humidity);
}
}//ui.click()
}//action()
void setup() {
Serial.begin(115200);
wifiSupport();
pinMode(humidity_sensor_pin, INPUT);
// подключаем конструктор и запускаем
ui.attachBuild(build);
ui.attach(action);
ui.start();
if (!LittleFS.begin()) Serial.println("FS Error");
ui.downloadAuto(true);
wifiSupport();
}//setup()
void loop() {
ui.tick();
static uint32_t tmr1;
if (millis() - tmr1 >= 5000) {
tmr1 = millis();
humidity = analogRead(humidity_sensor_pin);
humidity = map(humidity,max_humidity,1023,100,0);
}
}