打印

在问分散加裁问题

[复制链接]
2606|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
yanghuyue|  楼主 | 2007-6-9 09:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
IO, pi, se, GPIO, gp
我的分散加载文件如下(见后):
但     CGPIOOUT_Fix.o (+RO)
        CGPIOIN_Fix.o (+RO)
        CSMISPI_Fix.o (+RO)
        CFlash_Fix.o (+RO)
这4个文件总被提示:
  pattern CGPIOOUT_Fix.o (+RO) only matches removed unused sections
  pattern CGPIOIN_Fix.o  (+RO) only matches removed unused sections
  pattern CGPIOOUT_Fix.o (+RO) only matches removed unused sections
  pattern CFlash_Fix.o   (+RO) only matches removed unused sections
我程序中不能调用这4个类。只要调用就提示出错。
但CGPIOINOUT_Fix.o (+RO)
        CIap.o(+RO)  
        main.o(+RO)
   就可以。
如果把ARMLINK 的Option 的 remove unuseed section 这三项去掉(也就是不删除)则编译出错:
   cannt use baseed/limit symbols for no_contiguous section C&&pi_ctorvec

我的目的是,把Startup.o (vectors, +First)
        CGPIOINOUT_Fix.o (+RO)
        CIap.o(+RO)  
        main.o(+RO) 
        CGPIOOUT_Fix.o (+RO)
        CGPIOIN_Fix.o (+RO)
        CSMISPI_Fix.o (+RO)
        CFlash_Fix.o (+RO
这几个文件放在0-0000c000这个地址,这几个文件只有3K大。
其他的在c000地址后。
 
分散加载文件如下  
ROM_LOAD 0x0
{
    ROM_EXEC 0x00000000 0x0000c000
    {
        Startup.o (vectors, +First)
        CGPIOINOUT_Fix.o (+RO)
        CIap.o(+RO)  
        main.o(+RO) 
        CGPIOOUT_Fix.o (+RO)
        CGPIOIN_Fix.o (+RO)
        CSMISPI_Fix.o (+RO)
        CFlash_Fix.o (+RO) 
    }
 }

ROM_LOAD1 0x0000c000
{
    ROM_EXEC1 +0
    {
     main_user.o(+RO) 
        * (+RO)
    }
    IRAM 0x40000000
    {
        Startup.o (MyStacks)
        * (+RW,+ZI)
    }

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

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

相关帖子

沙发
yanghuyue|  楼主 | 2007-6-9 10:23 | 只看该作者

新发现(分散加裁)

我的分散加载文件如下(见后):
但     CGPIOOUT_Fix.o (+RO)
        CGPIOIN_Fix.o (+RO)
        CSMISPI_Fix.o (+RO)
        CFlash_Fix.o (+RO)
这4个文件总被提示:
  pattern CGPIOOUT_Fix.o (+RO) only matches removed unused sections
  pattern CGPIOIN_Fix.o  (+RO) only matches removed unused sections
  pattern CGPIOOUT_Fix.o (+RO) only matches removed unused sections
  pattern CFlash_Fix.o   (+RO) only matches removed unused sections
我程序中不能调用这4个类。只要调用就提示出错。
但CGPIOINOUT_Fix.o (+RO)
        CIap.o(+RO)  
        main.o(+RO)
   就可以。
如果把ARMLINK 的Option 的 remove unuseed section 这三项去掉(也就是不删除)则编译出错:
   cannt use baseed/limit symbols for no_contiguous section C&&pi_ctorvec
   定义全局变量 CGPIOINOUT_Fix WDI_Fix(WDI_IN);也会提示上面错误
如果在涵数中定义它,当做局部变量,就不会有上在错误


我的目的是,把Startup.o (vectors, +First)
        CGPIOINOUT_Fix.o (+RO)
        CIap.o(+RO)  
        main.o(+RO) 
        CGPIOOUT_Fix.o (+RO)
        CGPIOIN_Fix.o (+RO)
        CSMISPI_Fix.o (+RO)
        CFlash_Fix.o (+RO
这几个文件放在0-0000c000这个地址,这几个文件只有3K大。
其他的在c000地址后。

分散加载文件如下  
ROM_LOAD 0x0
{
    ROM_EXEC 0x00000000 0x0000c000
    {
        Startup.o (vectors, +First)
        CGPIOINOUT_Fix.o (+RO)
        CIap.o(+RO)  
        main.o(+RO) 
        CGPIOOUT_Fix.o (+RO)
        CGPIOIN_Fix.o (+RO)
        CSMISPI_Fix.o (+RO)
        CFlash_Fix.o (+RO) 
    }
}

ROM_LOAD1 0x0000c000
{
    ROM_EXEC1 +0
    {
     main_user.o(+RO) 
        * (+RO)
    }
    IRAM 0x40000000
    {
        Startup.o (MyStacks)
        * (+RW,+ZI)
    }

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

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

使用特权

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

本版积分规则

12

主题

23

帖子

0

粉丝