86 lines
1.6 KiB
Arduino
86 lines
1.6 KiB
Arduino
|
#define SSID "Hello_pepe"
|
||
|
#define PASS "labinteractius"
|
||
|
#define IP "184.106.153.149" // thingspeak.com IP
|
||
|
String GET = "GET /update?key=ZPZQATRWW8F85IF4&field1=";
|
||
|
|
||
|
long randNumber;
|
||
|
#define RST 7
|
||
|
|
||
|
void setup()
|
||
|
{
|
||
|
pinMode(RST, OUTPUT);
|
||
|
digitalWrite(RST, LOW); //Modo Wifly ON
|
||
|
delay(1000);
|
||
|
digitalWrite(RST, HIGH); //Modo Wifly ON
|
||
|
delay(5000);
|
||
|
Serial.begin(115200);
|
||
|
Serial1.begin(9600);
|
||
|
Serial1.println("AT");
|
||
|
Serial.println("Esperando respuesta");
|
||
|
if (Serial1.find("OK")) {
|
||
|
Serial.println("OK");
|
||
|
connectWiFi();
|
||
|
}
|
||
|
}
|
||
|
|
||
|
void loop() {
|
||
|
char buffer[10];
|
||
|
randNumber = random(1,100);
|
||
|
String tempF = dtostrf(randNumber, 4, 1, buffer);
|
||
|
updateData(tempF);
|
||
|
delay(5000);
|
||
|
digitalWrite(RST, LOW); //Modo Wifly ON
|
||
|
delay(10000);
|
||
|
digitalWrite(RST, HIGH); //Modo Wifly ON
|
||
|
delay(5000);
|
||
|
}
|
||
|
|
||
|
void updateData(String data) {
|
||
|
String cmd = "AT+CIPSTART=\"TCP\",\"";
|
||
|
cmd += IP;
|
||
|
cmd += "\",80";
|
||
|
Serial1.println(cmd);
|
||
|
// Serial.println(cmd);
|
||
|
delay(2000);
|
||
|
if (Serial1.find("Error")) {
|
||
|
return;
|
||
|
}
|
||
|
cmd = GET;
|
||
|
cmd += data;
|
||
|
cmd += "\r\n";
|
||
|
Serial1.print("AT+CIPSEND=");
|
||
|
Serial.print("AT+CIPSEND=");
|
||
|
Serial1.println(cmd.length());
|
||
|
Serial.println(cmd.length());
|
||
|
if (Serial1.find(">")) {
|
||
|
Serial1.print(cmd);
|
||
|
Serial.print(cmd);
|
||
|
} else {
|
||
|
Serial1.println("AT+CIPCLOSE");
|
||
|
Serial.println("AT+CIPCLOSE");
|
||
|
}
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
}
|
||
|
|
||
|
boolean connectWiFi() {
|
||
|
Serial1.println("AT+CWMODE=1");
|
||
|
delay(2000);
|
||
|
String cmd = "AT+CWJAP=\"";
|
||
|
cmd += SSID;
|
||
|
cmd += "\",\"";
|
||
|
cmd += PASS;
|
||
|
cmd += "\"";
|
||
|
Serial1.println(cmd);
|
||
|
Serial.println(cmd);
|
||
|
delay(5000);
|
||
|
if (Serial1.find("OK")) {
|
||
|
return true;
|
||
|
} else {
|
||
|
return false;
|
||
|
}
|
||
|
}
|