第17章SPI控制器

17.1 基础配置

使用下列寄存器来配置SPI:

  • 功率:在PCONP寄存器中置位PCSPI。注:复位时,SPI会被使能(PCSPI=1)。

  • 时钟:在PCLK_SEL0寄存器中。在主机模式下,必须对时钟进行分频。

  • 管脚:通过PINSEL寄存器选择SPI管脚,并通过PINMODE寄存器选择管脚模式(见“引脚连接模块”章节的“寄存器描述”小节)。

  • 中断:SPI中断是通过S0SPINT寄存器(见“SPI中断寄存器”小节)来使能的。中断的使能是通过在NIVC中使用相应的中断设置使能寄存器(Interrupt Set Enable register)来实现的。

17.2 特性

  • 兼容串行外设接口(SPI)规范;

  • 同步、串行、全双工通信;

  • 可工作在SPI主机或从机模式下;

  • 最大数据位速率位为输入时钟速率的1/8;

  • 每次可以传输一个8~16位的数据帧。

17.3 SPI概述

SPI是一种全双工串行接口,可处理多个连接到指定总线上的主机和从机。在数据传输过程中,总线上只能有一个主机和一个从机通信。在数据传输中,主机总是会向从机发送一帧8到16个位的数据,而从机也总会向主机发送一帧字节数据。

17.4 SPI数据传输

图17.1所示的是SPI的4种不同数据传输格式的时序图,该时序图描述的是8位数据的传输。需要注意的是,该时序图按垂直方向分成了3个部分,第一部分描述SCK和SSEL信号;第二部分描述了CPHA=0时的MOSI和MISO信号;第三部分描述了CPHA=1时的MOSI和MISO信号。在时序图的第一部分需要注意两点:一、SPI是以CPOL设置为0和1两种情况分别进行说明的;二、需要注意SSEL信号的激活和未激活。当CPHA=0时,SSEL信号在两次数据传输之间总会变为高电平。但当CPHA=1时,就不能保证了(信号可以保持有效)。

对于那些想要深入了解SPI时序图的读者,可以参考以下资源:spi时序图SPI时序图详解,以及SPI协议_时序及时序图浅析.doc。这些资料详细讲解了SPI的工作原理和时序图,帮助您更好地理解SPI数据传输的细节。

无论是研究SPI总线协议还是时序图的详细讲解,都能从这些资源中获益匪浅!SPI总线协议及SPI时序图详解SPI总线协议介绍时序图 都是极好的参考资料。想象一下,掌握了这些知识,您就能在实际应用中得心应手!

不要错过更多的SPI资源,比如 SPI总线协议及SPI时序图详解.pdfSPI总线协议及SPI时序图详解转,以及 SPI总线协议及SPI时序图详解.doc。这些资源不仅提供了深入的理论知识,还包含了大量的实用实例!

所以,赶快点击这些链接,开始您的SPI探索之旅吧!