RM新时代网站-首页

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

ESP8266無線通訊模塊的驅(qū)動(dòng)設(shè)計(jì)與實(shí)現(xiàn)

CHANBAEK ? 來源:木南創(chuàng)智 ? 作者:尹家軍 ? 2022-12-08 14:31 ? 次閱讀

我們的物聯(lián)網(wǎng)產(chǎn)品所使用的平臺(tái)都支持無線通訊,而且無線通訊本身更的成本較低,受到大家的歡迎。在本篇文章中,我們將詳細(xì)討論并實(shí)現(xiàn)ESP8266無線通訊模塊的驅(qū)動(dòng)。

1 、功能概述

ESP8266是由樂鑫公司出品的一款物聯(lián)網(wǎng)芯片,因?yàn)閮r(jià)格較低,性能穩(wěn)定等收到很大關(guān)注。

該芯片可工作于三種WIFI模式下,分別是:station模式,AP模式以及混合模式,通過AT指令進(jìn)行控制,顯影的指令格式為:AT+CWMODE=mode。mode的取值決定設(shè)定的模式:

當(dāng)mode為1時(shí),ESP8266工作于station 模式:ESP8266 模塊通過路由器連接互聯(lián)網(wǎng),手機(jī)電腦通過互聯(lián)網(wǎng)實(shí)現(xiàn)對設(shè)備的遠(yuǎn)程控制。

當(dāng)mode為2時(shí),ESP8266工作于softAP 模式:ESP8266 模塊作為熱點(diǎn),手機(jī)或電腦直接與模塊連接,實(shí)現(xiàn)局域網(wǎng)無線控制。

當(dāng)mode為3時(shí),ESP8266工作于softAP + station模式:兩種模式的共存模式,即可以通過互聯(lián)網(wǎng)控制可實(shí)現(xiàn)無縫切換,方便操作。

ESP8266擁有2種傳輸模式,即正常模式和透傳模式。而傳輸模式的配置也是采用AT指令,具體格式為:AT+CIPMODE=mode。其中mode 取值0時(shí),為普通傳輸模式;而mode 取值1時(shí),為透傳模式,僅支持TCP單連接和 UDP固定通信對端的情況。在正常模式下,每次發(fā)送數(shù)據(jù)前都必須先發(fā)送指令A(yù)T+CIPSEND=param。而在透傳模式下,我們就不需要在每次發(fā)送數(shù)據(jù)前都發(fā)送指令A(yù)T+CIPSEND=param了,只需要發(fā)送一次AT+CIPSEND,之后發(fā)送的所有內(nèi)容全部當(dāng)成是數(shù)據(jù)了。但這又存在一個(gè)問題,我們想要發(fā)送命令該如何呢?那么就需要發(fā)送數(shù)據(jù)"+++"來退出透傳模式。

ESP8266有幾種不同的使用方式,最為常見的就是使用AT指令進(jìn)行操作。ESP8266的AT指令分為基礎(chǔ)AT指令、WiFi功能AT指令和TCP/IP相關(guān)AT指令3個(gè)方面。這些指令從使用功能上講可分為4類:

Dingtalk_20221206154648.jpg

按照相應(yīng)的格式發(fā)送不同的AT指令就可以實(shí)現(xiàn)ESP8266的數(shù)據(jù)通訊了。

2 、驅(qū)動(dòng)設(shè)計(jì)與實(shí)現(xiàn)

ESP8266無線通訊模塊是常用的通訊模塊,我們已經(jīng)描述了其功能及通訊方式,接下來我們將設(shè)計(jì)并實(shí)現(xiàn)其驅(qū)動(dòng)程序。

2.1 、對象定義

在使用一個(gè)對象之前我們需要獲得一個(gè)對象。同樣的我們想要ESP8266無線通訊模塊就需要先定義ESP8266無線通訊模塊的對象。

2.1.1 、對象的抽象

我們要得到ESP8266無線通訊模塊對象,需要先分析其基本特性。一般來說,一個(gè)對象至少包含兩方面的特性:屬性與操作。接下來我們就來從這兩個(gè)方面思考一下ESP8266無線通訊模塊的對象。

先來考慮屬性,作為屬性肯定是用于標(biāo)識或記錄對象特征的東西。我們來考慮ESP8266無線通訊模塊對象屬性。我們考慮到ESP8266的WIFI模式以及數(shù)據(jù)傳輸模式?jīng)Q定了其工作方式,在使用過程中有時(shí)我們也需要了解這兩個(gè)模式的配置是什么,所以我們將其作為對象的屬性已記錄這兩個(gè)模式配置。我們每一個(gè)ESP8266對象都需要接收數(shù)據(jù),所以要有一個(gè)接受緩存區(qū),我們定義了一個(gè)結(jié)構(gòu)體變量來作為對象接收緩沖區(qū)。

接著我們還需要考慮ESP8266無線通訊模塊對象的操作問題。我們想要使用ESP8266對象實(shí)現(xiàn)我們的功能,就需要發(fā)送命令或數(shù)據(jù)以及接收數(shù)據(jù)。串口接收數(shù)據(jù)我們一般使用中斷方式,所以定義了緩沖區(qū),不再需要特定的操作。串口發(fā)送消息需要實(shí)現(xiàn),但這依賴于具體的硬件平臺(tái),所以我們將其作為對象的操作。此外,我們使用串口通訊時(shí),需要控制時(shí)序就離不開延時(shí)函數(shù),而延時(shí)操作一般都依賴于具體的軟硬件平臺(tái),所以我們將延時(shí)函數(shù)作為對象的一個(gè)操作。

根據(jù)上述我們對ESP8266無線通訊模塊的分析,我們可以定義ESP8266無線通訊模塊的對象類型如下:

/*定義ESP8266對象*/
typedef struct Esp8266Object {
 Esp8266CWModeType cwMode;    //WIFI模式
 Esp8266CIPModeType cipMode;   //傳輸模式,正常或透傳
 struct EspRxBuffer{
   uint8_t queue[Esp8266RxBufferLength];   //數(shù)據(jù)存儲(chǔ)隊(duì)列
   uint8_t lengthRecieving;               //正在接收的數(shù)據(jù)長度
   uint8_t lengthRecieved;                //已經(jīng)接收的數(shù)據(jù)長度
 }rxBuffer;
 void (*SendData)(uint8_t *sData,uint16_t sSize);//數(shù)據(jù)發(fā)送函數(shù)指針
 void (*Delayms)(volatile uint32_t nTime);     //延時(shí)操作指針
}Esp8266ObjectObject;

2.1.2 、對象初始化

我們知道,一個(gè)對象僅作聲明是不能使用的,我們需要先對其進(jìn)行初始化,所以這里我們來考慮ESP8266無線通訊模塊對象的初始化函數(shù)。一般來說,初始化函數(shù)需要處理幾個(gè)方面的問題。一是檢查輸入參數(shù)是否合理;二是為對象的屬性賦初值;三是對對象作必要的初始化配置。據(jù)此我們設(shè)計(jì)ESP8266無線通訊模塊對象的初始化函數(shù)如下:

/*ESP8266對象初始化*/
voidEsp8266Initialization(Esp8266ObjectObject *esp,    //ESP8266對象
                   Esp8266CWModeTypecwMode,    //WIFI模式
                   Esp8266CIPModeTypecipMode,  //傳輸模式,正常或透傳
                   char *wifiName,              //WIFI名稱
                  char*wifiPassword,          //WIFI密碼
                   ESP8266SendDataTypesend,    //發(fā)送函數(shù)指針
                   ESP8266DelaymsTypedelayms   //毫秒延時(shí)函數(shù)
                  )
{
 char cwjap[50];
 char cwsap[50];
 
 if((esp==NULL)||(send==NULL)||(delayms==NULL))
 {
   return;
 }
 esp->SendData=send;
 esp->Delayms=delayms;
 
 esp->cwMode=cwMode;
 esp->cipMode=cipMode;
 
 esp->rxBuffer.lengthRecieved=0;
 ClearReciveBuffer(esp);
 
 //設(shè)置工作模式 1:station模式   2:AP模式 3:兼容 AP+station模式
 if(Esp8266SendCommmand(esp,cwModeCmd[esp->cwMode],"OK",50)==Esp8266_TxFial)
 {
   return;
 }
 
 //讓W(xué)ifi模塊重啟的命令
 if(Esp8266SendCommmand(esp,"AT+RST","OK",20)==Esp8266_TxFial)
 {
   return;
 }
 
 esp->Delayms(3000);         //延時(shí)3S等待重啟成功
 
 if(esp->cwMode==Esp8266_StationMode)
 {
   sprintf(cwjap,"AT+CWJAP_CUR=\"%s\",\"%s\"\\r\\n",wifiName,wifiPassword);
   
   //讓模塊連接上自己的路由
   if(Esp8266SendCommmand(esp,cwjap,"OK",600)==Esp8266_TxFial)
   {
     return;
   }
   
   if(esp->cipMode==Esp8266_TransMode)
   {
     if(Esp8266EnterTrans(esp)==Esp8266_TxFial)
     {
       return;
     }
   }
   else
   {
     //=0:單路連接模式    =1:多路連接模式
     if(Esp8266SendCommmand(esp,"AT+CIPMUX=0\\r\\n","OK",20)==Esp8266_TxFial)
     {
       return;
     }
   }
 }
 else if(esp->cwMode==Esp8266_SoftAPMode)
 {
   sprintf(cwsap,"AT+CWSAP_CUR=\"%s\",\"%s\"\\r\\n",wifiName,wifiPassword);
   
   //設(shè)置模塊的WIFI名和密碼
   if(Esp8266SendCommmand(esp,cwsap,"OK",600)==Esp8266_TxFial)
   {
     return;
   }
 }
 else if(esp->cwMode==Esp8266_MixedMode)
 {
   //尚未使用,有待添加
 }
}

2.2 、對象操作

我們已經(jīng)完成了ESP8266無線通訊模塊對象類型的定義和對象初始化函數(shù)的設(shè)計(jì)。但我們的主要目標(biāo)是獲取對象的信息,接下來我們還要實(shí)現(xiàn)面向ESP8266無線通訊模塊的各類操作。

對于ESP8266來說,發(fā)送命令主要是AT命令,這是與發(fā)送數(shù)據(jù)完全不同的操作,所以我們設(shè)計(jì)了一個(gè)專用于命令發(fā)送的操作函數(shù)。

/*ESP8266發(fā)送命令*/
static Esp8266TxStatusTypeEsp8266SendCommmand(Esp8266ObjectObject *esp,char *cmd,char *ack,uint16_ttimeOut)
{
 esp->SendData((unsigned char *)cmd, strlen((const char *)cmd));       //寫命令到網(wǎng)絡(luò)設(shè)備
 
 if(ack&&timeOut)
 {
   while(timeOut--)      //等待超時(shí)
   {
     if(ChecRecieveFinished(esp) == Esp8266_RxFinish)    //如果數(shù)據(jù)接收完成
     {
       if(strstr((const char *)esp->rxBuffer.queue,ack) != NULL)       //如果檢索到關(guān)鍵詞
       {
         ClearReciveBuffer(esp);
                           
         return Esp8266_RxSucceed;
       }
     }
             
     esp->Delayms(10);
   }
 }
 
 return Esp8266_TxFial;
}

而ESP8266在發(fā)送數(shù)據(jù)時(shí),因發(fā)送模式的不同會(huì)有一定區(qū)別。在透傳模式下只需要發(fā)送數(shù)據(jù)就好了。而在普通模式下,需要先發(fā)送AT命令再發(fā)送發(fā)送數(shù)據(jù)。所以我們可設(shè)計(jì)數(shù)據(jù)發(fā)送函數(shù)如下:

/*ESP8266發(fā)送數(shù)據(jù)*/
void Esp8266SendData(Esp8266ObjectObject*esp,uint8_t *sData,uint16_t sSize)
{
 if(esp->cipMode==Esp8266_TransMode)
 {
   esp->SendData(sData,sSize);
 }
 else
 {
   char cmd[32];
 
   esp->Delayms(50);
   ClearReciveBuffer(esp);
   sprintf(cmd,"AT+CIPSEND=%d\\r\\n",sSize);
   
   if(Esp8266SendCommmand(esp,cmd, ">",1)==Esp8266_RxSucceed)     //收到‘>’時(shí)可以發(fā)送數(shù)據(jù)
   {
     esp->SendData(sData,sSize);
   }
 }
}

3 、驅(qū)動(dòng)的使用

我們已經(jīng)設(shè)計(jì)并實(shí)現(xiàn)了ESP8266無線通訊模塊的驅(qū)動(dòng)程序。接下來我們將設(shè)計(jì)一個(gè)簡單的應(yīng)用以驗(yàn)證驅(qū)動(dòng)的設(shè)計(jì)是否符合要求。

3.1 、聲明并初始化對象

使用基于對象的操作我們需要先得到這個(gè)對象,所以我們先要使用前面定義的ESP8266無線通訊模塊對象類型聲明一個(gè)ESP8266無線通訊模塊對象變量,具體操作格式如下:

Esp8266ObjectObjectesp;

聲明了這個(gè)對象變量并不能立即使用,我們還需要使用驅(qū)動(dòng)中定義的初始化函數(shù)對這個(gè)變量進(jìn)行初始化。這個(gè)初始化函數(shù)所需要的輸入?yún)?shù)如下:

Esp8266ObjectObject*esp, //ESP8266對象

Esp8266CWModeTypecwMode, //WIFI模式

Esp8266CIPModeTypecipMode, //傳輸模式,正常或透傳

char*wifiName, //WIFI名稱

char*wifiPassword, //WIFI密碼

ESP8266SendDataTypesend, //發(fā)送函數(shù)指針

ESP8266DelaymsTypedelayms //毫秒延時(shí)函數(shù)

對于這些參數(shù),對象變量我們已經(jīng)定義了。而WIFI模式與傳輸模式均為枚舉,根據(jù)實(shí)際情況選擇就好了。同樣WIFI名稱和WIFI密碼更具實(shí)際使用情況輸入,注意時(shí)字符串就可以了。最主要的是我們需要定義幾個(gè)函數(shù),并將函數(shù)指針作為參數(shù)。這幾個(gè)函數(shù)的類型如下:

/*定義ESP8266數(shù)據(jù)發(fā)送指針類型*/
typedef void(*ESP8266SendDataType)(uint8_t *sData,uint16_t sSize);


/*延時(shí)操作指針*/
typedef void (*ESP8266DelaymsType)(volatileuint32_t nTime);

對于這幾個(gè)函數(shù)我們根據(jù)樣式定義就可以了,具體的操作可能與使用的硬件平臺(tái)有關(guān)系。實(shí)際上我們主要需要關(guān)注的是串口發(fā)送函數(shù)。具體函數(shù)定義如下:

/*串口數(shù)據(jù)發(fā)送*/
static void SendDataForEsp8266(uint8_t*txData,uint16_t length)
{
 HAL_UART_Transmit(&esp8266huart,txData,length,1000);
}

對于延時(shí)函數(shù)我們可以采用各種方法實(shí)現(xiàn)。我們采用的STM32平臺(tái)和HAL庫則可以直接使用HAL_Delay()函數(shù)。于是我們可以調(diào)用初始化函數(shù)如下:

/*ESP8266對象初始化*/
  Esp8266Initialization(&esp,                   //ESP8266對象
                    Esp8266_StationMode,    //WIFI模式
                    Esp8266_TransMode,      //傳輸模式,正?;蛲競?/span>
                    wifiName,               //WIFI名稱
                    wifiPassword,           //WIFI密碼
                    SendDataForEsp8266,     //發(fā)送函數(shù)指針
                    HAL_Delay               //毫秒延時(shí)函數(shù)
                    );

3.2 、基于對象進(jìn)行操作

我們定義了對象變量并使用初始化函數(shù)給其作了初始化。接著我們就來考慮操作這一對象獲取我們想要的數(shù)據(jù)。我們在驅(qū)動(dòng)中已經(jīng)將獲取數(shù)據(jù)并轉(zhuǎn)換為轉(zhuǎn)換值的比例值,接下來我們使用這一驅(qū)動(dòng)開發(fā)我們的應(yīng)用實(shí)例。

/*ESP8266數(shù)據(jù)通訊*/
void Esp8266DataCommunication(void)
{
 uint8_tsData[16]={0x10,0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09,0x0A,0x0B,0x0C,0x0D,0x0E,0x0F};
 
 Esp8266SendData(&esp,sData,16);
}

4 、應(yīng)用總結(jié)

在這一篇中我們設(shè)計(jì)并實(shí)現(xiàn)了ESP8266無線模塊的驅(qū)動(dòng),并基于次驅(qū)動(dòng)程序設(shè)計(jì)了一個(gè)簡單的驗(yàn)證應(yīng)用。測試結(jié)果是符合我們的預(yù)期的,說明我們設(shè)計(jì)的驅(qū)動(dòng)沒有問題。

在使用驅(qū)動(dòng)程序時(shí)需要注意,這一驅(qū)動(dòng)只是實(shí)現(xiàn)了ESP8266的基本功能,所以要想實(shí)現(xiàn)更復(fù)雜的功能是可以在驅(qū)動(dòng)基礎(chǔ)上擴(kuò)展的。后續(xù)我們也會(huì)根據(jù)使用的需要進(jìn)一步擴(kuò)充驅(qū)動(dòng)。當(dāng)然這個(gè)驅(qū)動(dòng)是基于AT指令來實(shí)現(xiàn)操作的,擴(kuò)充這個(gè)驅(qū)動(dòng)程序的功能也需要使用AT指令來實(shí)現(xiàn)。

本驅(qū)動(dòng)程序在設(shè)計(jì)時(shí),考慮使用串口中斷來接收數(shù)據(jù),所以我們?yōu)閷ο笤O(shè)計(jì)了一個(gè)接收數(shù)據(jù)緩存結(jié)構(gòu)。在設(shè)計(jì)應(yīng)用時(shí)需在串口中斷服務(wù)函數(shù)中向緩存種添加數(shù)據(jù)。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 物聯(lián)網(wǎng)
    +關(guān)注

    關(guān)注

    2909

    文章

    44468

    瀏覽量

    372444
  • 無線通訊
    +關(guān)注

    關(guān)注

    5

    文章

    580

    瀏覽量

    40003
  • 驅(qū)動(dòng)設(shè)計(jì)

    關(guān)注

    1

    文章

    111

    瀏覽量

    15283
  • ESP8266
    +關(guān)注

    關(guān)注

    50

    文章

    963

    瀏覽量

    44923
收藏 人收藏

    評論

    相關(guān)推薦

    智能家居DIY之硬件設(shè)計(jì)2----WiFi通訊模塊ESP8266+2.4GHZ中轉(zhuǎn)器)

    本帖最后由 linchenfeng 于 2017-4-22 00:23 編輯 本貼介紹基于ESP8266的WiFi通訊模塊,又名“路由模塊”。 在上一個(gè)帖子介紹了NRF24LE1
    發(fā)表于 04-03 20:44

    esp8266過程文檔

    通過串口發(fā)AT指令驅(qū)動(dòng)esp8266wifi模塊,過程
    發(fā)表于 11-10 17:09 ?0次下載

    ESP8266系列模塊選型

    ESP8266系列模塊選型ESP8266 ESP-01 ESO-02
    發(fā)表于 01-05 17:34 ?37次下載

    ESP8266模塊官方使用指導(dǎo)

    無線WiFi ESP8266模塊主導(dǎo)文件,內(nèi)容包括命令指導(dǎo),使用測試、實(shí)例和使用方法
    發(fā)表于 06-08 17:52 ?233次下載

    ESP8266串口WIFI遠(yuǎn)距離無線模塊

    ESP8266串口WIFI 無線模塊 WIFI遠(yuǎn)距離無線模塊 穿墻王
    發(fā)表于 05-10 10:15 ?57次下載

    esp8266無線串口模塊分析介紹

     ESP8266芯片是一款串口轉(zhuǎn)無線模芯片,內(nèi)部自帶固件,用戶操作簡單,無需編寫時(shí)序信號等。ESP8266 系列模組是安信可(Ai-thinker)公司采用樂鑫ESP8266芯片開發(fā)的
    發(fā)表于 11-03 10:28 ?1.3w次閱讀

    ESP8266 wifi模塊開發(fā)匯總

    ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ESP8266 wifi模塊開發(fā)匯總?ESP8266 wifi模塊開發(fā)匯總本文檔主要介紹開發(fā)者在
    發(fā)表于 11-05 19:21 ?188次下載
    <b class='flag-5'>ESP8266</b> wifi<b class='flag-5'>模塊</b>開發(fā)匯總

    51單片機(jī)通過ESP8266模塊與手機(jī)進(jìn)行通訊

    51單片機(jī)通過ESP8266模塊與手機(jī)進(jìn)行通訊WIFI 工作方式:1.AP模式 提供熱點(diǎn)2.Station模式 作為設(shè)備接入熱點(diǎn)3.同時(shí)支持配置通過USB轉(zhuǎn)TTL模塊
    發(fā)表于 11-12 12:06 ?34次下載
    51單片機(jī)通過<b class='flag-5'>ESP8266</b><b class='flag-5'>模塊</b>與手機(jī)進(jìn)行<b class='flag-5'>通訊</b>

    ESP8266連接手機(jī)

    模塊連接,實(shí)現(xiàn)局域網(wǎng)無線控制。3為STA+AP 模式:兩種模式的共存模式,即可以通過互聯(lián)網(wǎng)控制可實(shí)現(xiàn)無縫切換,方便操作。ESP8266有幾
    發(fā)表于 11-30 16:06 ?37次下載
    <b class='flag-5'>ESP8266</b>連接手機(jī)

    ESP8266模塊開發(fā)入門教程

    ,NB-IOT更加合適。一. ESP8266模塊三種工作模式1.STA模式 STA 模式:ESP8266 模塊通過路由器連接互聯(lián)網(wǎng),手機(jī)或電腦通過互聯(lián)網(wǎng)
    發(fā)表于 12-07 17:21 ?18次下載
    <b class='flag-5'>ESP8266</b><b class='flag-5'>模塊</b>開發(fā)入門教程

    STM32與ESP8266通訊

    Hi,我是小魚君~本期小魚君給大家?guī)砹撕唵我锥膯纹瑱C(jī)與ESP8266進(jìn)行無線通訊的教程。在一個(gè)比賽中需要用到單片機(jī)發(fā)送數(shù)據(jù)到云端,我們就用到了ESP8266這個(gè)比較簡單的模塊,網(wǎng)上
    發(fā)表于 12-17 18:34 ?23次下載
    STM32與<b class='flag-5'>ESP8266</b><b class='flag-5'>通訊</b>

    ESP8266相互通訊ESP-NOW)

    辦法,可以用一個(gè)ESP8266模塊作為一個(gè)總的控制,就像一個(gè)管家,來和其他ESP8266通訊,來實(shí)現(xiàn)我們想要的功能。先說一下
    發(fā)表于 12-29 19:33 ?10次下載
    <b class='flag-5'>ESP8266</b>相互<b class='flag-5'>通訊</b>(<b class='flag-5'>ESP</b>-NOW)

    ESP8266 Arduino通訊

    電子發(fā)燒友網(wǎng)站提供《ESP8266 Arduino通訊.zip》資料免費(fèi)下載
    發(fā)表于 11-15 09:38 ?16次下載
    <b class='flag-5'>ESP8266</b> Arduino<b class='flag-5'>通訊</b>

    esp8266驅(qū)動(dòng)電機(jī)

    利用esp8266自制沖bian裝置[doge]文章目錄 利用esp8266自制沖bian裝置[doge] 一、硬件介紹 二、設(shè)備連接 1.8266引腳圖 2.代碼展示 一、硬件介紹 esp8266
    發(fā)表于 03-17 14:51 ?3次下載
    <b class='flag-5'>esp8266</b><b class='flag-5'>驅(qū)動(dòng)</b>電機(jī)

    ESP8266初次如何實(shí)現(xiàn)無線通信(基于電腦與ESP8266)

    的且集成的國產(chǎn)WIFI模塊,它有很多種型號,但是使用方法沒什么太大的區(qū)別,也可以說沒區(qū)別,有些看起來引腳比較多的ESP8266模塊只是將這個(gè)芯片的IO口拓展出來了而已。還有 一種原因就是它采用的是Micropython編程的
    發(fā)表于 05-30 09:53 ?28次下載
    <b class='flag-5'>ESP8266</b>初次如何<b class='flag-5'>實(shí)現(xiàn)</b><b class='flag-5'>無線</b>通信(基于電腦與<b class='flag-5'>ESP8266</b>)
    RM新时代网站-首页