您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > SPI信号及传输距离研究
SPI总线数据远距离传输实现梁德坚刘玉琼(柳州铁道职业技术学院广西柳州545007)【摘要】SPI总线是一种应用广泛的短距离串行同步通信协议,针对SPI总线数据不能进行远距离传输的问题,采用将SPI总线数据由单端不平衡传输方式转换为双端平衡传输方式,利用5类双绞线作为传输介质,使得SPI总线数据可靠传输距离延长至1200米,扩展了SPI总线的应用范围。【关键词】SPI总线;串行通信;远距离数据传输【收稿日期】2010-3-5【作者简介】梁德坚(1964—),男,广西容县人,柳州铁道职业技术学院现代技术中心实验师,主要从事计算机在工业控制中的应用研究和智能控制研究;刘玉琼(1965—),女,广西灵川人,柳州铁道职业技术学院远程教育中心副主任,实验师,主要从事自动控制技术研究。【中图分类号】TN919【文章标识码】BToAchievetheSPIBusDataRemoteTransmissionLiangDe-jianLiuYu-qiong(LiuzhouRailwayVocationalTechnicalCollege,LiuzhouGuangxi545007)Abstract:theSPIbusisakindofcommunicationprotocolsthatserialsynchronouswerefoundwideuseinshortdistance.ItiscounteredthequestionthattheSPIbusdatacan’tberemote(data)transmission.ThetransmissionmodeoftheSPIbusdataischangedfromimbalancetransmissionmodetobebalancetransmissionmode.UseCat5twisted-pairtobetransmissionmedium;tomakethatthereliabledistanceoftheSPIbusdatacanbeextendthroughto1200meter.ToexpandedtheappliedrangeoftheSPIbus.Keywords:theSPIBus;serialcommunication;remotedatatransmission;0引言SPI(SerialPeripheralInterface,串行外设接口)总线是Motorola公司提出的一种同步串行外设接口协议,它可以使MCU与各种外围设备以串行方式进行通信以交换信息。由于该总线占用的接口线少,而且速度快,能够同时收发,通信效率高,支持这种总线的器件众多,包括E2PROM、A/D、D/A、实时时钟、以及LED、LCD驱动器件等,是一种非常基本的外设接口,得到了广泛地应用。SPI使用4条线:串行时钟线(SLCK)、低电平有效的从机选择线(SS)、主机输入/从机输出线(MOSI)、主机输出/从机输入线(MOSI),其接口连接如图1所示。SPI总线通信协议简单,传输速度快,通信效率高等诸多优点,但其传输距离较近的缺点,限制了它的使用的范围,如果在保持相当的传输速率,并能解决SPI总线传输距离近,可以极大地拓展SPI总线应用的范围。1SPI总线传输距离短的原因分析及解决办法SPI数据总线传输距离近的主要原因是因为SPI总线采用的是单端不平衡传输的数据传输方式。在信号传输过程中,对信号产生干扰的不仅仅是电场,诸如磁场、振动、温度等均可对信号造成干扰、在信号传输过程中受到干扰的程度与信号线质量和传输距离有很大关系,信号频率越高、信号传输线质量越差、传输距离越长则受到干扰的程度就越大。在单端不平衡传输过程中,对于已引入到信号线中的干扰是无法消除或削弱的,严重的话会造成数据传输的错误。另外,在单端不平衡传输方式中,需要一个公共的地线作为参考点,地线同时也是信号电流的回线,存在着信号电流,当被此传输线连接着的两个系统之间存在着交流电位差时,这个交流电位差将直接窜到信号中,造成噪声干扰。基于上述原因使得SPI总线数据的传输距离仅局限于板、卡级别的短距离数据传输。采用双端平衡传输是长距离数据传输常用的一种方式。双端平衡传输的信号为幅度相等、相位相反的信号,传输线一般为双绞电缆,这两根线走向、材质一致,因此对地阻抗一致。在双端平衡传输通道中,所接收的外部电磁干扰在导线内产生的干扰是一致的,对信号接收端来说这是一种共模干扰,这种共模干扰可用适当的电路加以消除或极大的抑制,在很大程度上提高了信号传输的质量。将SPI数据总线由单端不平衡传输方式改为双端平衡传输方式,可以极大地提高其数据传输的距离,实现SPI数据远距离的传输。2实现SPI总线数据远距离传输电路实现平衡传输的电路有多种,RS-422和RS-485是工业中远距离传送数据信号使用最多的一种方式。MAX3045和MAX3093芯片是美国美信公司出品的多路RS-422/RS-485收发器芯片,MasterSlaveSCLKMOSIMISOSS图1SPI接口连接示意图其中MAX3045是四通道RS-422/RS-485发送器,设计用于通过双绞线传送数字数据。MAX3093芯片是四通道RS-485/RS-422接收器,两芯片均为5V单电源供电,支持热插拔输入能够在电路启动过程中禁止错误数据的传输,具有ESD(ElectrostaticDischarge,静电放电)保护电路,可用于对ESD敏感的应用系统中。本电路中仅使用其中三个通道,各线对数据信号为单方向传输,也就是采用RS-422的通信方式。主设备处为发送端,远端为接收端,两者通过5类双绞线连接,构成高速单向RS-422数据传输系统,图2为电路原理图。3系统测试将主设备端(一般为单片机)产生的SCLK、MOSI、SS信号接至数据传送端,接收端用串行接口的MAX7221显示驱动芯片,驱动8位LED数码管显示,数据接收端接MAX7221芯片的相应的数据输入端口,传输介质采用4箱(305米/箱)5类双绞线连接起来作为传输介质,经实际图2电路原理图图3发送端和接收端的波形图测试,传输距离为1220米时,数据传输速率达到100KHz时,MAX7221仍可正常工作,所接LED数码管显示数据正确。图3为发送端和接收端的实测串行时钟(SCLK)信号的波形图。图4为接收端串行时钟信号的传输时延,通过图4可以看出,经过1200米长距离的信号传输,接收端的信号较发送端有7.3us的时延,因为SPI总线是一个同步数据通信协议,它是以串行时钟信号SCLK上升沿或下降沿,作为接收端数据采集的时刻,只要接收端的SCLK与MOSI信号的时延基本保持一致,就可以保证数据的正确性。4使用中的注意事项1、当SPI总线数据需要双向传输时,需要在主设备处增加RS-422接收器,在远端增加RS-422发送器,以实现SPI总线数据的双向传输。此时,传输时序就显得尤为重要,时序只有匹配,数据传输才能正常进行。当传输速率较高时,主设备处接收的数据发生错误,这主要是传输时延造成的影响,可以通过降低数据的传输速率解决这个问题。实验表明,当SPI时钟频率控制在40KHz左右时,主设备处数据接收稳定可靠无差错。2、注意传输介质对数据传输的影响。在选择传输介质时,应选择优质的5类或5类以上的双绞线作为传输线路,线路的连接需牢固可靠。劣质的双绞线,线路阻抗大,更有甚者同一根双绞线内各线对之间的电阻和信号传输时延有很大差异,给数字信号传输带来很大的影响。3、RS-422/RS-485网络中需要终接电阻,要求其阻值约等于传输电缆的特性阻抗。在短距离传输时可以不接终接电阻,即一般在300米以下不需终接电阻。在RS-422网络中终接电阻接在传输电缆的最远端,终接电阻一般取值100Ω,相当于电缆特性阻抗的电阻,因为大图4接收端信号时延多数非屏蔽双绞线电缆的特性阻抗大约在100Ω左右。这种匹配方法简单有效,但有一个缺点,匹配电阻要消耗较大功率,对于功耗限制比较严格的系统,可采用比较省电的RC匹配方式,如图5,利用一只电容C隔断直流成分,可以节省大部分功率。5结语通过将SPI数据总线由单端不平衡传输变换为双端平衡传输方式,解决了SPI数据信号仅适用于近距离数据传输的弊端,使得SPI数据信号能可靠地传送至1200米的远距离。若应用系统中SPI总线数据仅为单方向传输时,还可以并接多个相同的SPI设备,达到同时向不同地域多个器件传送数据的目的。该电路简单可靠,在地理空间位置上,极大地拓展了SPI器件使用的范围,已在多个项目中得到使用,并取得良好的效果。参考文献:[1]孙东,韩绍坤,邢怀飞.自制RS232/RS485转换器应用[J].电子测量技术.2005(3):17-18[2]冯娟,黄宏光,金晶.基于RS485协议的解码器及转换器[J].电子测量技术,2006(3):166-168[3]成晓庆,晏波,黄自祥.RS-422、RS-485接口电路设计中应注意的几个问题[J].电子工程,2005(1):10-13[4]李德庆,宋斌.RS422/RS485总线模型分析与应用[J].电子元器件应用.2008(1):16-17[5]郭静华,欧阳斌林.SPI总线从机接口实时模拟的实现[J].东北农业大学学报.2007(5):669-671[6]黄军飞.改单端不平衡为双端平衡传输转换器的设计制作[J].西部广播电视.2000(6):10-12[7]MAXIM.[8]MAXIM.(责任编辑许云)图5RC匹配方式
本文标题:SPI信号及传输距离研究
链接地址:https://www.777doc.com/doc-2859734 .html