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.

[参考译文] MSP432P401 SPI 问题

Guru**** 2526700 points


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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1173381/msp432p401-spi-problems

您好!

我有一个问题、这也可能是一个问题。
我使用的是 EUSCI_B2 SPI、其中我编写的代码与用于在 EUSCI_B0 SPI 中执行 SDCard 接口的代码相同、但在最后一个代码中、 我所做的唯一事情是将寄存器从 EUSCI_B0更改为 EUSCI_B2。  我可能会做什么错、不应该以同样的方式工作?

    /* Select the MSP432 SPI lines: MOSI/MISO on P3.6,7 CLK on P3.5 */
    P3->SEL0 |= BIT6 | BIT7;
    P3->SEL1 &= ~(BIT6 | BIT7);

    P3->REN &= ~(BIT7);
    P3->OUT |= BIT7;

    P3->SEL0 |= BIT5;
    P3->SEL1 &= ~BIT5;


//    MSP432 code
    EUSCI_B2->CTLW0 |= EUSCI_B_CTLW0_SWRST;                                   // Put state machine in reset

    EUSCI_B2->CTLW0 =  EUSCI_B_CTLW0_SWRST   |
                       EUSCI_B_CTLW0_MODE_0  |
                       EUSCI_B_CTLW0_MST     |
                       EUSCI_B_CTLW0_SYNC    |
                       EUSCI_B_CTLW0_CKPH    |
                       EUSCI_B_CTLW0_MSB     ;

    EUSCI_B2->CTLW0 |= EUSCI_B_CTLW0_SSEL__SMCLK;

    EUSCI_B2->BRW = 0x08;                                                             /*INITIAL SPI CLOCK MUST BE <400 kHz*/

    EUSCI_B2->CTLW0  &= ~EUSCI_B_CTLW0_SWRST;

    /* Configure the SPI CS to be on P5.1 on MSP432*/
    P5->OUT  |= BIT1;
    P5->SEL0 &= ~BIT1;
    P5->SEL1 &= ~BIT1;
    P5->DIR  |= BIT1;

    /* 50 ms delay */
    //Delay(500);


    return 0;

非常感谢您的参与

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

    您好、Armando、

    我在该器 件方面的经验有限、因此我无法真正评论您是否准确反映了所有配置步骤、但如果您对 EUSCI_B0使用了相同的步骤、那么我看不到任何类似您仍然错误地配置了 B0引脚或寄存器的情况。

    您可能需要检查代码的其他区域、以确保  按照预期正确地从 EUSCI_B0更改为 EUSCI_B2。

    此致、

    Ralph Jacobi

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

    您好 Ralph、

    感谢您的回答我的问题、实际上为 eUSCI_B0实现的所有代码都与我在 eUSCI_B2中实现的代码相同、没有更多可检查的区域、所有内容都已审阅、代码相同、 两个 SPI 端口之间的唯一变化是用于更改 EUSCI_B2的所有标签 EUSCI_B0的正弦波以及引脚端口。