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

MSP430G2XX2 调试USI问题

您好,

我用的是MSP430G2412,现在调试USI的SPI模式, USICNT |= USI16B+USICNT4;   用JTAG在线调试的时候发现USICNT4写不进去,那一位仍然是0。USI16B决定用16位的寄存器,就是USISRH和USISRL都使用。USICNT4就是想传送16位的数据。能解释下为什么吗?

非常感谢。

我补充一下 现在的问题是USICNTx数值写不进去,从而USICENTx一直都是0,中断置1,然后程序就死在中断里面了。USICNT |= USI16B+USICNT4;是写数值那句。

fanfan:

看官方给的例程   USICNT = 8;  调试的时候发现,USICNT寄存器没有任何变化。。

Hardy Hu:

回复 fanfan:

你好!

例程你能够跑通吗?

把你写的USI配置部分代码发上来看看哪呢

fanfan:

回复 Hardy Hu:

void SPI_init(void){ P1DIR |= 0X60; //P1.5,P1.6 OUTPUT // P1DIR &= ~BIT7; //P1.7 INPUT P1SEL |= BIT6+BIT5; //P1.5 SCLK;P1.6 SDO; USICTL0 |= USIPE6+USIPE5+USIMST+USIOE; //SDO,SCLK,Master,data output USICTL1 |= USIIE; //Enable interrupt USICKCTL |= USIDIV_2+USISSEL_1; //ACLK,4分频 USICTL0 &= ~USISWRST; // USI released for operation USICNT |= USI16B+USICNT4; //16 bit data USISR = 0Xffff;_EINT();}

谢谢

fanfan:

回复 Hardy Hu:

可能是JTAG和USI冲突了,JTAG仿真的时候看不出来 但是用示波器看的话还是正常的。

赞(0)
未经允许不得转载:TI中文支持网 » MSP430G2XX2 调试USI问题
分享到: 更多 (0)