打印
[ZLG-ARM]

关于分散加载scf文件的不懂

[复制链接]
1430|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
zhengpk|  楼主 | 2007-1-14 19:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
AD, ROM, ni, ST, RAM
load域和EXEC的域必须一样吗,在lpc2214内部ram里单步运行的时候?
ROM_LOAD 0x40000000 
{
    ROM_EXEC 0x40000000 
    {
        init.o (Init, +First)
        * (+RO)
    }
}

ROM_LOAD0 0x40002000
{
    ROM_EXEC0 0x40002000
    {
        start.o (+RO)
    }
}

RAM_LOAD1 0x80005000
{
    RAM1 0x80005000 UNINIT
    {
        stack.o (+ZI)
    }
    RAM2 0x80006000
    {
        * (+RW,+ZI)
    }

    HEAP +0 UNINIT
    {
        heap.o (+ZI)
    }    
}

如上所示的scf文件,将
ROM_LOAD0 0x40002000
{
    ROM_EXEC0 0x40002000
    {
        start.o (+RO)
    }
}
改为
ROM_LOAD0 0x40002000
{
    ROM_EXEC0 0x40003000
    {
        start.o (+RO)
    }
}
则单步运行结果不正确。
如果在flash中运行时,若exec和load域不一样,把load域的东西
写程序搬移到exec域,再b _main 语句时,则执行结果正确,为什么在内部ram里就不能单步执行阿?看到编译后的二进制文件都不对。谢谢,已经捣鼓了好几天了,郁闷!

相关帖子

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

本版积分规则

1

主题

1

帖子

0

粉丝