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.

[参考译文] 编译器/TMS320F2.8027万:指定CCS中的程序入口点

Guru**** 2587345 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/655910/compiler-tms320f28027-specify-program-entry-point-in-ccs

部件号:TMS320F2.8027万

工具/软件:TI C/C++编译器

嗨,在CCS7属性中,我可以指定程序入口点。

但我想知道此设置与.cmd文件之间有何区别。

在CMD文件中,我有以下代码  

BEGIN    :Origin = 0x3F7FF6,length = 0x0.0002万

代码启动       :>开始    页= 0

在codegbranch.asm中,有以下代码:

.sect "codegot"(代码开始)

代码开始:
如果wd_disable == 1
LB wd_disable;分支到看门狗禁用代码
否则
lb _c_int00;Branch启动RTS库中的boot.asm
endif

我认为通过这些代码,我们已经将code_start分配给 0x3F7FF6,而引导到闪存是引导到0x3F7FF6,因此它是入口点。 我不知道是否还需要在CCS中配置入口点。 如果我将入口点指定为全局符号而不是code_start,会发生什么情况?

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

    您好,Zou,

    CCS中的入口点信息用于在 加载代码后或单击重新启动时强制PC使用入口点值,从而跳过BootROM执行。 如果未 定义,则当您点击CCS上的运行图标时,它将通过BootROM运行, 设备将通过仿真引导进行引导,如果仿真引导设置正确,则跳至入口点。

    希望这是明确的。

    Vivek Singh

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我所观察到的与你所说的不一样。
    我导入"example_2802xCpuTimer"项目。 无论我将入口点指定为code_start还是none,在加载代码或按restart后,PC将在main()的开头停止。
    此外,我可以说,符号管理入口点只会影响我使用CCS调试时的代码行为,如果它加载到闪存并单独运行,它不会影响任何东西,对吗?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,Zou,

    [报价] 我导入"Example_2802xCpuTimer"项目。 无论我将入口点指定为code_start还是none,在加载代码或按restart后,PC将在main()的开头停止。 [/引述]

    这是因为在CCS中,默认设置是CPU在重新启动或加载代码后在main()处停止。 您可以在CCS中的“工具”->“调试器选项”->“自动运行和启动选项”下选中(或更改)此设置  

    [引述] 此外,我可以说,符号管理入口点只会影响使用CCS调试时的代码行为,如果它加载到闪存并单独运行,它不会影响任何内容,对吗? [/引述]

    正确。

    此致,

    Vivek Singh