Other Parts Discussed in Thread: MSP430FR5043, MSP430FR6043
器件型号: MSP430FR5043
主题中讨论的其他器件: MSP430FR6043
现象说明:
当波特率从 9600bps 更改为其他值时、通信停止工作。
详细信息:
目前、微控制器使用 ACLK (32.768kHz) 并以 9600bps 的速度与 PC 通信、不会出现问题。 但是、进行以下更改后、通信失败:
-更改 1:将时钟源从 ACLK 切换到 SMCLK
-更改 2:将波特率从 9600 bps 更改为 38400 bps 或 115200 bps
以下是不同组合的结果:
|图形 |时钟 |波特率|结果|
|----- |----- |----- |----- |
| 1. | ACLK | 9600 |好的 |
| 2. | ACLK | 38400 |不可能|
| 3. | SMCLK | 9600 | OK |
| 4. SMCLK | 38400 | x |
| 5. | SMCLK | 115200 | x |
注意:
ACLK = 32.768kHz、SMCLK = 8MHz
OK =通信正常、x =通信失败
使用的寄存器设置:
示例 1:9600bps 下的 ACLK
UCA1CTLW0 |= 0x0040;
UCA1BRW = 3;
UCA1MCTLW = 0x9200;
示例 2:SMCLK 速率为 38400bps
UCA1CTLW0 || UCSSEL_SMCLK;
UCA1BRW = 13;
UCA1MCTLW = 0x8401;
问题:
1、上述更改设置的步骤是否正确?
2.如果它们是正确的,您能提供通信失败的可能原因吗?
3.如果不正确,配置这些设置的正确方法是什么?