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.

[参考译文] AM2434:用于 UART 硬件流控制的 API 使用

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1496647/am2434-api-usage-for-uart-hw-flow-control

器件型号:AM2434
主题:SysConfig 中讨论的其他器件

工具/软件:

您好、

 

客户正在评估 MCU+ SDK 10.01.00中的 UART 驱动程序示例"UART 回波低延时中断"或"UART 回波低延时轮询"。

 

它们希望将 UART 配置为半双工、并通过启用 AUTO_RTS_EN 和禁用 AUTO_CTS_EN 来实现硬件流控制。

 

您能否分享上述设置的任何示例代码?

您能告诉他们如何为上述配置吗?

 

他们找到了一些 API 和参数、如 UART_OPEN ()、UART_FCTYPE_HW、UART_FCPARAM_AUTO_RTS、UART_FCPARAM_AUTO_CTS 等…

但他们不知道如何使用这些 API 和参数。

 

谢谢。此致、

英明

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    allan poon 说:
    他们要将 UART 配置为半双工、并通过启用 AUTO_RTS_EN 和禁用 AUTO_CTS_EN 来实现硬件流控制。

    感谢您提到该要求。

    请看下面突出显示的部分。

    此致、

    Vaibhav

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

    尊敬的 Vaibhav:

    感谢您的答复。 下面重点介绍的 UART CTSN 引脚或 UART RTSn 引脚似乎是 PinMux 配置。

    如果未选中上述 UART CTSn 引脚、则会清除下面 UART_EFR 寄存器上的 AUTO_CTS_EN 位?

      

    谢谢。此致、

    英明

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

    感谢您的跟进回复。

    我将通过运行 UART 应用程序在设置中检查它。

    此致、

    Vaibhav

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

    谢谢、Vaibhav。

    如果您能确认、请告诉我。 如果我们能尽快收到它、将不胜感激。

    谢谢。此致、

    英明

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

    您好、

    我通过修改 SysConfig 中的 HW 流控制检查选项并检查/取消检查 CTS 线路来运行了一些实验。

    我在任何一种情况下都没有看到自动 CTS 使能位被禁用(从1到0)。

    我仍在尝试总结逻辑在实际使用并对通信有效时的情况。

    我将尽我所能、并在我有进一步的更新后通知您。

    此致、

    Vaibhav

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

    Vaibhav、

    感谢您的答复。

    [引述 userid="531612" url="~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1496647/am2434-api-usage-for-uart-hw-flow-control/5757336 #5757336"]

    我通过修改 SysConfig 中的 HW 流控制检查选项并检查/取消检查 CTS 线路来运行了一些实验。

    我在任何一种情况下都没有看到自动 CTS 使能位被禁用(从1到0)。

    [/报价]

    如果是,你的第一个答案是不正确的,他们的问题在下面?

    [引述 userid="10509" url="~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1496647/am2434-api-usage-for-uart-hw-flow-control

    它们希望将 UART 配置为半双工、并通过启用 AUTO_RTS_EN 和禁用 AUTO_CTS_EN 来实现硬件流控制。

     

    您能否分享上述设置的任何示例代码?

    您能告诉他们如何为上述配置吗?

    [/报价]

    再次、您能否告诉客户如何禁用 AUTO_CTS_EN。

    谢谢。此致、

    英明

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

    尊敬的 Vaibhav:

    客户想知道如何使用 API 来禁用 AUTO_CTS_EN。
    请分享示例代码吗?

    实际上、他们根据您的建议尝试取消选中 UART CTSN 引脚(UART0_CTSn)、但即使未连接 CTS、也无法发送数据。 CTS 似乎已启用。
    另一方面、他们尝试检查 UART CTSN 引脚(UART0_CTSn)、然后可以发送数据。
    它在 SysConfig 上看起来是一个错误。
    因此、他们想知道如何使用 API 来禁用 AUTO_CTS_EN。

    谢谢。此致、
    英明

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    因此、他们想知道如何使用 API 禁用 AUTO_CTS_EN。

    我目前在 MCU PLUS SDK 中没有看到任何此类 API、请允许我稍后对此进行详细检查。

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

    Hi Hideaki、

    在最新的 SDK 中、我看到有一项硬件流控制检查。

    您能否要求客户参考文件 UART_V0_LLD.c

    在该文件中、有一个借助以下 API 进行的调用:  

    UART_hardwareFlowCtrlOptSet
    这具有的参数  
    UART_RTS_CTS_ENABLE、基本上说 RTS 与 CTS 均已启用。
    宏  
    UART_RTS_CTS_ENABLE 的值为3、为11b、因此 CTS 和 RTS 均启用。
    我们只希望启用 RTS、因此我们只需传递参数、即:
    UART_RTS_ENABLE
    因此、呼叫不是以以下形式进行:  
     UART_hardwareFlowCtrlOptSet (baseAddrUART_RTS_CTS_ENABLE);
    呼吁应该是:
     UART_hardwareFlowCtrlOptSet (baseAddrUART_RTS_ENABLE);
    您能否向客户提出此建议、并告知我它是否适合他们?
    期待您的答复。
    此致、
    Vaibhav