Thread 中讨论的其他器件: SYSBIOS
您好、支持团队、
我们的产品使用 CC3220SF SoC 并使用 TI-RTOS。
我的问题:
是否可以在 TI-RTOS 代码中使用启用/禁用全局中断方法?
例如、我们通过 SPI 接口擦除/写入外部512Mbit NOR 串行闪存。 如果我想保证没有其他代码影响 SPI 读取/写入、我该怎么做?
3、如果某些应用要求硬件信号控制的关键时序并禁用所有其它软件/硬件中断源、可以参考哪一个示例代码?
此致、
Lishen
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.
您好、支持团队、
我们的产品使用 CC3220SF SoC 并使用 TI-RTOS。
我的问题:
是否可以在 TI-RTOS 代码中使用启用/禁用全局中断方法?
例如、我们通过 SPI 接口擦除/写入外部512Mbit NOR 串行闪存。 如果我想保证没有其他代码影响 SPI 读取/写入、我该怎么做?
3、如果某些应用要求硬件信号控制的关键时序并禁用所有其它软件/硬件中断源、可以参考哪一个示例代码?
此致、
Lishen
有关如何在 TIRTOS 中禁用/启用中断、请参阅 HWI 文档(software-dl.ti.com/.../Hwi.html)。
访问 SPI 闪存时、可以使用关键段保护(例如使用 pthread_mutex、假设通过 POSIX 使用 tirtos)。
我不确定是否有任何示例直接禁用中断。 使用 RTOS 时、它通常通过操作系统同步 API (例如互斥量、信标等)来完成。 如果您检查 POSIX 代码。 如果您检查 POSIX 实现,您将能够找到 Hwi_disable()的用法 ,例如 在 ti_SysBIOS_posix_clock_getticks ()中,
您是否通过 CC32xx SDK 中的示例使用 TIRTOS?
SDK 中的所有示例都是通过 POSIX 接口使用 RTOS、
POSIX 接口可通过不同的 RTOS 实现。 在我们的 SDK 中,我们为 TIRTOS 和 FreeRTOS 提供了适应方法(因此,除了在 main()中进行更改外,两个 RTOS 的应用程序代码几乎相似)。
这意味着应用程序不使用 TIRTOS API、但它们调用将用于 TIRTOS 或 FreeRTOS 的通用 POSIX API、或将其用于项目配置。
我上面提到的 API 是 POSIX API、并不特定于 TIRTOS。 如果您直接使用 TIRTOS (即不基于 SDK 示例)、则应使用 RIRTOS 等效项(例如信标)。