在SPI总线中有这么一条,SPICLK这个时钟线必须要由主控设备给出。但是在实际应用中,会出现SPICLK这个时钟是由从设备给出的情况。
比如单片机与FPGA通信时,我们把FPGA作为主控设备。
然而,单片机读FPGA上升沿时经常会出现不能正确检测问题,这个时候就可以用单片机产生一个时钟作为SPICLK。
这个时候矛盾就产生了,既然FPGA是主控设备,SPICLK又只能由主控设备产生那这里为什么又会用单片机产生时钟呢?
其实答案很简单。我们在一台主机多台从机的模式下,大家都共用一个时钟信号,这个时候时钟当然只能由主控设备产生。但是当主机从机一对一的情况下,主机从机的概念其实很模糊的。在这种情况下SPI总线传输就可以使用从机时钟,也就是我们上面所说的单片机产生的时钟。
并且由于我们上面所说的单片机检测FPGA时钟沿容易出问题使得这种时钟产生方式在工程实践中也非常常用。
如果有机会,你也可以试试。
文章评论(0条评论)
登录后参与讨论