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.

[参考译文] MSP430FR2633:如何将波特率设置为9600

Guru**** 2526290 points
Other Parts Discussed in Thread: MSP430FR2633

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/729476/msp430fr2633-how-to-set-baudrate-to-9600

器件型号:MSP430FR2633

尊敬的先生/女士:

我已经从 slac700c.zip 中修改了以下内容- msp430fr243x_euscia0_UART_01.c 我希望将 MSp430FR2633配置为以9600波特率运行。 我已经按照用户指南 eUSCI_A 操作–UART 模式(第589页)操作。 默认115200能够使 UART 正常工作、但当我设置为波特率9600时、无法使 UART 在超级终端上工作。  

void UART_init (void)

   //配置 UART 引脚
   P1SEL0 |= BIT4 | BIT5;                   //将2个 UART 引脚设置为第二功能

   //配置 UART
   UCA0CTLW0 |= UCSWRST;                    //将 eUSCI 置于复位状态
   UCA0CTLW0 |= UCSSEL_SMCLK;
   //波特率计算
   //波特率= 115200
   //  UCA0BR0 = 8;                             // 1000000/115200 = 8.68
   // UCA0MCTLW = 0xD600;                      // 1000000/115200 - INT (1000000/115200)=0.68
                                             // UCBRSx 值= 0xD6 (请参阅 UG)
   //波特率=9600
   UCA0BR0 = 6;                             // 1000000/9600 = 104
   UCA0MCTLW = 0x2000 | UCOS16 | UCBRF_8;                      // 1000000/9600 - INT (1000000/9600)=0.1666667 =1

   UCA0BR1=0;
   UCA0CTLW0 &=~UCSWRST;                   //初始化 eUSCI
   UCA0IE |= UCRXIE;                        //启用 USCI_A0 RX 中断

//结束 UART_init

有关 MSP430FR2633如何将波特率设置为9600的任何帮助或示例都将很有帮助。

此致、

公里/小时

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    software-dl.ti.com/.../index.html
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!

    Keith 发布的链接是计算所需预分频器、调制和过采样设置的良好参考。 请尝试这些、如果有此帮助、请返回。

    如果这不起作用、使用逻辑分析仪或示波器检查 RX 和 TX 上的位时序可能会有所帮助。

    此致、
    Walter