没有使用中断方式接收,发送完后延时接收的,效率比较低,但不延时又收不到数据,不知道有没有好一点的办法,或有什么标志位可以判断的,拜托知道的指点一下,谢谢!
BOOL CMySPI::SndRcvByteSyn(BYTE* pSndData,BYTE* pRcvData,WORD wCountByte)
{
BYTE ui8Data = 0;
for(short i=0;i<wCountByte;i++)
{
if(pSndData)
{
ui8Data = pSndData[i];
}
else
{
ui8Data = 0xff;
}
UCA2TXBUF = ui8Data;
DelayOnce(4);
ui8Data = UCA2RXBUF;
if(pRcvData)
{
pRcvData[i] = ui8Data;
}
}
return TRUE;
}
灰小子:
spi通讯完全可以用中断方式接收数据,稳定性更高,同时也更容易控制功耗