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.

[参考译文] CCS/CC3220SF-LAUNCHXL:设置任务优先级

Guru**** 2582405 points
Other Parts Discussed in Thread: CC3220SF

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

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/875352/ccs-cc3220sf-launchxl-setting-task-priorities

器件型号:CC3220SF-LAUNCHXL
主题中讨论的其他器件:CC3220SF

工具/软件:Code Composer Studio

您好!
我的代码使用3个任务(此代码基于"network_terminal_CC3220SF_LAUNCHXL_tirtos_ccs"示例)

任务:
 1) 1) NWP 的内部 s1_Task ... (设置为优先级9)
 2)网络接收任务,通过 UART-Tx....将接收到的 WiFi 网络数据传输到我们的处理器  (设置为优先级3)
 3) 3)网络发送任务、通过 UART-Rx 将接收到的处理器数据发送到 WiFi 网络... (设置为优先级2)

当我将优先级从(9、3、2)更改为(9、3、3)时、代码将不再运行。
看起来(9、3、3)会为两个通信任务提供相同的时间、但 UART 字符流会损坏。
对于更改任务优先级会中断 UART 接口的原因、您有什么想法吗?

谢谢!

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

    您好!

    我发现任务3是在 阻塞模式下使用 UART_readPolling(),从未放弃该任务。 我已修改 UART 读取函数以使用 UART_MODE_CALLACK (非阻塞)、现在我能够在不同级别设置任务优先级。 但是、我仍然看到一个问题、即 UART 确认消息卡在 WiFi 芯片中。 一旦我重新连接 TCP 会话、该确认 消息就会传输、albiet 会很晚。 就好像有一个任务挂起 UART 发送一样。 我的 UART 环缓冲 器 CC3220SRingBuffer 设置为[8192]。

    NWP 设置为9是否会以某种方式阻止我发送确认(在任务设置为3的情况下)?

    我尝试了(9、9、9)、但对问题没有影响。 您能告诉我是否将优先级设置为(9、3、3)是正确的设置?

    谢谢、Glenn。

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

    您好、Glenn、

    我不确定 UART ACK 消息是什么、您指的是什么。 我想这是来自您的应用程序的响应消息(与 TCP ACK 无关)。

    在线程2等待接收时(在同一个套接字上)、在套接字(在线程3中)上发送数据不应出现任何问题。

    9、3、3应该起作用。 您应该在线程之间查找其他死锁。

    您是否在 UART RX 上收到 ACK 消息? 您是否使用它调用 sl_Send?

    BR、

    Kobi

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

    您好、Kobi、

    感谢您的回答。 我修复了 UART ACK 的问题!

    但我还有一个关于优先级设置的问题。

    优先级不会使用(9、9、9)来防止线程锁定的任何可能性、或者是否要求 NWP 在系统中具有最高优先级?

    此致、Glenn

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

    最好让 simplelink sawn 线程获得最高优先级(它仅在从器件接收数据时触发)。

    但请注意、对于任何优先级配置、您都可以进入死锁状态。

    如果在没有 UART 流控制的情况下工作、应确保 UART 读取器线程会及时清空缓冲区。

    BR、

    Kobi