Thread 中讨论的其他器件:BLE-STACK、 CC1352P
工具与软件:
我们将四个外设的射频 MCU CC2652P1FRGZR 用于发送器、并将 CC1352P-4 MCU 用作接收器。
TX 控制器从每个外设收集数据、并使用广播通过蓝牙进行传输。
在接收器侧、即 CC1352P-4 MCU、我们有以下任务:
1. Task_A (优先级:2) (Task_A 是已在示例代码中定义的 simplecentral 任务。)
2. Task_B (优先级:2)
3. Task_C (优先级:3)
Task_A 基于事件、负责从蓝牙收集数据并将原始数据加载到环形缓冲区中。
Task_B 基于周期性、将以100ms 的间隔执行以处理蓝牙、如果它断开连接、自动连接外设。
Task_C 也基于周期并从环形缓冲器中读取数据、经过处理并将以10ms 的间隔在串行器件上发送数据。
查询:
1.如果我们按照上面提到的优先级操作、那么它只针对3个外设工作。 如果我们连接第4个外设、则数据会在几秒钟后在串行器件上停止、应用程序无限期地卡住。
2.如果我们在下面提到任务的优先次序,
Task_A、优先级:3
Task_B、优先级:2
Task_C、优先级:2
然后、它针对4个外设工作、但我们会随机地获取串行器件上的数据、而不是遵循10ms 的周期性。
您可以为上述问题提供任何解决方案吗?