由于SCK时钟的相位和极性在不同系统中的配置不尽相同,所以在本设计中通过合理设置CPHA、CPOL和RCV_CPOL的值,达到正确接收数据的目的。 如图所示,两个输入寄存器被用来采样MISO。一个在SCK上升沿采样,另一个在SCK下降沿采样。这两个寄存器的输出连接到一个多路器,多路器由RCV_CPOL控制。多路器的输出连接到SPI接收移位寄存器,接收移位寄存器由外部SCK的上升沿钟控。