如何编译文件得到的bootloader的.hex文件(例如:atmega328p)

一、打开Arduino ide的文件存放位置,本人是将其放在D盘的Arduino中

在D:\Arduino\arduino\hardware\arduino\avr\bootloaders\optiboot文件中

你会看到有omake,omake.bat,Makefile,以及.h,.c,.hex等文件。而其中的optiboot_atmega328.hex文件就是atmega328p的bootloader,其就是 arduino ide 中为arduino uno板子烧录的bootloader(如何烧录引导程序bootloader,请问度娘)

二、准备工作:移除optiboot_atmega328.hex文件(移除前做好备份)

1).hex文件通常是.c编译后生成的,应该需要编译器什么的,如:mak.exe(这个与linux有关),avr-gcc.exe(与avr单片机编程器有关)(这里本人也不太懂,这篇博文对本人有很大启发点击打开链接

2)受其指导,本人也就下了老版的arduino-1.0,寻找与mak.exe和avr-gcc.exe有关的文件,经过搜索,找到他们所在文件:C:\Users\ATX\Desktop\arduino-1.0\hardware\tools\avr\bin(这里的C:\Users\ATX\Desktop\是应为我把arduino-1.0文件放在我的桌面上的)这里与avr-gcc.exe有关

C:\Users\ATX\Desktop\arduino-1.0\hardware\tools\avr\utils\bin  这里与mak.exe (仔细看这个文件,你会看到chmod,su,cp,ls,man,sleep, rm等,用过linux系统的话,对这些就不会陌生)   

3)现在知道这些的文件路径了,就可以操作了。更windows的改环境变量(本人的是windows10)右键->我的电脑,然后选择属性,在弹出的对话框中,选择高级系统设置,选择环境变量,在用户变量中双击path,新建加入上面两个路径。后面这些(.exe)命令就可以随便用了。

三、下面要做的是:我们从新生成一个optiboot_atmega328.hex文件。

进入到最开始打开的文件中:D:\Arduino\arduino\hardware\arduino\avr\bootloaders\optiboot文件。用左键单击图中红圈处,该行会变蓝,然后输入cmd并回车,此时会弹出cmd窗口


(红色表示的是我们所在的文件位置)

然后我们在cmd窗口中输入make atmega328并回车,然后就可以在你所在的文件下看到生成的optiboot_atmega328.hex文件了。但是没有对应的.lst文件生成,不过也不碍事。然后你就可以将这个文件烧如你的单片机验证了。

如何烧录呢:看此博文吧

想要编一个自己的bootloader:这就有点麻烦了,本人是编了一个,还没来得及测试。推荐几篇博文吧:(很有帮助)不要畏惧英文这个也不错

对了atmega328p 的datasheet 英文版是由445页,而不是32页,之前一直弄错了。这个网站可以下载:https://www.microchip.com/wwwproducts/en/ATMEGA328P?tab=documents#documents

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值