主题中讨论的其他器件:C2000WARE
工具/软件:Code Composer Studio
我不熟悉 C2000、我需要3个4096 uint 16的数组来执行 FFT。我在"ADC_SoC_Continuous_DMA"示例中将 results_buffer_size 更改为4096
下面是2838x_flash_Ink CPU1.cmd:(顺便说一下、如果我选择通过2837x_RAM_lnk_CPU1.cmd 加载、则发生了另一个错误、开始存储器范围与现有存储器范围开始重叠。)
存储器
{
/* begin 用于"引导至闪存"引导加载程序模式 */
开始 :origin = 0x080000,length = 0x000002
BOOT_RSVD :origin = 0x000002,length = 0x0001AE // M0的部分,引导 ROM 将使用此栈*/
RAMM0 :origin = 0x0001B0,length = 0x000250
RAMM1 :origin = 0x000400、length = 0x000400 //片上 RAM 块 M1 *
RAMD0 :origin = 0x00C000、length = 0x000800
RAMD1 :origin = 0x00C800,length = 0x000800
RAMLS0 :origin = 0x008000、length = 0x000800
RAMLS1 :origin = 0x008800,length = 0x000800
RAMLS2 :origin = 0x009000,length = 0x000800
RAMLS3 :origin = 0x009800,length = 0x000800
RAMLS4 :origin = 0x00A000,length = 0x000800
RAMLS5 :origin = 0x00A800,length = 0x000800
RAMLS6 :origin = 0x00B000、length = 0x000800
RAMLS7 :origin = 0x00B800,length = 0x000800
RAMGS0 :origin = 0x00D000,length = 0x001000
RAMGS1 :origin = 0x00E000、length = 0x001000
RAMGS2 :origin = 0x00F000、length = 0x001000
RAMGS3 :origin = 0x010000,length = 0x001000
RAMGS4 :origin = 0x011000,length = 0x001000
RAMGS5 :origin = 0x012000,length = 0x001000
RAMGS6 :origin = 0x013000、length = 0x001000
RAMGS7 :origin = 0x014000,length = 0x001000
RAMGS8 :origin = 0x015000,length = 0x001000
RAMGS9 :origin = 0x016000,length = 0x001000
RAMGS10 :origin = 0x017000,length = 0x001000
RAMGS11 :origin = 0x018000,length = 0x001000
RAMGS12 :origin = 0x019000,length = 0x001000
RAMGS13 :origin = 0x01A000,length = 0x001000
RAMGS14 :origin = 0x01B000,length = 0x001000
RAMGS15 :origin = 0x01C000,length = 0x001000
FLASH0 :origin = 0x080002,length = 0x001FFE /*片上闪存*/
FLASH1 :origin = 0x082000,length = 0x002000 //片上闪存*/
FLASH2 :origin = 0x084000、length = 0x002000 //片上闪存*/
FLASH3 :origin = 0x086000、length = 0x002000 //片上闪存*/
FLASH4 :origin = 0x088000、length = 0x008000 //片上闪存*/
FLASH5 :origin = 0x090000,length = 0x008000 //片上闪存*/
Flash6 :origin = 0x098000、length = 0x008000 //片上闪存*
FLASH7 :origin = 0x0A0000,length = 0x008000 //片上闪存*/
FLASH8 :origin = 0x0A8000、length = 0x008000 //片上闪存*/
FLASH9 :origin = 0x0B0000,length = 0x008000 //片上闪存*/
FLASH10 :origin = 0x0B8000、length = 0x002000 //片上闪存*/
FLASH11 :origin = 0x0BA000、length = 0x002000 //片上闪存*/
FLASH12 :origin = 0x0BC000、length = 0x002000 //片上闪存*/
FLASH13 :origin = 0x0BE000、length = 0x002000 //片上闪存*/
CPU2TOCPU1RAM :origin = 0x03B000,length = 0x000800
CPUTOCMRAM :origin = 0x039000,length = 0x000800
CMTOCPURAM :origin = 0x038000,length = 0x000800
CANB_MSG_RAM :origin = 0x04B000、length = 0x000800
}
{
codestart :>开始,align (4)
.text :>> FLASH1 | FLASH2 | FLASH3 | FLASH4、ALIGN (4)
.cinit :> FLASH4,align (4)
.switch :> FLASH1,ALIGN(4)
.reset :> reset,type = DSECT /* not used,*/
.stack :> RAMM1
init_array :> FLASH1,align (4)
.bss :> RAMLS5
.bss:输出 :> RAMLS3
.bss:CIO :>RAMLS5
.data :> RAMLS5
.sysmem :> RAMLS5
/*初始化段进入闪存*/
.const :> FLASH5、align (4)
其他
.pinit :> FLASH1,align (4)
.ebss :> RAMLS5
.esysmem :> RAMLS5
.cio :> RAMLS5
/*初始化段进入闪存*/
.econst :>> FLASH4 | FLASH5、ALIG(4)
#endif
ramgs1:>RAMGS1,type=NOINIT
MSGRAM_CPU1_TO_CPU2:>CPU1TOCPU2RAM,type=NOINIT
MSGRAM_CPU2_TO_CPU1:>CPU2TOCPU1RAM,type=NOINIT
MSGRAM_CPU_TO_CM :> CPUTOCMRAM,type=NOINIT
MSGRAM_CM_TO_CPU :> CMTOCPURAM,type=NOINIT
filter_RegsFile :> RAMGS0
filter1_RegsFile:> RAMGS1,fill=0x1111
Filter2_RegsFile:> RAMGS2,fill=0x2222
Filter3_RegsFile:> RAMGS3,fill=0x3333
Filter4_RegsFile:> RAMGS4,fill=0x4444
Differit_RegsFile:>RAMGS5,fill=0x3333
.TI.ramfunc:{}负载= FLASH3,
RUN = RAMLS0 | RAMLS1 | RAMLS2 | RAMLS3、
Load_start (RamfuncsLoadStart)、
load_size (RamfuncsLoadSize)、
Load_End (RamfuncsLoadEnd)、
RUN_START (RamfuncsRunStart)、
run_size (RamfuncsRunSize)、
RUN_END (RamfuncsRunEnd)、
对齐(4)
其他
.TI.ramfunc:{}负载= FLASH3,
RUN = RAMLS0 | RAMLS1 | RAMLS2 | RAMLS3、
load_start (_RamfuncsLoadStart)、
load_size (_RamfuncsLoadSize)、
load_end (_RamfuncsLoadEnd)、
run_start (_RamfuncsRunStart)、
run_size (_RamfuncsRunSize)、
run_end (_RamfuncsRunEnd)、
对齐(4)
#endif
//============================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================
//文件结束。
//============================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================
*
"C:/ti/c2000/C2000Ware_2_00_00_02/device_support/f2837xd/common/cmd/2837xD_FLASH_lnk_cpu1.cmd "、第97行:错误#10099-D:
程序将不能放入可用的内存中。 使用运行放置
"ramgs0"段大小为0x2000页1的对齐/分块失败。 可用
存储器范围:
RAMGS0 大小:0x1000 未使用:0x1000 最大孔:0x1000
错误#10010:链接期间遇到错误;
未构建"ADC_SoC_Continuous_dma_cpu01.out"