0 前言
Arduino的生态非常好,但就是有一点,自己做的板子得先烧录Bootloder,要不用不了。
1 USPasp
这是一个非常经济的方案:
然后,给编程器安装驱动。这个驱动着实不好安装,最好向购买人员索要对应的驱动。安装驱动很简单,将USBasp插入电脑的USB口,然后打开设备管理器,找到USBasp设备,右键,更新驱动程序软件,选择浏览计算机以查找驱动程序软件,然后找到驱动程序软件路径,最后安装成功,如下图所示。当然,有些是免驱的,这样就省去安装驱动的麻烦了。
2 硬件连接
其次,我们需要将USBasp与arduino进行连线。ASP编程器接口是10pin的,但arduino编程接口ICSP是6pin的。直接用杜邦线连上就可以:SCK--->D13、MISO--->D12、MOSI--->D11
3 烧录操作
把USBasp插入电脑的USB口,设备管理器中应该出现对应的ASP设备。然后,我们打开智峰progisp软件。选择对应型号,比如这里在Select Chip一栏选择ATmega328P,然后点击RD按钮。如果提示"读出ID成功",说明你的芯片和连线都是OK的。
接着,找到bootloader的hex文件。此文件需要看boards.txt说明,地址在arduino-1.8.13-r2hardwarearduino文件夹中。打开它,你可以看到配置文件,根据配置文件,你可以找到hex文件所在路径,以及熔丝位的配置。详见下图:(以arduino uno为例)
主要关心的参数,是图中红字标出的。首先我们设置熔丝位,点击progisp软件的“自动”按钮右边的“...”按钮(注意:是三个点,不是自动按钮),调出熔丝位设置界面,按照boards.txt所述修改好熔丝位。如下图所示,然后点击写入即可。这样我们就设置好了熔丝位。当然,如果该芯片以前烧写过同一个arduino bootloader,可以不用烧写熔丝位,直接烧写hex文件。
烧写完熔丝位后,我们迎来了最后一步:烧写hex文件。按照boards.txt所述,我们调入bootloader的hex文件,方法是:在软件右边的文件栏下,点击调入flash按钮,然后打开hex文件,根据boards.txt文件,找到optiboot_atmega328.hex文件。
点击“打开”按钮后,再进行关键一步,设置编程参数!千万不能省,严禁勾选“加密芯片”选项!否则你的芯片可能跪了。我们只勾选三个选项:校验falsh,芯片擦除,编程flash,如下图所示。设置完毕后,点击“自动按钮”,这样我们就完成了bootloader的烧写。
3 附件
当然,LGT8F328P,你可以使用这个芯片,他们也是兼容的,不过需要添加一些文件。详见NANO_LGT8F328P.7z
USBasp驱动及烧录软件.7z