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.

[参考译文] CCS/TMS320F28034:变量/函数的地址....

Guru**** 2540720 points


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

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/953281/ccs-tms320f28034-address-of-variables-functions

器件型号:TMS320F28034

工具/软件:Code Composer Studio

尊敬的:

   中午之后很好!

    编译完项目后,如何查找变量、函数、段的地址/位置?

   您是否有一个迷宫?  

    

Tks

祝你度过美好的一天!

    

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

    您好!

    如果在调试会话中、您可以尝试使用模块视图:

    https://dev.ti.com/tirex/explore/node?node=APVIzRhtpuf-7AMAb9iu3w__FUz-xrs__LATEST

    此外、编译后、请查看工程配置子文件夹中生成的*。map 文件。

    谢谢

    Ki

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

    尊敬的 Ki:

       下午好!

       我无法打开链接 :)

       我的问题是:

    当我定义全局变量时、我可以在.map 文件中找到地址;

    但我无法在.C 文件中找到静态变量的地址 , 在 funcs 中找不到临时变量 的地址;

    如何知道这些变量是在正确的地址分配的?

      太多了!

      祝你度过美好的一天!

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

    诸如局部变量之类的东西会在运行时分配、因此您在编译后不会知道。

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

    我的意思是:

       当程序在芯片中运行时,它如何分配局部变量?  机制是什么?  

       如何知道它是否耗尽了 RAM 空间?

       Tks

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

    [引用用户="Jacky Xiao1"]但我在.C 文件中找不到静态变量的地址

    请参阅 此论坛主题

    [引用用户="Jacky Xiau1"] 和函数中的临时变量

    这些地址是相对于栈指针(SP)的。  因此、每次函数运行时、它们都是不同的。

    谢谢、此致、

    乔治

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

    早上好、George、

        对于临时变量、它与堆栈指针相对!

       如果 DSP 中有多任务操作系统,则 SP 在运行不同任务时将指向不同任务的堆栈空间, 因此 模板变量将位于不同任务的堆栈空间,这对吗?

       对于静态变量,如何在 CCS 中添加链接选项,以便可以在映射文件中看到地址?

    Tks

    祝你度过美好的一天!

    • 主机操作系统版本:Win 10
    • 提供  CCS 的确切版本号:5.4.0

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

    [引用用户="Jacky Xiau1"] 如果 DSP 中有一个多任务操作系统,则 SP 在运行不同任务时将指向不同任务的堆栈空间, 因此 模板变量将位于不同任务的堆栈空间,对吗?

    这可能是对的。  但这取决于多任务操作系统工作方式的详细信息。   

    [引用 user="jacky Xiaoc1"]对于静态变量,如何在 CCS 中添加链接选项,以便可以查看映射文件中的地址?

    使用链接器选项 --mapfile_contents=sym_defs

    谢谢、此致、

    乔治

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

    下午好、George、

        针对 uCOS 情况(每个任务都有自己的堆栈空间)。

        模元变量将位于其相关任务的堆栈空间,对吗?

        

       Tks  

    祝你度过美好的一天!

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

    你可能是对的。  因为我不熟悉 uCOS、所以我无法肯定。

    谢谢、此致、

    乔治