Thứ Năm, 13 tháng 6, 2019

Làm quen với ESP8266 cho người mới - TCP Server, STA mode ...etc

Chả là hôm nay rảnh hơi, đi mua cái module 4 relay ESP8266 về làm chơi. Mà làm mãi dựa trên cái SmartConfig của mấy bạn tàu mà không được, hỏi cũng chả ai nói sao, thật là khó hiểu,,,,hay là tại tui....chậm tiêu. Anyway, kệ nó vậy, viết bài Tut cho sau này lỡ quên thì còn có chỗ mà coi.

Q1. Nên mua board mà có tích hợp sẵn của mấy ông LCTECH không?
A1: Nope, đừng có mua, mé nó cứ làm lằng nhằng bỏ mịa, việc gì cứ phải đâm đầu ngồi nhớ A1 00, với A1 01 làm gì.
Q2. Nên mua board nào? Mua thêm phụ kiện gì?
A2. Nên mua loại board tích hợp về thử trước, mấy board Node MCU, có ra chừng chục I/O, tha hồ chơi, nó cũng cho code thoải mãi trên IDE của Arduino. Giá mấy con này loại chíp chuyển là CH340 cg chỉ chừng 70k. Sau đó mua thêm một cái module 4 relays chừng 30k nữa là về đóng mở điện bá cháy. Mua thêm vài cái Jump đực-cái, với cái sợi Usb micro của mấy đt  Android.
Chốt lại, cần những thứ sau để bắt đầu chơi:

  1. Board ESP8266 Node mcu, loại chíp CH340 hoặc tương đương
  2. Module 4 relays loại kích cao(thấp)
  3. 10 sợi bus đưc, 10 sợi cái
  4. Dây micro usb
Nào cùng bắt đầu nhé....tèn tén ten

Sơ đồ chân của em ESP8266 Node MCU


Ví dụ 01: Thay đổi trạng thái cho ngõ ra D1


#define LED_PIN D3   // Lưu ý khi khai báo chân cho ESP, nhìn vào mặt trên để khai báo,
                                      // đừng mất công đi khai báo theo chân GPIO

void setup() 
{
  pinMode(LED_PIN, OUTPUT); 
}
int delay_temp=0;
bool stt=0;
void loop() {

     digitalWrite(LED_PIN, stt);
     stt^=1;   //đảo trạng thái bằng lệnh XOR
    delay(500);
    
}


Đấy, giờ nạp được rồi đấy.


Bài 2: Tạo TCP Server trên ESP,  STA network mode

Code sườn được lấy từ Tech Tutorial's website , so  Credite to Tech tutorial 



#include "ESP8266WiFi.h" #define LED D3 const char* ssid = "Lam de thuong"; const char* password = "Lam dep trai"; WiFiServer wifiServer(80); void setup() { pinMode(LED, OUTPUT); Serial.begin(115200); delay(1000); WiFi.begin(ssid, password); while (WiFi.status() != WL_CONNECTED) { delay(1000); Serial.println("Connecting.."); } Serial.print("Connected to WiFi. IP:"); Serial.println(WiFi.localIP()); wifiServer.begin(); } void loop() { WiFiClient client = wifiServer.available(); if (client) { while (client.connected()) { while (client.available()>0) { char c = client.read(); if (c=='H' ) { digitalWrite(LED, HIGH); Serial.println("LED-HIGH"); } if (c=='L' ) { digitalWrite(LED, LOW); Serial.println("LED-LOW"); } delay(10); } } client.stop(); Serial.println("Client disconnected"); } }


Bây giờ làm sao để test code này nhỉ?

Bạn cần down load 1 phần mềm TCP Client bất kỳ và thử connect nhé. Ví dụ nếu tui dùng Hercules để thử chẳng hạn. 


Thứ tự cần làm là: Mở terminal COM trên IDE arduino =>> Mở Hercules =>> Chọn TCP Client =>> Điền IP và port tương ứng với mạng nhà bạn, của tui là xx.xx.1.13 port là 80 =>> Nhập chữ L và H như góc trái dưới =>> Bấm Send.,,,,yeah

Không có nhận xét nào:

Đăng nhận xét