你好。
我在设置 msp430fr4133 UART 波特率时遇到问题。
参考项目(msp430fr413x_eusci_uart_standard_transceiver)在9600、115200波特率下运行良好。
但是、在我设置的1200波特率设置下、它无法正常工作...
这似乎是错误设置或省略的,但我没有经验,所以很难设置。
有关设置值、请参阅以下指南文档。
![]()
BRCLK:32768
波特率:1200
UCOS16:1
UCBRx:1.
UCBRFx:11.
UCBRSx:0x25
在基本示例中、我只更改了 UART_init 函数部分、如下所示。
(我不确定如何将 BRCLK 设置为32768)
void initUART_1200()
{
// Configure USCI_A0 for UART mode
UCA0CTLW0 |= UCSWRST;
//UCA0CTLW0 |= UCSSEL__SMCLK;
UCA0CTLW0 |= 0x0010;
// Baud Rate Setting
// Use Table 21-5
UCA0BRW = 8;
UCA0MCTLW |= UCOS16 | UCBRF_11 | 0x2500;
UCA0CTLW0 &= ~UCSWRST;
UCA0IE |= UCRXIE;
}
下面是主要器件(参考)。 其他器件中是否也有任何需要更改的器件?
int main(void)
{
WDTCTL = WDTPW | WDTHOLD; // Stop Watchdog
initGPIO();
initClockTo16MHz();
//initUART();
initUART_1200();
#if UART_MODE == SMCLK_9600
__bis_SR_register(LPM0_bits + GIE); // Since ACLK is source, enter LPM0, interrupts enabled
#else
__bis_SR_register(LPM0_bits + GIE); // Since SMCLK is source, enter LPM0, interrupts enabled
#endif
__no_operation(); // For debugger
}
是否有任何将 UART 波特率设置为1200的示例代码? TI
谢谢