/*
Código demonstrativo para a aula de Sistemas Embarcados,
Curso de Ciência da Computação e Engenharia da Computação
EEP.
*/
#include <WiFi.h>
#include <HTTPClient.h>
const String url = "http://api.thingspeak.com/update";
HTTPClient cliente;
void setup() {
Serial.begin(115200);
while (!Serial) { }
WiFi.begin("Wokwi-GUEST", "");
while (WiFi.status() != WL_CONNECTED) {
delay(250);
}
Serial.println("-----------------------------------------------");
Serial.print("Endereco IP: ");
Serial.println(WiFi.localIP());
Serial.println("-----------------------------------------------");
delay(1000);
}
void loop() {
char payload[80];
int v1 = analogRead(32);
int v2 = analogRead(33);
int v3 = analogRead(34);
int v4 = analogRead(35);
Serial.println("");
Serial.print("A0: ");
Serial.println(v1);
Serial.print("A1: ");
Serial.println(v2);
Serial.print("A2: ");
Serial.println(v3);
Serial.print("A3: ");
Serial.println(v4);
Serial.println("");
Serial.println("Requisicao: POST");
sprintf(payload, "&field1=%d&field2=%d&field3=%d&field4=%d", v1, v2, v3, v4);
int contentLength = strlen(payload);
cliente.begin(url);
cliente.addHeader("Content-Type", "application/x-www-form-urlencoded");
cliente.addHeader("Content-Length", String(contentLength));
// Substituir sua_chave_escrita pela chave de escrita do canal - Write API Key.
// cliente.addHeader("X-THINGSPEAKAPIKEY","sua_chave_escrita");
cliente.addHeader("X-THINGSPEAKAPIKEY", "sua_chave_escrita");
int statusCode = cliente.POST(payload);
String response = cliente.getString();
Serial.print("Status: ");
Serial.println(statusCode);
Serial.print("Retorno: ");
Serial.println(response);
Serial.println();
delay(15000);
}