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.

[参考译文] MSP430FR2476:SPI-B0不工作

Guru**** 2539500 points
Other Parts Discussed in Thread: MSP430FR2476, MSP430FR2676, LP-MSP430FR2476

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/912594/msp430fr2476-spi-b0-does-not-work

器件型号:MSP430FR2476
主题中讨论的其他器件: MSP430WAREMSP430FR2676

大家好、

我使用的是 msp430fr2476。 我需要一个适用于 eUSCI-B0的3个有线 SPI 从器件的示例应用。 TI 提供了 A0示例、效果不错、但当我尝试将应用从 A0转换为 B0时、它无法从主器件获取数据。 我用于 B0的代码如下所示。 我很高兴你能提供帮助。

int main( void )

   WDTCTL = WDTPW|WDTHOLD;                   

   P1SEL0 |= BIT1 | BIT2 | BIT3;             
   //SYSCFG2|=USCIB0RMP;                       
   UCB0CTLW0 |= UCSWRST;                     
   UCB0CTLW0 |= UCSYNC|UCCKPL|UCMSB;         
                                             
   UCB0CTLW0 |= UCSSEL_SMCLK;                
   UCB0BR0 = 0x01;                           
   UCB0BR1 = 0;                              
   UCB0CTLW0 &=~UCSWRST;                    
   UCB0IE |= UCRXIE;



   PM5CTL0 &=~LOCKLPM5;                     
                                          


   _bis_SR_register (LPM0_bits | GIE);       


 返回0;



#if defined (__TI_Compiler_version__)|| Defined (__IAR_systems_ICC__)
#pragma vector = USCI_B0_vector;
_interrupt void USCI_B0_ISR (void)
#Elif defined (_GNU_)
void __attribute__((中断(USCI_B0_vector)) USCI_B0_ISR (void)
其他
错误编译器不受支持!
#endif

   while (!(UCB0IFG&UCTXIFG));               
   UCB0TXBUF = UCB0RXBUF;



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

    您好、Ege、

    您对 A0 SPI 使用了哪个代码示例?

    此致

    Peter

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

    您好、Peter、

    我在 TI 示例中使用了这种方法。 源代码名为"msp430fr267x_euscia0_spi_10.c"、下面是示例代码:

    /*-版权所有-、BSD_EX
     *版权所有(c) 2018、德州仪器(TI)公司
     *保留所有权利。
     *
     *以源代码和二进制形式重新分发和使用、有无
     *如果满足以下条件、则允许进行修改
     符合*:
     *
     ** 源代码的重新分发必须保留上述版权
     *   注意、此条件列表和以下免责声明。
     *
     * *二进制形式的再发行必须复制上述版权
     *   请注意、中的此条件列表和以下免责声明
     *   随分发提供的文档和/或其他材料。
     *
     * *德州仪器公司的名称和名称均不相同
     *   其贡献者可用于认可或推广衍生产品
     *   未经特定的事先书面许可。
     *
     *本软件由版权所有者和贡献者"按原样"提供
     *以及任何明示或暗示的保证、包括但不限于:
     *特定适销性和适用性的隐含保证
     *不承认目的。 在任何情况下、版权所有者不得或
     *派遣国应对任何直接、间接、偶然、特殊、
     *典型或必然的损害(包括但不限于
     *采购替代货物或服务;丧失使用、数据或利润;
     *或业务中断)、无论原因是什么以及任何责任理论、
     *无论是合同、严格责任还是侵权行为(包括疏忽或)
     *否则)因使用本软件而以任何方式产生、
     *即使被告知可能会发生此类损坏。
     *
     秘书长的报告
     *
     *                      MSP430代码示例免责声明
     *
     * MSP430代码示例是通常包含的低级程序
     *高度演示单个外设功能或器件功能
     *简明扼要。 为此、代码可能依赖于器件的加电默认值
     *寄存器值和设置、如时钟配置和注意
     *在组合多个示例中的代码时应采取这种方法、以避免潜在的问题
     *效果。 有关 GUI、另请参阅 www.ti.com/grace 和 www.ti.com/msp430ware
     *用于外设配置的 API 函数库方法。
     *
     *--/版权--*/
    //
    // MSP430FR267x 演示- eUSCI_A0、SPI 3线从器件数据回显
    //
    //  说明:SPI 从设备使用3线模式与 SPI 主设备进行通信。 收到的数据
    //  从主器件回传。
    //  ACLK = 32.768kHz、MCLK = SMCLK = DCO ~ 1MHz
    //  注意:确保在主器件之前为从器件加电、以防止由于而导致的延迟
    //  从初始化。
    //
    //               MSP430FR2676
    //                ------------
    //            /|\|                |
    //             ||                |
    //             -|RST             |
    //               |                |
    //               |            P5.2|<-数据输入(UCA0SIMO)
    //               |                |
    //               |            P5.1|->数据输出(UCA0SOMI)
    //               |                |
    //               |            P5.0|<-串行时钟输入(UCA0CLK)
    //
    //  方龙宇
    //  Texas Instruments Inc.
    //  2018年8月
    //  使用 IAR Embedded Workbench v7.12.1和 Code Composer Studio v8.1.0构建
    //
    #include

    int main (空)

       WDTCTL = WDTPW|WDTHOLD;                  //停止看门狗计时器

       P5SEL0 |= BIT0 | BIT1 | BIT2;            //将3-SPI 引脚设置为第二功能
       SYSCFG3|=USCIA0RMP;                      //设置重映射源
       UCA0CTLW0 |= UCSWRST;                    //**将状态机置于复位状态**
       UCA0CTLW0 |= UCSYNC|UCCKPL|UCMSB;        // 3引脚、8位 SPI 从器件
                                                 //时钟极性高,MSB
       UCA0CTLW0 |= UCSSEL_ACLK;               // SMCLK
       UCA0BR0 = 0x01;                          // BRCLK = SMCLK/1
       UCA0BR1 = 0;                             //
       UCA0MCTLW = 0;                           //无调制
       UCA0CTLW0 &=~UCSWRST;                   //**初始化 USCI 状态机**
       UCA0IE |= UCRXIE;                        //启用 USCI_A0 RX 中断

       PM5CTL0 &=~LOCKLPM5;                    //禁用 GPIO 上电默认高阻抗模式
                                                 //激活先前配置的端口设置

       _bis_SR_register (LPM0_bits | GIE);      //输入 LPM0、启用中断


    #if defined (__TI_Compiler_version__)|| Defined (__IAR_systems_ICC__)
    #pragma vector=USCI_A0_Vector
    _interrupt void USCI_A0_ISR (void)
    #Elif defined (_GNU_)
    void __attribute__((中断(USCI_A0_Vector)) USCI_A0_ISR (void)
    其他
    错误编译器不受支持!
    #endif

       while (!(UCA0IFG&UCTXIFG));              // USCI_A0 TX 缓冲器准备就绪?
       UCA0TXBUF = UCA0RXBUF;                   //回显接收到的数据

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

    您好、Ege、

    与代码示例相比、您在代码中使用的是 SMCLK 而不是 ACLK。 您是否尝试过相同的时钟源?

    此致

    Peter

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

    您好、Peter、
    我使用了 smclk 和 A0、运行良好、顺便说一下、我也尝试了 aclk 作为 b0、但它不起作用。

    我知道问题可能出在哪、 我对 msp430fr2476 (LP-msp430fr2476)使用了 launchpad 并检查了 SPI-B1。 B1引脚有两个选项、4.3 - 4.4 - 5.3或3.6 - 3.2 - 3.5引脚可用于 B1 SPI。 根据用户指南、对于 BX_eUSCI、SYSCFG2寄存器用于选择引脚组。

    当我使用引脚组3.2 - 3.5 - 3.6并将 USCIBORMP 设置为1时、工作正常。 当我使用默认引脚(B1 -> 4.3 - 4.4 - 5.3)时、会出现此问题。 由于这些引脚是 B1的默认引脚、因此不应设置 syscfg2。 它不起作用。 顺便说一下、B0也使用默认引脚。  

    总之、 当使用默认引脚(不需要映射)时、问题似乎会出现。 默认引脚是否需要不同的配置?

    注意:我还尝试设置 syscfg2以确保正常、但它不适用于 B1的默认引脚。

    //////////////////////////////// B1的编码(已重新装回引脚):////////////////////////////////////////////////

    int main (空)

       WDTCTL = WDTPW|WDTHOLD;                  //停止看门狗计时器

       P3SEL0 |= BIT2 | BIT4 | BIT6;            //将3-SPI 引脚设置为第二功能
       SYSCFG2|=USCIB1RMP;                      //设置重映射源
       UCB1CTLW0 |= UCSWRST;                    //**将状态机置于复位状态**
       UCB1CTLW0 |= UCSYNC|UCCKPL|UCMSB;        // 3引脚、8位 SPI 从器件
                                                 //时钟极性高,MSB
       UCB1CTLW0 |= UCSSEL_SMCLK;               // SMCLK
       UCB1BR0 = 0x01;                          // BRCLK = SMCLK/1
       UCB1BR1 = 0;                             //
       //UCB1MCTLW = 0;                           //无调制
       UCB1CTLW0 &=~UCSWRST;                   //**初始化 USCI 状态机**
       UCB1IE |= UCRXIE;                        //启用 USCI_B1 RX 中断

       PM5CTL0 &=~LOCKLPM5;                    //禁用 GPIO 上电默认高阻抗模式
                                                 //激活先前配置的端口设置

       _bis_SR_register (LPM0_bits | GIE);      //输入 LPM0、启用中断


    #if defined (__TI_Compiler_version__)|| Defined (__IAR_systems_ICC__)
    #pragma vector=USCI_B1_Vector
    _interrupt void USCI_B1_ISR (void)
    #Elif defined (_GNU_)
    void __attribute__((中断(USCI_B1_Vector)) USCI_B1_ISR (void)
    其他
    错误编译器不受支持!
    #endif

       while (!(UCB1IFG&UCTXIFG));              // USCI_B1 TX 缓冲区准备就绪?
       UCB1TXBUF = UCB1RXBUF;                   //回显接收到的数据

    //////////////////////////////// B1的默认引脚代码(失败)://////////////////////////////////////////////////////

    int main (空)

       WDTCTL = WDTPW|WDTHOLD;                  //停止看门狗计时器

       P4SEL0 |= BIT3 | BIT4;            //将3-SPI 引脚设置为第二功能
       P5SEL0 |= BIT3;
       //SYSCFG2|=USCIB1RMP;                      //设置重映射源
       UCB1CTLW0 |= UCSWRST;                    //**将状态机置于复位状态**
       UCB1CTLW0 |= UCSYNC|UCCKPL|UCMSB;        // 3引脚、8位 SPI 从器件
                                                 //时钟极性高,MSB
       UCB1CTLW0 |= UCSSEL_SMCLK;               // SMCLK
       UCB1BR0 = 0x01;                          // BRCLK = SMCLK/1
       UCB1BR1 = 0;                             //
       //UCB1MCTLW = 0;                           //无调制
       UCB1CTLW0 &=~UCSWRST;                   //**初始化 USCI 状态机**
       UCB1IE |= UCRXIE;                        //启用 USCI_B1 RX 中断

       PM5CTL0 &=~LOCKLPM5;                    //禁用 GPIO 上电默认高阻抗模式
                                                 //激活先前配置的端口设置

       _bis_SR_register (LPM0_bits | GIE);      //输入 LPM0、启用中断


    #if defined (__TI_Compiler_version__)|| Defined (__IAR_systems_ICC__)
    #pragma vector=USCI_B1_Vector
    _interrupt void USCI_B1_ISR (void)
    #Elif defined (_GNU_)
    void __attribute__((中断(USCI_B1_Vector)) USCI_B1_ISR (void)
    其他
    错误编译器不受支持!
    #endif

       while (!(UCB1IFG&UCTXIFG));              // USCI_B1 TX 缓冲区准备就绪?
       UCB1TXBUF = UCB1RXBUF;                   //回显接收到的数据

    此致

    Ege

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

    您好、Ege、

    非常感谢您提供的更多信息。 这很奇怪。 数据表中有两个相关点、用于查找所需的设置。 一个是引脚原理图表6-23。 端口 P1 (P1.0至 P1.7)引脚功能、另一个是

    表6-11. eUSCI 引脚配置(续)、如您所述、它指定您是否必须为相应的功能选择重新映射的 GPIO 组或默认 GPIO 组。

    在引脚电路原理图/表中、默认和映射的 B0 GPIO 之间唯一的区别是表中的 JTAG 列。 但是、没有为默认 B0引脚分配 JTAG 功能、您可以在没有活动调试连接的情况下尝试运行代码吗? 这意味着您必须断开连接并在下载代码后重启器件。 非常感谢。

    此致

    Peter

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

    尊敬的 Peter:

    很抱歉耽误你的回答。 正如您提到的、我已经尝试了。 我加载到程序、然后删除调试连接。 我使用3.3v 引脚为电路供电。 它不会改变情况。 它仍然适用于重新映射的引脚、不适用于默认值。 顺便说一句、再映射的引脚也可以在不重新映射的情况下工作。 我是说 B1工作引脚也可以在不设置 SYSCFG2寄存器的情况下工作。 在不检查 syscfg2的情况下、它适用于映射引脚。 它似乎卡在映射引脚上。 我是否错过了映射(syscfg2寄存器)? 我是否应该将其他一些寄存器设置为使用默认引脚?  下面显示了不带映射的代码、该代码应根据用户指南进行映射、并且可以正常工作。 这些就是我尝试的:

    1) 1) SYSCFG2 = 0

    2) SYSCFG2 = 0   SYSCFG3 = 0

    3) 3) SYSCFG2 = USCIB0RMP

    这三个引脚都适用于下面的 B1引脚、而默认引脚(b0)在任何情况下都无法正常工作:

    //具有非默认引脚的 B1的 wotking 代码

    int main (空)

       WDTCTL = WDTPW|WDTHOLD;                  //停止看门狗计时器

       P3SEL0 |= BIT2 | BIT4 | BIT6;            //将3-SPI 引脚设置为第二功能
       //SYSCFG2|=USCIB1RMP;
                                                 //设置重映射源
       UCB1CTLW0 |= UCSWRST;                    //**将状态机置于复位状态**
       UCB1CTLW0 |= UCSYNC|UCCKPL|UCMSB;        // 3引脚、8位 SPI 从器件
                                                 //时钟极性高,MSB
       UCB1CTLW0 |= UCSSEL_SMCLK;               // SMCLK
       UCB1BR0 = 0x01;                          // BRCLK = SMCLK/1
       UCB1BR1 = 0;                             //
       //UCB1MCTLW = 0;                           //无调制
       UCB1CTLW0 &=~UCSWRST;                   //**初始化 USCI 状态机**
       UCB1IE |= UCRXIE;                        //启用 USCI_B1 RX 中断
       P1OUT &=~BIT0;                        //清除 P1.0输出锁存器以实现定义的加电状态
       P1DIR |= BIT0;
       PM5CTL0 &=~LOCKLPM5;                    //禁用 GPIO 上电默认高阻抗模式
                                                 //激活先前配置的端口设置

       _bis_SR_register (LPM0_bits | GIE);      //输入 LPM0、启用中断


    #if defined (__TI_Compiler_version__)|| Defined (__IAR_systems_ICC__)
    #pragma vector=USCI_B1_Vector
    _interrupt void USCI_B1_ISR (void)
    #Elif defined (_GNU_)
    void __attribute__((中断(USCI_B1_Vector)) USCI_B1_ISR (void)
    其他
    错误编译器不受支持!
    #endif

       while (!(UCB1IFG&UCTXIFG));              // USCI_B1 TX 缓冲区准备就绪?
       UCB1TXBUF = UCB1RXBUF;                   //回显接收到的数据
       P1OUT ^= BIT0;

    *

    ///不起作用的 b0代码///

    int main (空)

       WDTCTL = WDTPW|WDTHOLD;                  //停止看门狗计时器

       P1SEL0 |= BIT1 | BIT2 | BIT3;            //将3-SPI 引脚设置为第二功能

       //SYSCFG2|=USCIB0RMP;                      //设置重映射源
       UCB0CTLW0 |= UCSWRST;                    //**将状态机置于复位状态**
       UCB0CTLW0 |= UCSYNC|UCCKPL|UCMSB;        // 3引脚、8位 SPI 从器件
                                                 //时钟极性高,MSB
       UCB0CTLW0 |= UCSSEL_SMCLK;               // SMCLK
       UCB0BR0 = 0x01;                          // BRCLK = SMCLK/1
       UCB0BR1 = 0;                             //
       //UCB0MCTLW = 0;                           //无调制
       UCB0CTLW0 &=~UCSWRST;                   //**初始化 USCI 状态机**
       UCB0IE |= UCRXIE;                        //启用 USCI_B0 RX 中断
       P1OUT &=~BIT0;                        //清除 P1.0输出锁存器以实现定义的加电状态
       P1DIR |= BIT0;
       PM5CTL0 &=~LOCKLPM5;                    //禁用 GPIO 上电默认高阻抗模式
                                                 //激活先前配置的端口设置

       _bis_SR_register (LPM0_bits | GIE);      //输入 LPM0、启用中断


    #if defined (__TI_Compiler_version__)|| Defined (__IAR_systems_ICC__)
    #pragma vector=USCI_B0_vector
    _interrupt void USCI_B0_ISR (void)
    #Elif defined (_GNU_)
    void __attribute__((中断(USCI_B0_vector)) USCI_B0_ISR (void)
    其他
    错误编译器不受支持!
    #endif

       while (!(UCB0IFG&UCTXIFG));              // USCI_B0 TX 缓冲区准备就绪?
       UCB0TXBUF = UCB0RXBUF;
       P1OUT ^= BIT0;                             //回显接收到的数据


    此致

    Ege

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

    USCIB1RMP 位于 SYSCFG3 [参考 UG (SLAU445I)表1-32]

    P4.3/P4.4/P5.3是 B1的重新映射引脚分配。 [参考 DS (SLASEO7B)表6-11、但您必须稍微平方]

    几个月前、我为数据表提交了一份文档错误报告、但我想还没有发生任何事情。

    https://e2e.ti.com/support/microcontrollers/msp430/f/166/p/896525/3315191

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

    我使用 B1、因为这两个组都可以访问。 我的主要问题是使用默认引脚的 SPI-B0、它还使用 SYSCFg3寄存器。

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

    谢谢您。我尝试过、它在 B1方面正常工作、但正如我提到过的、我需要将 SPI-b0与 p1.1 p1.2 p1.3引脚配合使用。

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

    这是 b0代码 SPI 3Wire 从代码、不起作用。


    int main (空)

       WDTCTL = WDTPW|WDTHOLD;                  //停止看门狗计时器

       P1SEL0 |= BIT1 | BIT2 | BIT3;
       SYSCFG2|=USCIB0RMP;
                                                 //设置重映射源
       UCB0CTLW0 |= UCSWRST;                    //**将状态机置于复位状态**
       UCB0CTLW0 |= UCSYNC|UCCKPL|UCMSB;        // 3引脚、8位 SPI 从器件
                                                 //时钟极性高,MSB
       UCB0CTLW0 |= UCSSEL_SMCLK;               // SMCLK
       UCB0BR0 = 0x01;                          // BRCLK = SMCLK/1
       UCB0BR1 = 0;                             //
       //UCB0MCTLW = 0;                           //无调制
       UCB0CTLW0 &=~UCSWRST;                   //**初始化 USCI 状态机**
       UCB0IE |= UCRXIE;                        //启用 USCI_B0 RX 中断
       P1OUT &=~BIT0;                        //清除 P1.0输出锁存器以实现定义的加电状态
       P1DIR |= BIT0;
       PM5CTL0 &=~LOCKLPM5;                    //禁用 GPIO 上电默认高阻抗模式
                                                 //激活先前配置的端口设置

       _bis_SR_register (LPM0_bits | GIE);      //输入 LPM0、启用中断


    #if defined (__TI_Compiler_version__)|| Defined (__IAR_systems_ICC__)
    #pragma vector=USCI_B0_vector
    _interrupt void USCI_B0_ISR (void)
    #Elif defined (_GNU_)
    void __attribute__((中断(USCI_B0_vector)) USCI_B0_ISR (void)
    其他
    错误编译器不受支持!
    #endif

       while (!(UCB0IFG&UCTXIFG));              // USCI_B0 TX 缓冲区准备就绪?
       UCB0TXBUF = UCB0RXBUF;                   //回显接收到的数据
       P1OUT ^= BIT0;

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

    您是否知道为什么 b0代码不起作用?  如果您能提供帮助、我很高兴。

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

    您好、Ege、

    我正在与我们的设计人员核实正确的寄存器设置、并确保除了错误的文档记录之外没有其他与之相关的问题。 请给我一些时间。

    此致

    Peter

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

    谢谢 Peter、我将等待回复。 很清楚、我想再次提到、对于 SPI-B0、我需要正确的寄存器设置。

    此致

    Ege

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

    >P1SEL0  |= BIT1 | BIT2 | BIT3;
    >SYSCFG2|=USCIB0RMP  ;

    P1引脚是未重新映射的设置。 [参考表6-11]、因此您不应该在这里设置 SYSCFG2。

    我在这里没有材料、但我很确定我在4月份尝试了 P1/B0组合。

    [编辑:完全披露:我认为我以前使用过 I2C、因此我想可能会有差异。]

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

    我累了两个,都有和没有 syscfg2。 不管用。

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

    当我移除重映射行时、这在我的 Launchpad 上运行良好。  

    由于我没有主设备、所以我设置了 UCMST 并在 P1.2和 P1.3 (环回)之间放置了一根接线。 我还通过向 UCB0TXBUF 写入一个字节(0x5A)来执行一个"跳变"。

    下面是 P1.2-3 (顶部)和 P1.1 (底部)的布线。

    您能描述一下您的测试案例吗?

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

    您好、Bruce、

    在我的测试用例中、另一个器件充当主器件并将数据发送到从器件。它与 B1和 a0一起工作。 您能否将代码发送给我进行环回测试?  

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

    此外,您的调试电缆是否在测试时插入,或者是否在没有调试电缆的情况下为设备供电?

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

    您好、Bruce、

    正如您提到的(回送)、我已经尝试过、但当我使用其他器件作为主器件时、它仍然起作用。 相同的主器件、使用相同的时钟、它可以与 B1和 a0配合使用、但不能与 b0配合使用。 我还会检查控制寄存器、一切看起来都正常。
    我使用了另一个器件作为主器件、使用 LP-msp430fr2476作为从器件。 当我尝试使用 a0连接时、它工作正常、示波器中的一切看起来都正常。 但是、当我使用相同的主器件并将连接更改为 b0时、时钟信号似乎失真。 我无法获得响应。 我无法理解为什么,我最初以为 b0配置错误,但如果错误,它不应该在回送中工作,对吧?  

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

    为了确保我没有在回送时出现问题,您是否可以向我提供您的代码?

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

    大家好、Proplem 已经解决了。 我的朋友看到、在 LP-msp430fr2476中、温度传感器也使用了 p1.1、它会使时钟失真。 移除 R13电阻器可以解决问题、感谢大家的帮助。

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

    您好、Ege、

    非常感谢您提供的信息。 根据您的反馈、我将关闭该主题。

    此致

    Peter