0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

英创信息技术6路独立CAN总线的实现方案简介

英创信息技术 来源:英创信息技术 作者:英创信息技术 2020-02-12 10:53 次阅读

CAN(Controller Area Network)即控制器局域网,由于具有高性能、高可靠性以及简单的网络结构,在工业系统中越来越受到人们的重视,并迅速成为了目前国际上应用最广泛的现场总线之一。英创公司推出了各种以支持通讯接口为特色的工控主板,ESMARC系列的主板都能够支持2路CAN总线,为了满足客户现场对多路CAN总线的需求,英创公司利用主板上的ISA总线,设计出扩展4路CAN总线的扩展底板ETA704,再配合ESMARC系列主板上板载的2路CAN总线,就能够实现6路CAN总线的方案,支持ISA总线的主板型号如下:

主板型号 板载CAN总线 ISA总线
ESM3354 2路 支持
ESM6802 2路 支持
ESM7000 2路 支持

硬件组成

ETA704是通过四片SJA1000和一片逻辑控制器扩展出四路CAN总线。SJA1000是一款独立的控制器,主要用于汽车和一般工业环境中的控制器局域网络(CAN)芯片。它是PHILIPS半导体PCA82C200 CAN控制器(BasicCAN)的替代产品,而且它增加了一种新的工作模式(PeliCAN),这种模式支持具有很多新特性的CAN 2.0B协议。 通过主板上的ISA总线接口,就能够把ETA704和主板连接起来,为了方便客户评估,ETA704设计有专用的评估底板,可通过带线与ESMARC底板上的精简ISA总线接口连接,同时ETA704的硬件设计,可以让客户方便的将ETA704作为一个可插拔的模块嵌入在整体产品中,这样可以获得最佳的数据传输性能。对于实现CAN总线通讯所引出的接口电路,用户可以参考相应开发评估底板的电路原理图和PCB图。下表是ETA704和ESMARC评估底板ISA总线连接的接口定义:

ISA总线接口信号 ISA ISA总线接口信号
PIN# PIN#
RESET#,复位,低电平有效 1 2 ISA_ADV#,地址锁存,低电平有效
ISA_SD0,地址数据总线 3 4 ISA_SD4,地址数据总线
ISA_SD1,地址数据总线 5 6 ISA_SD5,地址数据总线
ISA_SD2,地址数据总线 7 8 ISA_SD6,地址数据总线
ISA_SD3,地址数据总线 9 10 ISA_SD7,地址数据总线
MSL#,模块选择 11 12 ISA_WE#,数据写,低电平有效
GPIO9,中断IRQ4,上升沿有效 13 14 ISA_RD#,数据读,低电平有效
GPIO8,中断IRQ3,上升沿有效 15 16 ISA_CS#,总线片选,低电平有效
GPIO25,中断IRQ2,上升沿有效 17 18 +5V,电源输入
GPIO24,中断IRQ1,上升沿有效 19 20 GND,公共地

ETA704的专用评估底板将四路CAN总线接口全部引出,并且设计有带隔离的驱动电路,可直接与设备相连进行测试。下面展示了ETA704专用评估底板将CAN总线通讯接口引出和CAN总线驱动电路的原理图:

CAN接口和驱动电路

由上图可以看出,从ETA704引出的CAN总线收发管脚,通过评估底板上的磁耦器件ADuM1201隔离后,和CAN驱动芯片TJA1050连接,就组成了一个典型的CAN总线通讯电路,同时还能够通过跳线选择是否介入匹配电阻。客户可以直接参考ETA704评估底板的方法进行设计。带隔离CAN总线通讯模块的CAN收发器端的所有信号和电源与其它部分完全隔离,可承受至少1Kv(有效值)的电压冲击,有效的保护了电路的安全。

软件开发

ETA704的驱动程序已经以模块的形式放在文件系统中,只是没有加载,因此在需要使用时,可通过加载文件系统中的ko文件eta704_of_platform.ko来激活ETA704,通过modprobe命令就可以方便的加载驱动了:

加载驱动

ESMARC系列主板自带有2路CAN总线,在系统中为can0、can1节点,所以加载完驱动程序后,系统就会识别出can2-can5,如下图:

CAN总线节点

ETA704的驱动程序接口和标准socketcan完全一致,因此用户使用扩展CAN总线的方式和标准CAN接口保持不变,即使用标准的socketcan编程。在此基础上,客户可利用英创公司提供的基本CAN通讯应用程序源代码,快速评估四CAN扩展单元的基本性能是否满足其具体的应用需求。只是需要注意CAN设备名称的序号,对于扩展网络ETA704所接出的四路CAN接口分别对应can2-can5。对于socketcan接口的详细说明可以参考专门的资料和英创公司的介绍:《Linux Socket CAN驱动简介》。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Linux
    +关注

    关注

    87

    文章

    10991

    浏览量

    206742
  • 嵌入式主板
    +关注

    关注

    7

    文章

    6064

    浏览量

    34616
收藏 人收藏

    评论

    相关推荐

    STM32G473CBT6同时使用三CAN总线,怎么处理BOOT引脚?

    我看STM32G473CBT6手册,芯片上有3CAN总线,但是CAN1总线占用了芯片的BOOT
    发表于 03-11 08:36

    什么是CAN总线通信?CAN总线工作原理

    这意味着变送器通过CAN收发器改变总线电平,并将其信息传输到CAN总线。接收器通过监测总线电平将
    发表于 02-19 14:53 1410次阅读
    什么是<b class='flag-5'>CAN</b><b class='flag-5'>总线</b>通信?<b class='flag-5'>CAN</b><b class='flag-5'>总线</b>工作原理

    高速CAN总线和低速CAN总线的特性

    高速CAN总线和低速CAN总线的特性 高速CAN总线和低速C
    的头像 发表于 01-31 14:09 832次阅读

    应用探讨:二CAN接口的定制

    控制器局域网(CAN)是博世的一种控制网络协议,在工业自动化和汽车工业中得到了广泛应用。 客户需要MCU实现CAN接口,目前AG32已经支持一
    发表于 01-29 13:37

    CAN总线协议简介及其常见的应用领域

    CAN总线协议是一种串行通讯协议,主要用于汽车和工业自动化领域,实现了实时应用的需求。 首先,CAN总线协议的基本概念包括报文、
    的头像 发表于 01-19 17:47 394次阅读

    CAN总线接口保护方案

    CAN总线的应用范围广,应用环境相当复杂,一些静电、浪涌等干扰很容易耦合到总线上,并直接作用于CAN总线接口。为了满足一些高等级EMC的要求
    的头像 发表于 01-13 08:27 251次阅读
    <b class='flag-5'>CAN</b><b class='flag-5'>总线</b>接口保护<b class='flag-5'>方案</b>

    CAN总线高层协议CANWeb现场总线源程序

    CAN通信的完美编程需要对CAN的通信负载及通信质量进行监控: CAN通信实时负载小于标定负载的1/3,通过对CAN通信的丢包的监控来评估CAN
    发表于 12-28 11:02

    求一种CAN总线波特率的自适应算法设计方案

    CAN 总线是目前应用十分广泛的现场总线,其仅通过一对差分信号线即可实现网络中各节点之间的互联和信息交互
    的头像 发表于 12-26 11:12 882次阅读
    求一种<b class='flag-5'>CAN</b><b class='flag-5'>总线</b>波特率的自适应算法设计<b class='flag-5'>方案</b>

    CAN总线应用中双绞线简介

    CAN(Controller Area Network)是一种用于实时应用的串行通讯协议总线,它可以使用双绞线来传输信号,是世界上应用最广泛的现场总线之一。CAN协议用于汽车中各种不同
    的头像 发表于 11-01 16:39 743次阅读
    <b class='flag-5'>CAN</b><b class='flag-5'>总线</b>应用中双绞线<b class='flag-5'>简介</b>

    CAN总线访问与仲裁机制#汽车CAN总线 

    CAN总线
    北汇信息POLELINK
    发布于 :2023年10月20日 15:33:02

    现场总线CAN原理与应用技术

    介绍相关的资料。 现场总线技术正在给我们展现一个宽阔的新舞台,并且大有作为。学习CAN也可作为学习现场总线甚至是计算机网络技术的入门,因为它
    发表于 09-26 06:39

    信息技术是干什么?

    广播电子技术信息技术
    橙群微电子
    发布于 :2023年09月22日 09:17:48

    can总线为什么要用双绞线?can总线不用双绞线可以吗?

    can总线为什么要用双绞线?can总线不用双绞线可以吗? CAN总线是一种数据通信协议,广泛用于
    的头像 发表于 09-14 16:48 4036次阅读

    CAN总线的位定时与同步机制#汽车CAN总线 

    CAN总线
    北汇信息POLELINK
    发布于 :2023年07月17日 10:57:12

    CAN 总线错误检测机制#can总线

    CAN 总线
    北汇信息POLELINK
    发布于 :2023年05月26日 13:54:03