Índice:

Aula para gerenciar a configuração na EEPROM ESP32: 5 etapas
Aula para gerenciar a configuração na EEPROM ESP32: 5 etapas

Vídeo: Aula para gerenciar a configuração na EEPROM ESP32: 5 etapas

Vídeo: Aula para gerenciar a configuração na EEPROM ESP32: 5 etapas
Vídeo: ESP8266 Armazenando dados na EEPROM - IeC15 2024, Julho
Anonim
Classe para gerenciar a configuração no ESP32 EEPROM
Classe para gerenciar a configuração no ESP32 EEPROM

Olá, quero compartilhar com vocês toda a aula que desenvolvi e que simplifica a tarefa de adicionar informações de configuração em dispositivos ESP32.

A aula tem os seguintes objetivos:

  1. Facilita a criação de um sistema de configuração em dispositivos ESP32.
  2. Possui um menu de configuração.
  3. Verificação se o dispositivo está sem configuração, caso em que entra no modo de configuração.
  4. Defina um pino para ativar a entrada no menu de configuração. Conectando aquele pino ao aterramento quando o dispositivo é iniciado, surge a possibilidade de entrar no menu de configuração.
  5. Proteja o menu de configuração com senha.

Etapa 1: Código Fonte

Estes arquivos contêm o código fonte da classe "Configuracion", para poder utilizá-lo siga os seguintes passos:

  1. Na pasta onde o arduino está instalado, abra a pasta libraries.
  2. Crie uma pasta com o nome "Configuracion".
  3. Copie os três arquivos para a pasta "Configuracion".

Etapa 2: Métodos da classe "Configuracion"

Os métodos que a classe possui são os seguintes:

static void declararPropiedad (String name, String initialValue);

Descrição

Declare as propriedades e seu valor inicial.

Parâmetros

  • name: Nome da propriedade, este literal será mostrado nos menus de configuração.
  • initialValue: valor que será atribuído por padrão na primeira inicialização do dispositivo.

estático void iniciar (int size, int PIN);

Descrição

Leia os valores das propriedades de configuração da EEPROM. Se não for iniciado, ele inicia o processo de inicialização. Antes de chamar este método, você deve definir os nomes das propriedades usando o método declararPropiedad.

Parâmetros

  • size: Número máximo de bytes a serem usados na EEPROM.
  • PIN: PIN da placa ESP32 que, quando conectado ao GND, permite entrar no menu de configuração.

estática String leerPropiedad (nome da string);

Descrição

Obtenha o valor armazenado na propriedade.

Parâmetros

nome: nome da propriedade da qual se deseja obter o seu valor

estática String leerPropiedad (posição interna);

Descrição

Obtenha o valor armazenado na propriedade.

Parâmetros

posição: Número da posição da propriedade a partir da qual se deseja obter o seu valor. A primeira propriedade tem posição 1, a segunda 2, …

Etapa 3: como usar a classe "Configuracion"

Neste exemplo, queremos armazenar o SSID e a senha do roteador ao qual queremos que nosso ESP32 se conecte.

No início do bloco de configuração inicializamos as duas propriedades que queremos armazenar na configuração WIFI_SSID e WIFI_PASSWORD. Em seguida, chamamos o método iniciar com os valores 1024 e CONFIGURACION_PIN (que tem o valor 13). Com essas 3 linhas a classe permite que você gerencie os valores das duas propriedades, podemos modificá-los a qualquer momento.

Crie um novo projeto no Arduino IDE e insira o seguinte código-fonte.

#include "Configuracion.h"

#define CONFIGURACION_PIN 13 / * PIN da placa ESP32 que, quando conectado ao GND, nos dá a possibilidade de entrar no menu de configuração. * / configuração void () {Serial.begin (115200); / * * Configuração, os valores inseridos são tratados como valores padrão. * Os valores padrão só têm efeito quando você inicia o dispositivo pela primeira vez. * / Configuracion:: declararPropiedad ("WIFI_SSID", ""); Configuracion:: declararPropiedad ("WIFI_PASSWORD", "123456"); Configuracion:: iniciar (1024, CONFIGURACION_PIN); / * TODO * / Serial.println ("O valor WIFI_SSID é" + Configuracion:: leerPropiedad ("WIFI_SSID")); } void loop () {// coloque seu código principal aqui, para executar repetidamente:}

Etapa 4: execute o exemplo pela primeira vez

Execute o exemplo pela primeira vez
Execute o exemplo pela primeira vez
Execute o exemplo pela primeira vez
Execute o exemplo pela primeira vez
Execute o exemplo pela primeira vez
Execute o exemplo pela primeira vez
Execute o exemplo pela primeira vez
Execute o exemplo pela primeira vez

Nas imagens que estão nesta etapa mostram o que a classe faz.

Na primeira verificação se o dispositivo não está inicializado e pede a senha, colocamos QWERTY e enviamos.

A segunda imagem mostra os parâmetros e seus valores, pois podemos ver que o único parâmetro que possui um valor inicial é WIFI_PASSWORD. Vamos inserir um valor para WIFI_SSID, insira 2 e pressione enviar.

Ele nos pede para inserir um valor para WIFI_SSID, digite Mi_wifi e pressione enviar, o resultado está na terceira imagem.

Entramos com S e enviamos para sair, ele nos mostra a frase "SETTING OUT" e nos mostra o valor do parâmetro WIFI_SSID como programamos no exemplo. A última imagem mostra o resultado.

Etapa 5: insira a configuração na próxima vez

Entre na configuração da próxima vez
Entre na configuração da próxima vez

Para entrar na configuração é necessário conectar o PIN 13 ao GND, ao iniciar o tabuleiro ele nos mostra uma barra de progresso por alguns segundos, pressione enviar e peça a senha.

Digite QWERTY e pressione enviar.

Agora ele nos mostra o menu de configuração principal como mostra a imagem.

Este menu nos permite:

Opção 1, mostra os valores dos parâmetros.

Opção 2, edite os valores da propriedade, como visto na etapa anterior.

Opção 3, excluir toda a configuração, ao iniciar o dispositivo faria o que vimos na etapa anterior.

Opção S, saia.

Recomendado: