This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

28335烧写FLASH时,CMD文件配置出问题

我在ZONE7外扩了64K的RAM空间,程序仿真调试时可以用,现在我想把它烧入FLASH,CMD换成F28335.CMD,出现如图所示错误 我的程序中要存储两个大数组,原来调试的时候是放在外扩ZONE7中,现在我仍放在ZONE7,程序如下:// *.c //
#pragma DATA_SECTION (Output0, "ZONE7DATA0")
float Output0[2000]={0};
#pragma DATA_SECTION (Output1, "ZONE7DATA1")
float Output1[2000]={0};

// *.cmd //
MEMORY
{
  PAGE 1: 
   ZONE7B0     : origin = 0x20FC00, length = 0x008000     /* XINTF zone 7 - data space */
   ZONE7B1     : origin = 0x22FC00, length = 0x008000 
}

SECTIONS
{
  ZONE7DATA0        : > ZONE7B0,    PAGE = 1
   ZONE7DATA1        : > ZONE7B1,    PAGE = 1
}

  • 你试试将gel文件中的memory初始化函数加到cinit的前边。

  • Hank Zhao 说:

    你试试将gel文件中的memory初始化函数加到cinit的前边。

    gel文件在哪里?以前ccs3.3还有看到,现在ccs5.2好像没见过那东西呀

  • ccsv5\ccs_base\emulation\gel路径下有gel文件。

  • Hank Zhao 说:

    ccsv5\ccs_base\emulation\gel路径下有gel文件。

    我往工程里添加了gel文件后,那个错误就消失了。但是现在仍然有问题,我定义了一个3000个数据的大数组,发生了溢出,该怎么解决呢?我原来调试的时候是把数组定义在外扩的RAM中,现在要烧到FLASH的时候,我照着原来的方法结果出错了,如下图: 调试的时候是放在外扩ZONE7中,现在我仍放在ZONE7,程序如下:// *.c //
    #pragma DATA_SECTION (Output0, "ZONE7DATA0")
    float Output0[2000]={0};
    #pragma DATA_SECTION (Output1, "ZONE7DATA1")
    float Output1[2000]={0};

    // *.cmd //
    MEMORY
    {
      PAGE 1: 
       ZONE7B0     : origin = 0x20FC00, length = 0x008000     /* XINTF zone 7 - data space */
       ZONE7B1     : origin = 0x22FC00, length = 0x008000 
    }

    SECTIONS
    {
      ZONE7DATA0        : > ZONE7B0,    PAGE = 1
       ZONE7DATA1        : > ZONE7B1,    PAGE = 1
    }

  • 是不是贴错图片了,仍然是和之前一样的错误。

  • Hank Zhao 说:

    是不是贴错图片了,仍然是和之前一样的错误。

    恩,这个错误还没解决,我回复错帖子了,刚才要回复的是:“错误提示是:
    gmake: *** No rule to make target `../F28335.cmd', needed by `ADCSAOPINFLASH.out'.        
    该cmd文件没有问题,难道程序有问题?”这个帖子,现在仍然存在的问题要怎么解决呢?

  • 在gel文件中会对zone7初始化,数组溢出应该是分配的内存区域太小,你可以在CMD文件中把数组分配的内存范围改大一点。

  • Hank Zhao 说:

    在gel文件中会对zone7初始化,数组溢出应该是分配的内存区域太小,你可以在CMD文件中把数组分配的内存范围改大一点。

    范围足够了,我原来没有烧进FLASH的时候程序可以正常运行的。

  • 你好,不知道你能不能看到回复,我想问一下你的问题当时解决了 我现在也遇到类似问题 想请教一下