物聯網開發-如何讓10錢成本的ESP8266模塊支持Arduino編程

Hello,大家好,歡迎大家來到LIUSE網絡。

說到智能家居,物聯網開發,大家肯定都是耳熟能詳了。現在主流的物聯網方式大多都採用藍牙,或者wifi來進行通訊。這裡我們先簡單提一下

藍牙跟wifi的優缺點:

物聯網開發-如何讓10錢成本的ESP8266模塊支持Arduino編程

藍牙:

優點:成本低、功耗低、點對點更方便

缺點:速度慢、信號接收距離有限

WIFI:

優點:速度快、一對多、信號強

缺點:功耗大、成本高

由上可見,物聯網的設計中採用藍牙跟採用WIFI沒有絕對的好與不好之分,只有哪種方案更合適。今天呢我們就帶領大家來玩一下ESP8266這個WIFI模塊

首先我們來說一下這個模塊的價格方面,這個模塊在某寶上非常便宜,10塊錢左右。而且呢模塊已經做得特別的成熟,很適合開發者們上手。

物聯網開發-如何讓10錢成本的ESP8266模塊支持Arduino編程

(某寶價格截圖)

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使用)

物聯網開發-如何讓10錢成本的ESP8266模塊支持Arduino編程

安裝Board支持包,安裝完成後的樣子,會顯示2.0.0 INSTALLED

物聯網開發-如何讓10錢成本的ESP8266模塊支持Arduino編程

首選項設置,在開發板管理器中(Addtional Boards Manager URLs)填入ESP8266的配置地址,紅線中的是Arduino15存放的地點

4、下載完成之後可以在開發板選項中看到ESP8266 Module,一般開發就是用Generic ESP8266 Module就行了其它的設置默認。有的板的Flash大小會有差別,具體可以查找板上的Flash芯片型號確定。如果找不到芯片型號可以用例程中的ESP8266->CheckFlashConfig來確定,選擇Flash大小小於板上Flash的大小就行,不確定可以先選擇512k。

物聯網開發-如何讓10錢成本的ESP8266模塊支持Arduino編程

這樣子就算是配置完成了,由於本身就是直接燒寫8266的Flash,所以並不需要燒寫bootloader

然後就可以測試示例代碼了。

當然這裡你可以選擇測試提供的實例,也可以將下面的測試wifi服務器代碼複製上:

物聯網開發-如何讓10錢成本的ESP8266模塊支持Arduino編程

(代碼)

物聯網開發-如何讓10錢成本的ESP8266模塊支持Arduino編程

通過手機連接上ESP8266,顯示同一網段下,當然如果你要是有串口調試器,那樣通過電腦去測試ESP8266的效率會更高。

當然,除此之外,可以試試ESP8266WebServer下的AdvancedWebServer,這是一個Web服務器,可以顯示由MCU構建的SVG圖像,需要修改ssid和password變量為自家的wifi的參數,燒寫方式和ESP8266普通的燒寫方式是一樣的,GPIO0拉低進入燒寫模式,給板子復位過後選擇下載程序,等下載完畢之後就可以運行了,下載完成之後可以不用拉高GPIO0就會直接運行剛剛下載的程序了。

物聯網開發-如何讓10錢成本的ESP8266模塊支持Arduino編程


分享到:


相關文章: