TI中文支持网
TI专业的中文技术问题搜集分享网站

MSPG2452的USI中SPI发送波形异常

Hi All,

我使用MSP430G2452将USI配置为SPI进行单向通讯时,一旦发送数据第8位(bit 7)为1,即超过0x80时,SPI的MOSI端会出现下图红色框标注的波形,请问这样是正常的吗?

注:上图中发送的数据为0xA0

以下是我的配置文件。

USICTL0 |=USIPE6+USIPE5+USIMST+USIOE;

USICTL1 |=USICKPH+USIIE;

USICKCTL =USISSEL_2;

USICNT =8;

#pragma vector=USI_VECTOR
__interrupt void universal_serial_interface(void)
{
   P2OUT |=(0x01<<LCD_CE);

}

void LCD_write_byte( unsigned char dat, unsigned char command)

{

P2OUT & = ~(0x01<<LCD_CE);

    if(command ==0)

        P2OUT & = ~(0x01<<LCD_DC);

    else

        P2OUT | = ~(0x01<<LCD_DC);

USISRL=dat;

USICNT=8;

USICTL0 &=~USISWRST;

}

kqian0327:

你好,

理论上是不会有问题,因为只有在clk上升沿或者下降沿采用MOSI信号。

我怀疑你这个问题和你周边硬件电路有关。

你是不是在SPI上加了上拉电阻?

另外你的程序当中我没有看到你的SPI管脚的初始化。

Jimmy lee:

回复 kqian0327:

Hi Michael,

感谢提醒,原先的初始化是P1DIR |=0x31;我想我应该是搞错了,应该为P1DIR |=0x61才对。

SPI没有加上拉电阻的,我是直接把外围去掉后测得波形。

Jimmy lee:

回复 kqian0327:

Hi Michael,

我想知道我图中的波形是正常的吗?

今天尝试将P1DIR | =0x31修改为P1DIR | =0x61波形依然和一楼给波形一样。

另外我使用的板子是launchpad

赞(0)
未经允许不得转载:TI中文支持网 » MSPG2452的USI中SPI发送波形异常
分享到: 更多 (0)