TI中文支持网
TI专业的中文技术问题搜集分享网站

C6748的深休眠模式

各位开发者:

    大家好!我最近在使用C6748的深休眠功能来降低功耗,参考了TI提供的例程,网址如下:

http://processors.wiki.ti.com/index.php/Power_Module_for_C6748_and_OMAP-L138#Sleep_Modes

经检验,确实可以进入深休眠模式。之后我在例程的基础上增加了一部分关于GPIO的操作,编译的时候,报出了下面的错误:

#10099-D</a>  program will not fit into linker.cmd

在linker.cmd中,有如下的错误:

    .ti_sysbios_family_c674_pmi_onchip: load >> L3_CBA_RAM

    .stack: load > L3_CBA_RAM
    .bss: load > L3_CBA_RAM
    .cinit: load > L3_CBA_RAM

    .cio: load >> L3_CBA_RAM
    .vecs: load >> L3_CBA_RAM

    .switch: load >> L3_CBA_RAM

这是什么原因导致?

 

后来,我把.cfg文件中的下面代码注释掉了:

Program.sectMap[".text"] = "L3_CBA_RAM";
Program.sectMap[".far"] = "L3_CBA_RAM";
Program.sectMap[".const"] = "L3_CBA_RAM";
Program.sectMap[".stack"] = "L3_CBA_RAM";
Program.sectMap[".cio"] = "L3_CBA_RAM";
Program.sectMap[".bss"] = "L3_CBA_RAM";
Program.sectMap[".vecs"] = "L3_CBA_RAM";
Program.sectMap[".pinit"] = "L3_CBA_RAM";
Program.sectMap[".data"] = "L3_CBA_RAM";
Program.sectMap[".switch"] = "L3_CBA_RAM";
Program.sectMap[".cinit"] = "L3_CBA_RAM";
Program.sectMap[".rodata"] = "L3_CBA_RAM";
Program.sectMap[".neardata"] = "L3_CBA_RAM";

这样一来,编译不出问题了,但是却无法进入深休眠模式了,这是什么原因呢?请大家帮我看看,谢谢。

原始的程序源代码和我自己写的源代码都包含在附近中

Tony Tang:

报错是因为太大了,L3放不下,应该把它放到别的地方,如DDR上,而不是注释掉。

赞(0)
未经允许不得转载:TI中文支持网 » C6748的深休眠模式
分享到: 更多 (0)