极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 26708|回复: 9

求大家帮忙 Atmega8l-8pu 制作 Arduino的问题

[复制链接]
发表于 2013-6-1 12:58:27 | 显示全部楼层 |阅读模式
本帖最后由 conjee 于 2013-6-1 12:58 编辑

手头上有个Atmega 8l-8pu, 出厂设置,熔丝位没有调整过。 现想用它来做一个简单的Arduino板,使用内部RC 8MHZ振荡器。 现在有问题请教一下大家。
环境: ISP:USBASP,  arduino-1.0.2

接线图:
接线没有问题,可以 PROGISP工具取FLash数据。



操作步骤:
1.修改  arduino-1.0.2\hardware\arduino 目录下 boards.txt 在文件底部添加
##############################################################

atmega8_8M.name=ATmega8_8MHz

atmega8_8M.upload.protocol=arduino
atmega8_8M.upload.maximum_size=7168
atmega8_8M.upload.speed=115200

atmega8_8M.bootloader.low_fuses=0xa4
atmega8_8M.bootloader.high_fuses=0xdc
atmega8_8M.bootloader.path=optiboot
atmega8_8M.bootloader.file=optiboot_atmega8_8M.hex
atmega8_8M.bootloader.unlock_bits=0x3F
atmega8_8M.bootloader.lock_bits=0x0F

atmega8_8M.build.mcu=atmega8
atmega8_8M.build.f_cpu=8000000L
atmega8_8M.build.core=arduino
atmega8_8M.build.variant=standard

2. 再将论坛下载的optiboot_atmega8_8M.hex, optiboot_atmega8_8M.lst 放到arduino-1.0.2\hardware\arduino\bootloaders\optiboot目录下。


3. 重启arduino1.02
设置选中 Arduino->Tools->Boards->Atmega8_8MHZ


设置
设置选中 Arduino->Tools->programmer->USBasp


4.最后
设置选中 Arduino->Tools->Burn Bootloader


结果报错:

本帖子中包含更多资源

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

x
回复

使用道具 举报

发表于 2013-6-1 13:11:02 | 显示全部楼层
如果使用USBasp的话,在arduinoIDE下烧写bootloader成功概率不大,可以下载其他第三方软件烧写
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-6-1 13:16:20 | 显示全部楼层
swim 发表于 2013-6-1 13:11
如果使用USBasp的话,在arduinoIDE下烧写bootloader成功概率不大,可以下载其他第三方软件烧写


不知道用avr studio5.0 怎么将bootloader写到boot区?  熔丝位可以用PROGISP设置如下:

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

发表于 2013-6-1 15:10:41 | 显示全部楼层
conjee 发表于 2013-6-1 13:16
不知道用avr studio5.0 怎么将bootloader写到boot区?  熔丝位可以用PROGISP设置如下:

bootloader的hex文件直接下载flash就可以了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-6-1 18:34:35 | 显示全部楼层
swim 发表于 2013-6-1 15:10
bootloader的hex文件直接下载flash就可以了

bootloader可以写进去了,但是用ttl下载还是有点问题,还在解决中。
回复 支持 反对

使用道具 举报

发表于 2013-6-2 00:27:15 | 显示全部楼层
本帖最后由 hmjack2008 于 2013-6-5 08:00 编辑

LZ 先参阅这篇吧 !  (自给自足,丰衣足食)
关于Atmega8L的bootloader的基于源代码的重新编译
http://www.geek-workshop.com/thread-1459-1-1.html

刚好最近自己也DIY了2片ATmega8的Arduino…
Optiboot 有出 V5版的, 我自己重新编译成 使用内部RC 8MHZ 可以用在 ATmega8 !!

使用内部 8MHz : optiboot_atmega8_opt_v5_i8M.hex
使用外部 16MHz : optiboot_atmega8_opt_v5_o16M.hex

boards.txt :
##############################################################

atmega8_v5.name=ATmega8_opt_v5_o16MHz

atmega8_v5.upload.protocol=arduino
atmega8_v5.upload.maximum_size=7680
atmega8_v5.upload.speed=115200

atmega8_v5.bootloader.low_fuses=0xBF
atmega8_v5.bootloader.high_fuses=0xCC
atmega8_v5.bootloader.path=optiboot_V5
atmega8_v5.bootloader.file=optiboot_atmega8_opt_v5_o16M.hex
atmega8_v5.bootloader.unlock_bits=0x3F
atmega8_v5.bootloader.lock_bits=0x0F

atmega8_v5.build.mcu=atmega8
atmega8_v5.build.f_cpu=16000000L
atmega8_v5.build.core=arduino
atmega8_v5.build.variant=standard

##############################################################

atmega8_8M.name=ATmega8_opt_V5_i8MHz

atmega8_8M.upload.protocol=arduino
atmega8_8M.upload.maximum_size=7680
atmega8_8M.upload.speed=115200

atmega8_8M.bootloader.low_fuses=0xA4
atmega8_8M.bootloader.high_fuses=0xDC
atmega8_8M.bootloader.path=optiboot_V5
atmega8_8M.bootloader.file=optiboot_atmega8_opt_v5_i8M.hex
atmega8_8M.bootloader.unlock_bits=0x3F
atmega8_8M.bootloader.lock_bits=0x0F

atmega8_8M.build.mcu=atmega8
atmega8_8M.build.f_cpu=8000000L
atmega8_8M.build.core=arduino
atmega8_8M.build.variant=standard

##############################################################

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

发表于 2013-6-4 22:31:02 | 显示全部楼层
学习了···········
回复 支持 反对

使用道具 举报

发表于 2013-6-5 10:29:37 | 显示全部楼层
努力学习,积极赚分i
回复 支持 反对

使用道具 举报

发表于 2013-10-23 11:35:27 | 显示全部楼层
想学习一下
回复 支持 反对

使用道具 举报

发表于 2013-10-23 12:52:38 | 显示全部楼层
本帖最后由 huan 于 2013-10-23 12:55 编辑

不要直接用arduino IDE直接写入程序,现在的免驱usbasp大部分都不支持arduino IDE。
我自己的做法写给你参考:
1、先把arduino IDE弄的支持Atmega8,你应该弄好了。
2、用usbasp线把Atmega8连接好,打开PROGISP软件,先把熔丝位写进去(就是那2个高低位,low_fuses=0xa4,high_fuses=0xdc,使用的支持文件不一样,芯片频率不一样,数值也不一样),再把对应bootloader(optiboot_atmega8_8M.hex)写进flashl里去。
3、把你写好的程序用arduino IDE编译成hex文件,用usbasp线连好芯片,打开PROGISP软件再写进flashl里就完了。以后修改程序后重复第3步就可以了。
回复 支持 反对

使用道具 举报

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

本版积分规则

Archiver|联系我们|极客工坊

GMT+8, 2026-6-8 20:59 , Processed in 0.040623 second(s), 25 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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