我有一个消息流、我将通过射频从主机发送到客户端。 当我按住主机上的某个键时、消息会持续发送、直到我松开该键。 消息为8字节。 应用程序代码首先检查 CRC、然后让消息通过前门。 下一个条件会检查 ID 的前四个字节、如果它与 FRAM 中的空间匹配、则会进行解密。 我可以运行代码一段时间、所有代码都运行良好、但消息在某一点上不同步。 我在处理开始时、处理结束时以及接收8个字节后在 RX ISR 内复位主函数中的指针。 我不知道还有什么要做的。 消息每27ms 发送一次、并且我有计数器显示所有通过 CRC 的 RF 和通过消息 ID 的 RF。 按下按钮时、有时会收到500或600条消息、一切都很好。 我也不确定当我将接收器暂停在调试器上时是否会发生这种情况,并且可能在调试器上未对齐..... 有什么想法吗?
后续行动
我发现、如果我从主机向客户端发送一条一次性消息、那么只要我保持调试器运行、该消息就不会旋转。 但是,如果我在 RX (客户端)端停止调试器并发送消息,然后启动调试器并发送另一条(不同或相同的)消息,我将字节旋转一个...因此我可以有效地停止调试器并发送8条消息,然后重新同步。 在阵列前面有字节1、这符合预期。 不确定如何解决此问题、因为消息流式传输和不同步似乎很容易???
谢谢