找到原因了,低級(jí)錯(cuò)誤。
Uint8 Spi378Exchange(Uint8 data)
{
? while(RESET == (SPI_STAT(ch378_spi)&SPI_FLAG_TBE));? ? ?// 等待SPI發(fā)送為空
? SPI_DATA(ch378_spi) = data;? // 發(fā)送數(shù)據(jù)
? while(RESET == (SPI_STAT(ch378_spi)&SPI_FLAG_TBE));? ? ?// 等待SPI發(fā)送為空
? return(SPI_DATA(ch378_spi));? // 返回接收的數(shù)據(jù)
}
改為如下:
Uint8 Spi378Exchange(Uint8 data)
{
? while(RESET == (SPI_STAT(ch378_spi)&SPI_FLAG_TBE));? ? ?// 等待SPI發(fā)送為空
? SPI_DATA(ch378_spi) = data;? // 發(fā)送數(shù)據(jù)
? while(RESET == (SPI_STAT(ch378_spi)&SPI_FLAG_RBNE));? ? ?// 等待接收到數(shù)據(jù)
? return(SPI_DATA(ch378_spi));? // 返回接收的數(shù)據(jù)
}