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.

2808的FLASH区,CMD文件

MEMORY
{
  PAGE 0 : OTP  : origin = 3D7800H, length =  400H
   PAGE 0 : PROG1 : origin = 3E8000H, length = 08000H
   PAGE 0 : PROG : origin = 3F0000H, length = 07F80H
   PAGE 0 : CSMZERO : origin = 3F7F80H, length =   76H
   PAGE 0 : RESET : origin = 3F7FF6H, length =    2H  
   PAGE 0 : PASSWORD : origin = 3F7FF8H, length =    8H  
   PAGE 0 : L0  : origin = 3F8000H, length = 1000H
   PAGE 0 : BOOT : origin = 3FF000H, length = 0FC0H
   PAGE 0 : VECTORS : origin = 3FFFC0H, length =   40H 
 

   PAGE 1 : M0  : origin = 000000H, length =  400H
   PAGE 1 : M1  : origin = 000400H, length =  400H
   PAGE 1 : PEF0 : origin = 000800H, length = 0100H
   PAGE 1 : PIE  : origin = 000D00H, length = 0100H
   PAGE 1 : PEF1 : origin = 006000H, length = 1000H
   PAGE 1 : PEF2 : origin = 007000H, length = 1000H
   PAGE 1 : L0  : origin = 008000H, length = 1000H
}
 
SECTIONS
{
   .VECTORS : > VECTORS , PAGE = 0
   .CSMZERO : > CSMZERO , PAGE = 0
   .PASSWORD : > PASSWORD , PAGE = 0
   .RESET : > RESET , PAGE = 0 
   .text : > PROG1 , PAGE = 0
 .OTP  : > OTP  , PAGE = 0

   .const    : > M0, PAGE = 1
   .bss      : > M1, PAGE = 1
   .stack    : > M1, PAGE = 1
   .sysmem   : > M0, PAGE = 1

}

上面的这个CMD编译完烧写后程序跑不了,下面的可以。区别仅仅在于.TEXT放置的位置不一样。我是想用2808换2802.

MEMORY
{
  PAGE 0 : OTP  : origin = 3D7800H, length =  400H
   PAGE 0 : PROG1 : origin = 3E8000H, length = 08000H
   PAGE 0 : PROG : origin = 3F0000H, length = 07F80H
   PAGE 0 : CSMZERO : origin = 3F7F80H, length =   76H
   PAGE 0 : RESET : origin = 3F7FF6H, length =    2H  
   PAGE 0 : PASSWORD : origin = 3F7FF8H, length =    8H  
   PAGE 0 : L0  : origin = 3F8000H, length = 1000H
   PAGE 0 : BOOT : origin = 3FF000H, length = 0FC0H
   PAGE 0 : VECTORS : origin = 3FFFC0H, length =   40H 
 

   PAGE 1 : M0  : origin = 000000H, length =  400H
   PAGE 1 : M1  : origin = 000400H, length =  400H
   PAGE 1 : PEF0 : origin = 000800H, length = 0100H
   PAGE 1 : PIE  : origin = 000D00H, length = 0100H
   PAGE 1 : PEF1 : origin = 006000H, length = 1000H
   PAGE 1 : PEF2 : origin = 007000H, length = 1000H
   PAGE 1 : L0  : origin = 008000H, length = 1000H
}
 
SECTIONS
{
   .VECTORS : > VECTORS , PAGE = 0
   .CSMZERO : > CSMZERO , PAGE = 0
   .PASSWORD : > PASSWORD , PAGE = 0
   .RESET : > RESET , PAGE = 0 
   .text : > PROG , PAGE = 0
 .OTP  : > OTP  , PAGE = 0

   .const    : > M0, PAGE = 1
   .bss      : > M1, PAGE = 1
   .stack    : > M1, PAGE = 1
   .sysmem   : > M0, PAGE = 1

}

  • 两个CMD的区别就在于.text放在Flash区还是L0 SARAM。

    1. 是挂着仿真器在测试代码?还是去掉仿真器单独运行?

    2. 检查Boot相关的GPIO引脚的接法;

    3. 采用TI例程包中的cmd文件,没有把握尽量不要自己修改。