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.

[参考译文] RTOS/TMS320F28335:如何确定 BIOS 是通过 SYS/BIOS 函数还是变量运行?

Guru**** 2587345 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/593510/rtos-tms320f28335-how-to-determine-if-the-bios-is-running-via-sys-bios-function-or-variable

器件型号:TMS320F28335

工具/软件:TI-RTOS

我正在寻找某种方法来确定 BIOS 是通过使用 SYS/BIOS 函数还是全局变量运行。 有什么可以使用的东西吗?

基本上、我有一个 HAL 函数、它需要在 BIOS 启动之前和运行时做出不同的反应。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    有一个 BIOS_getThreadType() API。 它返回以下值之一:

    枚举 ThreadType{
    BIOS_ThreadType_Hwi、 /*! 当前线程是一个 Hwi */
    BIOS_ThreadType_Swi、 /*! 当前线程是 Swi */
    BIOS_ThreadType_Task、 /*! 当前线程是一个任务*/
    BIOS_ThreadType_Main /*! 当前线程为 Boot/Main */
    };

    因此、它会在调用 BIOS_start 函数之前返回 BIOS_ThreadType_Main。

    提示:如果出于某种原因停止内核(例如调用 exit()或 BIOS_exit()),则会出现错误,并发生异常等),此 API 也会返回 BIOS_ThreadType_Main。

    Todd
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    谢谢 Todd。 这看起来是我要找的。 我将尝试一下、并告诉您它是如何发生的。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    按预期工作。 谢谢!
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    很好。 我喜欢这样的线程:)