DIY编程器网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1090|回复: 0
打印 上一主题 下一主题

[接口电路] 基于LPC2194的4路CAN网桥设计

[复制链接]
跳转到指定楼层
楼主
发表于 2012-1-27 15:30:43 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
  CAN总线以其设计独特、成本低、可靠性高、实时性和抗干扰能力强等特点,在汽车工业、机械工业、纺织工业、机器人、数控机床、医疗器械等领域得到了广泛的应用。从高速网络到低速的多路接线网络都可以使用CAN总线,其最高传输速率可以达到1 Mbps,最远传输距离可达10 km(传输速率在5 kbps以下时)。但是当要求传输速率较高且传输距离较远时,单条总线就无法完成;而且在大型的网络中,经常需要多条总线的接入。这就需要同时有中继与路由功能的CAN网桥来实现以上功能。
  本文设计的4路CAN网桥可以延长CAN传输距离,扩展CAN通信网络;同时具有路由功能,可实现不同CAN网络之间的不同路由、不同通信速率的转换,能够在大型CAN网络中起到关键作用。
  1 4路CAN网桥的设计方案
  1.1 CAN网桥的优点
  使用4路CAN网桥对网络性能的改善有着很大的帮助,在大型网络的组网中有以下优点:
  ①可以延长网络的传输距离,特别是经过几个CAN网桥的中继之后,可以极大地延长传输距离,能够达到几千米甚至几十千米。
  ②可以增大CAN网络的规模,4路CAN网桥有4个CAN支路,每条支路又可以增加新的CAN网桥,因此可以组成大规模的CAN网络。
  ③可以实现不同网络之间不同路由的选择,增强了CAN网络的可靠性。
  1.2 设计方案
  CAN网桥的设计方案一般分为单MCU和多MCU两种。单MCU速度较慢,不适用于高速网络;多MCU方案结构复杂,稳定性较差。针对以上情况,本设计采用了自带4路CAN控制器的ARM微控制器LPC2194,同时避免了MCU速度慢和多MCU网络复杂的情况。
  LPC2194的特点如下:
  ①具有32位的ARM7微控制器,带有256 KB的嵌入式高速Flash存储器。32位代码能够在最高时钟频率下运行,且功耗极低,处理速度极快。
  ②自带4路互联的CAN控制器,完全支持CAN2.0B和ISO1198-1的标准,每个CAN控制器均可以实现1Mbps的速率。其全局验收滤波器可识别所有总线的11位和29位Rx标识符,相对于SJA1000的CAN控制器有着明显的优势。
  2 4路CAN网桥的硬件设计
  2.1 总体设计
  由于LPC2194集成4路CAN控制器,因此能够方便地实现4路CAN总线接口,既减小了系统的规模,又提高了系统的稳定性。本设计采用LPC2194作为主控芯片,具有隔离和保护的CTM8251T作为CAN收发器。系统的整体结构如图1所示。



  2.2 微控制器与CTM8251T的接口设计
  CTM8251T是一款带隔离的通用CAN收发器模块。该模块内部集成了所有必需的CAN隔离及CAN收发器件,具有2 500 V的隔离功能和CAN-bus总线过压保护作用。该模块符合ISO11898标准,因此可以与其他遵从ISO11898标准的CAN收发器相互操作。由于微控制器LPC2194集成的4路CAN控制器完全相同,因此本设计中只给出1路CAN控制器与CTM8251T的连接图,如图2所示。



  3 4路CAN网桥的软件设计
  4路CAN网桥不同于一般的CAN中继器,可以选择不同的路由和不同的通信速率。本设计中,4路CAN接口均可以实现与其他3路之间不同路由的选择和不同通信速率之间的转换,极大地增强了网络的可扩展性。4路CAN网桥的工作模式分为两种:配置模式,可以选择路由和不同支路的CAN通信速率;正常工作模式,根据所配置的状态来进行工作。
  3.1 配置模式
  配置模式的主要工作是将配置信息写入EEPROM中,在正常工作时可以读取配置的信息。配置模式的程序流程如图3所示。



  3.2 正常工作模式
  在配置模式下配置好各信息后,系统重新上电可以进入正常工作模式。根据配置模式配置的状态,4路网桥对网络中的信息进行存储转发。在LPC2194中,4路CAN控制器是同时工作的,因此能够提高系统的速度和实时性。每一路的结构和程序是相同的,因此本设计仅给出1路CAN控制器正常工作的程序设计。
  为了提高系统的转换速度和稳定性,本设计采用了中断接收和查询发送的方式。系统中断接收CAN总线上的数据,并根据路由选择和标识符的分配选择发送到其他3路,从而完成网桥的工作。系统主程序和中断程序流程分别如图4和图5所示。



  4 实验结果
  为了验证系统的可靠性,设计了一个通信收包率的实验。通过PC机间隔一定的时间,向CAN网桥一条支路发送8字节的数据,网桥的另一条支路向PC机回复接收到的8字节数据。通过对比发送和接收的字节数来验证收包率。分别以100 ms、10 ms、5 ms、1 ms的间隔来发送8字节的数据,发送和接收到的字节数为:
  ①间隔100 ms时,发送1 336个字节,接收1 336个字节,收包率为100%;

  ②间隔10 ms时,发送3 376个字节,接收3 376个字节,收包率为100%;
  ③间隔5 ms时,发送4 056个字节,接收4 056个字节,收包率为100%;
  ④间隔1 ms时,发送5 336个字节,接收5 336个字节,收包率为100%。
  其中,间隔1 ms时的发送和接收图如图6所示。



  实验结果表明,在以不同间隔发送数据时,网桥都能很好地完成工作,可满足实际应用的需要。
  结 语
  本文设计的4路CAN网桥采用功能强大的ARM芯片LPC2194作为主控芯片,因此能够及时地处理4路CAN总线的数据传输。通过具体实验证明,该网桥工作稳定、可靠、使用方便,完全满足现场的需求。
                                
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|文字版|手机版|DIY编程器网 ( 桂ICP备14005565号-1 )

GMT+8, 2024-5-10 11:21 , 耗时 0.091428 秒, 18 个查询请求 , Gzip 开启.

各位嘉宾言论仅代表个人观点,非属DIY编程器网立场。

桂公网安备 45031202000115号

DIY编程器群(超员):41210778 DIY编程器

DIY编程器群1(满员):3044634 DIY编程器1

diy编程器群2:551025008 diy编程器群2

QQ:28000622;Email:libyoufer@sina.com

本站由桂林市临桂区技兴电子商务经营部独家赞助。旨在技术交流,请自觉遵守国家法律法规,一旦发现将做封号删号处理。

快速回复 返回顶部 返回列表