我們都知道,Atmega328 IC用于Arduino UNO板。該 IC 是 Arduino 板的大腦。實際上,Arduino 設計人員想為初學者制作一個方便的原型板,因此他們以這樣的方式組織所有組件,以便任何人都可以訪問 Atmega328 IC 的所有引腳,并且只需將其連接到計算機即可對其進行編程。Arduino 板在構建愛好項目時非常受歡迎。但在工業或消費產品中,使用完整的 Arduino 板并不是一個好主意,因此我們可以使用獨立的 Atmega328 IC,它可以使用 Arduino IDE 進行編程,但無需使用 Arduino 板。
在本教程中,我們將看到如何用 Atmega328 IC和其他一些組件替換 Arduino 板。要使用 Atmega328 IC 代替 arduino,首先我們必須在其中燒錄 Arduino Bootloader,然后我們將使用 FTDI 或使用 Arduino Board 對其進行編程。本教程還將幫助從 Arduino 板上更換損壞的 Atmega328 IC。此外,通過使用下面描述的電路,您可以通過在 PCB 上復制來構建自己的 Arduino 板。
所需組件
Atmega 328集成電路
面包板
LM7805
16兆赫晶體
22pF 陶瓷電容器 (2)
10uF電容(2)
10K電阻
1k電阻
跳線
或者,您還可以使用 3.3v 穩壓器 LM1117-3.3v 在您的電路中包含 3.3v 電源軌。
Atmega328引腳圖
電路原理圖
下面給出了在面包板上復制 Arduino 的電路圖:
組件說明
電源部分-
5V 穩壓器: Atmega 328 IC 在 5V 電源上運行。所以在這里,我們使用 LM7805 來獲得 5v 輸出,它可以處理高達 30V 作為輸入。如果您有單獨的 5V 電源,則可以離開此步驟。
電容: 10uF電容用于7805的輸入和輸出部分,將任何交流分量旁路到地。
LED:這將顯示您的 5V 輸出即將到來。
微控制器部分-
Atmega 328:這是我們在面包板上的主要組件。上面給出了它的引腳圖。
晶振:在 ATmega328 的 Pin 9 和 Pin 10 之間連接了一個 16MHz 的外部晶振。該晶體用于為微控制器提供時鐘以更快地執行任務。
按鈕:要重置微控制器,在引腳 1 和 GND 之間連接一個按鈕。通常,它使用 10k 電阻與 5v 連接。
LED:LED與數字引腳 13 相連。
這個完整的教程分為三個部分,讓您自己的 Arduino 在面包板上運行:
在面包板上構建 Arduino 電路
將引導加載程序燒入 Atmega328 IC
如何編程 Arduino Bootloader 在面包板上上傳 Atmega 328 IC。
現在我們將一一解釋每個部分。
第 1 部分:在面包板上構建 Arduino 電路
第 1 步:- 如電路圖所示連接電源部分,并使用 LM7805 的外部電源對其進行測試。它看起來像這樣。
第 2 步:- 現在,如電路圖所示連接微控制器部分。仔細進行連接。
第 3 步:- 現在,使用跳線連接電源和微控制器部分。你的最終電路看起來像這樣。
所以,這是我們在面包板上的 Arduino。您可以使用 EasyEDA 等簡單工具在 PCB 上實現相同的電路。現在,我們必須將引導加載程序上傳到新的 Atmega 328 IC,以便我們可以開始對 IC 進行編程。
第 2 部分:將引導加載程序燒入 Atmega328 IC
什么是引導加載程序以及我們為什么需要它?
引導加載程序是永久存儲在微控制器內存中的一小段可執行代碼。這占用不到 1Kb 的內存。引導加載程序允許 IC 接受來自計算機的代碼并將其放入微控制器的內存中。
傳統上,Atmel 的所有微控制器都是在具有一些花哨連接的程序員的幫助下進行編程的。引導加載程序降低了復雜性,使我們能夠以一種簡單有效的方式對微控制器進行編程。這意味著您只需使用 USB 電纜即可對其進行編程。
當您從市場上購買新的 Atmega 328 時,它沒有引導加載程序。因此,要使用 Arduino IDE 對 Atmega328 進行編程,您必須首先上傳引導加載程序。
要上傳 Bootloader,我們有兩種方法:
使用 USBasp 編程器
使用 Arduino UNO 板
與第一種方法相比,第二種方法更容易。因為它需要較少的連接,而且最新版本的 Arduino IDE 不支持花哨的 USBasp 程序員。
因此,在本教程中,我們將使用 Arduino Uno 板上傳引導加載程序。
在 Atmega328 芯片中上傳 Arduino Bootloader
第 1 步:-打開 Arduino IDE。轉到文件 -〉 示例 -〉 ArduinoISP。比選擇 ArduinoISP。如下所示。
第 2 步:-現在,您必須將此代碼上傳到您的 Arduino 板。從工具菜單中選擇 com 端口和板,然后點擊上傳按鈕。
第 3 步:-完成上傳后,斷開 Arduino 板與計算機的連接,并將 Arduino 板與 Atmega 328 連接,如下圖所示。
第 4 步:-現在,將 Arduino 板與計算機連接。打開 Arduino IDE。
轉到工具,選擇板作為 Arduino/Genuine Uno,為您的板選擇正確的端口。選擇Programmer 作為“Arduino as ISP”。不要將其與 ArduinoISP 混淆。兩者是不同的。
第 5 步:-現在,再次轉到工具,然后單擊Programmer 選項下方的Burn Bootloader 。幾秒鐘后,引導加載程序成功上傳。如果上傳有任何錯誤,請檢查連接。
查看以下視頻以了解上述在 Atmega 328 IC 中上傳 Bootloader的步驟。
您的 面包板 Arduino 已準備好作為真正的 Arduino 板工作。現在,問題出現了,如何對 Atmega 328 IC進行編程?我們將在下一節中討論。
第 3 部分:如何編程 Arduino Bootloader 上傳的 Atmega 328 IC
獨立的 Arduino Atmega328 芯片可以通過多種方式進行編程。
使用空白的 Arduino 板,即沒有 Atmega 328 IC 的 Arduino 板。
使用USB轉串口TTL轉換模塊(FTDI模塊)。
使用 USBasp 編程器(涉及很多連接)。
在這里,我們將使用兩種方法對其進行編程:USB 轉串口轉換器和 Arduino 板。
使用 Arduino 板對 Atmega328 芯片進行編程
第 1 步:-拿一塊沒有 Atmega328 芯片的 Arduino 板。如圖所示,將 Arduino 板與我們的面包板 Arduino連接起來。
第 2 步:-將 Arduino 板與計算機連接并打開 Arduino IDE。從Tools的 Board 菜單中選擇 Arduino Uno ,Programmer 為 USBasp 并正確的板子的 com 端口。
第 3 步:-我們將從上傳 Blink 程序開始。所以從示例中選擇閃爍程序并點擊上傳按鈕。
現在,您可以看到面包板上的 LED 開始閃爍。
使用 USB 轉串口轉換器對 Arduino Atmega328 芯片進行編程
第 1 步:-如果您沒有 Arduino 板。這是對面包板 Arduino進行編程的最佳方法。
使連接如下:
FTDI 的 RXD 引腳 -〉 Atmega328 的 Tx 引腳(引腳 3)
FTDI 的 TXD 引腳 -〉 Atmega328 的 Rx 引腳(引腳 2)
GND -〉 GND(引腳 8)
5v -〉 Vcc(引腳 7)
部分FTDI模塊有Reset pin也稱為DTR pin,需要連接Atmega328的Reset pin(pin 1)。如果模塊中沒有reset管腳,別著急,我會在我們燒寫芯片的時候給出解決方案。
第 2 步:-現在,將 FTDI 與計算機連接并在控制面板中打開設備管理器。您將看到端口部分,展開它。如果驅動程序前面有黃色標記,則必須更新模塊驅動程序。
如果沒有標記,則記下 com 端口號并打開 Arduino IDE。轉到工具 -〉 端口 -〉 選擇您記下的 com。
第 3 步:-現在,我們將 Blink 程序上傳到我們的Breadboard Arduino。轉到File -〉 Examples -〉 Basics -〉 Blink。從工具中的Board菜單中選擇Arduino Uno,Programmer as USBasp和正確的板com端口。
然后點擊上傳按鈕。
注意:如果您的 FTDI 模塊沒有 DTR 引腳,則按下面包板上的重置按鈕并點擊上傳按鈕。如果它說Compiling sketch.。。請按住它,一旦它說Uploading.。。就松開按鈕
現在,程序將成功上傳到 Arduino Bootloader Atmega328 芯片中。
-
編程
+關注
關注
88文章
3614瀏覽量
93704 -
Arduino
+關注
關注
188文章
6469瀏覽量
186983 -
ATmega328
+關注
關注
1文章
37瀏覽量
21021
發布評論請先 登錄
相關推薦
評論