使用 freeRTOS 队列 API 或使用自定义数据结构在 freeRTOS 应用程序中创建队列更好吗?

Is it better to create a queue in a freeRTOS application using freeRTOS queue API, or by using a custom data structure?

我在 Linux 下使用 C 编写了一个应用程序,其中队列是使用自定义结构创建的。代码 运行ning 就好了。现在我想使用 freeRTOS 将该代码改编为 运行。这是我第一次处理 rtos。在浏览文档时,我发现 freeRTOS 支持队列 API。所以,我想知道我是否必须使用那些 API 来创建队列,或者我可以只保留自定义结构吗??

视情况而定。队列包含在 freeRTOS 中,因为它们是任务切换和其他核心 OS 功能工作所必需的。如果您的存储 space(闪存)不足,那么在 freeRTOS 中使用 "free"(因为它已经存在)实现可能是有意义的。另外,freeRTOS的队列实现总体来说还是不错的。

如果您时间紧迫并且有足够的闪光灯,我会继续使用有效的方法。如果您测试过它并且有效,请继续使用它。