Arduino开发板升级固件,烧写Bootloader

当Arduino开发板上传失败可能是由于固件版本过低。需要使用USBISP下载器和PROGISP软件更新固件。首先找到Arduino安装目录下的固件文件,根据boards.txt设置熔丝位,然后使用PROGISP烧写新的bootloader。确保不勾选加密芯片选项,完成bootloader的烧写后,即可正常下载代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在我们在使用Arduino开发板时经常会发现上传失败的问题,这时候很大一部分原因是我们的Arduino 开发板的没有固件,或者说固件版本太低。

向上面这种情况就是板子固件版本太低,编译器使用的bootloader版本是最新的版本,这是偶我们只要将编译器的bootloader换为old bootloader就能正常下载。


说明确实板子的固件版本太低了,这时候就需要更新固件了。

一、更新固件

1.1 准备下载器

更新固件需要一个USB ISP下载器,十几块钱就可以买到

1.2 找到固件文件

固件文件不用下载,就在电脑Arduino安装路径下面,我的Arduino安装在D盘中的Software文件中。

板子具体的固件就在这个文件夹中,可以通过boards.txt中找到具体的位置,打开boards.txt文件,我是用的是Arduino Nana板子,具体的bootloader就在optiboot/optiboot_atmega328.hex路径下。

打开它,你可以看到配置文件,根据配置文件,你可以找到hex文件所在路径,以及熔丝位的配置。详见下图:(以arduino uno为例)

在这里插入图片描述

1.3 安装下载软件

这里使用的是PROGISP软件。下载地址https://www.onlinedown.net/soft/989430.htm

1.4 开始更新固件

首先我们设置熔丝位,点击progisp软件的自动按钮右边的...按钮(注意:是三个点,不是自动按钮),调出熔丝位设置界面,按照boards.txt所述修改好熔丝位。如下图所示,然后点击写入即可。这样我们就设置好了熔丝位。当然,如果该芯片以前烧写过款一个arduino bootloader,可以不用烧写熔丝位,直接烧写hex文件。

烧写完熔丝位后,我们迎来了最后一步:烧写hex文件。按照boards.txt所述,我们调入bootloader的hex文件,方法是:在软件右边的文件栏下,点击调入flash按钮,然后打开hex文件,根据boards.txt文件,在D:\Software\Arduino\hardware\arduino\avr\bootloaders\optiboot文件夹中的optiboot_atmega328.hex文件。

点击“打开”按钮后,再进行关键一步,设置编程参数!千万不能省,严禁勾选加密芯片选项!否则你的芯片可能跪了。我们只勾选三个选项:校验falsh,芯片擦除,编程flash,如下图所示。设置完毕后,点击“自动按钮”,这样我们就完成了bootloader的烧写。

等待进度条跑完就可以了。

之后在下载代码选择新的下载器就可以了。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

果果小师弟

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

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

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

打赏作者

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

抵扣说明:

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

余额充值