LPC2131基于CPLD的CAN接口设计

发布者:太白山人最新更新时间:2010-04-08 来源: 单片机与嵌入式系统应用关键字:CPLD  LPC2131  CAN接口 手机看文章 扫描二维码
随时随地手机看文章

  引 言

  Philips公司的LPC213l是基于ARM7TDMI-S的高性能32位RISC微控制器。它具有ARM处理器的所有优点——低功耗、高性能和较为丰富的片上资源,但LPC2131内部没有集成CAN控制器,而无法利用CAN总线来进行通信。为了使得LPC2131能够利用CAN总线进行通信,可以通过外部扩展来实现其功能。目前,比较普通的方法是在LPC2131的外部采用CAN控制器设计CAN总线接口。LPC2131与CAN控制器的接口电路如图1所示。

  这种方法中,LPC2131是通过GPIO口与CAN控制器SJA1000相连实现数据交互的。LPC2131通过寄存器IOSET/IOCLR来设定I/O口的高/低状态,虽然可以同时置位/拉低选定的引脚,但不能同时将某些口线拉高而将某些口线拉低。假定P0[15:8]初始状态为0xa5,若将P0[15:8]同时变为0x5a,则必须通过IO0SET和IO0CLR两次进行。程序实现如下:

  PINSEL0=0x00000000;

  IO0DIR=0x0000FF00;

  IO0SET=0x5a00;

  IO0CLR=0xa500;

  P0[15:8]上会出现0xFF的中间状态。在高速通信系统中,这些中间状态可能会造成损失。虽然可以通过IO0PIN进行操作来消除这样的中间状态,但是Philips公司不推荐这种做法,非必要时尽量不要使用。

  CAN驱动器接口芯片与LPC2131的串口接口电平上是相互匹配的,因此理论上可以将二者直接连接,采用串行通信方式实现。采用CAN总线通信,在长距离通信时,CAN总线两端要加终端电阻。其作用是避免数据传输又反射回来,产生反射波而使数据遭到破坏;同时,能提高总线传输的抗干扰能力。理论上,在每个接收数据信号的中点进行采样时,只要反射信号在开始采样时衰减到足够低就可以不考虑匹配。通常判断原则是根据数据速率和电缆长度进行匹配的,但这在实际中难以掌握,一般都是依据经验进行设计。

  可编程逻辑器件(PLD)是20世纪70年代在ASIC设计的基础上发展起来的一种新型逻辑器件。20世纪80年代末,美国Altera和Xilinx公司分别推出大规模和超大规模的复杂可编程逻辑器件(CPLD)及现场可编程逻辑门阵列器件(FPGA)。自从进入20世纪90年代以来,可编程逻辑器件得到了飞速发展,向高度集成、高速度和低价位方向不断迈进;其应用领域不断扩大,可用于状态机、同步、译码、解码、计数、总线接口和串并转换等很多方面。使用CPLD可以提高系统集成度,降低噪声,增强系统可靠性并降低成本。

  CPLD技术的出现,为我们提供了一种有效的解决办法:在CAN驱动器接口与LPC2131之间接一块CPLD,对CPLD进行功能编程,使其负责串行总线的数据传输和防止CAN发送反射。

  选择Altera公司MAX3000A系列的型号为EPM3128ATC100-7(简称“EPM3128”)的CPLD芯片。此芯片兼容3.3 V和5 V的I/O 口。这样,LPC2131、EPM3128和TJA1040在I/O电平上是相互匹配的。 [page]

  1 EPM3128接口定义

  EPM3128设置成双向串行总线通道。其中,2个I/O口被定义为CANRXD(IN)、CANTXD(OUT),分别连接CAN收发器TJA1040的RXD和TXD端,构成CAN总线上接收数据和发送数据通道;另外2个I/O口被定义为ARMRXD(IN)、ARMTXD(OUT),分别连接LPC2131的RXD1和TXD1端,构成处理器的串口接收数据和发送数据通道。整个数据的传输过程中,并不改变串行数据的协议和格式,接口电路全为TTL电平,期问不需要进行任何的处理。通信数据的校验、报错均交给通信两端的处理器完成。LPC2131、EPM3128和TJA1040的接口框图如图2所示。

  2 EPM3128功能实现

  图3是采用功能块编程实现EPM3128的数据传输和屏蔽CAN发送反射的内部逻辑。图中txArm2、rxCan2定义为输入变量,分别对应外部的ARMTXD、CANRXD引脚;txCan2、rxArm2定义为输出变量,分别对应外部的CANTXD、ARMRXD引脚。总线空闲时,总线上的状态一直保持为“1”,即txArm2、rxCan2、txCan2、rxArm2的值全部为“1”。当输入总线收到一个状态“0”信号时,表示总线开始传输数据。如果LPC2131要发送数据,则LPC2131先向ARMTXD端口发送一个“0”起始信号,占据总线并在下一个时钟开始发送数据帧;如果TJA1040从现场接收到新数据,则TJA1040先向CANRXD端口发送一个“0”起始信号,占据总线并在下一个时钟开始发送数据帧。以此,完成正常通信过程中数据位从串口到串口的传输。

  程序屏蔽CAN发送反射,就是屏蔽CAN总线接收到的从输出总线上反射的“0”信号,因为接口从高阻态被唤醒是靠一个“0”的起始信号。如果LPC2131正在发送数据,此时输人端口ARMTXD通过变量txArm2传送一位为“0”的信号到变量txCan2,并从输出口CANTXD送出。受总线辐射影响CANRXD输入口会从CAN总线接收到一个“0”信号,并将“0”信号传送给变量rxCan2,此时rXCan2收到的这个“0”信号是错误信号。经逻辑判断,程序将变量rxArm2维持为1,端口ARMRXD仍保持高阻态“1”。反射的“0”信号虽然被接收到,但在CPLD内部被屏蔽处理掉。如果没有屏蔽处理,那么这个错误的“0”信号将接收总线从高阻态唤醒,直接影响数据的通信。程序中D触发器的用途有两方面:一是缓存输入和输出,平滑信号的毛刺;二是实现控制信号的功能,如输出的复位和同步等。 [page]

  用QuartusII软件编译程序,并用仿真工具仿真。如图4所示,波特率为115 200 bps,编辑输入点txArm2、rxCan2的波形,查看输出点txCan2、rxArm2的波形。为方便识图,仿真中将数据端口传输占用的时间参数置0。

  首先,论证输出波形的有效性。观察图4中的txCan2和rxArm2的波形,可以看出所有时刻的数值都是确定的,从而证明系统处于稳定状态,波形是有效的。

  然后,论证输出波形的逻辑性。根据程序的逻辑设计,txArm2通道的数据发送享有优先权,始终保持txCan2=txArm2。从仿真结果可以看出,txCan2的波形与txArm2波形完全一致;当txArm2通道为“0”时,屏蔽rxCan2输入的数据,并保持rxArm2输出一直为“1”,观察图4中任何时刻所有输入/输出的波形,可以看出仿真结果正确。

  最后,验证输出波形的时序性。这部分程序是一个组合逻辑的设计,也就是所有的输出随着相应的输入的变化而变化。由图4可知,仿真结果的时序正确。

  结 语

  本文基于CPLD技术实现了LPC2131与CAN总线之间的串行通信。该方法实现简单,并且稳定性较好,适合于采用CAN总线的多路串行通信系统。该技术已应用到实际中,接受实践的检验。

关键字:CPLD  LPC2131  CAN接口 引用地址:LPC2131基于CPLD的CAN接口设计

上一篇:基于SmartFusion FPGA的MMC管理解决方案
下一篇:基于FPGA的数字波束形成技术的工程实现

推荐阅读最新更新时间:2024-05-02 21:02

TMS320C6416与CAN控制器的接口实现
摘要:分析了数字信号处理器 TMS320C6416 和CAN控制器SJAl000的接口时序。给出了基于复杂可编程逻辑器件EPM7512的DSP数字信号处理器和CAN控制器之间的接口电路,同时给出了详细的软硬件实现方法。 关键词:TMS320C6416;SJAl000;CPLD;接口电路 O 引言 CAN总线是现场总线中的一个应用热点,可支持分布式控制和适时控制的串行通信网络。由于CAN总线具有通信速率高、开放性好、报文 短、纠错能力强以及控制简单、扩展能力强、系统成本低等特点,因而其应用越来越受到人们的关注。基于CAN总线的CAN控制器具有完成CAN 总线通信协议所要求的全部必要功能,因此,CAN控制器与其它微处理器的接口
[工业控制]
TMS320C6416与<font color='red'>CAN</font>控制器的<font color='red'>接口</font>实现
SHARC DSP与SJA1000的CAN总线接口设计
本文讨论了DSP与CAN控制器SJA1000的总线接口的差别,提出了SJA1000和SHARC系列DSP接口设计的简单方法和通用方法。测试表明,这种方法的稳定性好,传输效率高。 关键词 : SHARC DSP; SJA1000; CAN现场总线 引言      当前,有一些微处理器将CAN控制器嵌入到系统之中,但是仍有大量人们比较熟悉的微处理器并不带有CAN控制器。采用微处理器和CAN控制器组合的设计成为必要,而且,CAN控制器具有完成CAN总线通信协议所要求的全部必要功能,因此,CAN控制器与其它微处理器的接口设计成为设计CAN总线系统的首要工作。本文重点介绍以SHARC DSP为核心的、基于SJA1000的CAN总线接口设计
[嵌入式]
基于LPC2131处理器的CAN模块设计与实现
  随着信息技术技术的飞速发展, ARM技术方案架构作为一种具备低功耗、高性能、以及小体积等特性的32位嵌入式微处理器,得到了众多的知识产权授权用户,其中包括世界顶级的半导体和系统公司。目前已被广泛的用于各类电子产品,汽车、消费娱乐、影像、工业控制、海量存储、网络、安保和无线等领域。被业界人士认为,基于ARM的技术方案是最具市场前景和市场优势的解决方案。   现场总线CAN是为解决现代汽车中众多的电控模块之间的数据交换而开发的一种串行通信协议。由于其具有多主站依据优先权进行总线访问,采用非破坏性总线仲裁,可完成对通信数据的错误检验和优先级判别,数据长度最多为8个字节,传输时间短,受干扰的概率低,抗干扰能力较强,通信速率最高可达1
[单片机]
基于<font color='red'>LPC2131</font>处理器的<font color='red'>CAN</font>模块设计与实现
Altera增强MAX II系列,拓展其CPLD应用
Altera公司今天宣布,提供工业级温度范围以及功耗更低的MAX IIZ器件,从而进一步增强了MAX II® CPLD系列。MAX IIZ CPLD完美的结合了逻辑密度、I/O和小外形封装,静态功耗降低了55%,非常适合低成本和低功耗应用。这些新功能拓展了MAX IIZ CPLD的市场应用,例如工业、计算机和办公自动化、医疗和消费类等领域。 Altera公司器件产品市场资深总监Luanne Schirrmeister评论说:“Altera第一次在市场上推出MAX IIZ CPLD时,主要是面向便携式和手持式设备。通过提供工业级温度范围以及功耗更低的MAX IIZ CPLD,Altera帮助设计人员减小了电路板面积和功
[嵌入式]
换体DMA高速数据采集电路的CPLD实现
摘要:介绍了块体DMA高速数据采集电路原理及其CPLD实现。用CPLD设计双端口RAM缓存、控制译码、时序逻辑电路,很好地解决了电路元件所占体积大、电路复杂、不能实现在线升级等问题,大大提高了系统的整体性能。 关键词:换体DMA CPLD 双端口RAM 在线升级 在许多仪器和控制系统中,高速数据采集电路是必不可少的,也是经常需要解决的问题。数据采集电路设计方法很多,但往往离不开A/D转换电路、数据缓存电路、控制逻辑电路、地址发生器、址译码电路等。而数据缓存、控制逻辑、地址译码等电路通常是由RAM芯片、与非门、触发器、缓冲/驱动器等构成,导致数据采集电路复杂、芯片繁多,特别是硬件的固定使得采集系统在线升级几乎不可能。很多情况下只有重新
[半导体设计/制造]
基于CPLD的LED点阵显示控制器
在系统可编程技术(ISP—In System Programming)及其在系统可编程系列器件,是90年代迅速发展起来的一种新技术和新器件。 现场可编程器件(FPGA和CPLD)等ISP器件无须编程器,利用器件厂商提供的编程套件,采用自顶而下的模块化设计方法,使用原理图或硬件描述语言(VHDL)等方法来描述电路逻辑关系,可直接对安装在目标板上的器件编程。它易学、易用、简化了系统设计,减小了系统规模,缩短设计周期,降低了生产设计成本,从而给电子产品的设计和生产带来了革命性的变化。 1、系统结构及工作原理 LED点阵显示控制的传统方式是采用单片机或系统机作为CPU来实现,当系统显示的信息比较多时,由于单片机的输入/输出端口(I/O
[应用]
基于CPLD的声发射信号传输系统设计
0 引言 声发射技术是光纤传感技术和声发射技术相结合的产物,是目前声发射技术的发展趋势。它将高灵敏度声发射传感器安装于受力构件表面以形成一定数目的传感器阵列,实时接收和采集来自于材料缺陷的声发射信号,进而通过对这些声发射信号的识别、判断和分析来对材料损伤缺陷进行检测研究并对构件强度、损伤、寿命等进行分析和研究。 在实际的构件检测中,现场声源信号通常是在100~800 kHz之间的微弱高频信号,而且材料损伤检测、声发射源定位往往需要多个传感器形成传感器阵列,而声发射信号的数据传输系统必须达到640 Mbps以上的数据传输能力;并应具有应付突发或长时间数据接收和存储能力。本文就是利用CPLD来实现对声发射信号的采集,从而有效解决了
[嵌入式]
高密度在系统可编程逻辑器件在数字I/O电路中的应用
    摘 要: 介绍了在系统可编程(ISP)技术及ISP器件的特点。分析了变M/T转速测量电路的工作原理。并由高密度ISP器件设计了位置控制系统单片I/O电路。运行结果表明所设计的电路完全达到设计要求。     关键词 在系统可编程 高密度逻辑器件 变脉冲数/脉冲周期 数字I/O电路     在系统可编程(ISP)技术及其器件是90年代迅速发展起来的一种新技术与新器件。它使我们能在产品设计、制造过程中对产品中的器件、电路板乃至整个电子系统的逻辑和功能随时进行组态或重组。采用这种器件开发的数字系统,其升级与改进是极其方便的。由于采用先进的 技术,就保证了这种器件具备10000次以上的擦写能力。     高密度
[应用]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved