iT邦幫忙

2021 iThome 鐵人賽

DAY 5
0
自我挑戰組

Maker making IoT !!系列 第 5

[Day4] Arduino測試燒錄

1.前言

鐵人賽參賽的第一個週末(打卡),今天將帶各位開始進入到開發階段,廢話不多說,趕緊往下看吧!

2.準備事項

作業系統

  • Windows 10

編譯器

  • Arduino IDE (version 1.8.5)

開發版

  • ESP32s

3.教學前置步驟

接下來~還有兩個前置步驟,想不到吧還有前置步驟 ψ(`∇´)ψ

  • 安裝Esp32所需資訊包
  • 安裝驅動程式(CH341 or CP210x)

3-1.Esp32所需資源包

Step1、打開Arduino IDE

Step2、移至檔案->點擊偏好設定

Step3、額外開發板管理員->點擊取得非官方板子的支援網址清單

因為預設只有Arduino所出產的板子,例如較為有名的Arduino Uno。

圖片來源:使用者拍攝

Step4、搜尋(Ctrl+F)Espressif ESP32,複製並貼回額外開發板管理員,後續點擊確定即可

額外開發板管理員這邊只能Ctrl+v貼上,無法使用滑鼠貼上

圖片來源:使用者拍攝

Step5、工具->開發板->開發板管理員...

圖片來源:使用者拍攝

Step6、在欄位中輸入Esp32->選擇版本並進行安裝->完成

版本的話就取目前最新的1.0.6,而安裝完成後會看見名稱後方會出現INSTALLED這就代表安裝成功。

圖片來源:使用者拍攝

Step7、工具->開發板->選擇NodeMCU-32S

圖片來源:使用者拍攝

Step8、查看是否切換成功->恭喜完成第一個前置(/ ‘з’)/萬歲

查看Arduino IDE右下角是否切換成NodeMCU-32S,切換成功帶就代表你成功囉!
※右方COM先不用理會

圖片來源:使用者拍攝

3-2.驅動驅動程式(CH341 or CP210x)

因為市面上有兩種晶片負責Esp32的燒錄,分別是CH341以及CP210x,而電腦預設是沒有這個驅動,所以要自行去進行安裝,但要如何分辨自己的Esp32是CH341或是CP210x的呢,其實我也不太會分(́◉◞౪◟◉‵),通常都是用看得比較多,而以下推薦幾種

  1. 看晶片名稱(如下圖位置),準確度"高"
    CH341是晶片樣子會像是黑色長條型且有16Pin的IC。
    CP210x則是像下方一樣正方形多腳的晶片,所以下方此圖片就是CP210x的Esp32。

圖片來源:使用者拍攝

  1. 看裝置管理員,準確度"中"
    需要先利用MicroUSB線連接你的電腦及Esp32,而連接上時裝置管理員會跳出其他裝置,如有出現USB Serial則代表CH341的,接上後沒出現代表則是CP210x

圖片來源:使用者拍攝

  1. 終極大招
    如果上述方法都不會,那這邊提供終極大招,就是兩款都裝,總是會中的~(^ з ^)-☆

4.實際操作

4-1.驅動程式安裝

Step1、安裝驅動程序

CP210x官方下載網址
下載CP210x Windows Drives
CH341官方下載網址
下載CH341SER.EXE
安裝步驟我就不詳細介紹了,因為就只有INSTALL跟同意不同意等選項 (偷懶)

Step2、安裝完成後,查看裝置管理員

如果像下圖這樣代表安裝成功。
※記得要Esp32要連接電腦

圖片來源:使用者拍攝

Step3、恭喜前置步驟都完成拉o(≧▽≦)o。

後續明天講(被打,那如果Esp32資源包安裝及驅動安裝都沒問題那就開始進入主題吧~。

4-2.Arduino配置及測試

Step1、開啟Arduino IDE (起手式)

Step2、先選擇開發板及COM PORT(通訊埠或序列埠)

而冰雪聰明的各位看到下方那張圖應該都會發現一件事情,就是你會發現裝置管理員的通訊埠跟Arduino序列埠都是一樣的,所以只要你前面驅動有安裝成功Arduino序列埠這邊也就會抓到。

Step3、選擇預設程式碼(Blink),檔案->範例->Basics->Blink

void setup() {
  // initialize digital pin LED_BUILTIN as an output.
  pinMode(LED_BUILTIN, OUTPUT);
}

// the loop function runs over and over again forever
void loop() {
  digitalWrite(LED_BUILTIN, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(1000);                       // wait for a second
  digitalWrite(LED_BUILTIN, LOW);    // turn the LED off by making the voltage LOW
  delay(1000);                       // wait for a second
}

Step4、程式燒錄

點擊上面->按鈕即可對開發板進行燒錄動作,進行燒錄動作前Arduino IDE會先對程式碼進行驗證動作在進行燒錄,而下方紅框為進度條,則是代表目前燒錄進度。

Step5、燒錄完成

燒錄完成下方會寫Hard resetting via RTS pin...,出現這行文字代表Esp32已經燒錄完成,並開始運作了,接下來各位就可看自己手中的Esp32是不是有個LED燈一閃一滅的動作,如果有一閃一滅就代表成功囉~

歡迎交流

好了,今天差不多也就到這裡了,相信透過此次實作各位應該能更了解一個程式的運作。透過範例程式碼就可以讓ESP32上的LED燈依序亮滅,是不是覺得很有趣呢?也有激發你的好奇心?接續開始會將元件與ESP32做結合,但可能還是會有些許人會聽不懂,所以下一天我會在稍微講解一下程式碼,跟在多教一些應用,竟然讓大家一起進來IoT的世界了,當然也要攜手走下去,在打下去結論都快變廢話了,那我們下週再見(~´∀`)~開溜


上一篇
[Day3] ESP32s 開發板介紹
下一篇
[Day5] 函式(數)介紹
系列文
Maker making IoT !!30

尚未有邦友留言

立即登入留言