|
众所周知,Arduino UNO开发板采用的是Atmega328微控制器。该控制器相当于Arduino开发板的大脑。实际上,Arduino设计师希望为初学者制作一个方便的原型板,这样他们就可以组织所有组件,任何人都可以访问Atmega328 IC的所有引脚,只需将其连接到计算机即可对其进行编程。 Arduino开发板非常适合制作业余爱好项目。但在工业或消费产品中使用完整的Arduino开发板并不是一个好主意,因此我们可以使用独立的Atmega328 IC,可以使用Arduino IDE进行编程,而无需使用Arduino开发板。
在本篇文章中,我们将看到如何用Atmega328替换Arduino开发板以及其他一些组件。要使用Atmega328代替arduino,首先我们必须在其中烧录Arduino Bootloader引导加载程序,然后我们将使用FTDI或使用Arduino开发板对其进行编程。本文还将可以帮助您更换Arduino开发板上损坏的Atmega328微控制器。此外,通过使用下面描的电路,您可以通过在PCB上复制它来制作自己的Arduino开发板。
所需的组件 ● Atmega328微控制器 ● 面包板 ● LM7805 ● 16 MHz晶振 ● 22pF陶瓷电容 ● 10uF电容 ● 10 K电阻 ● 1k电阻 ● 跳线 ● 您也可以使用3.3v稳压器LM1117-3.3v在电路中包含3.3v电压。
Atmega328的引脚图
电路原理图 在面包板上搭建Arduino的电路图如下:
组件描述 电源部分 - ● 5V稳压器:Atmega 328控制器采用5V电源供电。所以在这里,我们使用LM7805获得5v输出,它可以处理高达30V的输入电压。如果你有一个单独的5V电源,那么你可以不使用该稳压器。 ● 电容:7805的输入和输出部分使用10uF电容,将任何交流分量旁路至地。 ● LED:可以指示5V电压。
微控制器部分 - ● Atmega 328:这是面包板上的主要组件。其引脚图如上所示。 ● 晶体振荡器:ATmega328的引脚9和引脚10之间连接一个16MHz的外部晶振。该晶体用于为微控制器提供时钟以更快地执行任务。 ● 按钮:复位微控制器,按钮连接在引脚1和GND之间。通常,使用一个10k电阻与5v连接。 ● LED:LED与数字引脚13连接。
本篇文章分为三个部分来介绍: 1. 在面包板上搭建Arduino电路 2. 将Bootloader刻录到Atmega328 IC中 3. 如何将Arduino Bootloader烧写到在面包板上的Atmega 328 IC。 现在我们将逐一解释每个部分。
第1部分:在面包板上搭建Arduino电路 第1步: - 如电路图所示连接电源部件,并使用LM7805的外部电源进行测试。如下所示。
第2步: - 现在,连接微控制器部件,如电路图所示。仔细搭建连接。
第3步: - 现在,使用跳线连接电源和微控制器部件。最终电路看起来像这样。
以上就是我们在面包板上搭建的Arduino开发板。您可以使用EasyEDA等简单工具在PCB上实现相同的电路。现在,我们必须将引导加载程序上传到新的Atmega 328 IC,以便可以开始对IC进行编程。
第2部分:将Bootloader刻录到Atmega328控制器 什么是bootloader以及我们为什么需要它? Bootloader是一小段可执行代码,永久存储在微控制器的内存中。这占用不到1Kb的内存。 Bootloader允许IC接受来自计算机的代码并将其放入微控制器的存储器中。 传统上,Atmel的所有微控制器都是在需要烧写器才能编程,这些烧写器有一些奇特的连接。 Bootloader降低了复杂性,使我们能够以简单有效的方式对微控制器进行编程。这意味着您只需使用USB电缆即可对其进行编程。
当您从市场上购买新的Atmega 328时,它没有引导程序。因此,要使用Arduino IDE对Atmega328进行编程,首先必须上传引导加载程序。
要上传Bootloader,我们有两种方法: ● 使用USBasp编程器 ● 使用Arduino UNO开发板
与第一种方法相比,第二种方法更容易。因为它需要较少的连接,并且最新版本的Arduino IDE不支持的USBasp编程器。
因此,在本教程中,我们将使用Arduino Uno开发板上传bootloader。
上传Arduino Bootloader到Atmega328芯片中 第1步: - 打开Arduino IDE。转到File -> Examples -> ArduinoISP。然后选择ArduinoISP。如下所示。
第2步: - 现在,您需要将此代码上传到Arduino开发板。从工具菜单中选择com端口和开发板,然后点击upload按钮。
第3步: - “Done uploading”后,断开Arduino开发板与计算机的连接,并将Arduino开发板与Atmega 328连接,如下图所示。
第4步: - 现在,将Arduino开发板与计算机连接。打开Arduino IDE。 转到工具,选择开发板作为Arduino / Genuine Uno,为您的开发板选择正确的端口。选择Programmer作为“Arduino as ISP”。不要将它与ArduinoISP混淆。两者不同。
步骤5: - 现在,再次转到Tools并单击Programmer选项下方的Burn Bootloader。几秒钟后,bootloader成功上传。如果上传时出现任何错误,请检查连接。
您的面包板Arduino已准备好作为真正的Arduino开发板工作。现在,问题是如何烧写Atmega 328 IC?我们将在下一节讨论。 |