主题中讨论的其他器件:CC3100、
您好!
我的目标是将 Simplelink 主机驱动程序移植到在单线程模式下不使用操作系统运行的 STM32环境。 我以前在 CC3100上有过很好的体验。 但是、我在这里为新的 SDK 感到很困难。
根据我的知识和多个文档(SWRU455E -第16部分/ SimpleLink_Gen1_TO_Gen2_SDK_Migration_Guide.html)、我到目前为止已经管理了:
+以便在我的环境中成功集成和构建主机驱动程序
+在我的处理器和 CC3120之间获得正常工作的 SPI 通信
+启动 sl_Start 过程并接收启动的事件
为此、我省略了所有 与信号量相关 的函数(Semaphore_create_handle、 Semaphore_delete、...) 这总是返回成功;实际上、我认为与我的非操作系统实施无关。
但在快速测试之后、我注意到 一旦调用 sl_Start 函数、就会调用 Semaphore_functions!
与我在文档中看到的所有内容相反(请参阅 SWRU455E -第16.7部分"如果主机应用程序基于非操作系统环境、则不需要执行此步骤。")、 SL_SyncObj 和 SL_LockObj 对于主机驱动程序来说是必需的、即使在非操作系统、非多线程环境中也是如此。 我认为这有点胡说。
是否有任何方法可以获得有关此问题的支持? 或者、我是否在 SDK 配置中遗漏了一些内容?
PS:我已经浏览 了 simplelink_msp432p4_SDK 中包含的 SemaphoreP_nortos.c / MutexP_nortos.c 文件 、以查看信标/互斥量示例、但它们太多依赖于硬件、无法轻松移植。 这比我在阅读这些文档时所做的工作要多得多。
提前感谢、
Alain。