"我正在处理 msp430f5438a、对 UART 的输入时钟有疑问。
根据数据表、我们可以使用最大频率限制为 fsytem 的 ACLK、SMCLK 或外部 UCLK。 那么、如果我使用24MHz 晶体、这是否意味着 UART 时钟将限制为24MHz?
还是可以使用 DCO 块更快地运行 UART?"
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.
"我正在处理 msp430f5438a、对 UART 的输入时钟有疑问。
根据数据表、我们可以使用最大频率限制为 fsytem 的 ACLK、SMCLK 或外部 UCLK。 那么、如果我使用24MHz 晶体、这是否意味着 UART 时钟将限制为24MHz?
还是可以使用 DCO 块更快地运行 UART?"
Ashish、您好!
在低频波特率生成模式中、最大 USCI 波特率是 UART 源时钟频率 BRCLK 的1/3。 因此、对于24MHz BRCLK、无差错传输的最大波特率为8Mbps。 《用户指南》第36.3.9节提供了有关此方面的更多详细信息:
https://www.ti.com/lit/ug/slau208q/slau208q.pdf
此相关 E2E 主题也解决了相同的问题:
https://e2e.ti.com/support/microcontrollers/msp430/f/166/t/876904
此致、
Angelo
您好、Angelo、
感谢您的回答。
这是否意味着我可以为 UART 提供大于24MHz 的 BRCLK。
除此之外、我还有关于 UART 接口的另一个问题。 我正在尝试将串行通信端口与 UART 连接、以监控控制器生成的数据。 我在串行 COM 端口和 UART Rx/Tx 引脚之间放置了 USB 转串行 TTL 转换器。
该转换 器由3V3从控制器电源供电、具有公共接地和连接到转换器 Tx 的 UART Rx 以及连接到转换器 Rx 的 UART Tx。 但我仍然没有在两者之间进行数据通信。
我使用的是控制器的 UCA1RXD 和 UCA1TXD 引脚(引脚编号54和53)、设置如下。
P5SEL = 0xC0;
P5OUT = 0x00;
P5DIR = 0x00;
P5REN = 0x00;
P5DS = 0x00;
UCA1CTL0 = 0x80
UCA1CTL1 = 0x40
UCA1BR0 = 0xD0
UCA1BR1 = 0x00
UCA1MCTL = 0x04
我有什么问题了。
谢谢、
Ashish
Ashish、您好!
BRCLK 的时钟源频率最高可达25MHz。 在这种情况下、无差错传输的最大波特率为25/3=8.333Mbps。
您能否共享代码以及显示 TX 和 RX 线路的逻辑分析仪捕捉? 是否有任何活动、或者 TX 和 RX 线路是否空闲?
我建议从我们的 UART 代码示例之一开始。 这些示例应该可以正常工作、而无需任何修改。 您可以将此代码用作基础、并根据应用需求逐步添加更多功能。 以下是两个可能对您有所帮助的示例项目:
http://dev.ti.com/tirex/explore/node?node=ALi8amsVkaZhscO2jEZF.A__IOGqZri__LATEST
http://dev.ti.com/tirex/explore/node?node=AIhFrsGLuwnT806LlqmweQ__IOGqZri__LATEST
此致、
Angelo