4 - Loop principal:
Aqui está a definição dos loops utilizados:
void loop()
: Função executada continuamente após a configuração inicial.int buttonState = digitalRead(buttonPin);
: Lê o estado do botão.if (WiFi.status() == WL_CONNECTED) {
: Verifica se o ESP8266 está conectado à rede Wi-Fi.std::unique_ptr<BearSSL::WiFiClientSecure> client(new BearSSL::WiFiClientSecure);
: Cria um objeto client do tipo WiFiClientSecureBearSSL para estabelecer uma conexão segura com o servidor.client->setInsecure();
: Desativa a verificação de certificado SSL, permitindo conexões com servidores sem certificado válido.HTTPClient https;
: Cria um objeto https do tipo HTTPClient para fazer a solicitação HTTP.if (https.begin(*client, "your_api")) {
: Inicia a solicitação HTTP para a URL da API desejada. Substitua "your_api" pelo endereço correto da API.int httpCode = https.GET();
: Realiza uma solicitação GET e armazena o código de status HTTP retornado.if (httpCode > 0) {
: Verifica se a solicitação foi bem-sucedida (código de status HTTP maior que zero).if (httpCode == HTTP_CODE_OK || httpCode == HTTP_CODE_MOVED_PERMANENTLY) {
: Verifica se o código de status HTTP é OK (200) ou MOVED_PERMANENTLY (301).String payload = https.getString();
: Obtém a resposta da solicitação HTTP como uma string.lcd.clear();
: Limpa o display LCD.Serial.println(payload);
: Imprime a resposta no monitor serial.lcd.setCursor(0, 0);
: Define a posição do cursor do display LCD.lcd.print(payload);
: Exibe a resposta no display LCD.https.end();
: Encerra a conexão HTTP.} else {
: Caso não seja possível estabelecer a conexão com o servidor.Serial.printf("[HTTPS] Unable to connect\n");
: Exibe uma mensagem de erro no monitor serial.}
: Fecha o blocoif (https.begin(*client, "your_api"))
.}
: Fecha o blocoif (WiFi.status() == WL_CONNECTED)
.
Last updated