SSID,Password 설정
WIFI 설정 - spec 이 다르거나 설정 잘못, APN이 멀때는 신호가 원할하지 않을 수 있음
예제 - Hello server
#include <ESP8266WiFi.h>
#include <WiFiClient.h>
#include <ESP8266WebServer.h>
#include <ESP8266mDNS.h>
const char* ssid = "kipfa-class1_2.4G";
const char* password = "classroom1";
ESP8266WebServer server(80); //포트가 다르면 못만남.
const int led = D4;
void handleRoot() {
digitalWrite(led, 0);
server.send(200, "text/plain", "hello sever!");
digitalWrite(led, 1);
}
void handleNotFound(){
digitalWrite(led, 1);
String message = "File Not Found\n\n";
message += "URI: ";
message += server.uri();
message += "\nMethod: ";
message += (server.method() == HTTP_GET)?"GET":"POST";
message += "\nArguments: ";
message += server.args(); // 파라미터의 개수.
message += "\n";
for (uint8_t i=0; i<server.args(); i++){
message += " " + server.argName(i) + ": " + server.arg(i) + "\n";
}
server.send(404, "text/plain", message);
digitalWrite(led, 0);
}
void setup(void){
pinMode(led, OUTPUT); // LED를 output으로 설정.
digitalWrite(led, 0);
Serial.begin(115200); // 터미널 속도맞춰야하니까 반드시확인! 이거없으면 시리얼 안돌아감.
WiFi.begin(ssid, password); // WIFI 오브젝트 실행시킴.
Serial.println("");
// Wait for connection
while (WiFi.status() != WL_CONNECTED) { // 아직 와이파이가 연결되지 않은 상태일 때.
delay(500);
Serial.print(".");
}
Serial.println("");
Serial.print("Connected to ");
Serial.println(ssid);
Serial.print("IP address: ");
Serial.println(WiFi.localIP()); // 와이파이 IP주소
if (MDNS.begin("esp8266")) {
Serial.println("MDNS responder started");
}
/*Event Driven 프로그래밍 - 요새나온 모든 랭귀지는 이런 구조를 가짐. ㅎㅎ
function선언해놓고 요고면 요고불러와라....*/
server.on("/", handleRoot); // 선언) 명령이 "/" 이면 handleRoot 실행시키기.
server.on("/inline", [](){ // 선언) 명령이 "index" 이면 [](){...}; 라는 익명함수를 실행시키기.
server.send(200, "text/plain", "this works as well");
});
server.on("/on", [](){ // 선언) 명령이 "on" 이면 [](){...}; 라는 익명함수를 실행시키기.
server.send(200, "text/plain", "LED ON");
digitalWrite(led, 0);
});
server.on("/off", [](){ // 선언) 명령이 "off" 이면 [](){...}; 라는 익명함수를 실행시키기.
server.send(200, "text/plain", "LED OFF");
digitalWrite(led, 1);
});
server.onNotFound(handleNotFound); //
server.begin();
Serial.println("HTTP server started");
}
void loop(void){
server.handleClient(); // 없어도 아무일 안생김ㅎㅎ
}
'kipfa 필기' 카테고리의 다른 글
0713_먼지센서 구동_Sketch에서 실행 (0) | 2017.07.13 |
---|---|
0713_먼지센서(SDS011 Air Quality Sensor) 이용하기 (0) | 2017.07.13 |
0712_HttpRequest 예제(성공) (0) | 2017.07.12 |
0712_Blink 예제(성공) (0) | 2017.07.12 |
0712 (0) | 2017.07.12 |