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

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

3天内不再提示

【技术分享】CAN总线相关知识探讨以及Model3C两路CAN的应用

启明智显 2024-09-05 10:59 次阅读

一、 CAN总线相关知识

CAN总线概述

  • CAN(Controller Area Network)总线是一种高实时性、高可靠性和灵活性的串行通信协议,广泛应用于汽车和工业控制系统中。它由德国BOSCH公司开发,最高速率可达到1Mbps,具有强大的检错和处理机制,以及高抗干扰性和自诊断能力。

1.CAN总线特点

  • 高实时性:CAN总线采用非破坏性仲裁技术,确保高优先级数据能够优先传输。
  • 高可靠性:CAN总线具有强大的错误检测和处理机制,包括CRC校验、应答机制等,能够有效提高数据传输的可靠性。
  • 灵活性:CAN总线支持多种操作模式,如正常模式、只听模式、自测模式等,满足不同应用场景的需求。
  • 扩展性:CAN总线支持多个节点同时接入,方便用户根据实际需求进行灵活配置和扩展。

2.为什么CAN节点ID不能相同

CAN(Controller Area Network)总线是一种广泛应用于汽车和工业自动化领域的串行通信协议。在CAN总线网络中,节点ID(标识符)用于区分不同的报文和数据源,确保数据能够准确无误地传输到目标节点。节点ID不能相同的原因主要有以下几点:

  • 仲裁机制:CAN总线的仲裁机制是基于报文的ID进行的。当多个节点同时向总线发送报文时,CAN控制器会监听总线上的电平信号,并根据报文的ID进行仲裁。ID数值越小的报文具有越高的优先级,会优先被发送。如果两个或更多节点具有相同的ID,那么仲裁机制将失效,因为所有具有相同ID的节点都会认为自己具有发送报文的优先权,从而导致总线冲突和数据传输错误。
  • 避免数据冲突:为了确保CAN总线上的数据传输高效且有序,每个节点都需要一个唯一的ID来标识其发送的报文。这样可以有效避免不同节点之间的数据冲突,确保每个报文都能被正确接收和处理。
  • 提高系统稳定性:如果允许节点ID相同,那么CAN总线网络将变得不稳定且难以管理。因为当多个节点同时发送数据时,由于ID相同而无法进行有效的仲裁,这可能导致总线拥塞、数据传输失败甚至整个系统崩溃。

3、CAN总线常遇到的问题

  • 通信错误:由于CAN总线上的节点之间存在不同的优先级,可能导致数据冲突。此外,错误的软件实现或硬件设计也可能导致通信错误。
  • 总线短路:CAN总线上连接的电气设备可能因为短路而损坏总线系统。这通常是由于设备的接地问题、电源问题或其他电气问题导致的。
  • 错误帧:CAN总线上可能会出现错误帧,这些帧包含了错误的ID或者CRC校验错误等信息。错误帧的出现可能会导致总线上的其他节点误判情况,从而影响整个系统的正常运行。
  • 总线过载:当CAN总线上的节点数量过多或者通信数据量过大时,可能导致总线过载,从而影响通信性能和稳定性。
  • 总线阻塞:在某些情况下,CAN总线上的节点可能会长时间保持发送状态,从而导致其他节点无法发送数据,这种现象被称为总线阻塞。
  • 总线错误:CAN总线上的节点可能会发生硬件故障,例如控制器损坏、接口损坏等,这些情况都可能导致总线错误。
  • 总线干扰:CAN总线可能会受到外部电磁干扰,如电源干扰、射频干扰等,这些干扰可能导致总线上的数据传输出错。

4、以个位数价格的工业级HMI芯片–Model3C为例, 2路CAN的应用

wKgaombZHpqAJNsxAAD93nvNqg4305.png

Model3C是启明智显推出的一款基于RISC-V的高性能、国产自主、工业级高清显示与智能控制MCU,集成了先进的工业HMI技术和双CAN通信技术。其2路CAN的应用主要体现在以下几个方面:

  • 双通道冗余设计

Model3C采用双通道冗余设计,当其中一个CAN通道出现故障时,另一个通道可以立即接管数据传输任务,确保系统的持续运行。这种设计大大提高了系统的可靠性和容错能力。

  • 快速数据传输和稳定通信

Model3C配备的2路CAN接口支持多种通信速率和操作模式,能够满足不同应用场景下的数据传输需求。同时,CAN总线的高实时性和可靠性保证了数据传输的快速性和稳定性。

  • 灵活配置和扩展

Model3C的2路CAN接口支持多个节点同时接入总线,方便用户根据实际需求进行灵活配置和扩展。这种扩展性使得系统能够适应不断变化的应用场景,提高了系统的灵活性和适应性。

  • 广泛应用场景

Model3C的2路CAN接口可以应用于多种工业控制场景,如船舶、交通轨道、汽车仪表、医疗器械等领域的区域网络控制。通过CAN通信,设备可以将各种数据发送到彩屏仪表上,为用户提供实时、直观、简洁的信息。

5、以MODEL3C芯片为例,如何做CAN的收发测试

将测试板上的两个CAN接口对接。执行can_sample命令,CAN0会向CAN1发送数据,CAN1会打印接收到的数据。

aic /> can_sample

发送测试数据:

通过调试工具向CAN总线发送测试数据。测试数据可以包括各种类型的数据帧,如标准帧、扩展帧等。确保发送的数据内容正确,并且发送频率和时序符合要求。

观察接收:

观察CAN总线上的接收设备是否能够正确接收发送的测试数据。

验证接收设备的数据内容是否与发送的数据相匹配,并且没有数据丢失或错误。

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

    关注

    450

    文章

    49583

    浏览量

    416879
  • CAN总线
    +关注

    关注

    145

    文章

    1890

    浏览量

    130323
  • CAN
    CAN
    +关注

    关注

    57

    文章

    2657

    浏览量

    462384
  • HMI
    HMI
    +关注

    关注

    9

    文章

    573

    浏览量

    48298
收藏 人收藏

    评论

    相关推荐

    CAN总线入门知识

    最近在调试一个CAN总线的设备遇到一些问题,简单总结一下。本文会对CAN总线进行简单介绍,CAN的硬件链路层,协议层,
    发表于 09-15 15:32 1978次阅读

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

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

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

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

    求大神指点,MC9S12XET256MAL两路CAN总线怎么接收数据?

    求大神指点,MC9S12XET256MAL两路CAN总线怎么接收数据?其中调通一CAN可以收到数据后,想
    发表于 03-03 10:14

    小编补充CAN总线通信的相关知识

    小编补充CAN总线通信的相关知识
    发表于 05-14 06:55

    介绍CAN总线相关概念

    本文主要简单介绍CAN总线相关概念,以及通信协议等知识,和使用STM32自带的bxCAN外设进行CAN
    发表于 08-19 08:01

    简单介绍CAN总线相关概念

    基于STM32的CAN总线通信学习笔记本文主要简单介绍CAN总线相关概念,以及通信协议等
    发表于 08-19 07:23

    GY8608 CAN总线接口的双步进电机控制器

    GY8608 CAN 总线接口的双步进电机控制器:1、CAN 总线接口,可通过同时控制2
    发表于 01-14 18:40 34次下载

    CAN总线应用—汽车领域

    文中分析了CAN总线的发展和汽车CAN总线技术的特征,对CAN
    发表于 12-14 14:58 86次下载

    CAN总线协议是什么?CAN总线协议有哪些?CAN总线协议知识分析

    本文说的CAN即是一种总线,也是一种协议。因此,我们常听见CAN总线,也常听见CAN协议。CAN
    的头像 发表于 10-03 19:53 7.4w次阅读
    <b class='flag-5'>CAN</b><b class='flag-5'>总线</b>协议是什么?<b class='flag-5'>CAN</b><b class='flag-5'>总线</b>协议有哪些?<b class='flag-5'>CAN</b><b class='flag-5'>总线</b>协议<b class='flag-5'>知识</b>分析

    关于CAN总线错误的相关知识

    在本系列文章中,我们将为您详细介绍CAN总线错误的相关知识,包括CAN总线错误的基础概念、
    的头像 发表于 05-27 17:56 2936次阅读

    CAN总线错误的类型介绍

    在本系列文章中,我们将为您详细介绍CAN总线错误的相关知识,包括CAN总线错误的基础概念、
    的头像 发表于 06-13 16:08 7892次阅读

    光纤两路CAN设备搭配用的类型

    想要实现这种连接模式,所有的CAN光纤转换器都应该为两路光纤一CAN的类型,而且还不是那种可以和一光纤
    的头像 发表于 07-22 14:11 777次阅读

    CAN总线基础知识

    CAN总线是一种常用的总线,对于刚开始接触CAN总线的,面对着各式各样的资料,可能不知道从何看起,今天科普一下
    的头像 发表于 02-09 15:43 3557次阅读

    工业级HMI芯片Model3C详解(三)通信接口

    Model3C是一款基于RISC-V的高性能、国产自主、工业级高清显示与智能控制MCU,集成了内置以太网控制器,配备2CAN、4UART、5组GPIO、2
    的头像 发表于 06-21 17:01 334次阅读
    工业级HMI芯片<b class='flag-5'>Model3C</b>详解(三)通信接口