熊猫阿宝

中级会员
  • 主题:19
  • 回复:49
  • 金钱:317
  • 积分:376
以下均翻译自官方,水平有限,如有错误请回帖指正。

本教程介绍如何使用Arduino作为AVR ISP(在线系统编程)。你可以使用它给其他AVR芯片烧写引导程序(bootloader)(例如使用ATmega168的或ATmega328的Arduino)。这个例子中的代码是基于Randall Bohn写的mega-isp固件。

说明
使用您的Arduino给其他AVR烧写引导程序(bootloader),步骤如下:
1.打开的ArduinoISP的固件(File>examples>ArduinoISP)
2.注意,如果是为阿尔杜伊诺1.0:你需要对ArduinoISP代码进行小的改动。查找heartbeat()函数,把其中的“delay(40);”,更改为“delay(20)”。
3.在Tools>board中,选择对应的arduino型号,(这里是选择作为编程器的板子型号,而不是你将要烧写bootloader的板子型号)使用的串行端口菜单中的项目。
4.上传ArduinoISP。
5.Arduino和你要烧写的arduino连接方法如下图所示。(注:如果是ArduinoUNO,你需要Reset和GND之间连接一个10 uF的电容)
6.在Tools>board菜单上,选择你要刻录的bootloader的板子型号(你将要烧写的板子型号)对应。看到板环境页面描述细节。
7.选择 Burn Bootloader>Arduino as ISP,开始烧写bootloader
连接示意图(针对UNO,Duemilanove,Diecimila)