#include <ESP8266WiFi.h>
#include <WiFiClient.h>
#include <ESP8266WebServer.h>
//#include «index.h»
#define LED D0
//const char* ssid = «****»;
//const char* password = «****»;
const char *ssid = «myesp8266»;
const char *password = «12345678»;
ESP8266WebServer server(80);
void handleRoot(){
//String s = webpage;
server.send(200, «text/html», startHTML());
}
void sensor_data(){
int a = analogRead(A0);
int temp= a/4.35;
String sensor_value = String(temp);
server.send(200, «text/plane», sensor_value);
}
void read_data(){
String val=server.arg(«value»);
Serial.println(val);
}
void led_control(){
String state = «OFF»;
String act_state = server.arg(«state»);
if(act_state == «1») {
digitalWrite(LED,HIGH); //LED ON
state = «ON»;
}else{
digitalWrite(LED,LOW); //LED OFF
state = «OFF»;
}
server.send(200, «text/plane», state);
}
void setup(void){
Serial.begin(115200);
// WiFi.begin(ssid, password);
Serial.println(«»);
pinMode(LED,OUTPUT);
// while (WiFi.status() != WL_CONNECTED){
// Serial.print(«Connecting…»);
// }
WiFi.softAP(ssid, password);
IPAddress apip = WiFi.softAPIP();
Serial.println(«»);
// Serial.print(«Connected to «);
// Serial.println(ssid);
// Serial.print(«IP address: «);
// Serial.println(WiFi.localIP());
server.on(«/», handleRoot);
server.on(«/led_set», led_control);
server.on(«/adcread», sensor_data);
server.on(«/but_st»,read_data);
server.begin();
}
void loop(void){
server.handleClient();
}
String startHTML(){
String out = R»=====(
<!DOCTYPE html>
<html>
<style type=»text/css»>
.button {
background-color: #4CAF50; /* Green */
border: none;
color: white;
padding: 15px 32px;
text-align: center;
text-decoration: none;
display: inline-block;
font-size: 16px;
}
</style>
<body style=»background-color: #f9e79f «>
<center>
<div>
<h1>AJAX BASED ESP8266 WEBSERVER</h1>
<button class=»button» onclick=»send(1)»>LED ON</button>
<button class=»button» onclick=»send(0)»>LED OFF</button><BR>
</div>
<br>
<div><h2>
Temp(C): <span id=»adc_val»>0</span><br><br>
LED State: <span id=»state»>NA</span>
</h2>
<br>
<h3>Send data:<br>
<input type=»text» length=10 id=»valdat»/>
<button type=»button» onclick=»sendData()»>sent</button>
</h3>
</div>
<script>
function send(led_sts)
{
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
document.getElementById(«state»).innerHTML = this.responseText;
}
};
xhttp.open(«GET», «led_set?state=»+led_sts, true);
xhttp.send();
}
function sendData()
{
var xhttp = new XMLHttpRequest();
document.getElementById(«valdat»);
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
document.getElementById(«valdat»).innerHTML = this.responseText;
}
};
xhttp.open(«GET», «but_st?value=»+document.getElementById(«vadat»).value, true);
xhttp.send();
}
setInterval(function()
{
getData();
}, 2000);
function getData() {
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
document.getElementById(«adc_val»).innerHTML =
this.responseText;
}
};
xhttp.open(«GET», «adcread», true);
xhttp.send();
}
</script>
</center>
</body>
</html>
)=====»;
return out;
}