查看: 72586|回复: 39

arduino教程(提高篇)——把arduino变成AVRISP烧写器

  [复制链接]
  • TA的每日心情
    郁闷
    2018-12-6 22:21
  • 签到天数: 48 天

    [LV.5]常住居民I

    发表于 2012-7-18 15:58 | 显示全部楼层 |阅读模式
    以下均翻译自官方,水平有限,如有错误请回帖指正。

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

    说明
    使用您的Arduino给其他AVR烧写引导程序(bootloader),步骤如下:
    1.打开的ArduinoISP的固件(File>examples>ArduinoISP)
    2.注意,如果是为arduino1.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)
    arduinoisp.png
    如果以上内容对你有帮助,你可以通过打赏支持作者

    2人打赏

  • TA的每日心情
    开心
    2016-5-2 12:17
  • 签到天数: 10 天

    [LV.3]偶尔看看II

    发表于 2012-7-19 22:20 | 显示全部楼层
    无论是这个方法还是用ISP直接烧录,都有个bug,一直显示uploading bootloader之类的提示信息,就是这个bug,害我等了几个小时,其实只要几分钟就好,到时直接忽略这个出错提示。
  • TA的每日心情
    郁闷
    2018-12-6 22:21
  • 签到天数: 48 天

    [LV.5]常住居民I

     楼主| 发表于 2012-7-26 08:10 | 显示全部楼层
    ardypro 发表于 2012-7-19 22:20
    无论是这个方法还是用ISP直接烧录,都有个bug,一直显示uploading bootloader之类的提示信息,就是这个bug ...

    额,我这很正常额,没遇到过你这情况
    如果以上内容对你有帮助,你可以通过打赏支持作者

    该用户从未签到

    发表于 2012-8-6 15:36 | 显示全部楼层
    7.选择 Burn Bootloader>Arduino as ISP,开始烧写bootloader
    这得没看懂。

    该用户从未签到

    发表于 2012-8-6 15:37 | 显示全部楼层
    ardypro 发表于 2012-7-19 22:20
    无论是这个方法还是用ISP直接烧录,都有个bug,一直显示uploading bootloader之类的提示信息,就是这个bug ...

    那怎么判断何时烧录完

    该用户从未签到

    发表于 2012-9-24 01:06 | 显示全部楼层
    我通过该方法给UNO烧录Bootloader后,后把UNO插上USB,提示“提示新的硬件向导”,但是后续操作不成功,如下

    步骤1:

    步骤1:

    步骤2:点击右键,“更新驱动程序”

    步骤2:点击右键,“更新驱动程序”

    步骤3:

    步骤3:

    步骤4:

    步骤4:
  • TA的每日心情
    郁闷
    2018-12-6 22:21
  • 签到天数: 48 天

    [LV.5]常住居民I

     楼主| 发表于 2012-9-24 01:17 | 显示全部楼层
    hdqs 发表于 2012-9-24 01:06
    我通过该方法给UNO烧录Bootloader后,后把UNO插上USB,提示“提示新的硬件向导”,但是后续操作不成功,如 ...

    你下错HEX文件了
    如果以上内容对你有帮助,你可以通过打赏支持作者

    该用户从未签到

    发表于 2012-9-24 12:05 | 显示全部楼层
    奈何col 发表于 2012-9-24 01:17
    你下错HEX文件了

    你好,我是从http://arduino.cc/en/Main/Software 下载最新的Arduino 1.0,烧录Bootloader 应该不会错吧?
  • TA的每日心情
    郁闷
    2018-12-6 22:21
  • 签到天数: 48 天

    [LV.5]常住居民I

     楼主| 发表于 2012-9-24 12:47 | 显示全部楼层
    hdqs 发表于 2012-9-24 12:05
    你好,我是从http://arduino.cc/en/Main/Software 下载最新的Arduino 1.0,烧录Bootloader 应该不会错吧 ...

    如果是UNO R3的话,,16u2固件要选择Arduino-COMBINED-dfu-usbserial-atmega16u2-Uno-Rev3.hex
    如果以上内容对你有帮助,你可以通过打赏支持作者

    该用户从未签到

    发表于 2012-9-24 21:49 | 显示全部楼层
    奈何col 发表于 2012-9-24 12:47
    如果是UNO R3的话,,16u2固件要选择Arduino-COMBINED-dfu-usbserial-atmega16u2-Uno-Rev3.hex ...

    刚开始学习,不是很懂,选择这个固件 如何编译烧录,有没有一个具体的说明,谢谢!
    您需要登录后才可以回帖 登录 | 立即注册  

    本版积分规则

    热门推荐

    AT固件无法正常使用
    AT固件无法正常使用
    按照文档烧入AT固件后,串口(9600)输出如下: 发送AT指令没有反应。
    Arduino MEGA 与UNO 通过nRF24L模块通讯
    Arduino MEGA 与UNO 通过n
    之前在深水宝很“实惠”的店铺买了一些原件,随手砍了esp8266以及nRF24L*3 因为缺
    数字传感器与模拟传感器的使用
    数字传感器与模拟传感器的
    很多新人问,如何写XX传感器的驱动,这里说说简单只需要读取一个数字信号或者模拟信号
    基于Esp8266的点阵时钟
    基于Esp8266的点阵时钟
    芯片是ESP8266 12F 配合点阵单元板(64*32,单色),实现自动对时,天气预报,农历,
    做个遥控玩具
    做个遥控玩具
    现在我想做个手工,想用这个当5V马达+5V灯光+5V音乐的遥控器 可以实现吗?还需要买Ar
    Copyright   ©2015-2016  Arduino中文社区  Powered by©Discuz!   ( 蜀ICP备14017632号-3 )
    快速回复 返回顶部 返回列表