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.

[参考译文] TM4C1294NCPDT:通信错误

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1440056/tm4c1294ncpdt-communication-error

器件型号:TM4C1294NCPDT

工具与软件:

你(们)好。

我使用 TM4C1294NCPDT 微控制器。 我正在使用 UART 通信功能进行 PCB 和 HMI 显示屏的通信。 波特率是多少  19200.当通信解决(例如:通信电缆断开或 PCB 不向接收器发送数据、无论付出什么代价)时、HMI 故障暗示会最近收到微控制器。

而 PCB 和 HMI UART 通信时间为5秒。

5秒后、接收到 HMI 通信故障。 如果我尝试缩短通信时间(例如:2秒)、则会因为没有通信而影响通信。

例如:代码:

if (G_UART5_TimeoutRetryCount >= 50)//增加延迟

UART5_SuccessFlag = 0;

"Yellow_LED_Flags"。 字节= IO_LED_OFF;
_RED_LED_Flags。 字节= IO_LED_OFF;
Green_LED_Flags。 字节= IO_LED_OFF;
Sensor_Yellow_LED_Flags。 字节= IO_LED_500MS_TOGGLE;
G_Data。 LSU_Status_ID = sp_Status_HMI CommunicationTimeout;

}

如果您有任何疑问、请告诉我并说明如何解决此问题。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [报价 userid="542829" url="~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1440056/tm4c1294ncpdt-communication-error "]

    而 PCB 和 HMI UART 通信时间为5秒。

    5秒后、接收到 HMI 通信故障。 如果我尝试缩短通信时间(例如:2秒)、则会因为没有通信而影响通信。

    [报价]

    您的问题描述不足以让我进行评论。

    解释5秒是什么? MCU 是否每5秒向 HMI 发送一次数据? 或者 MCU 是否持续发送数据5秒?

    2秒时、您的意思是没有通信? 您希望 MCU 在从 HMI 接收到故障后做出什么响应? 显示 MCU 工作时与不工作时的预期响应?

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

    好的、我来解释一下。

    MCU 每100ms 向 HMI 发送和接收数据。 我使用100ms 计时器、  

    if (G_UART5_TimeoutRetryCount >= 50)

    这意味着最多50次尝试(即50*100ms=5sec) HMI 将等待通过 UART 通信接收数据。 5秒后、HMI 未接收任何数据、控制器将出现通信错误。

    如果我更改了  Ex (2秒) MCU 和 HMI 未通信的 if (g_UART5_TimeoutRetryCount >= 20)。 它至少需要2个延迟才能启动通信。

    我的问题是

    波特率是否会导致该问题?

    由于我使用1、15,200波特率可以在500ms 内进行通信。

    目前我使用的是19200波特率、所以只有通信延迟至少需要2秒?

    否则、背后的原因是什么? 请帮我解决这个问题。

    提前感谢。

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

    我仍然不清楚你的问题。   

    您是说、如果您将波特率设置为19200、那么它将超时?

    是什么导致变量  g_UART5_TimeoutRetryCount 递增?  

    开始通信需要最低2次延迟。

    您意味着它需要2s 才能启动通信。 谁来控制延迟? 为什么需要该延迟?

    在19200波特率下、您在 UARTTX 和 UARTRX 信号上看到了任何 UART 波形吗?

    在115200波特率下、 您在 UARTTX 和 UARTRX 信号上看到了任何 UART 波形吗?

    同样、不要期望我像开发应用几个月那样了解您的整个硬件和软件设置。 在你看来,这似乎是显而易见的,你是东,但不是一个外人谁第一次听到你的描述.  

     

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

    我不希望您理解整个硬件和软件设置。 我只是问、这种波特率是否会影响通信延迟?  

    我没有看到19200和115200波特率 UARTTX 信号的波形;这样做之后、我将马上与您联系。

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

    您好、Tom、

    [报价 userid="542829" url="~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1440056/tm4c1294ncpdt-communication-error/5529888 #5529888"]并且我看不到19200和115200波特率 UARTTX 信号的波形;一旦我输入该波形、我将立即与您联系。

    我没有听到你的声音。 希望您自己解决了这个问题。 我现在将结束该主题。 如果您有任何更新、您可以写入此帖子、并且状态将更改为"打开"。