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/TM4C123GH6PM:在 TM4C123的 Code Composer Studio 中编写汇编代码。

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/656543/ccs-tm4c123gh6pm-writing-assembly-code-in-code-composer-studio-for-tm4c123

器件型号:TM4C123GH6PM
主题中讨论的其他器件:TM4C123

工具/软件:Code Composer Studio

大家好,我正在使用 tm4c123 (ARM cortex M4处理器)开发小型操作系统。 因此,为了保存和恢复上下文,我需要用汇编语言编写小代码。 我尝试在 code composer studio 中创建扩展名为.asm 的源文件。 但我必须 访问 在 main c main 中声明的几个 GLOBLE 变量,如下所示。  

我不清楚如何在 CCS 中执行此操作,毫无疑问的是如何调用.asm 源文件中定义的函数。

 LDR R0,=Runptr  // Runptr 在其他源文件(即.c 文件)中声明  

CCS  

此行有多个标记
-[E0003]意外的尾随操作数
-[E0001]非法符号
-[E0200]表达式中的错误术语

谢谢你  

Indrajit。

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

    我们无法为汇编级代码提供支持。 有许多现有 RTOS 可供选择、当然包括我们自己的 TI-RTOS、但也包括 FreeRTOS 等其他 RTOS。 除此之外、我们的 TivaWare 解决方案中还有一个完整的驱动程序库。 凭借所有这些资源、我们的工作重点是支持这些资源。 我建议您查看这些内容、因为我们(以及非 TI-RTOS 情况下的其他第三方)投入了大量时间和精力来制作供所有用户使用的可靠固件、而无需深入了解汇编级指令。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    以下是 TI ARM 编译器附带的汇编器汇编工具用户指南的链接。 您将在第116页找到用于定义和引用全局符号(.global、.def 和.ref)的指令。
    www.ti.com/.../spnu118t.pdf

    另外、请看一下 Code Composer 的反汇编窗口中使用的语法。

    有关将汇编例程与 C 函数连接的信息、请参阅 TI ARM C 编译器手册的第6.6节。
    www.ti.com/.../spnu151q.pdf
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    而且-如果在供应商建议之后(以某种方式)证明不足以... Joseph Yiu 的著作《ARM Cortex M3/M4的最终指南》详细介绍了在主要是"C"的框架中成功集成"ASM"的情况。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    很高兴看到有人想要做一些装配、但实际上有理由。

    如果你只是想让 RTOS 运行 Ralph 的点、那就很好了、这里有免费的 RTOS。 我还使用完全用 C 语言编写的 Cortex 中断结构进行了轻量 RTK、这也取决于您需要的工作条件。

    但是、如果您需要类似 EDF 调度的功能、我认为两个 RTOS 都不支持这种功能。

    最后、您应该能够让编译器推出一个中间汇编文件。 如果您不能、我会认为它是坏的、但周围有一些损坏的编译器。

    Robert
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好,
    感谢你的答复。
    我将介绍参考手册以及 Joseph Yiu 的著作。
    最后、我需要为我搜索合适的编译器。 因为据我所知,要保存和恢复上下文,我们需要在汇编语言中编写它,而调度可以在 c 中完成。 如果我错了,请更正我的问题。
    再次感谢。