本文介绍如何使用ArduinoUno对全新的ATmega328P芯片进行编程。
本文包括以下内容:
如何通过ArduinoUno对全新的ATmega328P烧写Bootloader
如何通过ArduinoUno对带有Bootloader的ATmega328P进行编程
所需材料ArduinoUno
ATmega328P芯片
介绍如果你买了一个全新的ATmega328P,然后你想要对其进行编程,一个自然而然想到的办法就是把原来插在板子上的芯片拔下来,把这块新的插上去不就可以进行编程了?
ATmega328P芯片
ArduinoUno
很遗憾的是这种想法行不通,因为ArduinoUno是通过板载串口对ATmega328P芯片进行编程的,而要想通过串口对ATmega328P芯片进行编程则需要其内部的Bootloader支持,但是,全新的ATmega328P里没有Bootloader。
因此,需要先将Bootloader烧写到ATmega328P中。
烧写BootloaderArduinoUno本身可以变成一个编程器(ISP),可以对全新的ATmega328P烧写Bootloader.
将ArduinoIDE自带的“ArduinoISP”代码下载到ArduinoUno中,ArduinoUno就变成了一个编程器:
将ArduinoUno编程编程器
烧写开始前,按下图所示连接硬件:
烧写Bootloader时的硬件连线
注意目标板的RESET脚连接作为编程器的ArduinoUno的第10脚。
ArduinoIDE中选择Arduino作为编程器:
编程器选择ArduinoasISP
开始烧录后提示如下:
烧录成功后提示如下:
下载程序烧录完Bootloader后,就可以通过ArduinoUno板自带的串口对已经烧写了Bootloader的ATmega328P进行编程了。
编程前需要将作为编程器的ArduinoUno板上的ATmega328p拿掉。就相当于将要编程的ATmega328P插到了ArduinoUno开发板上。硬件连线如下:
烧写闪灯程序时的硬件连线
编写一个LED闪烁程序,ArduinoIDE中选择“ArduinoISP”作为编程器:
选择编程器ArduinoISP
然后,就可以正常下载程序了。