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

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

3天内不再提示

CAN总线的同步有何奥秘

电子设计 来源:电子设计 作者:电子设计 2020-12-26 02:52 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

CAN总线一直以来以稳定、容错性高而著称。要想达到这样的效果,其独特的同步机制是非常重要的一点,本文将为大家讲解一下CAN总线的同步机制以及SJW的作用所在。

CAN总线的同步共有两种方式:硬同步和重同步。

硬同步

在总线刚刚从空闲状态中走出来的时候,在帧头的位置都会进行一次同步。此时所有的节点位时间重新开始,就像所有的运动员都再一次回到了起跑线上。这种同步方式被称作硬同步。

重同步

硬同步时只是在有帧起始信号时起作用,无法确保后续一连串的位时序都是同步的,这个时候重同步就到了发挥作用的时候。具体来说,CAN总线的一个位时间中包含两个缓冲段BS1和BS2:

在两个缓冲段中间的位置,即是读取总线电平的采样点位置,当检测到总线上存在相位差的时候,通过延长BS1段或缩短BS2段来获得同步,这样的方式称为重新同步。

这两个相位缓冲段的延长时间或缩短时间上限由再同步跳转宽度(SJW)给定。采样点是接收节点判断信号逻辑的位置,CAN通讯属于异步通讯,需要通过不断的重新同步才能保证收发节点的采样准确,所以SJW(同步跳转宽度)决定了接收节点是否能有比较好的兼容性。如下图,即是某CAN总线中利用ZLG CANscope进行的采样点与位宽度容忍的快速测试结果:

因此,使用CAN总线的时候,发现位宽度有偏差,则需要对其程序中的位定时寄存器或者晶振进行修正。比如不要使用带小数点的晶振,如11.0592HZ。这样算出来的波特率肯定不准。不要使用陶瓷晶振,会有偏差超过1%的概率,即使重同步也会失败。

波特率计算时,提高适应范围,需要保证12-20(特征16)个的位时间因子,然后通过提高正常节点波特率寄存器中的同步跳转宽度SJW值(加大到2-3个单位时间)来实现。比如使用ZLG两款波特率计算工具,可以计算出良好的波特率寄存器值。

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

    关注

    146

    文章

    2050

    浏览量

    135500
  • 线缆
    +关注

    关注

    5

    文章

    702

    浏览量

    30465
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    利用泰克示波器 CAN 总线解码器加快 CAN 总线的故障排除速度

    什么是 CAN 总线? 控制器局域网络 (CAN) 最初是针对汽车应用而设计的总线结构,但是,它也在其他领域找到用武之地。CAN
    的头像 发表于 04-17 17:35 635次阅读
    利用泰克示波器 <b class='flag-5'>CAN</b> <b class='flag-5'>总线</b>解码器加快 <b class='flag-5'>CAN</b> <b class='flag-5'>总线</b>的故障排除速度

    基于FPGA的轻量级CAN总线控制器实现方案

    CAN总线作为工业和汽车领域最常用的通信总线,具有拓扑结构简洁、可靠性高、传输距离长等优点。CAN总线的非破坏性仲裁机制依赖于帧ID,
    的头像 发表于 04-03 10:10 2380次阅读
    基于FPGA的轻量级<b class='flag-5'>CAN</b><b class='flag-5'>总线</b>控制器实现方案

    开源项目汽车CAN总线分析仪总体介绍

    在做车载、工业控制项目时,CAN 总线调试总遇到协议不兼容、数据抓不全的问题?
    的头像 发表于 02-05 10:03 739次阅读
    开源项目汽车<b class='flag-5'>CAN</b><b class='flag-5'>总线</b>分析仪总体介绍

    实操用一台示波器解码CAN总线通信

    给大家说一下:CAN总线是一种串行通信协议,主要用在汽车领域,目前也延伸到其它行业,比如传播行业、自动化工业等CAN总线CANHIGH和C
    的头像 发表于 12-17 17:34 1139次阅读
    实操用一台示波器解码<b class='flag-5'>CAN</b><b class='flag-5'>总线</b>通信

    CAN集线器什么作用

    CAN集线器作为工业通信网络中的关键设备,主要用于解决CAN总线在实际应用中遇到的 通信距离有限、多速率网络难兼容、以及数据冗余导致负载过高 等问题。在工业自动化、汽车制造、轨道交通等复杂场景中
    的头像 发表于 11-14 14:42 559次阅读
    <b class='flag-5'>CAN</b>集线器<b class='flag-5'>有</b>什么作用

    CAN 总线自定义协议使用说明

    关于can总线的设置
    发表于 11-05 17:00 2次下载

    CAN总线远程调试工具介绍

    一种工程机械领域调试上的创新产品,可用于Codesys 源程序的无线下载联机、远程调试、故障诊断、CAN 总线数据在线监控、透传收发、数据采集、数据分析、远程控制等各种 CAN 总线
    发表于 10-17 16:14 0次下载

    CAN总线断路、短路及反接故障的现象解析及影响评估

    本文导读在实际运行过程中,CAN总线线路可能因多种因素出现故障,其中断路和短路故障较为常见且影响严重。深入了解这两大类故障的现象及对总线的影响,对于快速定位故障、保障系统稳定运行具有重要意义。掌握
    的头像 发表于 10-15 11:41 2715次阅读
    <b class='flag-5'>CAN</b><b class='flag-5'>总线</b>断路、短路及反接故障的现象解析及影响评估

    120Ω的秘密:CAN总线终端电阻的重要性

    末端的电阻。此电阻虽小,但在CAN总线通信中具有十分重要的作用。CAN总线终端电阻的作用主要有两个方面:1.提高抗干扰能力,确保总线快速进入
    的头像 发表于 08-08 11:35 1485次阅读
    120Ω的秘密:<b class='flag-5'>CAN</b><b class='flag-5'>总线</b>终端电阻的重要性

    广成科技CANFD转CAN总线GCAN-418的优势

    作为CAN总线的升级产品,CANFD相较于传统的CAN总线,拥有如下几个方面的优势。
    的头像 发表于 08-05 11:47 1295次阅读
    广成科技CANFD转<b class='flag-5'>CAN</b><b class='flag-5'>总线</b>GCAN-418的优势

    CAN总线电容过大?三种解决方案来了

    时,经常会遇到由于下降沿过缓导致的未采样错误。下降沿过缓通常是由于总线电容过大引起的。由于CAN收发器采用单向驱动结构,上升沿驱动,而下降沿则是通过总线与终端
    的头像 发表于 07-22 11:36 871次阅读
    <b class='flag-5'>CAN</b><b class='flag-5'>总线</b>电容过大?三种解决方案来了

    CAN收发器:总线信号的“翻译官”

    CAN总线通信中,CAN收发器(Transceiver)扮演着至关重要的角色——它就像一位“翻译官”,负责将微控制器(MCU)的数字信号转换为总线上的差分信号,同时把
    的头像 发表于 06-27 11:34 2596次阅读
    <b class='flag-5'>CAN</b>收发器:<b class='flag-5'>总线</b>信号的“翻译官”

    CAN总线采样点不一致的危害

    采样点不一致是CAN总线网络中常见的配置错误,可能导致位错误、同步问题、错误帧增加、节点总线关闭、仲裁失败和确认错误等严重后果。 CAN
    发表于 06-07 08:55

    如何评估CAN总线信号质量

    CAN总线网络的性能在很大程度上取决于其信号质量。信号质量差可能导致通信错误,进而引发系统故障、效率降低甚至安全隐患。因此,评估和确保CAN总线信号质量是维护系统健康和可靠性的关键。
    发表于 06-07 08:46

    如何用泰克MSO5系列混合信号示波器调试IoT和CAN总线

    场景。然而,在IoT系统开发与维护中,CAN总线的调试常面临信号干扰、时序错误、协议冲突等问题。泰克MSO5系列混合信号示波器凭借其高分辨率、多通道同步、协议解码等功能,成为调试CAN
    的头像 发表于 05-30 14:17 1035次阅读
    如何用泰克MSO5系列混合信号示波器调试IoT和<b class='flag-5'>CAN</b><b class='flag-5'>总线</b>