Hello,大家好,歡迎大家來到LIUSE網絡。
說到智能家居,物聯網開發,大家肯定都是耳熟能詳了。現在主流的物聯網方式大多都採用藍牙,或者wifi來進行通訊。這裡我們先簡單提一下
藍牙跟wifi的優缺點:
藍牙:
優點:成本低、功耗低、點對點更方便
缺點:速度慢、信號接收距離有限
WIFI:
優點:速度快、一對多、信號強
缺點:功耗大、成本高
由上可見,物聯網的設計中採用藍牙跟採用WIFI沒有絕對的好與不好之分,只有哪種方案更合適。今天呢我們就帶領大家來玩一下ESP8266這個WIFI模塊
首先我們來說一下這個模塊的價格方面,這個模塊在某寶上非常便宜,10塊錢左右。而且呢模塊已經做得特別的成熟,很適合開發者們上手。
ESP8266三種模式:
1:STA 模式:ESP8266模塊通過路由器連接互聯網,手機或電腦通過互聯網實現對設備的遠程控制。
2:AP 模式:ESP8266模塊作為熱點,實現手機或電腦直接與模塊通信,實現局域網無線控制。
3:STA+AP 模式:兩種模式的共存模式,即可以通過互聯網控制可實現無縫切換,方便操作。
但是呢,ESP8266官方給的文實在是少的可憐吶,而且官方的文檔寫的有有點類似阿三,初學者也不一定能看懂,那難道我們還能因為這點小困難就拋棄這個廉價的WIFI模塊?
那本章節來介紹一下,如何讓自己採購的ESP8266模塊通過arduino IDE進行編程!
Arduino IDE for ESP8266(Github:https://github.com/esp8266/Arduino),這個是基於Arduino的ESP8266的Broad庫。在Github項目頁上有安裝教程,利用了Arduino 1.6.5的新特性進行在線安裝(1.6.4也有,但感覺不如1.6.5好用,github上是使用1.6.5進行配置的)。
1、打開Arduino,選擇“首選項”,在“附加開發板管理器網址”中填入http://arduino.esp8266.com/stable/package_esp8266com_index.json,然後點擊確定保存這個地址。
2、打開工具->開發板->開發板管理器
3、等待開發板管理器啟動完成後,移動到開發板管理器的最下方,可以看到一個esp8266 by esp8266 Community,右下角有個選擇版本,選好2.0.0之後點擊安裝,因為是連接到github上下載(國內可能會被牆,這是下載好的文件http://pan.baidu.com/s/1sjRFe6h,覆蓋掉首選項裡邊那個配置文件的文件夾即可,比如我的路徑是C:\Users\Administrator\AppData\Local\Arduino15\preferences.txt,那需要解壓出來覆蓋掉C:\Users\Administrator\AppData\Local\Arduino15這個文件夾,覆蓋之後可能需要重新設定arduino庫的地址,因為preferences.txt裡邊包含有項目的地址)。(現在Arduino IDE for ESP8266已經更新到2.3.0,這是2.3.0的Arduino15包的下載地址:http://pan.baidu.com/s/1mh50myG 建議配合Arduino IDE 1.8.3使用)
安裝Board支持包,安裝完成後的樣子,會顯示2.0.0 INSTALLED
首選項設置,在開發板管理器中(Addtional Boards Manager URLs)填入ESP8266的配置地址,紅線中的是Arduino15存放的地點
4、下載完成之後可以在開發板選項中看到ESP8266 Module,一般開發就是用Generic ESP8266 Module就行了其它的設置默認。有的板的Flash大小會有差別,具體可以查找板上的Flash芯片型號確定。如果找不到芯片型號可以用例程中的ESP8266->CheckFlashConfig來確定,選擇Flash大小小於板上Flash的大小就行,不確定可以先選擇512k。
這樣子就算是配置完成了,由於本身就是直接燒寫8266的Flash,所以並不需要燒寫bootloader。
然後就可以測試示例代碼了。
當然這裡你可以選擇測試提供的實例,也可以將下面的測試wifi服務器代碼複製上:
通過手機連接上ESP8266,顯示同一網段下,當然如果你要是有串口調試器,那樣通過電腦去測試ESP8266的效率會更高。
當然,除此之外,可以試試ESP8266WebServer下的AdvancedWebServer,這是一個Web服務器,可以顯示由MCU構建的SVG圖像,需要修改ssid和password變量為自家的wifi的參數,燒寫方式和ESP8266普通的燒寫方式是一樣的,GPIO0拉低進入燒寫模式,給板子復位過後選擇下載程序,等下載完畢之後就可以運行了,下載完成之後可以不用拉高GPIO0就會直接運行剛剛下載的程序了。
閱讀更多 LIUSE網絡 的文章