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.
您好、由于某种原因、我无法将 UART0波特率设置为19200。 以下是我使用的设置:
WDTCTL = WDTPW + WDTHOLD;//停止 WDT
P3SEL |= BIT3+BIT4; // P3.3、4 = USCI_A0 TXD/RXD
UCA0CTL1 |= UCSWRST; //**将状态机置于重置中**
UCA0CTL1 |= UCSSEL_2; // SMCLK
UCA0BR0 = 54; // 1MHz 19200 (请参阅用户指南)
UCA0BR1=0; // 1MHz 19200
UCA0MCTL = 0xAD; //调制 UCBRSx=1、UCBRFx=0
UCA0CTL1 &=~UCSWRST; //**初始化 USCI 状态机**
UCA0IE |= UCRXIE; //启用 USCI_A0 RX 中断
_bis_SR_register (LPM0_bits + GIE);//输入 LPM0、中断被启用
__no_operation();
不知道我做了什么错?
我想知道 MCTL 值来自哪里。 用户指南(SLAU208Q)表36-4调用 MCTL=0x0A (BRF=0、BRS=5、UCOS16=0)、不是0xAD (BRF=10、BRS=6、 UCOS16=1)。 [参考 UG 表36-11]
我希望 UCOS16=1是这里的大问题。