尊敬的 TI 工程师:
我想使用 SPI 来控制名为 CAT25256的 EEPROM。 我根据基准进行配置。 但无法成功发送数据。 尽管克力似乎没有问题。 sEE25256Init 中出现问题。
请帮帮我。 期待您的回复。
//step1。
SpicRegs.SPICCR.bit.SPISWRESET = 0;//复位状态、清除 SPI 标志
//step2。
SpicRegs.SPICTL.bit.MASTER_SLAVE = 1;//主设备
SpicRegs.SPICCR.bit.SPILBK = 0;
SpicRegs.SPICCR.bit.CLKPOLARITY = 0;//在上升沿输出、在下降沿输入
SpicRegs.SPICTL.bit.CLK_PHASE = 0;
SpicRegs.SPIBRR.bit.SPI_BIT_RATE = 99;// 200m /4 (默认值)/100 = 500K
SpicRegs.SPICCR.bit.HS_MODE = 0;//禁用高速模式
SpicRegs.SPICCR.bit.SPICHAR = 0x07;//将8位移位为字符、拟合 EEPROM
SpicRegs.SPIPRI.bit.TRIWIRE = 0;//4线模式
SpicRegs.SPIFFTX.bit.SPIFFENA=1;//启用 SPI FIFO 增强功能
SpicRegs.SPIFFTX.bit.TXFFINTCLR = 1;//清除 TXFFINT 标志
SpicRegs.SPIFFRX.bit.RXFFINTCLR = 1;//清除接收 FIFO 中断标志
SpicRegs.SPIFFRX.bit.RXFFOVFCLR = 1;//清除溢出标志
SpicRegs.SPIFFTX.bit.TXFIFO = 1;//释放发送和接收 FIFO 复位
SpicRegs.SPIFFRX.bit.RXFIFORESET = 1;
SpicRegs.SPIFFTX.bit.SPIRST = 1;
//step3。
SpicRegs.SPICTL.bit.OVERRUNINTENA=0;//禁用接收器溢出中断
SpicRegs.SPICTL.bit.SPIINTENA=0;//禁用 SPI 中断
SpicRegs.SPIFFTX.bit.TXFFIL = 0;当 TX 缓冲区中剩余16个字或更少时、会生成//TX FIFO 中断。
SpicRegs.SPIFFRX.bit.RXFFIL = 0;
SpicRegs.SPIFFTX.bit.TXFFIENA=0;//禁用 FIFO TX INT
SpicRegs.SPIFFRX.bit.RXFFIENA=0;//禁用 Rx FIFO 内部
//step4。
SpicRegs.SPICTL.bit.TALTANG=1;//启用传输
SpicRegs.SPIFFCT.All=0;//字符之间无延迟
SpicRegs.SPICCR.bit.SPISWRESET = 1;
/******** /