打印

分散加载文件如何批量使用?

[复制链接]
1768|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
pigeon0411|  楼主 | 2009-8-20 08:40 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
pigeon0411|  楼主 | 2009-8-20 08:43 | 只看该作者
我的目的是想升级后面一块区域的文件,而前面的文件可以固定不变,作为升级区和资源区。

使用特权

评论回复
板凳
FDLock| | 2009-8-28 23:13 | 只看该作者
以前看到过一个,给你参考参考(main.c的放在0x80000000,其它放在0x00000000):
ROM_LOAD 0x00000000 0x00020000
{
    ROM_EXEC 0x00000000 0x00020000
    {
        Startup.o (vectors, +First)
        * (+RO)
    }
}

ROM_LOAD1 0x80000000 0x00020000
{
    ROM_EXEC1 0x80000000 0x00020000
    {
        main.o (+RO)
    }
}

RAM_LOAD1 0x40000000
{
    IRAM 0x40000000
    {
        Startup.o (MyStacks)
    }

    STACKS_BOTTOM +0 UNINIT
    {
        Startup.o (StackBottom)
    }

    STACKS 0x40004000 UNINIT
    {
        Startup.o (Stacks)
    }

    ERAM 0x81000000
    {
        * (+RW,+ZI)
    }

    HEAP +0 UNINIT
    {
        Startup.o (Heap)
    }

    HEAP_BOTTOM 0x81080000 UNINIT
    {
        Startup.o (HeapTop)
    }
}


但建议做成2个工程,一个是简单的BootLoader,另一做应用程序,升级时把整个应用程序都升级。

使用特权

评论回复
地板
pigeon0411|  楼主 | 2009-8-29 15:32 | 只看该作者
ZLG例程上有这样的代码

我试着用这个做,但是切换到高区,程序不以正常运行,不知道需要注意些什么?

使用特权

评论回复
5
FDLock| | 2009-8-30 20:55 | 只看该作者
是的,我是在WWW.ZLGMCU.COM网站看到,这个例子是使用内部Flash和外部Flash的,编译后好像是生成两个HEX文件,要分别烧写到内部FLASH和外部FLASH。
您要根据自己板子的存储器情况来修改,要确保两部份代码都烧写到Flash了。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

42

主题

157

帖子

3

粉丝