在“内存子系统”一章中咱们曾提到,Arduino UNO R3开发板上的ATMega328P有0.5KB的Flash空间用于引导程序;由于有引导程序的支持,Arduino能够使用串口上传程序而无需编程器。通常地,按下Arduino UNO R3开发板上的复位按键,13引脚上的LED快速的闪烁3下,表明引导程序正常启动。若是出现上传程序没有响应或复位时LED没有闪烁,排除硬件故障后,能够考虑从新烧录引导程序。编程
(1) 使用USBasp编程器烧录引导程序工具
Arduino IDE支持的编程器有AVRISP mkII,USBtinyISP和USBasp等,这里以USBasp为例。ui
上左图是10P的USBasp接口,右图是6P的Arduino ICSP接口,能够使用10P-6P的转接线链接它们,也能够直接用杜邦线将相应引脚链接。spa
打开Arduino IDE,在“工具”菜单下选择开发板为“Arduino/Genuino Uno”,编程器为“USBasp”后,点击“烧录引导程序”,等待烧录完成便可。blog
(2) 使用Arduino做为编程器烧录引导程序接口
若是你拥有另外一块Arduino开发板,则能够使用它来做为编程器;向工做正常的Arduino开发板上传ArduinoISP示例,并如图所示链接两块Arduino开发板:内存
其中下面一块是上传了ArduinoISP示例的Arduino开发板。开发
打开Arduino IDE,在“工具”菜单下选择开发板为“Arduino/Genuino Uno”,编程器为“Arduino as ISP”后,点击“烧录引导程序”,等待烧录完成便可。硬件