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.

[参考译文] MSP430G2553:有关 SPI 四引脚模式配置的问题

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/1309158/msp430g2553-questions-on-spi-four-pin-mode-configuration

器件型号:MSP430G2553

尊敬的 TI 专家:

 我在为 MSP430G2553 Launchpad 配置四引脚模式时遇到问题。 我能够通过 UCA0 3引脚 SPI 通道发送和接收数据、但我现在需要使用包含 UCA0STE 的4引脚 SPI 通道。 当用 UCMODE1=1、UCMODE0 =0 (UCA0STE 低电平有效)初始 化配置时、无法完成传输、我发现在初始化后 UCFE (帧错误标志)被设置。 我理解 UCFE 表示总线冲突、但即使我完全没有连接总线、它也被设置为位1。 我的代码如下:(加上,当 UCMODE1=0 ,UCMODE0=1时,UCFE 和位0保持正常。)

 void InitSpiBusA0 (void)
{
   //引脚功能选择
   P1SEL |= BIT1 | BIT2 |BIT4;
   P1SEL2 |= BIT1 | BIT2 |BIT4;

   UCA0CTL1 |= UCSWRST | UCSSEL_2;
   /*uC 复位,SMCLK*/

   UCA0CTL0 = UCCKPL|UCMSB|UCMST|UCMODE1|UCSYNC;
   /*SPI 模式、MSB 优先、主模式、 UCxSTE 被启用并且低电平有效 */

    /*SPI 比特率*/
   UCA0BR0= 1;
   UCA0BR1=0;
   /*SPI 禁用复位*/
   UCA0CTL1 &=~μ H UCSWRST;

空 SpiBusMasterWrite (uint8_t data)
{
   /*将数据输入缓冲区*/
   UCA0TXBUF =数据;
   while (!(IFG2和 UCA0TXIFG));

int main (空)
{
   WDTCTL = WDTPW | WDTHOLD;   
   InitSystemClock(); // 1MHz
   InitSpiBusA0();//之后 UCFE 出现
   SpiBusMasterWrite (0xAA);
   MASTER_RECEIVE_DATA = SpiBusMasterRead ();

   while (1)
   {

       __delay_cycles (1000000);
   }
   返回0;

希望有人能指出。 还有其他需要我处理的事情吗?  谢谢。

此致、

远辰市

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

    驱动 STE 输入的是什么?

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

    您好、David、

     感谢您的指出。 我曾想 STE 可能会误用作输出引脚、而此时它会用作片选引脚#CS。 现在我知道 STE 是 SPI 主器件的输入引脚、它似乎由从器件驱动、如下图所示。 然而,我不是很确定我的代码中初始化"InitSpiBusA0()"进程时如何驱动 STE。


    而现在的事实是 P1.5 UCA0STE 甚至没有外部电路连接,只要 UCMODE1=1,UCMODE0 =0,UCFE 误差仍然可以看到。 此外、我尝试了3.3V 上拉或 GND 下拉 STE 引脚、但仍然无法找到。 希望您能为我指出更多信息。 非常感谢您的帮助。

    此致、

    远辰市

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

    您好,远辰

    请检查 https://www.ti.com/tool/download/SLAC485上的示例代码 msp430g2xx3_USCI_i2c_standard_master.c 是否 在从器件芯片选择功能上有良好的参考

    谢谢

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

    大家好、Xiaodong

     非常感谢您提供的信息。 我刚刚检查了 msp430g2xx3_USCI_SPI_standard_master.c 中的示例、在示例代码中、SPI 在3引脚 SPI 模式下使用。 3引脚 SPI 模式没有问题。 现在、出于好奇心、我想弄清楚4引脚 SPI 模式下的 STE 问题。实际上、在什么情况下、我们更喜欢将4引脚模式用作主器件?

    此致、

    远辰市

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

    您好,远辰

    请 在 FR2355 https://www.ti.com/tool/download/SLAC740 和 FR5994 https://www.ti.com/tool/download/SLAC710上找到 SPI 4引脚模式代码示例

    UART SPI 外设 并不相同、但非常 相似。

    谢谢!