工具/软件:Code Composer Studio
大家好,当我使用 SPI 接口时,当 在 反向模式下进行调试时,数据会被发送,但它会在 “while (SpiaRegs.SPIFFRX.bit.RXFFST!=1)”中停止;“总是,我不知道原因。 我的代码如下:
空 InitSpi (空)
{
EALLOW;
GpioMuxRegs.GPFMUX.ALL = 0x000f;
EDIS;
//初始化 SPI-A:
SpiaRegs.SPICCR.bit.SPISWRESET=0;//重置 SPI
SpiaRegs.SPICCR.all =0x0017; //复位打开、上升沿、8位字符位
SpiaRegs.SPICTL.ALL =0x0006; //启用主控模式、正常相位、
SpiaRegs.SPISTS.All=0x0000;
SpiaRegs.SPIBRR = 0x007F; // LSPCLK/(SPIBRR+1)
SpiaRegs.SPICCR.all =0x0087; //从复位中撤回 SPI
}
UINT16 SpiReadWrite (UINT16 wdata)
{
uint16 RDATA;
SpiaRegs.SPITXBUF=wdata;
while (SpiaRegs.SPIFFRX.bit.RXFFST!= 1);
RDATA = SpiaRegs.SPIRXBUF;
返回 RDATA;
}