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.
Kit RF 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.
THÔNG SỐ KỸ THUẬT
- Tương thích các chuẩn wifi : 802.11 b/g/n
- Hỗ trợ : Wi-Fi Direct (P2P), soft-AP
- Tích hợp TCP/IP protocol stack
- Tích hợp TR switch, balun, LNA, power amplifier and matching network
- Tích hợp bộ nhân tần số, ổn áp, DCXO and power management units
- +25.dBm output power in 802.11b mode
- Power down leakage current of <10uA
- Integrated low power 32-bit CPU could be used as application processor
- SDIO 1.1/2.0, SPI, UART
- STBC, 1×1 MIMO, 2×1 MIMO
- A-MPDU & A-MSDU aggregation & 0.4ms guard interval
- Wake up and transmit packets in < 2ms
- Dòng tiêu thụ ở Standby Mode < 1.0mW (DTIM3)
Các chẩn giao tiếp và các thông tin khác :
- SDIO 2.0, SPI, UART
- Integrated RF switch, balun, 24dBm PA, DCXO, and PMU
- Integrated RISC processor, on-chip memory and external memory interfaces
- Integrated MAC/baseband processors
- Quality of Service management
- I2S interface for high fidelity audio applications
- On-chip low-dropout linear regulators for all internal supplies
- Proprietary spurious-free clock generation architecture
- Integrated WEP, TKIP, AES, and WAPI engines
————————CODE THAM KHẢO———————
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
Phát:
/* 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
#include
#include
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 = ""
""
"";
const String HtmlHtmlClose = "";
const String HtmlTitle = "
NamVietGroup
";
const String HtmlLedStateLow = "
";
const String HtmlLedStateHigh = "
";
const String HtmlButtons =
"ON
"
"OFF
";
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
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("");
client.println("");
client.print("Led pin is now: ");
if(value == HIGH) {
client.print("On");
} else {
client.print("Off");
}
client.println("
");
client.println("Turn On");
client.println("Turn Off
");
client.println("");
delay(1);
Serial.println("Client disonnected");
Serial.println("");
}