极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 45686|回复: 26

ATmega8L的arduino bootloader

  [复制链接]
发表于 2011-11-24 10:45:32 | 显示全部楼层 |阅读模式
原帖地址:http://www.hackmeister.dk/2011/0 ... -file-for-atmega8l/

国外某高手做出来ATmega8L使用8M晶振的arduino bootloader

在\hardware\arduino\boards.txt 中下入下面代码,与新版bootloader配合,既可以在arduino中使用ATmega8L了。
  1. ##############################################################

  2. atmega8l.name=LCD I/O Backpack w/ ATmega8L @ 8MHz

  3. atmega8l.upload.protocol=stk500
  4. atmega8l.upload.maximum_size=7168
  5. atmega8l.upload.speed=19200

  6. atmega8l.bootloader.low_fuses=0xdf
  7. atmega8l.bootloader.high_fuses=0xca
  8. atmega8l.bootloader.path=atmega8
  9. atmega8l.bootloader.file=ATmega8L.hex
  10. atmega8l.bootloader.unlock_bits=0x3F
  11. atmega8l.bootloader.lock_bits=0x0F

  12. atmega8l.build.mcu=atmega8
  13. atmega8l.build.f_cpu=8000000L
  14. atmega8l.build.core=arduino

  15. ##############################################################
复制代码
附件就是bootloader:



补充:1.0 IDE使用的boards代码
  1. ##############################################################

  2. atmega8l.name=LCD I/O Backpack w/ ATmega8L @ 8MHz

  3. atmega8l.upload.protocol=stk500
  4. atmega8l.upload.maximum_size=7168
  5. atmega8l.upload.speed=19200

  6. atmega8l.bootloader.low_fuses=0xdf
  7. atmega8l.bootloader.high_fuses=0xca
  8. atmega8l.bootloader.path=atmega8
  9. atmega8l.bootloader.file=ATmega8L.hex
  10. atmega8l.bootloader.unlock_bits=0x3F
  11. atmega8l.bootloader.lock_bits=0x0F

  12. atmega8l.build.mcu=atmega8
  13. atmega8l.build.f_cpu=8000000L
  14. atmega8l.build.core=arduino
  15. atmega8l.build.variant=standard

  16. ##############################################################
复制代码

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复

使用道具 举报

发表于 2011-11-24 12:51:17 | 显示全部楼层
我这好几个,8l可以试试这个~
回复 支持 反对

使用道具 举报

发表于 2011-12-16 22:06:18 | 显示全部楼层
我按照这个做了一块小板,但是上载程序时通信灯闪了一阵就不动了,如果再次上载就无法通信了,崩溃中,哪位高人拉兄弟一把啊。。。
回复 支持 反对

使用道具 举报

发表于 2011-12-16 22:12:16 | 显示全部楼层
首先,需要按复位键,然后点下载程序。
回复 支持 反对

使用道具 举报

发表于 2011-12-17 19:42:55 | 显示全部楼层
用SLISP,并口下载线,把这个BOOTLOADER烧进M8芯片,按复位键(其实按不按都一样),用实串口COM1上传程序(9600或19200都一样),TX和RX灯高速闪烁,然后就停了,Upload黄色消失,提示信息Done uploading。
再次按复位键,上传程序,TX灯慢闪两下,然后出现红色错误提示。

               
回复 支持 反对

使用道具 举报

 楼主| 发表于 2011-12-17 19:53:08 | 显示全部楼层
{:soso_e154:}熔丝位配置对了吗?
回复 支持 反对

使用道具 举报

发表于 2011-12-17 20:22:48 | 显示全部楼层
0xdf
0xca
回复 支持 反对

使用道具 举报

发表于 2011-12-17 20:25:32 | 显示全部楼层
看现象,应该是把程序上传时破坏了boot区,但是反复学习检查熔丝位,这个配置应该没有问提呀!
回复 支持 反对

使用道具 举报

发表于 2012-3-1 21:22:56 | 显示全部楼层
不知如何修改这个Bootloader, 让8L工作在4MHz晶振?
回复 支持 反对

使用道具 举报

发表于 2012-4-14 17:28:49 | 显示全部楼层

乞丐版Arduino制作图解

本帖最后由 thomas 于 2012-4-14 18:01 编辑

首先,感谢弘毅的友情技术支援!


这是我第一次自建并烧系统,还比较自信自己对硬件的驾驭能力。

去商店买芯片时,问我用Atmega8还是8L,按照我萌萌的理解,按照车的标准, L肯定好,于是就买了。。。L没想到是低速的意思,不是加长。。。我只是想做个小开关,足够了。

结果昨天凌晨5点也没烧好熔丝位。今天下午,在弘毅的远程协助下,终于烧上Arduino并且成功运行了。


心得:一理通,百理明,以后熟悉了就好办了。

收获:实现了“乞丐版的Arduino方案”,硬件整个下来50元以内就能搞定了,因为山寨的烧录器实在太便宜了。

硬件:

ATmega8L芯片,外接8M晶振,两个22p电容。

1脚复位脚向vcc接了一个10k电阻,向GND接了100n电容,做个简易复位功能。
VCC/GND间接了个100n电容。

另:芯片第19脚(Arduino PIN13)对GND接了一个led和220r电阻,用来测试状态。

烧录器是昨天在商店随手买的便宜货,也不确定行不行,说好不能用给退。也没提供软件,让我自己找。

淘宝卖20左右,搜下“USBISP”一大堆,U盘样子,还有免驱动的,不知效果怎么样,我这个是老版本,做工很山寨。

不过,烧系统带烧程序都能完成,也算是性价比突出。

软件:
网上找的 progisp1.72,更高版本的我用的烧录器不支持。(后来确认,我用的版本应该是山寨版,写这个软件的人出品的是正版)




硬件搭建好后确认无误。



运行progisp,选择ATmega8,然后选择RD键盘。下方提示“读取ID成功”也就证明连接没问题了。
然后,右边位置有个"。。。"的按钮,这就是熔丝位界面,选中。



直接操作1,0位置就可以。操作后,下面显示低位值和高位值。根据8L的熔丝位信息,经过如上选择,最终结果是DF,CA,与说明书一致。
然后选择写入。提示写入成功;然后选择读出,提示读出成功。至此熔丝位已经完成!(打个比方,相当于按照软件要求给计算机系统分区,但分区很严格,必须按照手册来,不知我这么理解对不对。)



分好区就要装系统了,选择调入flash(这个步骤,以后传程序时还会重复)

选中8L的hex(相当于系统盘)

然后选择写入,提示成功。

至此,Arduino已经装好了。如果你也在ic的19脚(Arduino P13)接了个led,它会诡异的闪起来了,非常像是警车警灯。

完成真正的乞丐版操作,还需要以最经济的方法传程序。

需要改下preferences.txt ,加入 hex生成路径这一行。
板子设置一下Tools 》Board 》 LCD I/0 Backup w/ATmega8L就可以干活了。(别忘了用UNO时改回来)



现在软硬件都调好了,想让你的乞丐版Arduino做点儿就可以试试了,13口不是还连着个led吗?直接找个例子驱动吧。



打开实例里的blink,然后选择“运行” 而不是 upload
运行通过后,不要关窗口,赶紧到你刚才设置的去捡宝吧。



一堆文件,里面有个*.HEX 拷贝走,要不一关窗口这个文件夹内就全删除了




重复一遍Flash烧录的过程,这次的hex目标,指向你刚才的hex,载入,如果没意外的话,Arduino的第一个乞丐程序已经开始运行了~



选择



写入

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

发表于 2012-4-14 23:29:43 | 显示全部楼层
高手都是练出来的啊!
回复 支持 反对

使用道具 举报

发表于 2012-4-19 13:50:07 | 显示全部楼层
thomas 发表于 2012-4-14 17:28
首先,感谢弘毅的友情技术支援!

经过测试绝对可行, 不过目前碰到的问题是每次重新烧新程序的时候,必须先清空芯片,然后再烧bootloader然后再烧程序, 有没有办法可以直接烧程序,不用每次都清空呢?
回复 支持 反对

使用道具 举报

发表于 2012-4-19 20:37:27 | 显示全部楼层
不烧bootloader看看行不行
回复 支持 反对

使用道具 举报

发表于 2012-7-4 06:22:22 | 显示全部楼层
顶一下,自己也做个!
回复 支持 反对

使用道具 举报

发表于 2012-9-6 22:59:45 | 显示全部楼层
我搞了块烧好的328,可不会下载
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 需要先绑定手机号

Archiver|联系我们|极客工坊

GMT+8, 2024-4-29 08:27 , Processed in 0.051068 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表