重新燒錄Arduino Bootloader(開機啟動程式):以Leonardo板為例

Arduino Leonardo板上傳搖桿程式之後,開發板的晶片(Atmega32u4)內建的USB介面,將變成人機介面通訊埠,而非燒錄程式用的UART序列介面,所以無法再透過Arduino IDE上傳新程式。

解決辦法是替Leonardo板重新燒錄Bootloader(開機啟動程式)。Arduino開發板的bootloader是透過SPI介面燒錄,而非序列埠。

Bootloader燒錄器接線

除了要被燒錄bootloader的Leonardo板(或其他Arduino板),另外要準備一個充當燒錄器的Arduino板,本文採用Uno板作為燒錄器。

請先選擇Arduino IDE主功能表的「檔案→範例→ArduinoISP→ArduinoISP」,開啟內建的燒錄器程式。

ArduinoISP指令

然後編譯程式並上傳到Arduino Uno板。

選擇主功能表「工具→燒錄器→Arduino as ISP」指令(代表「把Arduino當成燒錄器使用」):

Arduino as ISP 指令

使用ISP介面串接Uno板和Leonardo板,接線示範:

Bootloader燒錄器接線

選擇要燒錄Bootloader的開發板類型(Arduino Leonardo)

選擇要燒錄Bootloader的開發板類型

把Arduino Uno板(燒錄器)接上電腦USB,被燒錄的板子(Leonardo)不用接USB。

最後,選擇主功能表「工具→燒錄Bootloader」,即可開始燒錄。

燒錄Bootloader

燒錄時出現錯誤,可能是燒錄目標開發板的類型選擇錯誤(下圖顯示選擇的是Uno板);或者,請在執行燒錄Bootloader之前,按一下燒錄目標板的Reset鍵

燒錄時出現錯誤

過一會兒,Bootloader就燒錄完畢,目標開發板內建的LED將每隔1秒規律地閃爍。

Bootloader就燒錄完畢

這樣就可以拆除SPI接線,改將電腦USB線接在Leonardo板,就能正常使用它了。

延伸閱讀

Posts created 470

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

Related Posts

Begin typing your search term above and press enter to search. Press ESC to cancel.

Back To Top