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.
工具/软件:TI-RTOS
您好!
我一直在使用 TI MSP432P401R、TI ADS1298模数转换器和带有 TI 驱动程序(本例中为 SPI)的 TI-RTOS 开发产品。 我使用的是 SimpleLink MSP432 SDK 最后一个版本中的 SPI 驱动程序和 TI-RTOS。 换句话说、我的应用配置 ADS1298并进入连续转换模式。 ADS1298有一个在转换完成时产生中断的引脚。 我已在阻塞模式下打开 SPI 驱动器。 在我的第一个应用程序中,中断引脚回调发布信标并解除阻止从 ADS 读取数据的任务,调用 SPI_trasfer ()函数,但中断频率(与 ASD1298的采样率相关)快于系统时钟周期(1ms), 任务将始终运行、不允许其他人运行。 因此、我更改了程序、在回调模式下打开 SPI 驱动程序。 然后、中断引脚 回调 在 Hwi 上下文中调用 SPI_TRANSFER ()、而 SPI 回调将数据存储在缓冲区中。 当缓冲区完全填满时、SPI 回调会发布信标、并且任务未被阻止并处理数据块。
我已经阅读了 TI-RTOS 2.20用户指南、如果 SPI_transfer 可以从回调上下文(Hwi)中调用、我不清楚。 我在 e2e 论坛中寻求了澄清、但 e2e 线程未回答我的问题。 我在 一些 e2e 帖子中阅读过 e2e.ti.com/.../513722的最近的 e2e 线程,人们 说可以从回调调用 SPI_transfer()。 另一个说法是不可能的。 我真的很困惑。
有一种更好的方法来完成我 一直在尝试的任务?
有人可以帮帮我吗?
提前感谢!
你(们)好、David
感谢您的关注! 多给我几天时间、确保 这个问题得到解决。
Otavio Gomes