From 44ccbe7ed78ed8a2ea37e4ddb53d118c67134ba2 Mon Sep 17 00:00:00 2001 From: Dmitry Borisenko <49808844+DmitryBorisenko33@users.noreply.github.com> Date: Thu, 23 Dec 2021 17:48:01 +0100 Subject: [PATCH] =?UTF-8?q?=D0=BF=D1=80=D0=BE=D1=88=D0=B8=D0=B2=D0=BA?= =?UTF-8?q?=D0=B0=20=D1=80=D0=B0=D0=B1=D0=BE=D1=82=D0=B0=D0=B5=D1=82=20?= =?UTF-8?q?=D0=B8=20=D0=B4=D0=BB=D1=8F=20esp32?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .vscode/settings.json | 3 +++ include/Const.h | 8 ++++++++ include/EspFileSystem.h | 18 ++++++++++++++++-- include/Global.h | 12 +++++++++++- platformio.ini | 16 +++++++++++++++- src/EspFileSystem.cpp | 6 +++--- src/Global.cpp | 4 ++-- 7 files changed, 58 insertions(+), 9 deletions(-) create mode 100644 .vscode/settings.json diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 00000000..cdcf0a40 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,3 @@ +{ + "C_Cpp.clang_format_sortIncludes": false +} \ No newline at end of file diff --git a/include/Const.h b/include/Const.h index ef02d585..f92e3ee9 100644 --- a/include/Const.h +++ b/include/Const.h @@ -4,6 +4,14 @@ #define JSON_BUFFER_SIZE 4096 +#ifdef esp8266_4mb +#define USE_LITTLEFS true +#endif + +#ifdef esp32_4mb +#define USE_LITTLEFS false +#endif + //задачи таскера enum TimerTask_t { WIFI_SCAN, WIFI_MQTT_CONNECTION_CHECK, diff --git a/include/EspFileSystem.h b/include/EspFileSystem.h index a93afe19..447421bf 100644 --- a/include/EspFileSystem.h +++ b/include/EspFileSystem.h @@ -1,13 +1,27 @@ #pragma once - #include "Global.h" -#include "LittleFS.h" +#ifdef ESP32 +#include +extern FS* filesystem; +#define FileFS SPIFFS +#define FS_NAME "SPIFFS" +#endif + +#ifdef ESP8266 +#if USE_LITTLEFS +#include "LittleFS.h" extern FS LittleFS; using littlefs_impl::LittleFSConfig; extern FS* filesystem; #define FileFS LittleFS #define FS_NAME "LittleFS" +#else +extern FS* filesystem; +#define FileFS SPIFFS +#define FS_NAME "SPIFFS" +#endif +#endif extern bool fileSystemInit(); extern void globalVarsSync(); diff --git a/include/Global.h b/include/Global.h index 54cea528..6b06c37a 100644 --- a/include/Global.h +++ b/include/Global.h @@ -3,10 +3,20 @@ //внешние глобальные директории #include #include +#include + +#ifdef ESP32 +#include +#include +#include +#endif + +#ifdef ESP8266 #include +#endif + #include #include -#include //внутренние глобальные директории проекта #include "Const.h" diff --git a/platformio.ini b/platformio.ini index 2d9b964f..bbf774be 100644 --- a/platformio.ini +++ b/platformio.ini @@ -18,6 +18,9 @@ lib_deps_external = bblanchon/ArduinoJson @6.18.0 me-no-dev/ESP Async WebServer +;lib_deps_internal = + + [env:esp8266_4mb] build_flags = -Desp8266_4mb="esp8266_4mb" framework = arduino @@ -29,4 +32,15 @@ lib_deps = monitor_filters = esp8266_exception_decoder upload_speed = 921600 monitor_speed = 115200 -board_build.filesystem = littlefs \ No newline at end of file +board_build.filesystem = littlefs + +[env:esp32_4mb] +build_flags = -Desp32_4mb="esp32_4mb" +framework = arduino +board = esp32dev +platform = espressif32 @3.3.0 +lib_deps = + ${common_env_data.lib_deps_external} +monitor_filters = esp32_exception_decoder +upload_speed = 921600 +monitor_speed = 115200 \ No newline at end of file diff --git a/src/EspFileSystem.cpp b/src/EspFileSystem.cpp index 5ce1f333..0a2f4636 100644 --- a/src/EspFileSystem.cpp +++ b/src/EspFileSystem.cpp @@ -10,14 +10,14 @@ bool fileSystemInit() { } void globalVarsSync() { - settingsFlashJson = readFile("settings.json", 4096); + settingsFlashJson = readFile(F("settings.json"), 4096); settingsFlashJson.replace("\r\n", ""); } void saveSettingsFlashJson() { - writeFile(String("config.json"), settingsFlashJson); + writeFile(F("settings.json"), settingsFlashJson); } void saveParamsFlashJson() { - writeFile(String("store.json"), paramsFlashJson); + writeFile(F("params.json"), paramsFlashJson); } \ No newline at end of file diff --git a/src/Global.cpp b/src/Global.cpp index 659e2acc..e351ffd8 100644 --- a/src/Global.cpp +++ b/src/Global.cpp @@ -5,6 +5,6 @@ TickerScheduler ts(MYTEST + 1); AsyncWebServer server(80); //глобальные переменные -String settingsFlashJson = "{}"; //переменная в которой хранятся все настройки, находится в оперативной памяти только и синхронизированна с flash памятью -String paramsFlashJson = "{}"; //переменная в которой хранятся все параметры, находится в оперативной памяти только и синхронизированна с flash памятью +String settingsFlashJson = "{}"; //переменная в которой хранятся все настройки, находится в оперативной памяти и синхронизированна с flash памятью +String paramsFlashJson = "{}"; //переменная в которой хранятся все параметры, находится в оперативной памяти и синхронизированна с flash памятью String paramsHeapJson = "{}"; //переменная в которой хранятся все параметры, находится в оперативной памяти только \ No newline at end of file