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.

[参考译文] MSPM0G3507:如何动态更改 UART 波特率

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1588265/mspm0g3507-how-to-dynamically-change-uart-baud-rate

器件型号: MSPM0G3507

您好的团队、

我的客户询问如何动态切换 UART 波特率? 例如、从 9600 更改为 115200bps。

谢谢你。

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

    可以使用除数寄存器 IBRD 或 FBRD(分别可在  TRM 的第 23.3.32/33 节中找到)动态更改波特率。

    为了更改波特率、应用程序必须等待当前传输完成并等待两行空闲、然后再将新除数写入 IBRD/FBRD 寄存器。 该写入将更改外设的波特率。  

    此更改之后必须写入 UART.LCRH 寄存器。 TRM 的第 23.2.3.4 节概述了波特率计算以及 IBRD、FBRD 和 LCRH 寄存器的使用。

    此致、

    Tyler

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

    尊敬的 Tyler:

    感谢您的信息。 如果这能解决客户的问题、我会让客户提供反馈。 谢谢你。