搜索
bottom↓
楼主: shaoziyang

AVR通用Bootloader

  [复制链接]

出0入0汤圆

发表于 2009-3-7 21:57:15 | 显示全部楼层
bootloader我下载4.5的源代码 稍微改动了一点

增加了 AutoCode界面的设置 可保存在 avrubd.ini  的功能
且增加了 MCU、bootstart 在配置文件 MCU.ini中 增加和删除功能

点击此处下载 ourdev_424300.rar(文件大小:561K) (原文件名:BootLoader_PC.rar)

出0入0汤圆

 楼主| 发表于 2009-3-9 10:26:56 | 显示全部楼层
的确应该加入这个功能,估计下一版(5.0)中会增加。此外还会加入文件拖放、命令行、序列号等功能。

另外为了安全,加密的密钥最好不要保存到ini文件中。

出0入0汤圆

发表于 2009-3-11 14:35:14 | 显示全部楼层
今天用BOOTLOADER,有发现一个不方便的地方,再次改进
我的板子和电脑通讯使用的 Even校验
但是在AUTOCODE界面配置bootloder程序时,没有设置校验位的选项
当在线升级的时候 给用户发送进入BOOTLOADER命令时 是一个校验方式
升级程序又一个校验方式,换来换去 很麻烦 而且需要手脚动作很快才行

现在更改了程序,且修改AVR程序的 bootldr.h文件中139行

测试已经通过


定外增加了 通过选取配置文件,来修改 mmobin以及databuf中的HEX的功能

这样在不用从新编译的情况下 修改AVR程序
这样可以:
1、先通过自己的程序获取芯片的特征码 ,然后发送给电脑软件
2、然后自作配置文件(配置文件格式参照文件Changelist.ini)
3、然后用avrubd加载HEX,
4、击更改按钮,加载第二步所生成的配置文件,即可更改AVR程序
5、然后点击在线升级即可
这样可以用来加密程序
防止暴力拷贝程序  测试已经通过

更改日期2009-3-11ourdev_424947.rar(文件大小:561K) (原文件名:BootLoader_PC.rar)

出0入0汤圆

发表于 2009-3-11 14:38:16 | 显示全部楼层
修改的bootldr.h文件的139行
UCSRCREG(COMPORTNo) = USEURSEL | (1 << UCSZBIT(COMPORTNo, 1)) | (1 << UCSZBIT(COMPORTNo, 0)); \
改成
UCSRCREG(COMPORTNo) = USEURSEL | (1 << UCSZBIT(COMPORTNo, 1)) | (1 << UCSZBIT(COMPORTNo, 0)) | USARTCheck; \



(原文件名:a.jpg)

出0入0汤圆

发表于 2009-3-11 15:47:59 | 显示全部楼层
现在才顶有点晚,呵呵

出0入0汤圆

发表于 2009-3-11 16:52:37 | 显示全部楼层
为什么不作成直接支持xmodem协议,直接下载.hex文件的,那样多方便

出0入0汤圆

发表于 2009-3-11 16:57:05 | 显示全部楼层
好,标记一下。

出0入0汤圆

发表于 2009-3-22 09:17:00 | 显示全部楼层
顶!!!!

出0入0汤圆

发表于 2009-3-25 17:29:40 | 显示全部楼层
做的好!

出0入0汤圆

发表于 2009-3-25 19:06:24 | 显示全部楼层
顶一个,哈哈

出0入0汤圆

发表于 2009-4-9 15:58:14 | 显示全部楼层
很强大,谢谢

出0入0汤圆

发表于 2009-4-16 11:37:03 | 显示全部楼层
你选择的单片机型号是Mega8,但是没有PORTA。默认LED使用了PA4,这是Mega169的设置,你需要修改一下。


哪位有改好的M8的吗?
初学,还不是很会,谢谢!!!

出0入0汤圆

发表于 2009-4-17 09:13:48 | 显示全部楼层
我以为我眼花
再次去看了一下M8的手册 没有看到M8有PORTA的啊

出0入0汤圆

发表于 2009-4-21 10:58:17 | 显示全部楼层
mark

出0入0汤圆

发表于 2009-5-7 10:59:39 | 显示全部楼层
V4.5 用WINAVR20090313编译不行,不知哪里的原因.

出0入0汤圆

 楼主| 发表于 2009-5-7 20:53:44 | 显示全部楼层
新版本的WINAVR一直没有试过。试过WINAVR2008的版本,感觉编译效果比WINAVR2007的差。等周末试试WInAVR的新版本,看有没有什么变化。

出0入0汤圆

发表于 2009-5-7 21:14:57 | 显示全部楼层
谢谢,编译通过,但烧录进去没运行一样。

出0入0汤圆

发表于 2009-5-7 21:32:28 | 显示全部楼层
收藏sku

出0入0汤圆

发表于 2009-5-18 12:39:02 | 显示全部楼层
不知是AVR studio4.16不行还是STK500不行,用studio4.15+WINAVR20090313可以,但效率没20071221的高,

出0入0汤圆

发表于 2009-5-21 22:32:42 | 显示全部楼层
顶.

出0入0汤圆

发表于 2009-5-23 09:21:35 | 显示全部楼层
V4.5版式的delphi上位机程序,编辑时出现TSynmemo not found错误,这时怎么回事。

出0入0汤圆

发表于 2009-5-23 11:19:04 | 显示全部楼层
谢谢楼主,很强

出0入0汤圆

发表于 2009-5-23 11:43:24 | 显示全部楼层
发现上位机源代码4.2版的在DELPHI里面加载后缺东西啊。
(原文件名:1.jpg)
请教如何在DELPHI7里面能成功编译那个源代码?

出0入0汤圆

 楼主| 发表于 2009-6-8 20:03:10 | 显示全部楼层
需要安装几个第三方控件。需要的控件在源码目录下的readme中有说明和下载地址。

这个提示说明缺少了SynEdit这个控件。

出0入0汤圆

发表于 2009-6-11 13:02:14 | 显示全部楼层
我是644单片机出现了这种情况不知道怎么回事,请各位看看

> 开始下载
> 开始联机
$ <1> 发送联机密码: 00 00 00 00 00
$ <2> 发送联机密码: 00 00 00 00 00
$ <3> 发送联机密码: 00 00 00 00 00
$ <4> 发送联机密码: 00 00 00 00 00
$ <5> 发送联机密码: 00 00 00 00 00
$ <6> 发送联机密码: 00 00 00 00 00
$ <7> 发送联机密码: 00 00 00 00 00
$ <8> 发送联机密码: 00 00 00 00 00
$ <9> 发送联机密码: 00 00 00 00 00
: B5 C8 B4 FD BD D3                       等待接
: CA D5 CA FD BE DD 2E 0D 0A              收数据...
$ <10> 发送联机密码: 00 00 00 00 00
X 联机失败


> 开始下载
> 开始联机
$ <1> 发送联机密码: 00 00 00 00 00
: 43                                      C
$ <2> 发送联机密码: 00 00 00 00 00
$ <3> 发送联机密码: 00 00 00 00 00
: 43                                      C
V 联机成功
  |

  -

  |

  -

  |

  -

  |

  -

  |

  -

  |


X 重试次数太多!
X 升级失败

出0入0汤圆

发表于 2009-6-11 13:53:54 | 显示全部楼层
这个问题已经解决,重启一下就好了
现在有新的问题,我设置了从BOOTLOAD启动但是好像BOOTLOAD不释放内存不能跳到应用程序区

出0入0汤圆

发表于 2009-6-11 15:40:52 | 显示全部楼层
记号

出0入0汤圆

发表于 2009-6-15 11:54:00 | 显示全部楼层
正在使用AVRUBD4.5测试M128,项目已经生成HEX文件,JTAG下载后测试联机成功,却不能更新升级!谁能帮忙解决?QQ:353025231

出0入0汤圆

发表于 2009-6-15 11:55:33 | 显示全部楼层

(原文件名:avrboot.JPG)

出0入0汤圆

发表于 2009-6-15 11:57:38 | 显示全部楼层
126楼是怎么重启解决的啊?我的问题和你一样!

出0入0汤圆

发表于 2009-6-15 11:58:16 | 显示全部楼层
期待中!

出0入0汤圆

发表于 2009-6-15 13:58:32 | 显示全部楼层
版主帮我看看这个是什么原因啊!

出0入0汤圆

发表于 2009-6-15 15:32:43 | 显示全部楼层

出0入0汤圆

发表于 2009-6-17 10:42:31 | 显示全部楼层
太强了,感谢版主
现在有个问题,麻烦版主帮忙看看,谢谢了!!
我用128L,用最新的4.5更新成功,但跳转应用程序后LCD显示乱码??运行不正常,可能是由于BOOTLOADER的问题。程序确实写进去了而且是对的(我读出来看过),但如果禁止BOOTRST就正常运行,经过BOOTLOADER之后再跳到应用程序,就不正常了。

出0入0汤圆

发表于 2009-6-17 10:45:56 | 显示全部楼层
前面也有前辈碰到同样的问题,
http://www.ouravr.com/bbs/bbs_content.jsp?bbs_sn=1235088&bbs_id=9999
但没说怎么解决的,现在郁闷啊,

出0入0汤圆

发表于 2009-6-18 11:38:27 | 显示全部楼层
楼上的M128L用V4.5成功了啊!我的BOOTLOADER不能升级成功能否请教啊!我是JTAG下的!QQ:353025231

出0入0汤圆

发表于 2009-6-18 13:15:41 | 显示全部楼层
mark

出0入0汤圆

发表于 2009-6-19 10:26:42 | 显示全部楼层
V4.5在M128上问题已经解决!原因是在STUDIO中配置FLASH地址时将NAME定义为.test了!呵呵!
现在想用超级终端测试,操作了一下超级终端不知道怎么下载BIN文件啊?
有使用过的讲解一下步骤吗?
期待!

出0入0汤圆

发表于 2009-6-19 11:11:12 | 显示全部楼层
使用楼主的下载软件,只能下载一次啊!为什么啊?成功运行应用程序后,就不能重新下载应用程序了!

出0入0汤圆

发表于 2009-6-19 12:05:47 | 显示全部楼层
V 载入文件成功:             [D:\工作文件\AVR\m128test\my_tel.hex]
> 文件长度:                 0x0F00/3840
> Flash空间大小:            0x20000/131072
> 缓冲区大小:               0x0F00/3840

> 开始下载
$ 发送复位命令: [7E ]
> 开始联机
$ <1> 发送联机密码: 41
: B5                                      ?
: C8 B4 FD BD                             却
: D3                                      ?
: CA                                      ?
: D5                                      ?
: CA                                      ?
: FD                                      ?
: BE                                      ?
: DD                                      ?
: 2E                                      .
: 0D                                      .
: 0A                                      .
$ <2> 发送联机密码: 41
: 43                                      C
$ <3> 发送联机密码: 41
: 43                                      C
V 联机成功

> 包 [30/30], 数据 [3.8k/3.8k], 重试 [0/0]
V 升级成功: 用时: [4.4s], 速度: 0.9k/s.


> 开始下载
$ 发送复位命令: [7E ]
> 开始联机
$ <1> 发送联机密码: 41
$ <2> 发送联机密码: 41
$ <3> 发送联机密码: 41
$ <4> 发送联机密码: 41
$ <5> 发送联机密码: 41
$ <6> 发送联机密码: 41
$ <7> 发送联机密码: 41
$ <8> 发送联机密码: 41
$ <9> 发送联机密码: 41
$ <10> 发送联机密码: 41
X 联机失败



这是什么原因啊?熔丝位也设置了,BOOT下了后也重新上电了!第二次下就不行了!为什么?

出0入0汤圆

发表于 2009-6-22 21:38:31 | 显示全部楼层
【TO 88楼】你好,能否将你的用VC编写的上位机软件给我发份,我的邮箱是lijinhu0214@163.com
谢谢

出0入0汤圆

发表于 2009-7-1 00:00:23 | 显示全部楼层
好东西,谢谢分享!

出0入0汤圆

发表于 2009-7-10 16:36:21 | 显示全部楼层
哎,终于把上位机软件重新编译成功了。

shao老师也不好人做到底,送佛送西天,那些个控件啊,这个好一通找啊。。。

出0入42汤圆

发表于 2009-7-10 17:52:29 | 显示全部楼层
以后也许用得着。

出0入0汤圆

发表于 2009-7-10 18:08:01 | 显示全部楼层
非常感谢~~~~~

出0入0汤圆

发表于 2009-7-13 10:03:44 | 显示全部楼层
标记!

出0入0汤圆

发表于 2009-7-14 07:38:01 | 显示全部楼层
不会也顶

出0入0汤圆

发表于 2009-7-14 21:31:51 | 显示全部楼层
构建
  [错误] uOption.pas(287): Undeclared identifier: 'TBaudRate'
  [错误] uOption.pas(288): Undeclared identifier: 'TDataBits'
  [错误] uOption.pas(289): Undeclared identifier: 'TStopBits'
  [错误] uOption.pas(290): Undeclared identifier: 'TParityBits'
  [错误] uOption.pas(291): Undeclared identifier: 'TFlowControl'
  [警告] uOption.pas(325): Unsafe type 'PChar'
  [警告] uOption.pas(325): Unsafe type 'PChar'
  [警告] uOption.pas(337): Unsafe type 'PChar'
  [警告] uOption.pas(337): Unsafe type 'PChar'
  [警告] uOption.pas(346): Unsafe type 'PChar'
  [警告] uOption.pas(346): Unsafe type 'PChar'
  [警告] uOption.pas(536): Unsafe type 'PChar'
  [警告] uOption.pas(549): Unsafe type 'PChar'
  [警告] uOption.pas(549): Unsafe type 'PChar'
  [警告] uOption.pas(599): Unsafe type 'PChar'
  [警告] uOption.pas(599): Unsafe type 'PChar'
  [警告] uOption.pas(686): Unsafe type 'PChar'
  [警告] uOption.pas(686): Unsafe type 'PChar'
  [警告] uOption.pas(692): Unsafe type 'PChar'
  [警告] uOption.pas(692): Unsafe type 'PChar'
  [警告] uOption.pas(707): Unsafe type 'PChar'
  [警告] uOption.pas(707): Unsafe type 'PChar'
  [警告] uOption.pas(714): Unsafe type 'PChar'
  [警告] uOption.pas(714): Unsafe type 'PChar'
  [警告] uOption.pas(724): Unsafe type 'PChar'
  [警告] uOption.pas(751): Unsafe type 'PChar'
  [致命错误] uMain.pas(313): Could not compile used unit 'uOption.pas'

这个是什么原因,TBaudRate字符转换不行?

出0入0汤圆

发表于 2009-7-14 21:33:15 | 显示全部楼层
如图所示

错误 (原文件名:EEOR.JPG)

出0入25汤圆

发表于 2009-7-14 22:42:53 | 显示全部楼层
mark

出0入10汤圆

发表于 2009-7-14 23:17:53 | 显示全部楼层
m

出0入0汤圆

发表于 2009-7-16 10:37:56 | 显示全部楼层
mark and mark

出0入0汤圆

发表于 2009-7-17 08:48:02 | 显示全部楼层
控件如下:
Beepourdev_461953.zip(文件大小:10K) (原文件名:btbeeper.zip)
hexeditourdev_461954.zip(文件大小:22K) (原文件名:hexedit.zip)
Timerourdev_461955.zip(文件大小:11K) (原文件名:rlhighrestimer.zip)
Syneditourdev_461956.zip(文件大小:965K) (原文件名:SynEdit-2_0_6.zip)
COMPortourdev_461957.zip(文件大小:377K) (原文件名:TComPort4Beta.zip)

出0入0汤圆

发表于 2009-8-5 08:29:25 | 显示全部楼层
必须顶

出0入0汤圆

发表于 2009-8-20 11:02:25 | 显示全部楼层
真可惜,没有早点看到邵老师的这么好的帖子,现在明白大致原理了,所以问一句
bootloader加载一个程序运行后,如果想下载另外一个,是否必需复位一下avr单片机或者重新上电!
否则我发现没法升级正在运行的程序!

出0入0汤圆

发表于 2009-8-20 12:02:15 | 显示全部楼层
好东西啊,谢谢楼主

出0入0汤圆

发表于 2009-8-20 12:06:53 | 显示全部楼层
记号 一下

出0入0汤圆

发表于 2009-8-20 13:06:49 | 显示全部楼层
mark

出0入0汤圆

发表于 2009-8-21 18:49:13 | 显示全部楼层
to shaoziyang
请问:
1.这个bootloader还会升级吗?
2.这运行用户程序时,是否值能通过狗复位?一个按键,进死循环,等狗复位。或通过232或485,发条指令,进死循环,等狗复位。可行否?
3.在进入bootloader后,若不想升级可否通过按键方式退出?

出0入0汤圆

发表于 2009-8-21 20:35:59 | 显示全部楼层
很强大啊

出0入0汤圆

发表于 2009-9-21 10:09:41 | 显示全部楼层
强贴,留名。

出0入0汤圆

发表于 2009-9-21 11:44:43 | 显示全部楼层
记号 一下

出0入0汤圆

发表于 2009-10-5 00:52:50 | 显示全部楼层
编译出错,有改后能正常编译的Delphi源码如下:
修改后编译不出错的源码文件ourdev_488353.rar(文件大小:522K) (原文件名:AVRBooloaderourdev_388495(修改后能运行的程序东).rar)

出0入0汤圆

发表于 2009-10-6 15:24:32 | 显示全部楼层
留一个记号 AVRbootloader

出0入0汤圆

发表于 2009-10-6 15:38:16 | 显示全部楼层
好东西,谢谢分享!

出0入0汤圆

发表于 2009-10-7 23:09:27 | 显示全部楼层
不错 好东西

出0入0汤圆

发表于 2009-10-14 22:49:35 | 显示全部楼层
Mark 一下

出0入46汤圆

发表于 2009-10-14 23:05:28 | 显示全部楼层
mark

出0入0汤圆

发表于 2009-10-20 12:45:57 | 显示全部楼层
好东西,mark~~~~~~~~~~

出0入0汤圆

发表于 2009-10-20 13:05:37 | 显示全部楼层
太好了

出0入0汤圆

发表于 2009-10-20 14:23:39 | 显示全部楼层
mark

出0入0汤圆

发表于 2009-10-20 20:11:41 | 显示全部楼层
很经典的东西! 绝对值得收藏

出0入0汤圆

发表于 2009-10-26 22:13:40 | 显示全部楼层
收藏 , 学习. 很不错啊.

出0入0汤圆

发表于 2009-10-27 13:31:03 | 显示全部楼层
good,mark

出0入0汤圆

发表于 2009-11-17 15:22:20 | 显示全部楼层
总是联机失败啊
> 开始下载
$ 发送复位命令: [7E ]
> 开始联机
$ <1> 发送联机密码: 64
$ <2> 发送联机密码: 64
$ <3> 发送联机密码: 64
$ <4> 发送联机密码: 64
$ <5> 发送联机密码: 64
$ <6> 发送联机密码: 64
$ <7> 发送联机密码: 64
: B3 AC CA B1 2E 0D 0A B5 C8              超时...等
: B4 FD BD D3 CA D5 C3 DC C2 EB 2E 0D     待接收密码..
$ <8> 发送联机密码: 64
$ <9> 发送联机密码: 64
$ <10> 发送联机密码: 64
X 联机失败

出0入0汤圆

发表于 2009-11-24 19:21:05 | 显示全部楼层
太帅了哈!学习下

出0入46汤圆

发表于 2009-11-24 19:58:45 | 显示全部楼层
mark

出0入0汤圆

发表于 2009-11-24 20:57:08 | 显示全部楼层
不知道哪里设置不对,4.5版编译不过去,使用环境是avr studio 4.13 bulid522,WINAVR20060421,编译提示
make: Makefile: No such file or directory
make: *** No rule to make target `Makefile'.  Stop.
Build failed with 2 errors and 0 warnings...

出0入0汤圆

发表于 2009-11-30 11:20:19 | 显示全部楼层
mark

出0入0汤圆

发表于 2009-11-30 11:21:41 | 显示全部楼层
标。。。。。个。。。记

出0入46汤圆

发表于 2009-11-30 15:42:11 | 显示全部楼层
mark

出0入0汤圆

发表于 2009-11-30 21:54:39 | 显示全部楼层
mark

出0入0汤圆

发表于 2009-12-8 14:56:21 | 显示全部楼层
谢谢!!4.5有个不总要的BUG, 下载中长点鼠标会断的,希望继续完善~

出0入0汤圆

发表于 2009-12-10 15:22:40 | 显示全部楼层
倒是可以下载,可是为什么只能下载一次?第一次下载进去后,第二次就联不上了。

出0入0汤圆

发表于 2009-12-10 16:29:25 | 显示全部楼层
第二次需要重起。但是稳定性好像不太好,下载大程序,运行正常,下载只有0.2K的程序进去,没有正常运行。就点个LED的测试程序,用并口STK200下好后验证,闪灯正常,改用这个ISP后,提示下载成功,但是灯却一点反应没有。

出0入0汤圆

发表于 2009-12-10 16:48:40 | 显示全部楼层
一个程序30K的,下载进去后可以正常跳到应用区,程序正常运行,一个2K的程序,容丝设置一模一样的,但是下载进去就后是不跳进应用区,用超级终端发送64H后,还能回复C。不知道为啥。

出0入0汤圆

发表于 2009-12-13 22:23:19 | 显示全部楼层
好贴,楼主加油

出0入0汤圆

发表于 2009-12-14 10:55:02 | 显示全部楼层
mark

出0入0汤圆

发表于 2009-12-16 18:30:20 | 显示全部楼层
楼主提供源代码是完全没有问题的,很好用的!
我已经利用它对at45db161进行串口下载字库了,应用到点阵控制卡上,很好用,谢谢!
我的QQ:281120832,欢迎各位和我交流!

出0入0汤圆

发表于 2009-12-17 10:38:59 | 显示全部楼层
mark

出0入0汤圆

发表于 2009-12-17 12:43:10 | 显示全部楼层
mark

出0入0汤圆

发表于 2009-12-17 14:00:15 | 显示全部楼层
mark

出0入20汤圆

发表于 2009-12-17 14:06:00 | 显示全部楼层
这个比较有分量

出0入0汤圆

发表于 2009-12-27 18:22:59 | 显示全部楼层
感谢邵老师的提供, 我会牢牢地学习.

出0入0汤圆

发表于 2009-12-27 18:52:11 | 显示全部楼层
好东西,学习了!~

出0入0汤圆

发表于 2009-12-29 00:15:18 | 显示全部楼层
一定要玩玩

出0入0汤圆

发表于 2010-1-7 14:10:53 | 显示全部楼层
请问下,我用M32下载了这个BL,在超级终端一上电就反复显示"等待接收密码","超时",按C下载完程序后显示升级成功,但不会执行用户程序,而是又反复显示"等待接收密码","超时",没有其它显示.没有显示进入升级模式也没有显示进入用户程序.我的熔丝位设置是2K,3800地址,BOOTRST编程.
请问这是什么原因?

出0入0汤圆

发表于 2010-1-7 23:01:01 | 显示全部楼层
哪位在M32上使用成功了的麻烦告知一下

出0入0汤圆

发表于 2010-1-13 13:20:41 | 显示全部楼层
谢谢,记下

出0入0汤圆

发表于 2010-1-23 20:08:40 | 显示全部楼层
谢谢
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子论坛 -- 东莞阿莫电子网站 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2023-1-31 18:10

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

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