我造輪子,你造車,創客一起造起來!更多塔克創新資訊【塔克社區 www.xtark.cn 】【塔克博客 www.cnblogs.com/xtark/ 】-
ESP8266是一款非常火的WIFI模塊,性價比高,操作簡單,通過AT指令實現復雜的WIFI通信,大大降低開發難度。
誇張點說,如果創客不知道這么模塊,不能稱之為創客!
本文介紹ESP8266模塊的使用,X-CTR100控制器連接ESP8266模塊實現無線WIFI網絡連接功能。
原理
模塊核心處理器 ESP8266 在較小尺寸封裝中集成了業界領先的 Tensilica L106 超低功耗 32 位微型 MCU,帶有 16 位精簡模式,主頻支持 80 MHz 和 160 MHz,支持 RTOS,集成 Wi-Fi MAC/ BB/RF/PA/LNA,板載天線。支持標准的 IEEE802.11 b/g/n 協議,完整的 TCP/IP 協議棧。用戶可以使用該模塊為現有的設備添加聯網功能,也可以構建獨立的網絡控制器。
ESP8266 是高性能無線 SOC,以最低成本提供最大實用性,為 WiFi 功能嵌入其他系統提供無限可能。
特點
802.11 b/g/n
內置Tensilica L106 超低功耗 32 位微型 MCU,主頻支持 80 MHz 和160 MHz,支持 RTOS
內置10 bit高精度ADC
內置TCP/IP協議棧
內置TR 開關、balun、LNA、功率放大器和匹配網絡
內置PLL、穩壓器和電源管理組件,802.11b 模式下+20 dBm的輸出功率
A-MPDU 、 A-MSDU 的聚合和 0.4 s的保護間隔
WiFi @ 2.4 GHz,支持 WPA/WPA2 安全模式
支持AT遠程升級及雲端OTA升級
支持 STA/AP/STA+AP 工作模式
支持 Smart Config 功能(包括 Android 和 iOS 設備)
HSPI 、UART、I2C、I2S、IR Remote Control、PWM、GPIO
深度睡眠保持電流為 10 uA,關斷電流小於 5 uA
2 ms 之內喚醒、連接並傳遞數據包
待機狀態消耗功率小於1.0 mW (DTIM3)
工作溫度范圍:-20℃- 85℃
功能說明
ESP8266可以使用官方提供的SDK作二次開發來使用,也可以直接利用官方出廠提供的固件直接AT指令配置模塊使用。
SDK開飯方式較為專業,本文對常用的AT指令模式進行說明,模塊波特率:115200(8位數據位,1位停止位)。
ATK_ESP8266模塊支持STA/AP/STA+AP三種工作模式。
STA 模式:ESP8266模塊通過路由器連接互聯網,手機或電腦通過互聯網實現對設備的遠程控制。
AP 模式:默認模式ATK_ESP8266模塊作為熱點,實現手機或電腦直接與模塊通信,實現局域網無線控制。
STA+AP 模式:兩種模式的共存模式,即可以通過互聯網控制可實現無縫切換,方便操作。
指令說明
AT指令主要包括3部分
基礎AT指令
WIFI功能AT指令
TCP/IP工具箱AT指令
詳細說明參考《ESP8266AT指令集》。
模塊說明
本文選用模塊為正點原子的ESP8266模塊進行試驗,模塊及引腳如下
連接方式
調試
基於串口調試工具進行AT指令調試。
使用X-CTR100控制器的COM口USB轉串口調試,請按如下圖連接,RX接RX,TX接TX。
主要拔掉BOOT跳線帽,使程序不跑,避免處理器程序使用UART1干擾通信。
TCP透傳模式
AT+CWMODE=1 "設置STA模式"
AT+CWJAP="XXX","XXXXXXXX" "加入路由器,與服務器在同一局域網下,或自行設定"
AT+CIPMUX=0 "設置單鏈接"
AT+CIPSTART="TCP","192.168.31.101",8080 "正常tcp連接測試"(IP和端口自行設定)
AT+CIPMODE=1 "設置透傳模式"
AT+CIPSEND "發送數據"
注意每個指令后面需增加換行符。
測試結果如下:
退出透傳請發送"+++",注意取消發送新行。
UDP透傳模式
AT+CWMODE=1 "設置STA模式"
AT+CWJAP="XXX","XXXXXXXX" "加入路由器,與服務器在同一局域網下,或自行設定"
AT+CIPMUX=0 "設置單鏈接"
AT+CIPSTART="UDP","192.168.31.101",1000,2000,0 "UDP連接測試,1000位目標端口,2000為本機端口,可修改
AT+CIPMODE=1 "設置透傳模式"
AT+CIPSEND "發送數據"
測試結果略。
開機透傳模式
如果網絡沒有變換,每次上電都進行一次配置,比較麻煩,尤其是處理器使用,配置不方便。
ESP8266具有保存開機進入透傳模式功能,指令如下。
UDP指令示例如下。
AT+SAVETRANSLINK=1,"192.168.31.235",1000,"UDP",2000
例程
大多數電子制作應用場景是串口數據透傳,本例程中ESP8266模塊已完成開機UDP透傳模式設置。
ESP8266連接X-CTR100控制器,無須任何配置,即可實現串口數據的無線網絡通信。
硬件連接如下圖,不同於調試時的連接,ESP8266的RX連接控制器的TX,TX連接控制器的RX。
下載陀螺儀加速度基礎例程,傳輸效果如下,實現了串口數據的無線WIFI接收,后續功能調試非常方便。
參考
正點原子 ATK-ESP8266 WIFI用戶手冊_V1.0