工具/软件:Code Composer Studio
您可以在 CLA 中找到 intStatus 是局部变量、且值始终为0。 但是、它被分配到表达式显示对话框中的程序区域中。 请帮帮我。
_data 是全局变量、也有问题。
CMD 文件:
存储器
{
第0页:
/* begin 用于"引导至 SARAM"引导加载程序模式 */
开始 :origin = 0x080000,length = 0x000002
RAMM0 :origin = 0x0000F5,length = 0x00030B
RAMLS0 :origin = 0x008000、length = 0x001800
RAMLS3 :origin = 0x009800,length = 0x000800
RAMLS4 :origin = 0x00A000,length = 0x001800
复位 :origin = 0x3FFFC0,length = 0x000002
/*闪存扇区*/
/*组0 */
FLASH_BANK0_SEC0 :origin = 0x080002、length = 0x000FFE //片上闪存*
FLASH_BANK0_SEC1 :origin = 0x081000、length = 0x001000 //片上闪存*
FLASH_BANK0_sec2 :origin = 0x082000、length = 0x001000 //片上闪存*
FLASH_BANK0_SEC3 :origin = 0x083000、length = 0x001000 //片上闪存*
FLASH_BANK0_SEC4 :origin = 0x084000、length = 0x002000 //片上闪存*
/*FLASH_BANK0_SEC5 :origin = 0x085000,length = 0x001000*/* 片上闪存*/
FLASH_BANK0_SEC6 :origin = 0x086000、length = 0x001000 //片上闪存*
FLASH_BANK0_SEC7 :origin = 0x087000、length = 0x001000 //片上闪存*
FLASH_BANK0_SEC8 :origin = 0x088000、length = 0x001000 //片上闪存*
FLASH_BANK0_SEC9 :origin = 0x089000、length = 0x001000 //片上闪存*
FLASH_BANK0_SEC10:origin = 0x08A000、length = 0x001000 //片上闪存*
FLASH_BANK0_SEC11:origin = 0x08B000、length = 0x001000 //片上闪存*
FLASH_BANK0_SEC12:origin = 0x08C000、length = 0x001000 //片上闪存*
FLASH_BANK0_SEC13:origin = 0x08D000、length = 0x001000 //片上闪存*
FLASH_BANK0_SEC14:origin = 0x08E000、length = 0x001000 //片上闪存*
FLASH_BANK0_SEC15:origin = 0x08F000、length = 0x001000 //片上闪存*
/*银行1 */
FLASH_BANK1_SEC0 :origin = 0x090000、length = 0x001000 //片上闪存*
FLASH_BANK1_SEC1 :origin = 0x091000、length = 0x001000 //片上闪存*
FLASH_BANK1_SEC2 :origin = 0x092000、length = 0x001000 //片上闪存*
FLASH_BANK1_SEC3 :origin = 0x093000、length = 0x001000 //片上闪存*
FLASH_BANK1_SEC4 :origin = 0x094000、length = 0x001000 //片上闪存*
FLASH_BANK1_SEC5 :origin = 0x095000、length = 0x001000 //片上闪存*/
FLASH_BANK1_SEC6 :origin = 0x096000、length = 0x001000 //片上闪存*
FLASH_BANK1_SEC7 :origin = 0x097000、length = 0x001000 //片上闪存*
FLASH_BANK1_SEC8 :origin = 0x098000、length = 0x001000 //片上闪存*
FLASH_BANK1_SEC9 :origin = 0x099000、length = 0x001000 //片上闪存*
FLASH_BANK1_SEC10:origin = 0x09A000、length = 0x001000 //片上闪存*
FLASH_BANK1_SEC11:origin = 0x09B000、length = 0x001000 //片上闪存*
FLASH_BANK1_SEC12:origin = 0x09C000、length = 0x001000 //片上闪存*
FLASH_BANK1_SEC13:origin = 0x09D000、length = 0x001000 //片上闪存*
FLASH_BANK1_SEC14:origin = 0x09E000、length = 0x001000 //片上闪存*
FLASH_BANK1_SEC15:origin = 0x09F000、length = 0x001000 //片上闪存*
第1页:
BOOT_RSVD :origin = 0x000002,length = 0x0000F3 // M0的一部分,引导 ROM 将此用于栈*/
RAMM1 :origin = 0x000400、length = 0x000400 //片上 RAM 块 M1 *
//RAMLS1 :origin = 0x008800,length = 0x000800
//RAMLS2 :origin = 0x009000,length = 0x000800
//RAMLS5 :origin = 0x00A800,length = 0x000800
//RAMLS6 :origin = 0x00B000,length = 0x000800
RAMLS7 :origin = 0x00B800,length = 0x000800
RAMGS0 :origin = 0x00C000、length = 0x002000
RAMGS1 :origin = 0x00E000、length = 0x002000
RAMGS2 :origin = 0x010000、length = 0x002000
RAMGS3 :origin = 0x012000,length = 0x002000
CLA1_MSGRAMLOW :origin = 0x001480,length = 0x000080
CLA1_MSGRAMHIGH :origin = 0x001500,length = 0x000080
}
部分
{
/*分配计划领域:*/
.cinit :> FLASH_BANK0_SEC1, PAGE = 0,ALIGN (4)
.pinit :> FLASH_BANK0_SEC1, PAGE = 0,ALIGN (4)
.text :>> flash_BANK0_SEC1 | flash_BANK0_sec2 | flash_BANK0_SEC3, page = 0,align (4)
codestart :> begin page = 0,align (4)
/*分配未初始化的数据段:*/
.cio :>RAMLS0, page = 0
.stack :>RAMM1 page = 1.
.ebss :> RAMGS0 PAGE = 1.
.esysmem :> RAMLS7 page = 1//RAMLS5
/*初始化段进入闪存*/
.econst :> FLASH_BANK0_SEC1、 PAGE = 0、ALIGN (4)
.switch :> FLASH_BANK0_SEC1, PAGE = 0,ALIGN (4)
RAMS0 :>RAMGS0, PAGE = 1
ramgs1 :>RAMGS1, page = 1.
.reset :> reset, page = 0,type = DSECT //未使用,*/
/* CLA 特定部分*/
Cla1Prog :load = flash_BANK0_SEC4,
运行= RAMLS0、
Load_start (_Cla1ProgLoadStart)、
run_start (_Cla1ProgRunStart)、
load_size (_Cla1ProgLoadSize)、
PAGE = 0、ALIGN (4)
Cla1ToCpuMsgRAM :> CLA1_MSGRAMLOW, page = 1.
CpuToCla1MsgRAM :>CLA1_MSGRAMHIGH, PAGE = 1.
.TI.ramfunc :load = flash_BANK0_SEC4,
运行= RAMLS4、
load_start (_RamfuncsLoadStart)、
load_size (_RamfuncsLoadSize)、
load_end (_RamfuncsLoadEnd)、
run_start (_RamfuncsRunStart)、
run_size (_RamfuncsRunSize)、
run_end (_RamfuncsRunEnd)、
PAGE = 0、ALIGN (4)
secureRamFuncs : load = FLASH_BANK0_SEC4, page = 0
运行= RAMLS3、 页= 0
run_start (_secureRamFuncs_runstart)、
load_start (_secureRamFuncs_loadstart)、
load_end (_secureRamFuncs_loadend)
暂存区 :> RAMLS3, PAGE = 0//RAMLS1 PAGE = 1.
.bss_cla :> RAMLS3, page = 0//RAMLS1 page = 1.
Cla1DataRam :> RAMLS3, page = 0//RAMLS2 page = 1.
const_CLA : load = flash_BANK0_sec2、
运行= RAMLS3、
run_start (_Cla1ConstRunStart)、
Load_start (_Cla1ConstLoadStart)、
load_size (_Cla1ConstLoadSize)、
PAGE = 0
dclfuncs :>RAMGS0, PAGE = 1
SineTableSection:>RAMGS2, page = 1 align(4)
load_start (_sinetab_start)、
load_size (_sinetab_size)
// Alex 的过滤器
DUAL_FILTER_COef :> RAMLS3, PAGE = 0
DUAL_FILTER_DATA :> RAMLS4, PAGE = 0
/*筛选器数组*/
COef_Section :> RAMGS2, PAGE = 1 ALIG(4)
fir1_buf :> RAMGS3, page = 1 align (4)
/*以下段定义适用于 IQMath */
IQMath :>RAMGS2, PAGE = 1.
IQmathTables :>RAMGS2, page = 1.
IQmathTablesRam :>RAMGS3, page = 1.
}
