AVR单片机烧写Arduino-bootloader

本文介绍了如何使用Arduino IDE和Arduino作为ISP编程器来烧写AVR单片机的bootloader。烧写过程涉及硬件接口ICSP的连接,包括连接编程器与目标开发板的步骤,并提供了自测实拍的效果展示。
摘要由CSDN通过智能技术生成

关于bootloader

Arduino
* 通常情况下MCU烧写程序都需要通过专门的编程器进行。
* 假使每次复位时MCU不是从程序存储器起始位置开始读取命令,而是预先加载一段指令,实现一些设置和功能,再开始执行代码。这样可以极大的方便MCU编程与使用,而这些预先写入的程序代码就是bootloader。
* Arduino通过预先写入的bootloader,当用户通过串口给Arduino板下载程序时,Arduino板首先会复位一次,这样就进入了bootloader。 接着向Arduino板发送特定的下载指令,bootloader识别到这些指令后就会开始接收待更新的程序代码,并写入到内部flash中;如果没有进行下载,bootloader没有识别到下载指令,那么它就会跳转到程序区正常工作。
* 总结上述内容,可以理解为:Arduino之所以能用一根usb线就愉快下载程序的原因就是bootloader。


问题来了:
  • 有些情况下我们需要自己搭建Arduino最小系统板,或者将其嵌入到自己的PCB项目里。这些只要你想都很容易,但是:新出厂的ATmega328p等等MCU里是没有bootloader的,怎么办?这时就需要自己烧写。

烧写bootloader

• 硬件接口

烧写bootloader本质上只是使用编程器烧写一段特殊的程序到MCU中,因此其方法与使用编程器烧写程序是一样的,这个方法在不同厂商、不同种类的单片机上都是不同的。
对于一般的Arduino开发板使用的AVR单片机来说,烧写程序是通过ICSP(in-circuit serial programmming)硬件接口来实现的。

  • 4
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值