Created
September 23, 2016 16:58
-
-
Save vsinha/40086ca3509fb070a5349d8eedcad838 to your computer and use it in GitHub Desktop.
esp8266 arduino wifi
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include <ESP8266WiFi.h> | |
const char* ssid = "************"; | |
const char* password = "****************"; | |
WiFiServer server(80); | |
void setup() | |
{ | |
Serial.begin(115200); | |
Serial.println(); | |
Serial.printf("Connecting to %s ", ssid); | |
WiFi.begin(ssid, password); | |
while (WiFi.status() != WL_CONNECTED) | |
{ | |
delay(500); | |
Serial.print("."); | |
} | |
Serial.println(" connected"); | |
server.begin(); | |
Serial.printf("Web server started, open %s in a web browser\n", WiFi.localIP().toString().c_str()); | |
} | |
// prepare a web page to be send to a client (web browser) | |
String prepareHtmlPage() | |
{ | |
String htmlPage = | |
String("HTTP/1.1 200 OK\r\n") + | |
"Content-Type: text/html\r\n" + | |
"Connection: close\r\n" + // the connection will be closed after completion of the response | |
"Refresh: 1\r\n" + // refresh the page automatically every 1 sec | |
"\r\n" + | |
"<!DOCTYPE HTML>" + | |
"<html>" + | |
"Analog input: " + String(analogRead(A0)) + | |
"</html>" + | |
"\r\n"; | |
return htmlPage; | |
} | |
void loop() | |
{ | |
WiFiClient client = server.available(); | |
// wait for a client (web browser) to connect | |
if (client) | |
{ | |
// Serial.println("\n[Client connected]"); | |
while (client.connected()) | |
{ | |
// read line by line what the client (web browser) is requesting | |
if (client.available()) | |
{ | |
String line = client.readStringUntil('\r'); | |
// Serial.print(line); | |
// wait for end of client's request, that is marked with an empty line | |
if (line.length() == 1 && line[0] == '\n') | |
{ | |
client.println(prepareHtmlPage()); | |
break; | |
} | |
} | |
} | |
delay(1); // give the web browser time to receive the data | |
// close the connection: | |
client.stop(); | |
// Serial.println("[Client disonnected]"); | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment