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.

[参考译文] CC1310:Wachtdog's 多任务处理方法

Guru**** 2577385 points
Other Parts Discussed in Thread: CC1310

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/sub-1-ghz-group/sub-1-ghz/f/sub-1-ghz-forum/1574364/cc1310-wachtdog-s-approach-to-multitasking

器件型号:CC1310


工具/软件:

您好、Texas Instruments 工程师:

我与 CC1310 的合作取得了良好进展。

我的固件包含四个任务、所有任务都具有优先级#2 +空闲任务、以实现流程的顺序执行。

我的客户端现在要求我添加一个看门狗锁定监控系统、以便在必要时重新启动 MCU。

在我的程序开始时、这四个任务仍被阻止、仅执行空闲任务。

我的应用程序周期如下所示:

TaskIDLE - IDLE

task01 — 在检测到移动时,通过从中断回调发布信标来激活。 (它在 UART 操作后再次锁定。)

TASK02 — 当它接收到包含来自 UART 的数据的邮箱并处理消息时解锁。 (它在发送 RF 消息后再次锁定。)

任务 03 — 当接收到包含来自 RF 的数据的邮箱并处理消息时解锁。 (它在通过 UART 发送数据后再次锁定。)

Task04 — 通过从 Task03 发布信标来解锁。

看门狗示例方法引导我实现 100%周期性系统、但我的应用不会。

所以我开始思考。

我应该使用什么策略来监控活动任务?

感谢您提前提供帮助。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 J:

    UART 上的接收是否始终处于活动状态? 我想问的是、根据这种情况、您的设备将进入待机状态。 在待机状态下、看门狗将不会通电、因为它不位于常开型电源域中:



    所以我想的是、如果您知道每个任务行动应该花费多长时间:

    • 假设 task01 在中断和 UART 操作之间最多需要 1 秒。 然后、您可以将看门狗配置为在检测到中断时在 1 秒内超时、并在发生 UART 操作时清除和禁用看门狗。
    • 并在每个任务和期望中执行此操作。

    此致、

    Arthur