有不少初學者因為不熟悉 Arduino 相關開發板,在 Upload 程式時出現許多問題,本文旨在提供一般的問題排除方案。
1. 有選對正確的 USB 傳輸線嗎?
玩家希望將程式由電腦 Upload 到開發板,需要有一條可以傳輸數據的 USB 線。
有些 USB 線只有提供電源的功能,並不具備能傳輸資料,您需要先確認您的 USB 線是可以傳輸資料的。
2. 請確認 USB 線的品質是否合乎開發板的需求?
有些開發板(例如 ESP32 ...)功能較多,他們可能需要同時作動 Wifi 和 BLE 功能,因此需要較穩定的電壓以及較大的電流。
有些品質不好的 USB 線無法提供較大的電流,或是沒有屏蔽電磁波功能,因此建議您選擇一條品質較好的 USB 線,如此對您在使用開發板方面是有幫助的。
另外,過長的 USB 線也會影響到開發板的使用,因為電線的電阻比較大會使電壓和電流降低,讓傳輸數據時產生不穩定的現象。
3. 請確認是否已使用 USB 線正確連接開發板和電腦?
有些開發板(例如 ESP32-S3)具有 2 個 USB 連接頭,其中一個是作為供電使用,並不具有傳輸資料的功能。
4. 是否已經安裝正確的 USB 驅動程式?
目前市面上最常見的有 CH340、CP2102、CH9102...這幾種 USB2TTL 晶片,請先確認您的開發板上的 USB2TTL 晶片是哪一款,並安裝正確的驅動程式。
如果已經安裝 USB 驅動程式,請用 USB 線連接開發板和電腦,並打開電腦的「裝置管理員」,查看是否有出現類似下面的連接埠畫面(您的連接埠可能跟我們的不一樣)。
值得一提的是,目前 CH34x 系列的晶片有許多款,例如 CH340E、CH340G、CH340T...,而他們也都已被使用在市面上各類的開發板上面。
在實務上,我們有遇到下列情況,已經安裝 CH340 驅動程式,也使用 USB 線正確連接 ESP32-CAM 開發板和電腦,Arduino IDE 裡的開發板型號和連接埠也選了,看似一切都沒問題,可是在 Upload 時卻發生錯誤。
經過反覆測試,最終發現是 CH340 驅動版本的問題,我們當時是重新安裝 CH341SER 這支驅動才解決了這個問題。
可參考: https://www.facebook.com/share/p/eJERrY6NurZYZzFF/?mibextid=xfxF2i
5. 是否已選擇正確的開發板型號和序列埠?
如果玩家不知道您的開發板該選擇哪一個型號,可以詢問您的賣家。
以 Arduinp Nano 開發板為例,開發板型號應該選擇「Arduino Nano」。
這裡要注意的是市售的 Arduino Nano 開發板處理器安裝有兩款 Bootloader,一款是 ATmega328P,另一款是 ATmega328P (Old Bootloader),您可以先試試選用 ATmega328P,如果 Upload 有錯誤時,可以再選擇 ATmega328P (Old Bootloader),如下圖所示。