主题中讨论的其他器件: MMWAVEICBOOST
我更新了一个示例实验(3D 人员计数)、以将数据发送到 SPI 总线。 总线打开正常、并且调用 SPI 传输命令(无 erro)、但是它永远不会返回、并且由于 MIBSPI_checkTGComplete 状态1永远不会返回、它停留在一个无限循环中。 我已经根据文档设置了 AOP 板上的 DPI 开关。 我可能错过了什么、这是一个损失。 我们使用 Raspberry PI 作为 SPI 主站、一切都很好。





任何帮助都将是一个漫长的过程
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.
我更新了一个示例实验(3D 人员计数)、以将数据发送到 SPI 总线。 总线打开正常、并且调用 SPI 传输命令(无 erro)、但是它永远不会返回、并且由于 MIBSPI_checkTGComplete 状态1永远不会返回、它停留在一个无限循环中。 我已经根据文档设置了 AOP 板上的 DPI 开关。 我可能错过了什么、这是一个损失。 我们使用 Raspberry PI 作为 SPI 主站、一切都很好。





任何帮助都将是一个漫长的过程
使用精细牙签进行调试、我找到了我要挂的位置。 在文件 mibspi_dma.c @第2274行中、
semaStatus = SemaphoreP_pend(ptrMibSpiDriver->transferCompleteSem, ptrMibSpiDriver->params.transferTimeout);
我们已检查 ptrMibSpiDriver->params.transferTimeout以发现4294967295的超时、我剩下2个问题:如何更改超时以及如何触发信标。 这两个问题中的任何一个都将帮助我了解发生了什么错误。
您好邓肯、
典型的 SPI 配置会让中央器件向外设器件请求信息、但我假设您可以直接从外设广播到中央、而不会出现提示。 当您 在 ptrMibSpiDriver->transferCompleteSem 上挂起时,信标的值应为1。 但是当我看到它在 MISPPI_OPEN ()中被初始化时、它似乎被初始化为0 (mibspi_dma.c 的第1959行)。