This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

28035 读spi数据错误



本人在使用28035 SPI读写铁电。当读取SPIRXBUF寄存器中的数据时,读取到底数据与寄存器中的不一致,spi设置为8位数据格式,SPIRXBUF中为0x00ff,但读出来却是0,下面是读取程序

void Spi_Read_Memory(Uint16 Start_Addr , Uint16 Num , Uint16 *p_read)

{

Uint16 i,spi_read_tem;

spi_read_tem = SPI_READ;

if(((Start_Addr >> 8)&0x001)==0x001)           //判断是否是高256地址

{

spi_read_tem = spi_read_tem|0x0800; //A8地址

}

GpioDataRegs.GPADAT.bit.GPIO21 = 0;

Spi_Write(spi_read_tem);                              

Spi_Write(Start_Addr << 8); // 写低地址

for(i=0;i<Num;i++)

{  

Spi_Write(0x00);

   *p_read = SpiaRegs.SPIRXBUF;

   //p_read++;

}

GpioDataRegs.GPADAT.bit.GPIO21 = 1;

}

不知道有遇到这种情况的没?还请知道的帮着解答一下,谢谢