给Arduino烧录BootLoader引导程序,包括Atmega 16U2(通信芯片),Atmega 328P(主控芯片)

需要用到USBtiny下载器和下载工具,USBtiny下载器如下所示:
在这里插入图片描述下载工具在如下链接:https://download.csdn.net/download/weixin_36815313/11245570

第一步:烧录16U2固件
16U2固件推荐选用Arduino\avr\firmwares\atmegaxxu2\arduino-usbserial\Arduino-usbserial-atmega16u2-Uno-Rev3.hex
否则用Arduino\hardware\arduino\avr\firmwares\atmegaxxu2\Genuino-COMBINED-dfu-usbserial-atmega16u2-Uno-R3.hex的话会在设备管理器会显示Gunuino UNO的标识,而非Arduino UNO的关键字样。
1.1下载解压烧录软件,之后打开avrdudess.exe软件
在这里插入图片描述
1.2选择烧录方式为USBtiny simple…
在这里插入图片描述
1.3接线,下载器一端接在电脑端,另一端通过牛角座连接在Arduino主控板上下载串口芯片程序的位置。
在这里插入图片描述
1.4点击“Detect”会自动检测到当前所接芯片,我接的是ATmega16U2通信芯片。
在这里插入图片描述
1.5之后选择固件
在这里插入图片描述
1.6固件地址如下
在这里插入图片描述
1.7之后直接点击“GO”即可,烧录成功后在终端会有相应提示
在这里插入图片描述
在这里插入图片描述

第二步:更改熔丝位配置地址
此地址可从Arduino\hardware\arduino\avr\boards.txt中查到,例如板子为UNO,则查询
“uno.bootloader.low_fuses=0xFF”
“uno.bootloader.high_fuses=0xDE”
“uno.bootloader.extended_fuses=0xFD”
之后配置熔丝位位置。
2.1更改熔丝位配置,先读取熔丝位。
在这里插入图片描述
2.2之后改成如下图所示地址,然后点击“Write”,等待成功即可。
在这里插入图片描述

第三步:烧录引导程序BootLoader
可利用IDE直接烧录,简单,方便且有效。
3.1更改接线位置,将下载器线接在Arduino主控板上,给主控芯片ATmega328P下载程序的接线口位置。
在这里插入图片描述
3.2打开Arduino IDE,更改烧录器为USBtinyISP
在这里插入图片描述
3.3之后直接选择“烧录引导程序”即可。
在这里插入图片描述
在这里插入图片描述
附:Arduino 官方板子提取出来熔丝位位置数据:ATmega16U2为L = 0xEF,H = 0xD9,E = 0xF4ATmega328P为L = 0xFF,H = 0xD6,E = 0x05。
我所烧录的熔丝位位置数据(从电脑软件中提取出来的):ATmega16U2为L = 0xFF,H = 0xDE,E = 0xFD

备注:本人在烧录时,只进行了我前文提到的三步,之后板子便可正常运行了,有不同意见的欢迎留言讨论。

File: optiboot/optiboot_atmega328.hex
C:\Program Files (x86)\Arduino\hardware\arduino\avr\firmwares\atmegaxxu2\Arduino-COMBINED-dfu-usbserial-atmega16u2-Uno-Rev3.hex
在这里插入图片描述

  • 5
    点赞
  • 45
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论
烧录Arduino16U2芯片,可以按照以下步骤进行操作: 1. 准备一块正常的Arduino UNO主板,并使用Arduino IDE烧录一个示例程序ArduinoISP。 2. 下载并解压avrdudess.exe软件,打开该软件。 3. 在avrdudess.exe软件中选择烧录方式为USBtiny simple。 4. 连接下载,将一端接到电脑上,另一端通过牛角座连接到Arduino主控板上的下载串口芯片位置。 5. 点击“Detect”按钮,软件会自动检测当前所接的芯片,确保检测到的是ATmega16U2通信芯片。 6. 选择固件文件,固件地址可以选择Arduino\avr\firmwares\atmegaxxu2\arduino-usbserial\Arduino-usbserial-atmega16u2-Uno-Rev3.hex或Arduino\hardware\arduino\avr\firmwares\atmegaxxu2\Genuino-COMBINED-dfu-usbserial-atmega16u2-Uno-R3.hex。 7. 点击“GO”按钮,开始烧录烧录成功后会在终端上显示相应的提示信息。 另外,也可以通过命令行进行烧录操作。可以使用C:\Program Files (x86)\Arduino\hardware\tools\avr\bin\avrdude.exe命令行工具,并执行以下命令: ``` avrdude.exe -C ..\etc\avrdude.conf -v -patmega16u2 -cstk500v1 -PCOM15 -b19200 -e -Ulock:w:0x3F:m -Uefuse:w:0xF4:m -Uhfuse:w:0xD9:m -Ulfuse:w:0xFF:m avrdude.exe -C ..\etc\avrdude.conf -v -patmega16u2 -cstk500v1 -PCOM15 -b19200 -Uflash:w:C:\Users\xxx\AppData\Local\Arduino15\packages\arduino\hardware\sam\1.6.12\firmwares\atmega16u2\Arduino-DUE-usbserial-prod-firmware-2013-02-05.hex:i -Ulock:w:0x3F:m ``` 以上是烧录Arduino16U2芯片的步骤和命令。请根据实际情况选择适合的方法进行操作。<span class="em">1</span><span class="em">2</span><span class="em">3</span><span class="em">4</span>
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Zhao-Jichao

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值