<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                [TOC] # **WIFI模組設計** ## **ESP8266介紹** ESP8266 提供 度集成的 Wi-Fi 解決 案,具有低功耗、設計緊湊、性能可靠等特 點。 ESP8266是 個完整且 成體系的 Wi-Fi 絡解決 案,能夠獨 運 ,也可以作為從 機搭載于其他主機 MCU 運 。ESP8266 在搭載應 并作為設備中唯 的應 處 時,能夠直接從外接 Flash 中啟動。內置的 速緩沖存儲 有 于提 系統性能,并減少 內存需求。 當 ESP8266 負責 線上 接 承擔 Wi-Fi 適配 的任務時,可以將其添加到任何基于 微控制 的設計中,連接簡單 ,只需通過 SPI/SDIO 接 或 I2C/UART 即可。 除 Wi-Fi 功能,ESP8266還集成 Tensilica L106 鉆 系 的 32-bit 處 和 上 SRAM,擁有強 的 上處 和存儲能 。ESP8266 可通過 GPIO 集成傳感 及其他 設備,降低前期的開發成本,并在運 中最少地占 系統資源。樂鑫提供的軟件開發包 (SDK) 包含多種應 的示 代碼。 ESP8266 度 內集成,包括天線開關,射頻 balun,功率放 ,低噪聲接收放 ,濾波 和電源管 模塊。因此整個解決 案僅需極少的外部電 ,并且所占的 PCB 空間達到最低。 ## **WIFI模組的特點** 采用 ESP8266 WIFI模組 系統表現出來的領先特征有: ? 節能在睡眠/喚醒模式之間的快速切換 ? 配合低功率操作的 適應 線電偏置 ? 前端信號的處 功能 ? 故障排除 ? 消除蜂窩/藍 /DDR/LVDS/LCD 擾的 線電系統共存特性 ## **ESP8266最小系統** ESP8266工作原理 ![](https://box.kancloud.cn/383155b86f5fd3d9ebb25f29ff5bd6e7_767x409.png) ESP8266原理說明: ![](https://box.kancloud.cn/6f569e4f8af85f2b67272f1d69c4310b_702x832.jpg) ESP8266開關模式 ![](https://box.kancloud.cn/182acc7209d6059e2c4a72a2e6f40be5_708x127.png) ## **電路圖設計** ESP8266EX 模組的 件只需要 10 個以內電阻電容電感、1 個 源晶振及 1 個 SPI Flash 組成。射頻部分實現全內部集成,并且內部帶有 動校準功能。ESP8266EX 度集成的 特點,使得其外圍設計 常簡單容 。為 能夠 好的確保 ESP8266EX 模組的 作性 能,下 將詳細介紹 ESP8266EX 的原 圖設計與布局設計。 ESP8266EX 模組的整體電 如圖所示。 ![](https://box.kancloud.cn/7496f1d549a0d9ec01e5f6907825ee0e_727x495.png) ESP8266EX 模組的電 圖設計主要包括六部分: ? 電源部分 ? 上電時序與復位 ? Flash ? 晶振 ? 射頻 ? 外置電阻 ### **電源** 1.數字與 IO 電源 ESP8266EX 只有 Pin11 和 Pin17 兩個數字電源管腳。數字電源 需在電 中增加濾波電 容。數字電源 作電壓范圍:1.8V ~ 3.3V。 ![](https://box.kancloud.cn/bfcce6e8d248c5754d8beba78c90143d_709x269.png) 2.模擬電源 ESP8266EX 有 5 個模擬電源管腳,其中 Pin1、Pin3、Pin4 給內置的 PA 和 LNA 供電, Pin28、Pin29 給內置的 PLL 供電。模擬電源管腳的 作電壓為 1.8V ~ 3.3V。 在模擬電源部分需要注意的是當 ESP8266EX 作在 Tx 時,瞬間電流會加 ,往往引起 電源的軌道塌陷,所以在設計時在模擬電源電 上增加 個 0603 或 0805 封裝的 10 μF 電容。此電容可與 0402 封裝的 0.1 μF 電容搭配。 ![](https://box.kancloud.cn/cd31f4e64f07acaa98676ef30f227324_480x461.png) ### **上電時序與復位** 1.上電時序 ESP8266EX 使 3.3V 作為統 的系統電源,所以上電時序上只要遵循: ESP8266EX 的 Pin7 CH_EN 使能管腳上電要晚于系統電源 3.3V 上電,延時時間 (T) 可由 RC 參數計算 得出。 2.復位 ESP8266EX 的 Pin32 為 RST 管腳,此管腳內部有上拉( 使 時也可懸空處 ),此管 腳低電平有效。為防 外界 擾引起重啟, 般要求 RST 引腳的引線需盡 短 些,且 最好加上拉電阻和對地電容。 ESP8266EX 的 Pin7 CH_EN 使能管腳也可作為復位管腳來使 。當 CH_EN 為低電平時, 通常要求輸 電平應低于 0.6V,并持續 200 μs 以上,則 ESP8266EX 會下電。 ### **FLASH** 前 ESP8266EX 采 的 demo Flash 為 SPI Flash,ROM :2 MB,封裝為 SOIC_8 (SOP_8)。 其中在 Pin21 SD_CLK 管腳上 聯 個 0402 封裝的電阻連接到 Flash CLK 管腳上。此電 阻的作 主要為降低驅動電流,減 擾和外部 擾,調節時序等。初始 聯電阻 為 200Ω。 ![](https://box.kancloud.cn/dd4a14d2f557427934dbc5f85345b096_406x186.png) ### **晶振** 前晶體 40M,26M 及 24M均 持,使 時請注意在下載 具中選擇對應晶體類型。晶 振輸 輸出所加的對地調節電容 C1、C2 可 設為固定值,該值范圍在 6 pF ~ 22 pF,具 體值需要通過對系統測試后進 調節確定。基于 前市場中主流晶振的情況, 般 26 Mhz 晶振的輸 輸出所加電容 C1、C2 在 10 pF 以內; 般 40 MHz 晶振的輸 輸出所加 電容 10 pF < C1、C2 < 22 pF。 選 的晶振 身精度需在 ±10 PPM。晶振的 作溫度為 -20°C ~ 85°C。 ### **射頻** ![](https://box.kancloud.cn/114d4dcf02ad9c042ebfd0b66ec74cbf_400x216.png) ### **外置電阻12k** ERS12K (Pin31) 需外接 12K 對地電阻,該電阻作為芯 bias 控制電流的電阻對精度的要 求是 較 的,建議采 12K ± 1% 精度的電阻。 ![](https://box.kancloud.cn/00c5ad7716d2fc411c47b37060d36be6_408x109.png) ## **ESP8266編程代碼** 我們通過手機APP對其ESP8266端口進行收發數據,因此需要對ESP8266進行編程,代碼如下: ~~~ #include "sta_tcpclent_test.h" #include "SysTick.h" #include "usart.h" #include "esp8266_drive.h" #include #include volatile u8 TcpClosedFlag = 0;//定義失去連接標志 void ESP8266_STA_TCPClient_Test(void) { u8 res; u32 ul=0; char str[100]={0},*links,*UserCmd;//links為檢測連接字符串變量,usercmd為用戶命令字符串變量 printf ( "\r\n正在配置8266\r\n" );//向串口1發消息 links="STATUS:3";//STATUS=2表示無連接,=3為有連接 ESP8266_CH_PD_Pin_SetH;//設置CH_PD為高電平 ESP8266_AT_Test();//AT測試 ESP8266_Net_Mode_Choose(STA_AP);//選擇模式 while(!ESP8266_JoinAP(User_ESP8266_SSID,User_ESP8266_PWD));//連接外部wifi, ESP8266_Enable_MultipleId (ENABLE );//設置多鏈接 while(!ESP8266_StartOrShutServer ( ENABLE, "8266", "2000" ));//開啟服務器和端口 printf ( "\r\n配置ESP8266 OK\r\n" ); while (1)//無限循環 { ESP8266_Send_AT_Cmd ( "AT+CIPSTATUS", "ok", 0, 1000 );//查看鏈接狀態 if(strstr ( ESP8266_Fram_Record_Struct .Data_RX_BUF, links))//如果有鏈接 { printf ( "\r\n有客戶端連接\r\n" ); UserCmd="mhmx";//客戶端發來的命令字符串,可以是中文“開啟”,“關閉”等 if(ESP8266_QL(UserCmd))//如果命令字符串匹配執行下列代碼 { printf ( "\r\n接收到指令\r\n" );// //這里可以添加自己需要的代碼,比如打開LED,或某個引腳的電平 sprintf (str,"智能家居啟動完成\r\n" ); ul = strlen ( str ); ESP8266_SendString ( DISABLE, str, ul, Multiple_ID_0 );//向客戶端發數據 delay_ms (1000); } else//接收到的字符串不匹配 { printf ( "\r\n無有效命令\r\n" ); } } else//沒有鏈接 { printf ( "\r\n無客戶端連接\r\n" ); } //以下代碼為檢測是否和wifi失去連接,如果丟失連接,就重新連接。 if(TcpClosedFlag) //檢查標志位 { //ESP8266_ExitUnvarnishSend(); //退出透傳模式,如有需要去掉// do { res = ESP8266_Get_LinkStatus(); //獲取鏈接狀態 } while(!res);//如果為0,獲取狀態失敗,一直獲取 if(res == 4) //4表示失去連接 { printf ( "\r\n正在重新連接\r\n" ); while(!ESP8266_JoinAP(User_ESP8266_SSID, User_ESP8266_PWD ) ); while(!ESP8266_Enable_MultipleId (ENABLE )); while(!ESP8266_StartOrShutServer ( ENABLE, "8266", "500" )); //while (!ESP8266_Link_Server(enumTCP, User_ESP8266_TCPServer_IP, User_ESP8266_TCPServer_PORT, Single_ID_0 ) );//如果8266是client模式,去掉//啟用此代碼 printf ( "\r\n重新連接成功\r\n" ); } //while(!ESP8266_UnvarnishSend());//重新啟動透傳,如果需要去掉// } } } ~~~ ## 參考溫縣 1.ESP8266 Internet of Things Cookbook https://book.douban.com/subject/27073971/
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看