主要是手册上说的读和写好像没联系,
而大部分SPI器件的读是要先写入命令!
楼主说说哪一点没看懂
SPI有主从之分,读和写都是从主设备的角度说的,你的这个器件是主还是从?
谢谢香水城,
我的710是主,这个器件是从,不懂是的READ MEMORY图中,前半部分是写(SI),后半部分是读(SO),从BSPI_BufferSend和BSPI_BufferReceive来处理,我该怎么办?
你需要先发送命令和地址指定是读操作和操作地址,然后再
这个好像是个SPI的存储器?
是存储器,我这样行不?
static u8 bspi[10]={FM25L512_WRITE,0x00,0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07};
FM25L512_Init();
BSPI_BufferSend(BSPI0,bspi,10);
bspi[0]=FM25L512_READ;
BSPI_BufferSend(BSPI0,bspi,10);
BSPI_BufferReceive(BSPI0,&bspi[3],7);
还有就是
SO的那部分时序是由BSPI_BufferSend产生还是由BSPI_BufferReceive产生?
从你的图上看,读的时候只需发送1个字节命令,2个字节地址
你程序中的倒数第2行为什么要发送10个字节?
我要收7个字节呀,发了一个字节命令,两个字节地址,
余下7个字节是给SO产生时序,没别的意思,这7个字节时,接收FIFO会自动把SO上的那7个字节存起来吗?
BSPI_BufferSend和BSPI_BufferReceive都产生时序
不好意思,你的问题已经超出了STR710的范畴,我这里不可能帮你做SPI的启蒙,下面不会再回答这个问题,请仔细看看手册中有个部分和SPI的相应资料(网上找)。
请原谅,我们没有精力做这种基础的问题回答。