2015年12月18日 星期五

ESP8266 Wifi (1)---Connected with PC.




這是我使用的ESP8266-12E,ESP8266有很多型號 價格都一樣約NT 60就可以入手.差別主要大概是在天線不同及GPIO pin的數目,

<ESP8266-12E>





除了ESP8266之外,需要準備一個USB轉UART的線或是類似的模組都可以,透過這條線可以更新ESP8266的韌體以及連接PC作一些設定及實驗.



<Picture2 USB-UART>




<Picture 3> DC-DC 降壓模組 ,ESP8266 需要一個穩定的3.3V並且工作時電流會達到200mA
所以最好獨立供電,根據許多人的經驗如更新韌體失敗都是因為供電問題.
LM2596S DC-DC 降壓電源模塊



<Picture 4> 在這邊我仍然是用慣用的兩顆18650串聯供電會達最高8.6V,接上降壓模組之後藉由上面的小螺絲調整到3.3v輸出獨立供電給ESP8266.




<Picture 5>底下是實際的接線,之後與Arduino的連接溝通留待以後在介紹,這裡只須先由USB-UART轉接線來連接PC及ESP8266.先作一些基本的連接及實驗



<Picture 6 >底下這個ESP8266官方的線路圖,參考就好


<Picture 7>實際的接線我是照這下面這張圖接,不過實驗過後發現兩個1K電阻都不上也行
例外REST的pin也可以不接,不過對於REST pin 我覺得是接上比較好,<這張圖是我從掏寶買
ESP8266時上面所附的.如有侵權請告知我.>



<線路實際接法>
  所以其實接線很簡單REST/CH_PD/VCC 都接到DC降壓模組轉輸出的3.3V
GPIO15/GND 可接到DC降壓模組轉輸出GND端

GPIO0 平時不接,如果把它接地代表著要進入更新韌體模式,更新完韌體須讓它離開接地
才能回到正常工作模式.有關韌體更新會另外篇幅介紹,與PC的連接不須更新韌體或更改設定即可做測試.

另外3 Pin 則是接到USB-uart 線的UART端.
ESP8266 的TX 要接到UART的RX
ESP8266 的RX 要接到UART的TX
ESP8266 的GND 要接到UART的GND 共地
至於UART端的VCC 或其他有CST 或RST pin的都不用接.
USB那端則直接接上PC.
這樣其實接線就完成了


<Picture 8> 當USB-UART (PL2303HX) 接上電腦時,要為它安裝上driver ,我是在windows 10做實驗,所以其實在win10上也是ok的 ,至於PL2303的driver 可以自行google搜尋都可以免費下載
或是按滑鼠右鍵讓win10自行去搜尋安裝(需有網路連線).

 裝好之後可以看到電腦會自動配一個Com port的號碼給它,在我電腦的例子是COM9
待會連線ESP8266就是要利用這個COM9 的port.


PS 所有相關的driver 或是測試用的軟體請自行google下載,我不貼連結因為那沒意義,就像
我常看別人的文章有貼軟體下載連結,但很多其實久了連結就失效了或是有更新的版本,有些還是奇怪的連結,最後還是得自行google搜尋. 所以這些driver還是軟體現在都google的到,幾乎都是免費的,我也是這樣下載的.







<用Realterm 做連接測試>
   線路接好了driver也裝好之後我們就可以來試試PC 與ESP8266能不能連線溝通.
底下先用Realterm做測試,有關COM port的測試軟體其實很多大多也都免費

   底下先介紹Realterm的測試方式
A.在<Display>可以選擇ANSI ,可以避免一些奇怪的字尾


B.在<Port>這一頁設定欲連接COM port的設定.
在[Baud]先設定為115200 或選擇9600
目前新買的ESP8266 預設Baud rate都是115200 除非去做韌體更改成9600 否則新買來的應該都是115200,如果不行的話再選9600或其他試試,如果選錯Baud 則可能出現亂碼也可能什麼都沒顯示, 
接著[port] 設成9 原因是剛剛PL2303H driver裝上時電腦配定為 COM9,這個數字必須根據你自己電腦上的driver安裝,幾乎我可以肯定你電腦的port號碼不會跟我一樣.要注意喔.
[stop Bit] 根據我的實驗必須選為1 bit就好,否則也是會有亂碼,但是也有人說選2 bits才不會亂碼.
如果有問題就都試試吧.
改變好設定後需要按一下[Change]它才會真的把剛剛的設定做變更
最後再按下[OPEN]鈕,打開COM9的連接.正常的話其實就已經可以連線ESP8266
接著就可以下一些AT command跟ESP8266做溝通. 
AT command 是ESP28266 的指令集,可以說ESP8266的功能就是透過這些AT command來做控制
有AT command可以自行在官網或是google搜尋,應該都找得到,這個版本也是一直在更新.
   底下只先介紹試驗3個基本AT command



C .切到<Send>頁面,把EOL的CR+LF打勾代表結尾符號
   第一個輸入AT 然後按下Send ASCII按鈕,s如果回傳OK ,表示與ESP8266已連接成功
第二個輸入AT+GMR(都要大寫) 則會回傳ESP8266的版本以及SDK的版本如下1.3.0


第三個輸入AT+RST(都要大寫) 則會reset重起ESP8266最後秀ready就是ok了
前端可能出現一小部分亂碼則沒關係,只要看到最後秀ready即是reset成功了.




<用SSCOM32做連接測試>
接下來介紹另一個測試軟體SSCOM32一樣可以google下載,我感覺這個設定會比Realterm 簡略一點,也它可以一次用檔案批次的方式輸入很多指令
A.重點依然是com port的選擇及Baud rate設定,在藍色的圈圈原本是秀OpenCom,按下連接之後
才變成CloseCom,表示連接com port或關閉.



底下一樣以AT /AT+GMR/AT+RST 做測試




基本上如果都成功了那與ESP8266的連接就是都ok了,
因為有關的ESP8266資料應用繁多之後再一一介紹.



有任何問題歡迎到我的FB粉絲團討論,只是我也不一定會就是了.
加入阿布拉機的3D列印與機器人的FB粉絲團
https://www.facebook.com/arbu00/

Scan QRcode to join FB Fans.