工具与软件:
我的客户在 CC2642R-Q1上使用连接监视器和最新的 SDK7.41。 他们发现实时性能受到 CAN 总线数据处理的影响。 该应用程序如下:
在 MicroCmApp_taskFxn 中、初始化 CAN:
2.当数据从 CAN 总线进入时、将触发 GPIO 中断并且应用程序将在中断处理程序中发送数据。 然后、将在 MicroCmApp_processMicroCmAppMsg 中处理接收到的数据:
3.该应用还具有发送一些 CAN 数据的周期性时钟、同时 MicroCmApp_processMicroCmAppMsg 也会对该时钟进行处理。
4. CAN 数据的接收和发送大约需要1ms 到3ms。
问题是 MicroCmApp_processMicroCmAppMsg 中的 case MICRO_CM_APP_CM_EVT 的一部分受到 CAN 数据处理添加代码的影响。 每次 MicroCmApp_processCmMsg 被 CAN 数据处理延迟时都会寻找、而连接监视器最终会失去对连接的跟踪记录。
问题是:
1. MicroCmApp_processMicroCmAppMsg 函数是否对实时操作有严格要求? 是否允许执行可能 抢占 MicroCmApp_processCmMsg 执行的用户应用程序?
2.如果问题1的答案是肯定的、是否有办法计算到下一个连接事件的时间、以便用户应用程序可以稍后处理 CAN 数据、避免影响实时性能?
此致、
沭阳县