Prévia do material em texto
UNIVERSIDADE ESTADUAL DE CAMPINAS
FACULDADE DE TECNOLOGIA – FT
ENGENHARIA DE TELECOMUNICAÇÕES
RELATÓRIO 4 - LED + BUZZER
Awanne Beatriz Zanca 166156
Guilherme Leite de Sousa 217229
Marianna Do Amaral Pistoresi 184669
TT 615 A - Microcontroladores II
Profa. Dra. Talía Simões dos Santos Ximenez
Limeira
2023
#include //Inclui a biblioteca
const char* ssid = "Grupo2-ESP32-AP"; //Define o nome do ponto de acesso
const char* pass = "87654321"; //Define a senha
WiFiServer sv(80); //Cria um servidor na porta 80
void setup() {
Serial.begin(115200); //Inicia o monitor serial
pinMode(23, OUTPUT); //Define a porta 23 como saída
pinMode(22, OUTPUT); //Define a porta 22 como saída
delay(10); //Atraso de 10 milissegundos
Serial.println("\n"); //Pula uma linha
WiFi.softAP(ssid, pass); //Inicia o ponto de acesso
Serial.print("Se conectando a: "); //Imprime mensagem sobre o nome do ponto de acesso
Serial.println(ssid);
IPAddress ip = WiFi.softAPIP(); //Endereço de IP
Serial.print("Endereço de IP: "); //Imprime o endereço de IP
Serial.println(ip);
sv.begin(); //Inicia o servidor
Serial.println("Servidor online"); //Imprime a mensagem de início
}
void loop() {
WiFiClient client = sv.available(); //Cria o objeto cliente
if (client) { //Se este objeto estiver disponível
String line = ""; //Variável para armazenar os dados recebidos
while (client.connected()) { //Enquanto estiver conectado
if (client.available()) { //Se estiver disponível
char c = client.read(); //Lê os caracteres recebidos
if (c == '\n') { //Se houver uma quebra de linha
if (line.length() == 0) { //Se a nova linha tiver 0 de tamanho
client.println("HTTP/1.1 200 OK"); //Envio padrão de início de comunicação
client.println("Content-type:text/html");
client.println();
client.print("Ligue o led clicando aqui"); //Linha para ligar
o led
client.print("Desligue o led clicando aqui"); //Linha para
desligar o led
client.println();
client.print("Ligue o led clicando aqui"); //Linha para
ligar o buzzer
client.print("Desligue o led clicando aqui"); //Linha
para desligar o buzzer
client.println();
break;
} else {
line = "";
}
} else if (c != '\r') {
line += c; //Adiciona o caractere recebido à linha de leitura
}
if (line.endsWith("GET /ligar")) { //Se a linha terminar com "/ligarled", liga o led
digitalWrite(23, HIGH);
}
if (line.endsWith("GET /desligar")) { //Se a linha terminar com "/desligarled", desliga o
led
digitalWrite(23, LOW)
if (line.endsWith("GET /ligar")) { //Se a linha terminar com "/ligabuzzerr", liga o led
digitalWrite(22, HIGH);
}
if (line.endsWith("GET /desligar")) { //Se a linha terminar com "/desligabuzerr", desliga o
buzzer
digitalWrite(22, LOW)
}
}
}
client.stop(); //Para o cliente
}
}
Explicação do código
Este código cria um servidor web simples que permite ao usuário controlar um led e um
LED e um buzzer através de uma interface web. Quando o usuário acessar o endereço de
IP do ponto de acesso do Wi-fi do ESP 232 em um navegador, aparecerá as opções de ligar
e desligar o LED ou o buzzer. Através das URLs “/ligar” e “/desligar”, o usuário pode
controlar tanto o estado do led quanto o do buzzer, de acordo com o respectivo texto de
comando.