SPI 总线通信电路设计 由于SPI(setial peripheralinterface)总线占用的接口线少,通信效率高,并且支持大部分处理器芯片,因而是一种理想的选择。SPI 是利用4根信号线进行通信的串行接口协议,包括主/从两种模式。4个接口信号为:串行数据输入(MISO,主设备输入、从设备输出)、串行数据输出(MOSI,主设备输出、从设备输入)、移位时钟(SCK)、低电平有效的从设备使能信号(cs)。SPI 最大的特点是由主设备时钟信号的出现与否来确定主/从设备间的通信。一旦检测到主设备的时钟信号,数据开始传输。 由一个主机对接一个从机进行全双工通信的系统构成的方式。在该系统中,由于主机和从机的角色是固定不变的,并且只有一个从机,因此,可以将主机的丽端接高电平,将从机的SS 端固定接地。 图1 全双工主机/从机连接方法 本系统采用的是由两个单片机互相连接构成多主机通信系统,SPI 主设备负责产生系统时钟,并决定整个SPI 网络的通信速率。所有的SPI 设各都采用相同的接口方式,可以通过调整处理器内部寄存器改变时钟的极性和相位。由于SPI 器件并不一定遵循同一标准,比如 EEPROM、DAC、ADC、实时时钟及温度传感器等器件的SPI 接口的时序都有所不同,为了能够满足不同的接口需要,采用时钟的极性和相位可配就能够调整 SPi 的通信时序。 SPI 设各传输数据过程中总是先发送或接收高字节数据,每个时钟周期接收器或收发器左移1位数据。对于小于16位的数据在发送之前必须左对齐,如果接收的数据小于16位则采用软件将无效的数据位屏蔽,当主机发送一个连续的数据流时,有些外设能够进行多字节传输。多数具有 S P I 接口的存储芯片就以这种方式工作。在这种传输方式下,从机的片选端必须在整个传输过程中保持低电平。此时,一次传输可能会涉及到成千上万字节的信息,而不必在每个字节的数据发送的前后都去检测其起始位和结束位,这正是同步传输方式优于异步传输方式的原因所在。 虽然SPI 有以上优点,然而在远距离传输中却很少用到,原因主要是其抗干扰能力差过可靠传输距离只有是1—3m。SPI 采用的是单端非平衡的传输方式,即传输的数据位的电压电平是以公共地作为参考的。在这种传输方式中,对于已进入信号中的干扰是无法消除和减弱的。而信号在传输过程中总会受到干扰,而且距离越长干扰越严重,以致于信号传输产生错误。在这种条件下,信号传输就变得毫无意义了。另外,由于单端非平衡传输方式以公共地作为参考点,地线作为信...