ADS1254工作正常了,DRDY波形都有了。
可是每次下降沿中断来后,然后延时一段时间,先发送一个数据(产生SCK),我设定M4是主机,然后读取数据,
可视我用示波器看波形,发送数据和接收数据的时候根被没有SCK的波形,是怎么回事?

void InitSPI3(void)
{
//初始化SSI3
SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOD); //GPIO port B needs to be enabled so these pins can be used. SysCtlPeripheralEnable(SYSCTL_PERIPH_SSI3); // The SSI3 peripheral must be enabled for use.
SysCtlPeripheralEnable(GPIO_PORTD_BASE);
GPIOPinConfigure(GPIO_PD0_SSI3CLK);
GPIOPinConfigure(GPIO_PD2_SSI3RX);
GPIOPinConfigure(GPIO_PD3_SSI3TX);
GPIOPinTypeSSI(GPIO_PORTD_BASE, GPIO_PIN_0|GPIO_PIN_1|GPIO_PIN_2|GPIO_PIN_3);
SSIConfigSetExpClk(SSI3_BASE, SysCtlClockGet(), SSI_FRF_MOTO_MODE_0, SSI_MODE_MASTER, 100000, 8); //接收
SSIEnable(SSI3_BASE);
}
这个是先发送再接收
SSIDataPutNonBlocking(SSI3_BASE, ulDataTx[0]);
SSIDataPutNonBlocking(SSI3_BASE, ulDataTx[0]);
SSIDataPutNonBlocking(SSI3_BASE, ulDataTx[0]); OSTimeDly(OS_TICKS_PER_SEC/10); SSIDataGetNonBlocking(SSI3_BASE, &ulDataRx[0]);
SSIDataGetNonBlocking(SSI3_BASE, &ulDataRx[1]);
SSIDataGetNonBlocking(SSI3_BASE, &ulDataRx[2]);
jason wang3:
研究了一下波形,发现是单片机用SSI3发送数据的时候 CLK的波形没有出来,初始化SSI3错了么?
我用的SSI2显示液晶,用和SSI3同样的初始化,就有波形。
这是为什么?
Lina Lian:
jason wang3,
建议你把这个帖子发在“Tiva™ ARM® Cortex™-M 微控制器”版块,可以得到更快的回复和帮助!这个是MSP430的版块。
BR,
Lina
TI中文支持网



