用USBISP/USBasp编程器给Atmega328P下载Arduino bootloader引导程序

 

bootloader引导程序是什么

类似电脑主板的BIOS,开机或重启时先自动进行BIOS设置。有些单片机出厂时芯片厂商已经烧录好了引导程序,例如串口方式下载的引导程序。单片机复位或重新上电时先从引导程序执行代码检测是否有其他命令需要执行,再跳转到用户程序代码执行。

Arduino开发板预先写入了bootloader,通过USB转串口芯片下发下载命令给Arduino开发板使其复位进入bootloader,bootloader识别到下载命令后接着引导新的用户程序下载到单片机内部flash,若没有识别到下载命令则跳转到原来的用户应用程序继续执行。

对于新出厂的atmega328p芯片内部是没有arduino引导程序的,需要用户预先下载bootloader后才能用串口下载自己的应用程序.在某些罕见情况下旧的bootloader会导致一些bug,这个时候写入新版本bootloader可能会解决问题。

Arduino UNO引导程序下载接口

在这里插入图片描述
Arduino UNO使用的是AVR芯片,AVR芯片烧写程序是通过ICSP(in-circuit serial programmming)硬件接口来实现的,左上角是atmega16u2芯片作为USB转TTL串口用,也有ICSP接口,不用去下载引导程序,右边中间ICSP作为Atmega328P芯片的引导程序下载接口
在这里插入图片描述

SPI接口 MOSI、MISO、SCLK
电源 VCC、GND
复位 RESET

几种常见的下载器和6P转接头

请添加图片描述

点击图片购买

请添加图片描述

安装USBasp驱动
在这里插入图片描述

免驱版直接插入电脑就能被识别到
在这里插入图片描述
下载器与Arduino UNO开发板连接
在这里插入图片描述
USBas驱动与烧录软件下载地址:
https://pan.baidu.com/s/1ovbBz5D4a2MRvxWPAloXYg 提取码:mg21

Arduino Bootloader下载

连接好下载器和Arduino uno开发板或atmega328p单片机最小系统ICSP引脚,打开ProgISP下载软件
在这里插入图片描述熔丝位配置好后点写入,再点读出,看是否与写入相同!
在这里插入图片描述
固件在Arduino安装目录中找到,如下图在这里插入图片描述
引导程序下载好后,打开Arduino IDE给Arduino UNO开发板下载一个例程检查芯片能否通过串口下载Arduino的用户应用程序。

总结

烧写bootloader与使用编程器给单片机烧写程序是一样的,有的厂商的单片机出厂时已烧录好自己的引导程序,有的没有,烧录方法也会不同。长期发布类似文章,欢迎关注,欢迎随时留言,需要程序或者软件也可以在下方留言喔!

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

热门文章

收藏
浏览量:0
创建时间:2022-06-10 14:48