tianyaxtujxlg 发表于 2011-12-5 16:50:06

用MSP430F249的硬SPI来读写SST25VF040B,刚初始化各个模块,就是检测到SPI的状态寄存器U

用MSP430F249的硬SPI来读写SST25VF040B,刚初始化各个模块,就是检测到SPI的状态寄存器UCA0STAT的UCFE位置1了,表明总线冲突,哪位大侠帮帮忙,这是怎么回事,该如何解决,急急急!!!!!!!!!!

tianyaxtujxlg 发表于 2011-12-5 16:51:03

回复【楼主位】tianyaxtujxlg
-----------------------------------------------------------------------
初始化程序如下:
/******************************************************************************
**函数名称:void spiInit(void)
**函数功能:SPI初始化
**函数参数:无
**返回值:无
*******************************************************************************/
void spiInit(void)
{
   
   /*
    *P3.0--UCA0CLK
    *P3.3--UCA0STE
    *P3.4--UCA0SIMO
    *P3.5--UCA0SOMI
    */
   P3SEL |= UCA0SPI;
   
   /*
    *UCCKPH = 0;
    *UCCKPL = 0;         配置SPI模式
    *UCMSB= 1;         高位在前
    *UC7BIT = 0;         8-bit
    *UCMST= 1;         SPI master
    *UCMODE = UCMODE_1;4-pin
    *UCSYNC = 1;         同步时间
    */
   UCA0CTL0 |= UCMSB + UCMST + UCMODE_1 + UCSYNC;
   
   UCA0CTL1 |= UCSSEL_2;    // SMCLK
   
   UCA0BR0 = 0x10;          // 时钟分频设置
   UCA0BR1 = 0x00;          // 时钟分频设置
   
   UCA0CTL1 &= ~UCSWRST;    // Initialize USCI state machine
   
   DISABLE_TX_INTERRUPT;    //不使能发送中断
   DISABLE_RX_INTERRUPT;    //不使能接收中断
   
}
页: [1]
查看完整版本: 用MSP430F249的硬SPI来读写SST25VF040B,刚初始化各个模块,就是检测到SPI的状态寄存器U