0

我正在为多个(数百个)PIC 编写一个程序,以通过 RFM12B 无线模块与主 PIC 进行时分多址通信。主 PIC 发送一个同步数据包,然后每个 PIC 应在其自己的时隙中响应。所有 PIC 都应该在一秒钟内报告状态。

主 PIC 通过串行端口与 PC 进行其他通信。问题是如何控制主 PIC 不因其他操作延迟而出现时间偏差?我想使用汇编而不是 C,这样我就可以计算指令并进行延迟。

我什至想过做延迟循环来补偿由于“if”语句而被跳过的指令。

这会很痛苦,有没有更好的方法来做这个同步应用程序?最好在 C?

4

1 回答 1

1

可以使用定时器触发的中断和计数器,这样计数器将确定要执行的操作(如状态机)。并且定时器触发的中断将确保时隙的均匀性。

于 2014-01-09T05:04:58.953 回答