TI论坛
直播中

陈可

7年用户 282经验值
私信 关注
[问答]

为什么ADC_test的cmd文件中需更改vectors段的定义才能正常下载程序?

为什么ADC_test的cmd文件中需更改vectors段的定义,才能正常下载程序?运用同一块板子,配置McBSP实验中,cmd文件vector段不用更改,就能够编译与下载成功?

我的cmd文件是这样配置的
-w
-lrts55x.lib
MEMORY
[
PAGE 0:
MMR : origin = 0000000h, length = 00000c0h
SPRAM : origin = 00000c0h, length = 0000040h
DARAM0 : origin = 0000100h, length = 0003F00h
DARAM1 : origin = 0004000h, length = 0004000h
DARAM2 : origin = 0008000h, length = 0004000h
DARAM3 : origin = 000c000h, length = 0004000h
SARAM0 : origin = 0010000h, length = 0004000h
SARAM1 : origin = 0014000h, length = 0004000h
SARAM2 : origin = 0018000h, length = 0004000h
SARAM3 : origin = 001c000h, length = 0004000h
SARAM4 : origin = 0020000h, length = 0004000h
SARAM5 : origin = 0024000h, length = 0004000h
SARAM6 : origin = 0028000h, length = 0004000h
SARAM7 : origin = 002c000h, length = 0004000h
SARAM8 : origin = 0030000h, length = 0004000h
SARAM9 : origin = 0034000h, length = 0004000h
SARAM10 : origin = 0038000h, length = 0004000h
SARAM11 : origin = 003c000h, length = 0004000h
SARAM12 : origin = 0040000h, length = 0004000h
SARAM13 : origin = 0044000h, length = 0004000h
SARAM14 : origin = 0048000h, length = 0004000h
SARAM15 : origin = 004c000h, length = 0004000h
CE0 : origin = 0050000h, length = 03b0000h
CE1 : origin = 0400000h, length = 0400000h
CE2 : origin = 0800000h, length = 0400000h
CE3 : origin = 0c00000h, length = 03f8000h
PDROM : origin = 0ff8000h, length = 07f00h
VECS : origin = 0ffff00h, length = 00200h /* reset vector */
]

SECtiONS
[
vectors : [] > VECS PAGE 0 /* interrupt vector table */
.cinit : [] > SARAM0 PAGE 0
.text : [] > SARAM1 PAGE 0
isrs : [] > SARAM2 PAGE 0
.stack : [] > DARAM0 PAGE 0
.sysstack: [] > DARAM0 PAGE 0
.sysmem : [] > DARAM1 PAGE 0
.data : [] > DARAM1 PAGE 0
.bss : [] > DARAM1 PAGE 0
.const : [] > DARAM1 PAGE 0
.coeffs : [] > DARAM2 PAGE 0
.dbuffer : [] > DARAM3 PAGE 0
files : [] > DARAM2 PAGE 0 /* User-defined sections */
statvar : [] > DARAM2 PAGE 0
statarry : [] > DARAM2 PAGE 0
tempvar : [] > DARAM2 PAGE 0
temparry : [] > DARAM2 PAGE 0
sounds : [] > SARAM3 PAGE 0
]

运行ADC_test时,编译与load都能够成功,报错弹出窗口是  Data verification failed at address 0xFFFF00  Please verify target memory and memory map  
更改vector段的定义到其它RAM,比如vectors : [] > SARAM1 PAGE 0 /* interrupt vector table */    程序就能正常运行,
而运行UART程序时,无需更改vector段的定义,无报错信息,程序能够正常运行。

回帖(4)

余少虹

2019-1-30 10:25:15
请问你用的是哪款DSP?
举报

陈可

2019-1-30 10:43:49
引用: vuywsdfwf 发表于 2019-1-30 19:41
请问你用的是哪款DSP?

应用的都是TMS320VC5509A
举报

余少虹

2019-1-30 10:51:02
看了一下vc5509a memory map, 报错地址0xFFFF00是映射到CE空间。
请问你CE空间有没有外挂memory? 如果有的话,外挂的是什么样的memory?
举报

余少虹

2019-1-30 11:04:06
引用: vuywsdfwf 发表于 2019-1-30 20:07
看了一下vc5509a memory map, 报错地址0xFFFF00是映射到CE空间。
请问你CE空间有没有外挂memory? 如果有的话,外挂的是什么样的memory?

补充说明一下,上面映射到CE3空间的前提是MPNMC=1.
如果MPNMC=0,0xFFFF00是映射到ROM空间,ROM空间是不能写的,vectors需要重新定义到可写RAM。

举报

更多回帖

发帖
×
20
完善资料,
赚取积分