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.

[参考译文] RTOS/DK-TM4C129X:任务在未知信标上被阻止(标签与任务标签相同)

Guru**** 2443910 points


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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/627945/rtos-dk-tm4c129x-task-blocked-on-an-unknown-semaphore-with-a-label-same-as-the-task-label

器件型号:DK-TM4C129X

工具/软件:TI-RTOS

你好

我正在尝试使用 USB 重新连接。

我有一个处理所有 USB Tx 的任务。  

它位于邮箱中、等待直到弹出消息、并通过常用的 USBDCDC 处理程序发送。

断开电缆连接后、"消息"任务被"消息"信标阻止、只有此时才会出现在 ROV 中。

邮箱为空、我正在调用 Semaphore_post 来释放 USB_Tx 信标。

如果有任何帮助、我将不胜感激。

代码:

while (1)

Mailbox_pend (MSGQ、&Message、BIOS_Wait_forever);

SendResponse (Message.MessageID);

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

    您能查看任务的调用堆栈吗? ROV->Tasks->Call Stack?

    请注意、带下划线的蓝色消息是信号量的 task...no名称。

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

    你(们)好。

    已连接调用栈;

    似乎任务在 信标 TxSerial 信标上被阻止。 它定义为永远等待。

    我昨天尝试了三种解决方案、但都不起作用:(但问题可能会转移到另一个地方)

    1、强制布置信号量

    2.删除信标并重新创建它

    3.将超时更改为1/10/100 -大幅减慢整个正常运行

    感谢您的帮助!

    Shlomo

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您尝试发送哪些数据? 数据是否已正确发送、但 cbTxHandler 从未被调用? 您能否提供有关如何产生问题的确切详细信息(例如、您拔下/插入 USB)?