主题中讨论的其他器件:C2000WARE
大家好、 我的 SPI 有问题、似乎无法解决。
发送2个字节的数据时 ,数据将被存储,之后为空。
数据发送一次、但重复模式。 直到 FIFO 溢出设置 溢出标志。
如果发送新字、则忽略它、 您能否通过源代码查看以缩小问题范围
SpiaRegs.SPICCR.bit.SPISWRESET=0; //重置 SPI
SpiaRegs.SPICCR.bit.SPICHAR = 0x0007; // 8位字符
SpiaRegs.SPICCR.bit.SPILBK= 0; //回路禁用
SpiaRegs.SPICCR.bit.CLKPOLARITY = 0; //
SpiaRegs.SPICTL.All=0x0000; //从器件、正常 SPI 时钟、
SpiaRegs.SPICTL.bit.OVERRUNINTENA=1; //启用过运行标志
SpiaRegs.SPICTL.bit.TALK = 1; //启用接收器的 SPISTE 输入引脚
SpiaRegs.SPICTL.bit.MASTER_SLAVE = 0; //从设备
SpiaRegs.SPICTL.bit.CLK_PHASE = 0;
SpiaRegs.SPISTS.All=0x0000; //运行标志过高???
SpiaRegs.SPICCR.bit.SPISWRESET= 1.
SpiaRegs.SPIFFRX.All=0x0028; //将 RX FIFO 电平设置为8
SpiaRegs.SPIFFCT.All=0x00; // 传输缓冲区
SpiaRegs.SPIPRI.All=0x0010;
SpiaRegs.SPICCR.bit.SPISWRESET=1; //启用 SPI
SpiaRegs.SPIFFRX.bit.RXFIFORESET=1;
SpiaRegs.SPIFFTX.bit.TXFIFO=1;