簡介
如果你正在查看這個項目,那么你可能已經使用過Arduino板了。 Arduino UNO上的ATmega328微控制器很可能在一定時間(或不正確的連接)后發生故障。為了重用Arduino Board,您需要一個裝有Bootloader的新ATmega328 IC(我將在一分鐘內討論Bootloader)。
還有其他原因可以在上面刻錄Bootloader ATmega328微控制器,如果你已經編寫了自己的Bootloader并想要測試它,或者你想要詳細了解微控制器的工作情況。
警告: 如果你不熟悉這種東西,不建議在Arduino中調整Bootloader。
什么是Bootloader?
簡單來說,Bootloader是一小段代碼(.hex格式的可執行代碼),駐留在微控制器的內存中。 Arduino中的Bootloader允許我們通過串口對Arduino進行編程,即使用USB線。
Arduino中Bootloader的工作是接受來自計算機的代碼并將其放入微控制器的存儲器。
為什么我們需要一個Bootloader?
傳統上,像Atmel的ATmega328這樣的微控制器是在專用編程器的幫助下編程的,這些編程器涉及一些奇特的連接。 Bootloader消除了這種復雜性,為我們提供了一種簡單的微控制器編程方式,即使用USB電纜。
Bootloader位于可編程閃存的特殊安全位置微控制器通常占用不到1KB的內存。
在ATmega328上燒錄Bootloader需要什么?
如前所述,如果您想將程序上傳到全新的ATmega328微控制器IC,您必須使用特殊的編程器(并設置保險絲位)。但是如果你在ATmega328上刻錄Bootloader,你只需通過串口(USB線)對微控制器進行編程。
一旦ATmega328微控制器準備好了bootloader,你可以簡單地使用它如果您打算制作自己的Arduino電路板,請將其用作Arduino電路板(作為替代產品)或將其用作微控制器。
如何在ATmega328上刻錄Bootloader?
有幾種方法可以在ATmega328 IC上刻錄引導加載程序。第一種方法是使用專用AVR編程器硬件。第二種方法是使用工作的Arduino板作為編程器并在目標ATmega328微控制器上刻錄引導加載程序。
在這個項目中,我將使用第二種方法,即使用Arduino作為程序員。
電路圖
在ATmega328上刻錄引導加載程序的電路圖使用Arduino的微控制器如下所示。
ATmega328微控制器的引腳圖如下圖所示,以防萬一。
所需組件
Arduino UNO
ATmega328微控制器IC
16MHz晶體
22pF x 2陶瓷電容器
10KΩ電阻器
按鈕
330Ω電阻器
面包板
連接電線
5V電源
在Atmega328上編程Bootloader的過程
如前所述,Arduino UNO正在在這里用作AVR程序員。為了達到這個目的,你必須將一個特殊程序上傳到你工作的Arduino UNO板上,稱為“Arduino ISP”。
所以,在建立連接之前,連接正常工作的Arduino使用USB電纜將UNO連接到計算機并在Arduino IDE中選擇適當的板和PORT。
現在,轉到文件》示例》 ArduinoISP》 ArduinoISP。將此代碼上傳到Arduino UNO,以便將Arduino UNO板轉換為AVRISP程序員。
完成此操作后步驟,進行必要的連接(如果沒有)?,F在轉到Tools》 Programmer并選擇“Arduino as ISP”選項。在此之后,您已準備好刻錄引導加載程序。
只需轉到“工具”并單擊“Burn Bootloader” 。您的目標ATmega328微控制器將使用引導程序進行編程。
將草圖上傳到ATmega328
完成在ATmega328微控制器上傳Bootloader后,您可以繼續上傳測試草圖。為此,保留與之前相同的連接并打開任何草圖,例如Blink Sketch。
不要更改任何選項,即程序員仍設置為“Arduino as ISP ”?,F在,按住鍵盤上的“Shift”按鈕,單擊“上傳”圖標。這將使用Arduino UNO作為編程器將草圖上傳到ATmega328微控制器IC。
完成此操作后,您可以斷開Arduino UNO與ATmega328微控制器的連接并使用ATmega328 IC作為在其上運行Blink sketch的獨立設備。
下圖顯示上傳后運行Blink sketch的ATmega328微控制器在Arduino UNO的幫助下。
注意:為了將代碼上傳到Arduino UNO,請確保將程序員切換回“AVRISP mkII” “。
結論
在這個項目中,我向您展示了如何在ATmega328微控制器IC上刻錄Bootloader,作為一個額外選項,我還向您展示了如何使用Arduino UNO將Arduino草圖上傳到帶有Bootloader的ATmega328。
-
微控制器
+關注
關注
48文章
7548瀏覽量
151369 -
ATmega328
+關注
關注
1文章
37瀏覽量
21021
發布評論請先 登錄
相關推薦
評論