JXCT Soil Sensor 7-in-1 v3.4.9 (June 2025)
Professional IoT soil monitoring system with ESP32, Modbus RTU, MQTT, and advanced compensation algorithms
|
Главный файл проекта JXCT датчика Подробнее...
#include <WiFiClientSecure.h>
#include <WiFiClient.h>
#include <Arduino.h>
#include "version.h"
#include "wifi_manager.h"
#include "modbus_sensor.h"
#include "mqtt_client.h"
#include "thingspeak_client.h"
#include "jxct_config_vars.h"
#include <WiFiUdp.h>
#include <NTPClient.h>
#include <esp_task_wdt.h>
#include "fake_sensor.h"
#include "debug.h"
#include "logger.h"
#include "sensor_factory.h"
#include "ota_manager.h"
#include <esp_ota_ops.h>
Функции | |
bool | initPreferences () |
void | setupWiFi () |
void | setupModbus () |
Инициализация Modbus и SP3485E. | |
void | loadConfig () |
void | startRealSensorTask () |
void | startFakeSensorTask () |
void | handleWiFi () |
void | handleMQTT () |
void | resetButtonTask (void *parameter) |
void | setup () |
void | loop () |
Переменные | |
unsigned long | lastDataPublish = 0 |
unsigned long | lastNtpUpdate = 0 |
WiFiUDP | ntpUDP |
NTPClient * | timeClient = nullptr |
const int | RESET_BUTTON_PIN = 0 |
const unsigned long | STATUS_PRINT_INTERVAL = 30000 |
unsigned long | lastStatusPrint = 0 |
Главный файл проекта JXCT датчика
См. определение в файле main.cpp
void handleMQTT | ( | ) |
См. определение в файле mqtt_client.cpp строка 311
Перекрестные ссылки config, connectMQTT(), getOtaStatus(), getOtaStatusTopic(), logMQTT(), logSuccess(), logWarn() и mqttClient.
Используется в loop().
void handleWiFi | ( | ) |
См. определение в файле wifi_manager.cpp строка 129
Перекрестные ссылки AP, config, currentWiFiMode, dnsServer, logError(), logSuccess(), logWarn(), logWiFi(), setLedBlink(), setLedOn(), STA, startAPMode(), startSTAMode(), updateLed(), webServer, WIFI_RECONNECT_INTERVAL, WIFI_RETRY_DELAY_MS и wifiConnected.
Используется в loop().
bool initPreferences | ( | ) |
См. определение в файле main.cpp строка 196
Перекрестные ссылки preferences.
Используется в setup().
void loadConfig | ( | ) |
См. определение в файле config.cpp строка 39
Используется в setup().
void loop | ( | ) |
См. определение в файле main.cpp строка 202
Перекрестные ссылки COLOR_GREEN, config, DEBUG_PRINTLN, handleMQTT(), handleOTA(), handleWiFi(), lastDataPublish, lastNtpUpdate, lastStatusPrint, logData(), logMemoryUsage(), logPrintHeader(), logPrintSeparator(), logSystem(), logUptime(), logWarn(), logWiFiStatus(), publishSensorData(), sendDataToThingSpeak(), sensorData, STATUS_PRINT_INTERVAL и timeClient.
void resetButtonTask | ( | void * | parameter | ) |
См. определение в файле main.cpp строка 53
Перекрестные ссылки BUTTON_HOLD_TIME_MS, DEBUG_PRINTLN, logError(), logWarn(), RESET_BUTTON_PIN и resetConfig().
Используется в setup().
void setup | ( | ) |
См. определение в файле main.cpp строка 91
Перекрестные ссылки COLOR_CYAN, config, createSensorInstance(), espClient, initPreferences(), JXCT_FULL_VERSION_STRING, JXCT_VERSION_STRING, loadConfig(), logError(), logPrintBanner(), logPrintHeader(), logPrintSeparator(), logSuccess(), logSystem(), resetButtonTask(), setupMQTT(), setupOTA(), setupThingSpeak(), setupWiFi(), startFakeSensorTask(), startRealSensorTask() и WATCHDOG_TIMEOUT_SEC.
void setupModbus | ( | ) |
Инициализация Modbus и SP3485E.
Настраивает пины управления SP3485E и инициализирует UART для Modbus. Важно: DE и RE управляются раздельно для лучшего контроля над временем переключения
См. определение в файле modbus_sensor.cpp строка 80
Перекрестные ссылки COLOR_CYAN, COLOR_GREEN, JXCT_MODBUS_ID, logPrintHeader(), logSuccess(), logSystem(), modbus, MODBUS_DE_PIN, MODBUS_RE_PIN, MODBUS_RX_PIN, MODBUS_TX_PIN, postTransmission() и preTransmission().
Используется в ModbusSensorAdapter::ModbusSensorAdapter().
void setupWiFi | ( | ) |
См. определение в файле wifi_manager.cpp строка 99
Перекрестные ссылки COLOR_GREEN, config, loadConfig(), logDebug(), logPrintHeader(), logPrintSeparator(), logSystem(), logWiFi(), setLedBlink(), startAPMode(), startSTAMode() и STATUS_LED_PIN.
Используется в setup().
void startFakeSensorTask | ( | ) |
См. определение в файле fake_sensor.cpp строка 98
Перекрестные ссылки fakeSensorTask().
Используется в FakeSensorAdapter::FakeSensorAdapter() и setup().
void startRealSensorTask | ( | ) |
См. определение в файле modbus_sensor.cpp строка 541
Перекрестные ссылки realSensorTask().
Используется в setup().
WiFiUDP ntpUDP |
См. определение в файле main.cpp строка 42
Используется в sendSensorJson() и startSTAMode().
const unsigned long STATUS_PRINT_INTERVAL = 30000 |
NTPClient* timeClient = nullptr |
См. определение в файле main.cpp строка 43
Используется в loop(), publishSensorData(), sendSensorJson() и startSTAMode().