主题中讨论的其他器件:C2000WARE
工具/软件:Code Composer Studio
大家好:
我现在尝试修改 SPI 示例代码、即"C2000_LAUNCHPAID\software_install\C2000Ware_3_02_00_00\driverlib\f28004x\examples\spi\spi_ex4_EEPROM.c"。
我不会非常撤消这三个函数:"readStatusRegister"和"SPI_writeDataBlockingNonFIFO"、"SPI_readDataBlockingNonFIFO"。
这些功能是什么? 如果我不使用这些函数、会发生什么类型的错误? "readStatusRegister()"是否只是用于检查 SPI 总线是否繁忙? 还是检查 INT_FLAG?
此外、我并不真正理解这些缺点(请参阅下文)。 我在数据表中找不到它们。
#define RDSR 0x0500 #define READ 0x0300 #define 写入 0x0200 #define WREN 0x0600 #define WRDI 0x0400 #define WRSR 0x0100
uint16_t readStatusRegister (void) { uint16_t temp; // //将芯片选择拉低。 // CSCON_TXLOW; // //发送 RDSR 操作码 // SPI_writeDataBlockingNonFIFO (SPIA_BASE、RDSR); // //虚拟读取以清除 INT_FLAG。 // SPI 读取 rxbuf 将清除 INT_FLAG temp = SPI_readDataBlockingNonFIFO (SPIA_BASE); // //发送虚拟数据以接收状态。 // SPI_writeDataBlockingNonFIFO (SPIA_BASE、0x0000); // //读取状态寄存器。 // temp = SPI_readDataBlockingNonFIFO (SPIA_BASE); // //将芯片选择拉高。 // CSCON_TXHIGH; // //从接收缓冲区读取状态 // return (temp); }
如果我只想通过 SPI 与非 FIFO 通信外设、我应该在示例代码中修改什么?