·SP|接口有主和从两种操作模式, MASTER / SLAVE位( SPICTL2)选择操作模式以及 SPICLK信号的来源。 SPI主(主从=1) SPI从(主/从=0) SPIRXBUF10 SPISIMOI主输出| SPISIMO (SPIRXBUF15=0 串行输入缓冲r 串行输入缓冲r SPIRXBUF SPIRXBUF 片选 SPISTE SPIDAT. 15 SPIDAT15 移位寄存器 SPISOMI 从输出 SPISOM移位寄存器 MSB(SPIDAT MS 主输入 (SPIDAT) SPICLK SPICLK SPITXBUF 15-0 SPITXBUF 15-0 串行发送缓冲r 串行发送缓冲 SPITXBUF SPITXBUF 处理器1 处理器2
• SPI接口有主和从两种操作模式,MASTER / SLAVE位(SPICTL.2)选择操作模式以及 SPICLK信号的来源
主控制器模式 工作在主模式下( MASTERSLAVE=1), SP在 SPICLK引脚为整个串行通信网络提 供时钟。 数据从 SPISIMO引脚输出,并锁存 SPISOM引脚上输入的数据。SP|BRR寄存 器确定通信网络的数据传输的速率,通过 SPIBRR寄存器可以配置126种不同的数据 传输率
主控制器模式 • 工作在主模式下(MASTER/SLAVE = 1), SPI在SPICLK引脚为整个串行通信网络提 供时钟。 • 数据从SPISIMO引脚输出,并锁存 SPISOMI引脚上输入的数据。SPIBRR寄存 器确定通信网络的数据传输的速率,通过 SPIBRR寄存器可以配置126种不同的数据 传输率
写数据到 SPIDAT或 SPITXBUR寄存器启动 SPISIMO引脚上的数据发送,首先发送的是最高 有效位(MSB)。 同时,接收的数据通过SP|SOM引脚移入 SP|DAT的最低有效位。 当传输完特定的位数后,接收到的数据被发送到 SP| RXBUF寄存器,以备CPU读取 数据存放在 SPIRXBUF寄存器中,采用右对齐的 方式存储
• 写数据到SPIDAT或SPITXBUF寄存器启动 SPISIMO引脚上的数据发送,首先发送的是最高 有效位(MSB)。 • 同时,接收的数据通过SPISOMI引脚移入 SPIDAT的最低有效位。 • 当传输完特定的位数后,接收到的数据被发送到 SPIRXBUF寄存器,以备CPU读取。 • 数据存放在SPIRXBUF寄存器中,采用右对齐的 方式存储
·当指定数量的数据位已经通过 SPIDAT位移位后,则会发 生下列事件: SP|DAT中的内容发送到 SPIRXBUF寄存器中。 SPI INT FLAG位( SPISTS.6)置1 如果在发送缓冲器SP| TXBUF中还有有效的数据( SPISTS寄存器 中的 TXBUFFULL位标示是否存在有效数据),则这个数据将被传 送到 SPIDAT寄存器并被发送出去。否则所有位从 SPIDAT寄存器 移出后,SP|CLK时钟立即停止 如果 SPLINT ENA位(SP!CTL0)置1,则产生中断; 在典型应用中, SPISTE引脚作为从S門l控制器的片选控制 信号,在主SP设备同从SP设备之间传送信息的过程中, SPISTE置成低电平;当数据传送完毕后,该引脚置高
• 当指定数量的数据位已经通过SPIDAT位移位后,则会发 生下列事件: – SPIDAT中的内容发送到SPIRXBUF寄存器中。 – SPI INT FLAG位(SPISTS.6)置1。 – 如果在发送缓冲器SPITXBUF中还有有效的数据(SPISTS寄存器 中的TXBUFFULL位标示是否存在有效数据),则这个数据将被传 送到SPIDAT寄存器并被发送出去。否则所有位从SPIDAT寄存器 移出后,SPICLK时钟立即停止; – 如果SPI INT ENA位(SPICTL.0)置1,则产生中断; • 在典型应用中,SPISTE引脚作为从SPI控制器的片选控制 信号,在主SPI设备同从SPI设备之间传送信息的过程中, SPISTE置成低电平;当数据传送完毕后,该引脚置高
从设备模式 在从模式中( MASTER/ SLAVE=0), sPS○M引脚为数据输出引脚,SP|SIMO 引脚为数据输入引脚。 SPICLK引脚为串行移位时钟的输入,该时 钟由网络主控制器提供,传输率也由该时 钟决定。 SPICLK输入频率应不超过 CLKOUT频率的四分之
从设备模式 • 在从模式中(MASTER/SLAVE = 0), SPISOMI引脚为数据输出引脚, SPISIMO 引脚为数据输入引脚。 • SPICLK引脚为串行移位时钟的输入,该时 钟由网络主控制器提供,传输率也由该时 钟决定。SPICLK输入频率应不超过 CLKOUT频率的四分之一