NewNew 发表于 2010-6-13 20:35:41

如何将bootloader程序烧录到BLS区

马老师好,各位好:
                如何将bootloader程序保存在bls区域,也就是说如何将bootloader程序烧录到BOOTloader区,谢谢!

NewNew 发表于 2010-6-16 10:45:52

请马老师发表一个意见!我实在找不到这方面信息,在datasheet里面也没有介绍!

machao 发表于 2010-6-23 21:21:21

你不是说“单片机已学会了”?http://www.ourdev.cn/bbs/bbs_content.jsp?bbs_sn=4106245&bbs_page_no=1&bbs_id=1003

fshunj 发表于 2010-8-22 16:56:33

无语……

god54188 发表于 2010-8-26 18:15:30

当熔丝位BOOTRST 已编程,且Boot 区为8K 字节时,典型的复位和中断设置如下:
地址符号代码说明
.org $0002
$0002 jmp EXT_INT0 ; IRQ0 句柄
$0004 jmp EXT_INT1 ; IRQ1 句柄
... ... ... ;
$0044 jmp SPM_RDY ; SPM 就绪句柄
;
.org $F000
$F000 RESET: ldi r16,high(RAMEND) ; 主程序
$F001 out SPH,r16 ; 设置堆栈指针为RAM 的顶部
$F002 ldi r16,low(RAMEND)
$F003 out SPL,r16
$F004 sei ; 使能中断
$F005 <instr> xxx


这是M128 新片手册,建议看个百十遍。
不看个千百遍,玩不精AVR 的。

datasheet 里没介绍? 你看你的火星版? 我的中文版里都有。

god54188 发表于 2010-8-26 18:18:29

算了,还是做个好人吧,

你烧好熔丝位,把后半截的程序空间劈开。

再烧好熔丝位,吧程序设置成从后半截开始运行,也就是你劈开的那部分,

写程序的时候 第一行 .ORG $F000 就OK 了

不一定是F000 ,看你劈开多少,就从那里开始。

kevin111638 发表于 2010-9-11 00:12:26

可以參考一下這個網頁
http://www.scienceprog.com/testing-avr-universal-bootloader-on-atmega128/
有說明要怎麼做,你應該是沒有設定Memory Setting,設定到你要的位置
页: [1]
查看完整版本: 如何将bootloader程序烧录到BLS区