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.

[参考译文] TMS570LS3137:cmd 文件语法

Guru**** 2589265 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1019244/tms570ls3137-cmd-file-grammar

器件型号:TMS570LS3137

你好

团队

我如何在 CMD 文件中编写一些代码,设置区域并生成 CRC 计算

存储器

引导程序(X):origin=0x00000000 length=0x00000020
FLASH0 (RX):origin=0x00000020 length=0x0005FFE0
STACK_CHECK (RW):origin=0x08000000 length=0x00000020
堆栈(RW):origin=0x08000020 length=0x00005500
RAM (RW):origin=0x08005550 length=0x00002700
profile (RW):origin=0x08007C55 length=0x00000200 //已添加以用于分析目的*/
日志(RW):origin=0x08007E55 length=0x00000150 //已添加用于记录目的*/
FEE (R):origin=0xF0200000 length=0x00000064 fill=0xDEADBEF/*用于 FEE 测试,仅对示例应用有效*/

/*用户代码结束*/


/*------------------ *
/*段配置*/


/*用户代码开始(5)*/

/*------------------ *
/*段配置*/
/**//
/*从 ulFlashStartAddr 到 ulKernelFuncEndAddr */
/*->权限模式只读访问*/
/*从 ulFlashStartAddr 到 ulFlashEndAddr */
/*->权限和取消权限模式、只读访问*/
/*从 ulKernelDataStartAddr 到 ulKernelDataEndAddr */
/*->权限模式、读取/写入访问*/
/*------------------ *
部分

.intvecs:start( ulFlashStartAddr ){}>向量
.text:{}> FLASH0
const:end( ulFlashEndAddr )
{}> FLASH0
.cinit:{}> FLASH0
.pinit:{}> FLASH0
StackCheck :{}> stack_check
stack_data_svc:{. += 10240;}>堆栈、RUN_START (StackModeSVC)
stack_data_fiq:{. += 1024;}>堆栈、run_start (StackModeFIQ)
STACK_DATA_IRQ:{. += 4096;}> STACK_START (StackModeIRQ)
stack_data_abt:{。 += 1024;}>堆栈、run_start (StackModeABT)
stack_data_und:{. += 1024;}>堆栈、run_start (StackModeUND)
stack_data_sys :{. += 1024;}>堆栈、run_start (StackModeSYS)
.bss:{}> RAM
.data :{}> RAM
.sysmem:{}>RAM

log_data:start( ulLOGStartAddr ),end( ulLOGEndAddr )> log
profile_data:start( ulPROFESStartAddr ),end( ulPROFESEndAddr )> profile

/*用户代码结束*/

现在 无法再修改程序区域中的代码,我可以编写代码 crc_table (_my_crc_table、algitm=tms50_.........)。

现在,我想 将 flash0拆分为 cmd 文件中的两个部分。  对我来说困难的是,如何将 Flash0分为两个部分

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好

    您能否通过.start .end 设置一个区域段,然后 CRC 可以像这样计算此段的 CRC 值

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好

    我能否使用 CCS 编译器创建段并传递指令,主要是因为我的程序无法再进行修改?

    谢谢你

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    黄先生、您好!

    我以前不使用这种方法。 如果无法修改代码、您在哪里定义了起始地址和结束地址?