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.

[参考译文] MSP432P4111:msp432p4111

Guru**** 2538950 points


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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/941956/msp432p4111-msp432p4111

器件型号:MSP432P4111

您好!

请找到原理图

在原理图中、我们将 UCB3SOMI 和 UCB3SIMO 用于"SPI"和"I2C"  

"SPI"正在初始化代码:

void SPI2_Init (void)

P10->SEL0 |= BIT1 | BIT2 | BIT3;//设置 P10.1 - SCK、P10.2 - SDO、P10.3 - SDI

EUSCI_B3->CTLW0 |= EUSCI_B_CTLW0_SWRST;//将 eUSCI 状态机置位
EUSCI_B3->CTLW0 |= EUSCI_B_CTLW0_MST;
EUSCI_B3->CTLW0 |= EUSCI_B_CTLW0_SYNC;
EUSCI_B3->CTLW0 |= EUSCI_B_CTLW0_MSB;
EUSCI_B3->CTLW0 |= EUSCI_B_CTLW0_CKPL
EUSCI_B3->CTLW0 |= EUSCI_B_CTLW0_ssel_ACLK;
EUSCI_B3->BRW = 0x01;///2、fBitClock = fBRCLK/(UCBRx+1)。
EUSCI_B3->CTLW0 &=~EUSCI_B_CTLW0_SWRST;//初始化 USCI 状态机
EUSCI_B3->IE |= EUSCI_B_IE_TXIE;//启用 TX 中断

__ENABLE_IRQ();//启用全局中断

I2C 初始化代码:

void I2C_init (void)

MAP_I2C_initMaster (EUSCI_B3_base、&i2cConfig);

EUSCI_B_I2C_setSlaveAddress (EUSCI_B3_base、
0x55);

MAP_I2C_DisableModule (EUSCI_B3_base);

MAP_I2C_enableModule (EUSCI_B3_base);

在这里、当发生 I2C 初始化时、SPI 和 I2C 协议停止工作、而当它们位于单独的项目中时、它们可以正常工作、

在 SPI 协议中、当时钟极性设置为零时、I2C 正常工作、但 SPI 停止传输

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

    您好、Sasi、

    这听起来就像是外设没有经历完全复位(类似于 POR 时会发生的情况)。

    如果您先初始化 I2C、然后初始化 SPI、会发生什么情况?

    如果您初始化 SPI 传输某些数据、然后重新初始化 SPI 并进行传输、会发生什么情况?

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

    尊敬的 Dennis:

    当 I2C 首先被初始化时、两个函数都不工作

    SPI 在模式1 (相位0和极性1)、模式2 (相位1和极性0)下工作、在模式0和 MODE3下不工作  

    在模式1下工作时;

    初始化的 SPI 在 I2C 初始化后传输数据两个函数都失败、然后重新初始化 SPI 不传输数据。

    在模式2下工作时;

    初始化的 SPI 传输数据、I2C 在 SPI 发生故障后也传输数据、然后重新初始化 SPI 不传输数据。

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

    您好、Sasi、

    我联系了产品工程师、看看他是否知道这种情况的发生原因。

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

    尊敬的 Dennis:

    我尝试 使用 UCSWRST 重置 SPI、 使用 UCSWRST 重置 I2C、即使这样也无法重新初始化 SPI  

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

    您好、Sasi、

    遗憾的是、根据我们的设计团队、在选择外设的工作模式之前、EUSCI 模块需要一个 POR (下电上电)来完全复位外设、只需设置 USCWRST 是不够的。  没有解决方法。

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

    尊敬的 Dennis:

    MSP432P4111是否有任何替代微控制器可同时支持可并行运行的同一组 I2C 和 SPI  

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

    您好、Sasi、

    不幸的是、不是  不在 MSP 系列中。

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

    您好、Sasi、

    我将假定您能够解决您的问题、因此我将继续并关闭此主题。
    如果情况并非如此,请单击“这无法解决我的问题”按钮,并使用更多信息回复此主题。
    如果此主题锁定、请单击"提出相关问题"按钮、然后在新主题中描述您的问题的当前状态以及您可能需要帮助我们帮助解决您的问题的任何其他详细信息。