atmega168P烧写bootloader

atmega168P烧写bootloader

烧写bootloader的方法大体分为两种:
1.使用Arduino IDE烧写bootloader
2.使用USBasp烧写

方法一:使用Arduino IDE烧写

中文教程
我们可以使用另一块Arduino,下载烧录器固件代码,然后连接需要烧写bootloader的单片机芯片进行烧写。

1.硬件连接

图1.arduino UNO 上的ICSP

图中标记的是Arduino UNO上的ICSP,引脚定义为:图2.ICSP引脚定义

将第一块Arduino的MISO、MOSI、SCK连接至待烧写的单片机芯片的MISO、MOSI、SCK,同时将两者的5V、GND连接在一起,将第一块Arduino板的 pin 10 引脚连接至芯片的RESET引脚

第一块Arduino板待烧写bootloader的单片机芯片
VDD/5VVDD/5V
GNDGND
MISOMISO
MOSIMOSI
SCKSCK
PIN 10RESET

如图所示:
在这里插入图片描述

2.使用Arduino IDE进行烧写

1.将第一块Arduino连接至电脑,点击文件-->示例-->ArduinoISP-->ArduinoISP

在这里插入图片描述
 

2.选择正确的开发板信息,上传程序:

 
 
在这里插入图片描述 
 

3.工具-->编程器:-->"Arduino as ISP"

 
 
在这里插入图片描述
 
 

4.选择待烧录芯片的开发板信息:

 
 
在这里插入图片描述
(PS:这里是选择待烧录bootloader的芯片的开发板信息而不是第一块Arduino的开发板信息,如果你的芯片是atmega328,arduino板为mega2560,则要选择的是atmega328)

5.点击工具-->烧录引导程序,等待完成即可

6.编写自己的程序后,点击项目-->使用编程器上传即可将程序上传到芯片

 
 
 

方法二:使用USBasp烧写bootloader

 

1.购买USBasp编程器

在这里插入图片描述在这里插入图片描述

 

2.下载progisp.exe软件

下载链接:https://pan.baidu.com/s/1HYUu9dytKVLp0Ynk5LoflA 密码:h3yp
 
在这里插入图片描述 
选择芯片型号
 
在这里插入图片描述在这里插入图片描述 
点击“调入Flash",选择bootloader文件,以我的Adruino IDE安装路径为例D:\Arduino\hardware\arduino\avr\bootloaders\atmega\ATmegaBOOT_168_ng.hex
 
在这里插入图片描述在这里插入图片描述在这里插入图片描述 
点击"自动"即可。

 
 
 
 
我买了一块atmega168P(特征码为:1E:94:06),使用方法一烧录bootloader时发现,Arduino IDE默认的编程器只有atmega168(特征码为:1E:94:0B),查了一些方法,可以修改IDE文件将atmega168的特征码修改为atmega168P的特征码,但还是错误

 
 
随即买了一块AVR USBasp下载器,使用USBasp下载bootloader成功后,依然无法通过Arduino IDE下载程序,但是可以使用USBasp的"调入Flash",将.HEX格式的程序文件下载至atmega168P,所以可以暂时先用这种方法烧写程序

利用Arduino IDE生成.HEX格式的程序

可以在Arduino IDE中编写好程序,保存成.HEX格式文件用以USBasp下载器写入,具体方法如下:

1: 在arduino工具的文件-->首选项中找到preferences.txt文件。

2:用记事本打开preferences.txt,选择hex文件存放的路径,在最后一行加入 build.path=d:\arduino\MyHexDir(路径可更改)

3:关闭arduino。

4:关闭preferences.txt ,关闭时对话框显示是否保存,选择保存。

(转自:http://blog.chinaunix.net/uid-23381466-id-4149304.html)

 
上述操作完成后,每次编译或上传都会在d:\arduino\MyHexDir路径中生成.HEX文件,但是当下一次程序编译或上传后生成的.HEX文件会完全替换掉上一次保存的.HEX格式文件,一定要注意!

  • 2
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值