楼主: shaoziyang

使用AVR通用Bootloader

  [复制链接]
  • TA的每日心情
    奋斗
    2015-9-26 11:15
  • 签到天数: 3 天

    连续签到: 1 天

    [LV.2]偶尔看看I

    发表于 2015-9-25 09:31:48 | 显示全部楼层
    分享到:
    shaoziyang 发表于 2015-9-24 21:48
    发HEX,没法分析啊。

    如果方便,你可以买一本《AVR单片机应用专题精讲》,里面比较详细的介绍了Bootload ...

    谢谢老师,配置引脚明白了,现在地址起始位选不明白了,按照您的0X3C00 可以使用,但是熔丝位要BOOTSZ1至1才可用,用软件烧写附件里那个hex可以。
    如果熔丝位BOOTSZ1至0  ,地址选择软件自动配置里那三个默认地址的任何一个也可用,但是无法烧写附件里的hex,可以烧写老师提供dome附件里的小hex。在BOOTSZ1至0的情况下不知道设置什么样的地址才能少些附件里的HEX(求解)
    书已经加入肯德基豪华午餐,嘿嘿 在路上
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2019-12-1 10:07
  • 签到天数: 1617 天

    连续签到: 1 天

    [LV.Master]伴坛终老

     楼主| 发表于 2015-9-25 09:41:37 | 显示全部楼层
    q7w8e999 发表于 2015-9-25 09:31
    谢谢老师,配置引脚明白了,现在地址起始位选不明白了,按照您的0X3C00 可以使用,但是熔丝位要BOOTSZ1至 ...

    关于BOOTSZ的设置,是需要看数据手册的说明,不同Flash大小的AVR,BOOTSZ熔丝对应不同的地址,其实也就是设置不同大小的Bootloader程序空间。如果不确定,可以先设置为最大(全0)。

    一楼的例子是可以在Arduino Unp上使用的,参数都设置好了,编译就可以用。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2015-9-26 11:15
  • 签到天数: 3 天

    连续签到: 1 天

    [LV.2]偶尔看看I

    发表于 2015-9-25 09:56:58 | 显示全部楼层
    shaoziyang 发表于 2015-9-25 09:41
    关于BOOTSZ的设置,是需要看数据手册的说明,不同Flash大小的AVR,BOOTSZ熔丝对应不同的地址,其实也就是 ...

    嗯 谢谢老师,还有就是加密位,我设置成CC,可是随便写个flash进去,再读取就变成FF了,找了度娘,没有关于这个熔丝位的解释说明
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2019-12-1 10:07
  • 签到天数: 1617 天

    连续签到: 1 天

    [LV.Master]伴坛终老

     楼主| 发表于 2015-9-25 10:55:01 | 显示全部楼层
    q7w8e999 发表于 2015-9-25 09:56
    嗯 谢谢老师,还有就是加密位,我设置成CC,可是随便写个flash进去,再读取就变成FF了,找了度娘,没有关 ...

    加密后直接是读不出来的,也不能修改,只能擦除芯片。一般开始的时候不要加密。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2015-9-26 11:15
  • 签到天数: 3 天

    连续签到: 1 天

    [LV.2]偶尔看看I

    发表于 2015-9-25 11:12:51 | 显示全部楼层
    shaoziyang 发表于 2015-9-25 10:55
    加密后直接是读不出来的,也不能修改,只能擦除芯片。一般开始的时候不要加密。 ...

    可以读FLASH,读出来就几个字节 :00000001FF
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2019-12-1 10:07
  • 签到天数: 1617 天

    连续签到: 1 天

    [LV.Master]伴坛终老

     楼主| 发表于 2015-9-25 11:58:40 | 显示全部楼层
    q7w8e999 发表于 2015-9-25 11:12
    可以读FLASH,读出来就几个字节 :00000001FF

    是这样的,只能读出空数据。如果程序可以读出来,那加密就没有意义了。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2015-9-26 11:15
  • 签到天数: 3 天

    连续签到: 1 天

    [LV.2]偶尔看看I

    发表于 2015-9-25 12:11:36 | 显示全部楼层
    shaoziyang 发表于 2015-9-25 11:58
    是这样的,只能读出空数据。如果程序可以读出来,那加密就没有意义了。 ...

    受教了,老师,为什么我那个固件,需要先刷1.hex,然后刷2.hex,那么数据是贪食蛇那样加长了,还是1被覆盖了
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2015-9-26 11:15
  • 签到天数: 3 天

    连续签到: 1 天

    [LV.2]偶尔看看I

    发表于 2015-9-25 13:52:20 | 显示全部楼层
    shaoziyang 发表于 2015-9-25 11:58
    是这样的,只能读出空数据。如果程序可以读出来,那加密就没有意义了。 ...

    还有最重要的,老师通过这种bootload进去的程序和isp刷的效果一样么,就是说串口进的hex直接用isp刷 ,是一样的么
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2019-12-1 10:07
  • 签到天数: 1617 天

    连续签到: 1 天

    [LV.Master]伴坛终老

     楼主| 发表于 2015-9-25 22:04:59 | 显示全部楼层
    q7w8e999 发表于 2015-9-25 13:52
    还有最重要的,老师通过这种bootload进去的程序和isp刷的效果一样么,就是说串口进的hex直接用isp刷 ,是 ...

    如果不相同,程序就无法正确运行的。主要区别的地方在于ISP编程Flash中只有用户程序,Bootloader方式会同时有Bootloader和用户程序,另外如果允许了自动填充数据,会填充空白部分flash(为了防止程序跑飞加软件陷阱)。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2015-9-26 11:15
  • 签到天数: 3 天

    连续签到: 1 天

    [LV.2]偶尔看看I

    发表于 2015-9-26 11:07:59 | 显示全部楼层
    shaoziyang 发表于 2015-9-25 22:04
    如果不相同,程序就无法正确运行的。主要区别的地方在于ISP编程Flash中只有用户程序,Bootloader方式会同 ...

    谢谢老师,这有一份bootload,只适用于atmega16,老师你看和您的程序相比有哪些不足呢,但是代码看起来是少了许多,我想将其用在328P上,从0X0000开始  ,无从下手  求老师帮忙    ,此hex的bin查看情况下,开头与我之前上传的两个hex格式如出一辙,但是和老师的bootload。hex不一样

    bootloader.zip

    36.78 KB, 下载次数: 5

    回复 支持 反对

    使用道具 举报

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

    本版积分规则

    手机版|小黑屋|与非网

    GMT+8, 2024-4-24 06:14 , Processed in 0.200469 second(s), 33 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.