数据有效性 MOSI和MISO线在SCK的每个时钟周期传输一位数据,开发者可以自行设置MSB或LSB先行,不过需要保证两个通讯设备都使用同样的协定。从图16-1看到,在SCK的上升沿和下降沿时进行触发和采样。 SPI有四种通讯模式,在SCK上升沿触发,下降沿采样只是其中一种模式。四种模式的主要区别便是总线空闲时SCK的状态及数据采样时刻。这涉及到“时钟极性CPOL”和“时钟相位CPHA”,由CPOL和CPHA的组合而产生了四种的通讯模式。 CPOL、CPHA CPOL:即在没有数据传输时,时钟的空闲状态的电平。 CPHA:即数据的采样时刻。
图16-2 SPI_CR1寄存器的CPOL和CPHA位组合配置成四种时序关系,即四种通讯模式。 如图16-2所示,如果CPOL被清0,则SCK在空闲状态保持低电平,反之被置1则保持高电平;如果CPHA位被清0,则在SCK每个时钟周期的第1个边沿(奇数边沿)进行数据位采样,反之被置1则在SCK每个时钟周期的第2个边沿(偶数边沿)采样。 如下表所示的四种SPI通讯模式。
有一点需要注意的是,主机和从机需要工作在相同的模式下才能正常通讯。
|