1. 文献《Running an Application from Internal Flash Memory on the TMS320F28xxx DSP》中指出:初始化的段放在非易失性的存储
器,非初始化的段放在易失性的存储器。
而.econst和.const、.switch为初始化的段,应置于Flash。
2. Flash可以分割为PAGE 0和PAGE 1
3. 文献《TMS320C28x Optimizing C_or_C++ Compiler v6.0 User's Guide》中,要求.econst和.const分配到PAGE 1,.switch可分配到
PAGE 0或PAGE 1(见4.3.6 表4-1、表4-2,7.1.1 表7-1)。
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
综合上述信息,.econst和.const应分配到PAGE 1中的Flash中
但在F28335.cmd中:
/* Initalized sections go in Flash */
/* For SDFlash to program these, they must be allocated to page 0 */
.econst : > FLASHA PAGE = 0
.switch : > FLASHA PAGE = 0
.switch因采用大存储器模式,被分配到PAGE 0,不违反文献《TMS320C28x Optimizing C_or_C++ Compiler v6.0 User's Guide》中的要
求。
但.econst违反了文献《TMS320C28x Optimizing C_or_C++ Compiler v6.0 User's Guide》中的要求,这是为什么?
/* For SDFlash to program these, they must be allocated to page 0 */又是什么意思?要编程到Flash中的程序需要分配到PAGE 0?
是不是烧写Flash时只烧写PAGE 0中的内容?
另外,表4-1下第二段中“With the exception of .text, the initialized and uninitialized sections created by the compiler
can not be allocated into internal program memory.”又是什么意思?