SPI是一种全双工的通讯模式,通讯分俩方,一边是主模式,一边是从模式,他们由4根线连接,时钟CLK,片选CSN,主发从收MISO,主收从发MOSI。可以使用一主多从的方式进行通讯,通讯时通过片选,选定你要通讯的从机进行通讯。也可以使用串联的方式进行数据传输,例如主机给flash发送信号,让flash把数据传给sd卡。
spi通信的时钟采样可以通过CPOL与CPHA调整,CPOL设置时钟极性,也就是空闲状态下的时钟,当CPOL为0时,空闲状态下时钟为低电平,当CPOL为1时,空闲状态下的时钟为高电平,CPHA时钟相位,可以设置时钟是奇数边沿采样还是偶数边沿采样,当CPHA为0时,时钟在偶数边沿采样,就是第0,2,4个时钟边沿,当CPHA为1时,时钟在奇数边沿采样,也就是1,3,5个时钟边沿采样,这两可以组成4种采样模式。CPHA与CPOL都为0或1时,为上升沿采样,当CPHA不等余CPOL时为下降沿采样。
flash内部存储单元,我所使用的时W25Q128,flash一般用于保存较大,且不怎么修改的程序,可以把板子设计成flash启动,每次上电重启后,就会运行flash内部的程序。修改flash内部保存的程序需要用spi通讯。烧写方法如下:注意不同的芯片所选的型号不同
1,需要一个可以正常运行的程序
2,选择File中的convert programming Files
3,在Programming file type中选择JIC文件
4,选择Flash Loader,后点击Add Device
5,选择你板卡型号
6,选择 SOF Data后点击Add File,然后选择SOF文件即可
7,点击Generate生产jic文件
8,烧录JIC文件,记住要勾选Program Configure