APP下载

全功能SPI接口的设计与实现

2012-01-18辛晓宁孙文强

电子设计工程 2012年23期
关键词:设计

辛晓宁,孙文强

(沈阳工业大学 研究生学院,辽宁 沈阳 110870)

SPI串行通信接口是一种常用的标准接口,由于其使用简单方便且节省系统资源,很多芯片都支持该接口,应用相当广泛[1]。但是现有文献和设计多数仅实现了SPI接口的基本发送和接收功能,对SPI接口的时序控制没有进行深入的研究。全功能SPI接口应具有四种不同的时钟模式,以适应具有不同时序要求的从控制器。文中主要研究SPI接口的时钟时序,并用具体电路实现具有4种不同极性和相位的时钟,最后通过仿真验证和FPGA验证[2]。

1 SPI控制器典型结构

SPI模块中的典型结构是用于通信的主从2个控制器之间的连接,如图1所示。由串行时钟线(SPICLK)、主机输入从机输出线(SPISOMI)、主机输出从机输入线(SPISIMO)、SPI选通线(SPISTE)4条线组成[3]。当CPU通过译码向主控制器写入要传输的数据时,主控制器通过串行时钟线来启动数据传输,将会在串行时钟线的一个边沿将数据移出移位寄存器,而在串行时钟的另一个边沿将数据锁存在移位寄存器中。SPI选通线是SPI控制器的使能端,可以选择多个从机,实现一主多从的结构,只要SPI选通信号将要选的从机处的选通信号变为低电平就能够连接成功。

图1 SPI主从连接Fig.1 Master-slave link

2 全功能SPI控制器设计

2.1 SPI控制器内部结构

SPI控制器的原理框图如图2所示,其中主要包括:

1)SPI控制器的内部寄存器

图2 SPI控制器原理框图Fig.2 Functional block diagram of SPI module

SPI操作控制寄存器(SPICTL),SPI状态寄存器(SPISTS),SPI波特率设计寄存器 (SPIBRR),SPI接收缓冲寄存器(SPIRXBUF),SPI发送缓冲寄存器 (SPITXBUF),SPI串行数据寄存器(SPIDAT),SPI中断优先级控制寄存器(SPIPRI)。……

登录APP查看全文

猜你喜欢

设计
二十四节气在平面广告设计中的应用
何为设计的守护之道?
《丰收的喜悦展示设计》
基于PWM的伺服控制系统设计
基于89C52的32只三色LED摇摇棒设计
基于ICL8038的波形发生器仿真设计
瞒天过海——仿生设计萌到家
设计秀
有种设计叫而专
从平面设计到“设计健康”