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:AM2434 EVM UART's 波特率变化

Guru**** 2553260 points
Other Parts Discussed in Thread: AM2434

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1566347/am2434-am2434-evm-uart-s-baud-rate-change

器件型号:AM2434


工具/软件:

您好、

我正在使用 AM2434 EVM 板上的 UART + DMA。
在 UART 模块初始化后(虽然它已经正常工作)是否有办法配置波特率。

我特意猜测、我需要将 UART 取消初始化、修改配置(波特率配置)、然后再次对其进行初始化。
有没有其他更简单的方法来做到这一点?

提前感谢您。

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

    您好 Hatem、

    目前在 MCU+ SDK 中、时钟频率按以下方式分配。

    System_init --> PowerClock_init --> Module_clockSetFrequency --> SOC_moduleSetClockFrequency

    如果您想更改 UART 的时钟频率、建议的流程如上所述。

    现在、波特率具有以下公式:

    首先计算除数值、然后按以下方式设置波特率:

    请参阅调用栈以获得流的清晰图像。

    我推荐的目标是上面所示的调用栈。

    谢谢、

    Vaibhav

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

    谢谢 Vaibhav、但我已经知道 UART 的初始化序列。
    我需要在 UART 已经工作时更改波特率。

    我是否可以使用任何其他方法来做到这一点、而不会取消对 UART 的初始化并再次对其进行初始化?

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

    您好 Hatem、

    取消 UART 初始化并再次初始化它?

    此方法是推荐使用的方法、因为它负责在 UART Init/Deinit 时设置其他相关位。

    其他过时的实现可能会导致较大/具有多个线程的工程出现问题。

    希望这有所帮助。

    谢谢、

    Vaibhav

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

    好的、谢谢您、Vaibhav!
    这真的很有帮助。

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

    欢迎 Hatem。 标记螺纹已关闭。 谢谢。