首先,我们必须准备一个AVR单片机刷写程序专用的USBasp(USBISP)下载器,下面是淘宝上的搜索结果:
这个下载器须要安装相应的驱动程序后才能利用,支持WIN7及xp系统的驱动很随意马虎找到,但对付win10的驱动则安装较为繁芜。其余还须要准备一个转接头,即将10pin的ISP接口转为6pin的ISP接口。这个转接头可以直接购买,也可以自己制作。
自己制作时参考下图,把稳10pin的接口上有一个\公众缺口\"大众,必须参考这个缺口确定精确的线序:

不同的开拓板,可以用万用表丈量导通的方法确定\公众GND\"大众与\公众VCC\"大众的准确位置,个中VCC与板上的\"大众5V\"大众该当是导通的。
所需硬件准备好之后,下载一个AVR芯片的专用烧写软件,本文中利用了\公众PROGISP\公众,软件图标为:
接下来将ISP下载器的ISP接口按照精确的位置连接到开拓板,然后USB接口端连接至电脑。运行\"大众PROGISP.EXE\公众,可以看到如下界面:
在图中\"大众1\"大众号框的上面点击下拉菜单选择精确的芯片型号,UNO板和NANO板选择ATmega328p,MEGA2560板选择ATmega2560。接着点击 \"大众1\"大众号框位置的\"大众RD\"大众按钮,如果连线精确且芯片未破坏,可以看到\公众2\"大众号框位置的提示:\"大众读出ID成功……\"大众。然后按照\"大众4\公众号框勾选配置,接着点击\"大众3\公众号框位置的\公众….\"大众按钮,此时会弹出一个对话框:
这个对话框便是AVR芯片特有的\"大众熔丝\"大众位配置,Arduino开拓板在出厂时已经配置好了熔丝位,我们无需变动,在此我们只点击对话框中的\"大众读出\公众选项,所有选项读完之后我们可以将对话框的配置截图保存,这个便是标准的熔丝位配置,同时可以在左侧框的位置看到\"大众熔丝位读出成功\"大众、\"大众加密位读出成功\公众的提示。把稳:在\"大众读出\"大众之前不要点击\公众写入\公众,如果熔丝位配置缺点芯片会被锁去世或不能正常利用,在此我们只做读出操作,目的是查看熔丝位的标准配置。关闭该对话框,接下来我们要去Arduino IDE的根目录里探求对应的\"大众bootloader\公众文件。
打开Arduino IDE的文件夹,按照下图的文件路径逐级打开文件夹:
在文件\"大众boards.txt\"大众文件中,包括了所有开拓板芯片的熔丝位配置信息、开拓板对应的\公众bootloader\"大众文件所在的位置及文件名。
从文件中,我们找到\"大众UNO\"大众板干系的解释(图中蓝色选中部分),从解释中我们可以看到\"大众uno.bootloader.file=optiboot/optiboot_atmega328.hex\"大众,以是UNO板的bootloader文件在文件夹\"大众bootloaders\"大众的目录里一个叫做\"大众optiboot\公众的文件夹里,文件名为:\公众optiboot_atmega328.hex\公众。接着往下面看,我们可以看到NANO板的bootloader文件在 \"大众atmega\"大众文件夹中,文件名为\"大众ATmegaBOOT_168_atmega328.hex\公众;2560板的bootloader文件则在\公众stk500v2\公众文件夹中,文件名为\"大众stk500boot_v2_mega2560.hex\"大众。这里把稳我们板上的单片机(mcu)型号,不同的单片机对应不同的bootloader文件,在txt文档有详细解释。下面是\公众bootloaders\"大众文件夹里的文件目录:
接下来,我们按照上面的文件路径和文件名将几个常用的bootloader文件复制出来,存放在自己随意马虎找到的位置,并且按照板型建立文件夹,分别存放。接下来回到\"大众PROGISP\"大众的界面,点击\"大众调入Flash\公众选项,此时会弹出一个对话框,按照上一步保存的文件路径或直接到ArduinoIDE的根目录里找到对应版型的bootloader文件,选中并点击\"大众打开\公众(文中从ArduinoIDE的根目录里直接打开文件,以UNO板为例),末了点击\"大众自动\公众按钮,此时就开始了bootloader的刷写。刷写过程中在界面的最下方会有进度条提示,刷写过程要经历\"大众Flash编程\"大众和\"大众Flash校验\"大众两个过程,在此期间不要断开开拓板-下载器-电脑的连接。
经由以长进程,Arduino开拓板即规复了串口下载。其余,我也可以通过bootloader的刷写,将UNO板刷成NANO板来用,我测试过将一块板载mega328p的改进型Lilypad板刷成NANO板来利用。
本期分享到此,希望能够对各位Arduino玩家有所帮助,欢迎在评论区留言互换,期待您的点赞与关注。