Module thu phát Wifi ESP8266 NodeMCU Lua là kit phát triển dựa trên nền chip Wifi SoC ESP8266 với thiết kế dễ sử dụng và đặc biệt là có thể sử dụng trực tiếp trình biên dịch của Arduino để lập trình và nạp code, điều này khiến việc sử dụng và lập trình các ứng dụng trên ESP8266 trở nên rất đơn giản.
Module thu phát Wifi ESP8266 NodeMCU Lua được dùng cho các ứng dụng cần kết nối, thu thập dữ liệu và điều khiển qua sóng Wifi, đặc biệt là các ứng dụng liên quan đến IoT.
Kit RF thu phát Wifi ESP8266 NodeMCU Lua sử dụng chip nạp và giao tiếp UART mới và ổn định nhất là CP2102 có khả năng tự nhận Driver trên tất cả các hệ điều hành Window và Linux, đây là phiên bản nâng cấp từ các phiên bản sử dụng IC nạp giá rẻ CH340.
Module thu phát Wifi ESP8266 NodeMCU Lua là kit phát triển dựa trên nền chip Wifi SoC ESP8266 với thiết kế dễ sử dụng và đặc biệt là có thể sử dụng trực tiếp trình biên dịch của Arduino để lập trình và nạp code, điều này khiến việc sử dụng và lập trình các ứng dụng trên ESP8266 trở nên rất đơn giản.
Module thu phát Wifi ESP8266 NodeMCU Lua được dùng cho các ứng dụng cần kết nối, thu thập dữ liệu và điều khiển qua sóng Wifi, đặc biệt là các ứng dụng liên quan đến IoT.
Kit RF thu phát Wifi ESP8266 NodeMCU Lua sử dụng chip nạp và giao tiếp UART mới và ổn định nhất là CP2102 có khả năng tự nhận Driver trên tất cả các hệ điều hành Window và Linux, đây là phiên bản nâng cấp từ các phiên bản sử dụng IC nạp giá rẻ CH340.
Đặc tính nổi bật Module thu phát Wifi ESP8266
THÔNG SỐ KỸ THUẬT
Các chẩn giao tiếp và các thông tin khác :
Hướng dẫn cài đặt và sử dụng NodeMCU với trình biên dịch Arduino:
Link tải Driver CP2102.
http://www.instructables.com/id/Programming-ESP8266-ESP-12E-NodeMCU-Using-Arduino-/
https://github.com/esp8266/Arduino#installing-with-boards-manager
————————CODE THAM KHẢO———————
/* Cắm cable kết nối
* Mở Device Manger để xem port
* Vào Tools -> Board -> NodeMCU 1.0 (ESP-12E Module)
* Vào Tools -> Port -> Chọn Port kết nối.
* Nạp code xong dùng điện thoại có kết nối Wifi truy cập vào wifi có tên NSHOP, mật khẩu: 12345678
*/
#include <ESP8266WiFi.h>
#include <WiFiClient.h>
#include <ESP8266WebServer.h>
const char *ssid = "NSHOP";
const char *password = "12345678";
int stateLED = LOW;
ESP8266WebServer server(80);
void handleRoot() {
response();
}
void handleLedOn() {
stateLED = HIGH;
digitalWrite(4, stateLED);
digitalWrite(5, stateLED);
response();
}
void handleLedOff() {
stateLED = LOW;
digitalWrite(4, stateLED);
digitalWrite(5, stateLED);
response();
}
const String HtmlHtml = "<html><head>"
"<BODY align="center">"
"<meta name="viewport" content="width=device-width, initial-scale=1" /></head>";
const String HtmlHtmlClose = "</html>";
const String HtmlTitle = "<h1>NamVietGroup</h1><br/>
";
const String HtmlLedStateLow = "<big>LED is now <b>OFF</b></big><br/>
";
const String HtmlLedStateHigh = "<big>LED is now <b>ON</b></big><br/>
";
const String HtmlButtons =
"<a href="LEDOn"><button style="display: block; width: 100%;">ON</button></a><br/>"
"<a href="LEDOff"><button style="display: block; width: 100%;">OFF</button></a><br/>";
void response() {
String htmlRes = HtmlHtml + HtmlTitle;
if (stateLED == LOW) {
htmlRes += HtmlLedStateLow;
} else {
htmlRes += HtmlLedStateHigh;
}
htmlRes += HtmlButtons;
htmlRes += HtmlHtmlClose;
server.send(200, "text/html", htmlRes);
}
void setup() {
delay(1000);
Serial.begin(115200);
Serial.println();
WiFi.softAP(ssid, password);
IPAddress apip = WiFi.softAPIP();
Serial.print("visit:
");
Serial.println(apip);
server.on("/", handleRoot);
server.on("/LEDOn", handleLedOn);
server.on("/LEDOff", handleLedOff);
server.begin();
Serial.println("HTTP server beginned");
pinMode(4, OUTPUT);
digitalWrite(0, stateLED);
pinMode(5, OUTPUT);
digitalWrite(1, stateLED);
}
void loop() {
server.handleClient();
}
Thu:
/* Cắm cable kết nối
* Mở Device Manger để xem port
* Vào Tools -> Board -> NodeMCU 1.0 (ESP-12E Module)
* Vào Tools -> Port -> Chọn Port kết nối.
* Nạp code.
* Mở Serial Monitor chọn Both NL & CR, baud 115200.
* Bấm nút reset trên module
*/
#include <ESP8266WiFi.h>
const char* ssid = "Linh Kien Dien Tu NSHOP";// wifi muốn kết nối------------------------------------------
const char* password = "dientuchatluong";
int ledPin = 13; // GPIO13
WiFiServer server(80);
void setup() {
Serial.begin(115200);
delay(10);
pinMode(ledPin, OUTPUT);
digitalWrite(ledPin, LOW);
// Connect to WiFi network
Serial.println();
Serial.println();
Serial.print("Connecting to ");
Serial.println(ssid);
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println("");
Serial.println("WiFi connected");
// Start the server
server.begin();
Serial.println("Server started");
// Print the IP address
Serial.print("Use this URL to connect: ");
Serial.print("http://");
Serial.print(WiFi.localIP());
Serial.println("/");
}
void loop() {
// Check if a client has connected
WiFiClient client = server.available();
if (!client) {
return;
}
// Wait until the client sends some data
Serial.println("new client");
while(!client.available()){
delay(1);
}
// Read the first line of the request
String request = client.readStringUntil('r');
Serial.println(request);
client.flush();
// Match the request
int value = LOW;
if (request.indexOf("/LED=ON") != -1) {
digitalWrite(ledPin, HIGH);
value = HIGH;
}
if (request.indexOf("/LED=OFF") != -1) {
digitalWrite(ledPin, LOW);
value = LOW;
}
// Set ledPin according to the request
//digitalWrite(ledPin, value);
// Return the response
client.println("HTTP/1.1 200 OK");
client.println("Content-Type: text/html");
client.println(""); // do not forget this one
client.println("<!DOCTYPE HTML>");
client.println("<html>");
client.print("Led pin is now: ");
if(value == HIGH) {
client.print("On");
} else {
client.print("Off");
}
client.println("<br><br>");
client.println("<a href="/LED=ON""><button>Turn On </button></a>");
client.println("<a href="/LED=OFF""><button>Turn Off </button></a><br />");
client.println("</html>");
delay(1);
Serial.println("Client disonnected");
Serial.println("");
}
Arduino Ethernet Shield
Arduino MEGA2560 R3 Atmega 16u2
Arduino Nano V3.0 ATmega328P (Không kèm dây cáp USB)
Arduino UNO R3 DIP (kèm cáp)
Dây Cáp A-B 50cm
Dây Cáp Mini Usb, Cáp Nano (Cáp Usb to Mini Usb)