Innehållsförteckning:

Klass för att hantera konfigurationen i ESP32 EEPROM: 5 steg
Klass för att hantera konfigurationen i ESP32 EEPROM: 5 steg

Video: Klass för att hantera konfigurationen i ESP32 EEPROM: 5 steg

Video: Klass för att hantera konfigurationen i ESP32 EEPROM: 5 steg
Video: Crestron XiO Cloud 2024, November
Anonim
Klass för att hantera konfigurationen i ESP32 EEPROM
Klass för att hantera konfigurationen i ESP32 EEPROM

Hej, jag vill dela med mig av hela klassen som jag har utvecklat och det förenklar uppgiften att lägga till konfigurationsinformation på ESP32 -enheter.

Klassen följande mål:

  1. Underlätta skapandet av ett konfigurationssystem på ESP32 -enheter.
  2. Den har en konfigurationsmeny.
  3. Verifiering av om enheten har ingen konfiguration, i så fall går den in i konfigurationsläget.
  4. Ställ in en nål för att aktivera posten till konfigurationsmenyn. Att ansluta den stiftet till marken när enheten startas visar möjligheten att komma in i konfigurationsmenyn.
  5. Skydda installationsmenyn med lösenord.

Steg 1: Källkod

Dessa filer innehåller källkoden för "Configuracion" -klassen, för att kunna använda den följer du följande steg:

  1. Öppna mappen bibliotek i mappen där arduino är installerat.
  2. Skapa en mapp med namnet "Configuracion".
  3. Kopiera de tre filerna till mappen "Configuracion".

Steg 2: Metoder i klassen "Konfiguration"

De metoder som klassen har är följande:

static void declararPropiedad (String name, String initialValue);

Beskrivning

Deklarera egenskaperna och deras ursprungliga värde.

Parametrar

  • name: Egenskapens namn, denna bokstav kommer att visas i konfigurationsmenyerna.
  • initialValue: Värde som tilldelas som standard vid den första strömmen på enheten.

static void iniciar (int size, int PIN);

Beskrivning

Läs värdena för konfigurationsegenskaperna från EEPROM. Om den inte startas startar den initialiseringsprocessen. Innan du ringer den här metoden måste du definiera namnen på egenskaperna med metoden declararPropiedad.

Parametrar

  • storlek: Maximalt antal byte som ska användas i EEPROM.
  • PIN: PIN för ESP32 -kortet som, när den är ansluten till GND, gör det möjligt att komma in i konfigurationsmenyn.

static String leerPropiedad (Strängnamn);

Beskrivning

Få värdet lagrat i fastigheten.

Parametrar

name: Namn på egenskapen från vilken du vill hämta dess värde

statisk String leerPropiedad (int position);

Beskrivning

Få värdet lagrat i fastigheten.

Parametrar

position: Nummer på positionen för egenskapen från vilken du vill erhålla dess värde. Den första fastigheten har position 1, den andra 2,…

Steg 3: Så här använder du klassen "Konfiguration"

I det här exemplet vill vi lagra SSID och lösenord för routern som vi vill att vår ESP32 ska ansluta till.

I början av installationsblocket initierar vi de två egenskaper som vi vill lagra i WIFI_SSID och WIFI_PASSWORD -konfigurationen. Sedan kallar vi metoden iniciar med värdena 1024 och CONFIGURACION_PIN (som har värdet 13). Med dessa 3 rader tillåter klassen dig att hantera värdena för de två egenskaperna, vi kan när som helst ändra dem.

Skapa ett nytt projekt i Arduino IDE och ange följande källkod.

#inkludera "Configuracion.h"

#define CONFIGURACION_PIN 13 /* PIN för ESP32 -kortet som, när det är anslutet till GND, ger oss möjlighet att gå in i konfigurationsmenyn. */ void setup () {Serial.begin (115200); / * * Konfiguration, de angivna värdena behandlas som standardvärden. * Standardvärdena träder i kraft först när du startar enheten för första gången. */ Konfiguration:: declararPropiedad ("WIFI_SSID", ""); Konfiguration:: declararPropiedad ("WIFI_PASSWORD", "123456"); Konfiguration:: iniciar (1024, CONFIGURACION_PIN); / * TODO */ Serial.println ("WIFI_SSID -värdet är" + Konfiguration:: leerPropiedad ("WIFI_SSID")); } void loop () {// lägg din huvudkod här för att köra upprepade gånger:}

Steg 4: Kör exemplet för första gången

Kör exemplet för första gången
Kör exemplet för första gången
Kör exemplet för första gången
Kör exemplet för första gången
Kör exemplet för första gången
Kör exemplet för första gången
Kör exemplet för första gången
Kör exemplet för första gången

På skärmdumparna som finns i detta steg visar vad klassen gör.

I den första kontrollen att enheten inte är initialiserad och frågar efter lösenordet lägger vi QWERTY och skickar.

Den andra bilden visar parametrarna och deras värden, eftersom vi kan se att den enda parametern som har ett initialvärde är WIFI_PASSWORD. Vi kommer att ange ett värde för WIFI_SSID, ange 2 och tryck på skicka.

Den ber oss att ange ett värde för WIFI_SSID, skriv Mi_wifi och tryck på skicka, resultatet finns i den tredje bilden.

Vi anger S och skickar för att avsluta, det visar oss frasen "SETTING OUT" och visar oss värdet på WIFI_SSID -parametern som vi har programmerat i exemplet. Den sista bilden visar resultatet.

Steg 5: Ange konfigurationen nästa gång

Ange konfigurationen nästa gång
Ange konfigurationen nästa gång

För att komma in i konfigurationen är det nödvändigt att ansluta PIN 13 till GND, när kortet startas visar det oss en förloppsindikator i några sekunder, tryck på skicka och be om lösenordet.

Ange QWERTY och tryck på skicka.

Nu visar det oss huvudkonfigurationsmenyn som bilden visar.

Denna meny gör att vi kan:

Alternativ 1, visa parametrarnas värden.

Alternativ 2, redigera fastighetsvärden, enligt föregående steg.

Alternativ 3, ta bort all konfiguration, när enheten startas skulle göra vad vi har sett i föregående steg.

Alternativ S, avsluta.

Rekommenderad: