- Sat Apr 22, 2017 7:18 am
#65138
i am using WiFiEsp library to connect to the Internet with an Arduino board. I want to make a http get request to server per second, but the whole code run about 2 to 3 second. Is there any way to speed up the code? I just want to upload some sensor data to mysql.
Code: Select all#include "WiFiEsp.h"
// Emulate Serial1 on pins 6/7 if not present
#ifndef HAVE_HWSERIAL1
#include "SoftwareSerial.h"
SoftwareSerial Serial1(3, 4); // RX, TX
#endif
char ssid[] = "testing"; // your network SSID (name)
char pass[] = "123456"; // your network password
int status = WL_IDLE_STATUS; // the Wifi radio's status
char server[] = "temmonitor.pe.hu";
// Initialize the Ethernet client object
WiFiEspClient client;
void setup()
{
// initialize serial for debugging
Serial.begin(9600);
// initialize serial for ESP module
Serial1.begin(9600);
// initialize ESP module
WiFi.init(&Serial1);
// check for the presence of the shield
if (WiFi.status() == WL_NO_SHIELD) {
Serial.println("WiFi shield not present");
// don't continue
while (true);
}
// attempt to connect to WiFi network
while ( status != WL_CONNECTED) {
Serial.print("Attempting to connect to WPA SSID: ");
Serial.println(ssid);
// Connect to WPA/WPA2 network
status = WiFi.begin(ssid, pass);
}
// you're connected now, so print out the data
Serial.println("You're connected to the network");
printWifiStatus();
Serial.println();
}
void loop()
{
unsigned long starttime, stoptime, looptime;
starttime = millis();
senddata();
stoptime = millis();
looptime = stoptime - starttime;
Serial.print("Run time :");
Serial.println(looptime);
// if there are incoming bytes available
// from the server, read them and print them
while (client.available() ) {
// char c = client.read();
// Serial.write(c);
client.stop();
}
// // if the server's disconnected, stop the client
// if (!client.connected()) {
// Serial.println();
// Serial.println("Disconnecting from server...");
//
// client.stop();
//
// // do nothing forevermore
// while (true);
// }
}
void senddata(){
Serial.println("Starting connection to server...");
// if you get a connection, report back via serial
if (client.connect(server, 80)) {
Serial.println("Connected to server");
// Make a HTTP request
client.println("GET /upload.php?vid=44 HTTP/1.1");
client.println("Host: temmonitor.pe.hu");
client.println("Connection: close");
client.println();
}
}
void printWifiStatus()
{
// print the SSID of the network you're attached to
Serial.print("SSID: ");
Serial.println(WiFi.SSID());
// print your WiFi shield's IP address
IPAddress ip = WiFi.localIP();
Serial.print("IP Address: ");
Serial.println(ip);
// print the received signal strength
long rssi = WiFi.RSSI();
Serial.print("Signal strength (RSSI):");
Serial.print(rssi);
Serial.println(" dBm");
}