WeMos(ESP8266模組)的簡單使用

2020-11-09 11:00:09

基於Arduino的ESP8266WiFi模組的超級簡單使用

在程式設計之前,首先得有Arduino的開發環境,即Aruino IDE;作者現在所使用的是ESP8266 Wemos D1板,某寶價格18塊,既便宜又簡單,還賊有趣。最後所需要就是WeMos的Pack包。準備好之後就能開始開程式設計了。
在這裡插入圖片描述

主要程式碼


include <ESP8266WiFi.h>   //8266的標頭檔案
char *_SSID="ASDASD";     //  雙引號裡是你家裡的WiFi名稱,這裡只是做個示範
char *_PASSWD="1345678";  // WiFi的密碼
//WiFi初始化
void InitWiFi_Sta()
{
    WiFi.mode(WIFI_STA);//設定為WiFi的STA模式,即射頻模式
    WiFi.begin(_SSID,_PASSWD);  //連線上面的WiFi
      while(WiFi.status()!=WL_CONNECTED)  //判斷8266的啟動狀態
      { 
        Serial.print(".");
        delay(500);
      }
       Serial.println(WiFi.localIP());           //列印8266的IP地址
  }
  void setup() {
  Serial.begin(115200);//啟動串列埠
  InitWiFi_Sta();      //初始化8266
  server.begin();     //啟動伺服器,但是現在伺服器還不能用,別急,繼續往下看
}
void loop() {

}

到這之後,WeMos就能連線WiFi了,也可以看到8266的IP地址了。

ESP8266作為伺服器的設定

在完成上面的程式碼之後,ESP8266已經可以連線上我們家裡的路由器或者熱點了,但是這樣並沒有啥用處,我們想要用手機(百度所搜TCP連線app——僅安卓手機)遠端去控制這塊板子,那就需要把8266設定成伺服器。那就要在上面程式碼的基礎上加入以下程式碼:

//WiFi要連線的熱點
char *_SSID="SawHi-Mo";
char *_PASSWD="www.msh7073.com";
//加入以下程式碼
int point =8888;//埠號
WiFiServer server(point);//設定伺服器埠號
........
void loop() {
     char cmd;
     WiFiClient  client =server.available();//伺服器初始化
     while(client.connected()){                   //等待使用者端接入,即手機App的接入
          while(client.available()>0){			//等待使用者端訊息
              cmd=client.read(); 					//讀取訊息內容
              Serial.println(cmd);       //把訊息內容列印出來
              }     
            }
      }
}

在手機和WeMos接入同一個WiFi的情況下,開啟手機下載好的TCP連線App,點選連線主機,輸入在串列埠上顯示IP地址和我們設定的埠號,就能連線並可以給WeMos傳送訊息了。