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.

[参考译文] MSP430FR2533:通过 UART 发送位进行测试

Guru**** 2380400 points
Other Parts Discussed in Thread: MSP430FR2533, MSP430FR2355, MSP430FR2433
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/1158482/msp430fr2533-send-a-bit-over-uart-for-testing

器件型号:MSP430FR2533
主题中讨论的其他器件: MSP430FR2355MSP430FR2433

大家好、首先、很抱歉这个问题的低层面。 我想使用示波器测试我的 MSP430FR2533是否能够通过 UART 发送位。 因此、我将引脚1.6和1.7 (位于https://www.ti.com/lit/ug/slau680/slau680.pdf?ts=1664383334483 第26页和 https://www.ti.com/lit/ds/slasec4d/slasec4d.pdf?ts=1664451907348 第76页)连接到示波器、并编写了以下代码:

#include
#include
#include "eusci_a_uart.h"
字符测试= 0x42;
volatile uint32_t i;

void main (void){
   //停止看门狗计时器
       WDT_A_HOLD (WDT_A_base);
       PMM_unlockLPM5 ();
   UCA0CTLW0 |= UCSWRST;
  // GPIO_setPeripheralModuleFunctionOutputPin (GPIO_PORT_P1、GPIO_PIN7、
    //  GPIO_secondary 模块功能);
      // GPIO_setPeripheralModuleFunctionInputPin (GPIO_PORT_P1、GPIO_PIN6、
       //GPIO_secondary 模块功能);
   EUSCI_A_UART_initParam eUSCI_initParam ={
       EUSCI_A_UART_CLOCKSOURCE_SMCLK、// selectClockSource
               6、//预分频 UCBRx
               8、// firstModReg UCBRFx
               17、//次级调制器 UCBRSx
               EUSCI_A_UART_NO_奇 偶校验、EUSCI_A_UART_MSB_FIRST、
               EUSCI_A_UART_One_stop_bit、EUSCI_A_UART_AUTOMODE_BAUDRAT_DETECTing_mode、
               EUSCI_A_UART_overSAMPLING_BAUDRATE_GEN};



   EUSCI_A_UART_init (EUSCI_A0_BASE、&eUSCI_initParam);
   EUSCI_A_UART_ENABLE (EUSCI_A0_BASE);
   EUSCI_A_UART_enableInterrupt (EUSCI_A0_BASE、
           EUSCI_A_UART_receive_interrupt);

   while (1)
   {
       EUSCI_A_UART_transmitData (EUSCI_A0_BASE、TEST);

       对于(i = 0;i<100000000;+i);
   }

但是、我无法使用示波器读取任何信号。 init()或 enable 函数是否存在任何错误?

我对这一愚蠢的问题再次表示遗憾,但在互联网上进行了长时间的搜索之后,我无法找到真正需要的东西。

谢谢、Julius

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

    Julius、您好!

    没有愚蠢的问题、欢迎您提问!

    有一点要澄清-根据您在问题中链接的文档、您使用的是 MSP430FR2355、而不是 MSP430FR2533。

    您对 P1.6和 P1.7的使用是正确的、但我建议为您的代码提供一些资源、因为缺少一些资源:

    • 查看 FR2355的此代码、该代码具有与您正在使用的代码类似的功能、允许您使用逻辑分析仪/示波器测试 UART。 如果您需要对代码进行深入解释、请参阅 UART MSP Academy (请记住、MSP Academy 代码示例是为 MSP430FR2433而不是 FR2355编写的、因此实际代码可能稍有不同)。
    • 此外、您使用的是 driverlib 的 API、而我提供的代码是寄存器级代码、因此您必须使用 driverlib 函数对其进行修改。 此 driverlib 用户指南 可能会有所帮助、或者 使用 driverlib的类似 UART 代码可能会有所帮助。

    希望这对您有所帮助、

    Amruta Deole