最近在整理一年来收集的文档,按照内容进行分类,后续供大家下载,这样可以更高效地找到您需要的内容。

这次的主要任务是把CAN通信的电路从头到尾过一遍,然后再结合实际中的产品应用情况总结一下。

不仅是BMS上,绝大部分ECU都会具备CAN通信功能,它太常见了,常见得很容易让人忽略它。CAN(Controller Area Network 控制器局域网)是二十世纪八十年代初德国Bosch公司为解决现代汽车中众多ECU之间的数据交换而开发的一种串行通信协议(图片来源于网络)。

我们比较熟知关于CAN的标准为ISO 11898,更进一步地描述是参照ISO/OSI基本模型,ISO 11898标准定义了CAN通信的物理层与数据链路层,这里我们主要讨论的是物理层,下图很生动地描述了上述的层次关系,建议大家仔细看一下。

说到了ISO 11898,再顺便展开一下,这个标准经过目前修订后,只包括了以下四个部分:其中第二部分与第三部分介绍的是高速CAN与低速CAN(125k bit/s以下),我们大部分工作中遇到的场景是高速CAN,本文的对象也是高速CAN。新标准在第二部分中加入了CANFD的内容。

物理层是整个CAN通信的基础,为节点之间提供数据通信的媒介和互联的设备,实际BMS硬件电路上搭建的就是这个部分,如下图所示,描述了整个物理连接的媒介与设备。

很多单片机内部都集成了CAN控制器模块,拿比较常用的S32K14X系列单片机来举例,内部的CAN控制器功能框图如下,它将单片机的CPU想要发送的信息,转换成符合CAN标准的帧报文,再通过CAN收发器发送到总线上面。

CAN收发器将二进制的数据流(RX/TX)转换成了差分信号(CANH/CANL),CAN收发器电路是本文主要想讨论的地方;之前有分析过很多BMS的竞品,它们使用的CAN收发器大部分是来自NXP的TJA1051,内部框图如下所示。

CAN收发器的一般应用电路如下图,一般情况下收发器是没有SPLIT引脚的;下图中也标识了各个器件的作用,注意这些器件并不是一定要布置的。

共模电感作用是为共模干扰信号提供高阻抗路径,而为差分信号提供低阻抗通路;一般为了避免漏感以及寄生电容引起的振荡问题,要求共模电感的漏感在500nH以下,并要将共模电感靠近收发器放置;大部分的BMS上CAN电路中都会有这个共模电感。

电容CH与CL是用来对端口进行滤波的,注意这两个电容的容值不能太大,避免造成通信故障,典型推荐值为小于100pF@500k bit/s;PCB推荐布局放置在共模电感与ESD保护二极管之间。

电阻RT/2就是CAN通信的终端匹配电阻,标准要求阻值为120Ω,等于传输线的特征阻抗,这样每一个RT/2为60Ω;匹配电阻是为了减小高速CAN信号在线上的反射。

电容CG与电阻RT/2组成了低通滤波器,电容的推荐值为4.7nF~47nF;这种用法已经在大量的实践中得到证明,可以有效地降低干扰。

顺便再提一句,在ISO 11898-2_2003中给出了终端电阻的取值范围,而且还给出了功率的大小(220mW MIN);但在2016年的新版标准中我还没找到,不知道为什么。

总结:

本文概括性地把CAN通信过了一遍,主要介绍了CAN收发器的应用电路;还有很多内容没有涉及,例如信号质量要求、CAN隔离实现方案、充电CAN端口防护、CAN通信共地问题、CAN屏蔽地等等,每个内容展开后都比较麻烦,后面再总结吧。以上所有,仅供参考。

单片机can通信可以接多少个设备_总结BMS上CAN收发器电路的几个要点相关推荐

  1. 单片机can通信可以接多少个设备_51单片机的多机并行通信系统应用

    在一些复杂的系统中,系统与分系统.分系统与设备等之间存在数据的传递问题,往往采用通信的方式来解决.由于分系统.没备等通信波特率的不同,特别是一些特殊波特率设备的存在,使得系统中设备间的相互通信不易实现 ...

  2. 51单片机~串口通信(讲解+代码)

    51单片机~串口通信 (一)计算机串行通信原理: 综上:所以在设置的时候,经常将SCON设置为0X50==0101 0000 ,使用方式1. (二)工作: 中断控制 led灯,每发送一条指令灯亮或灭( ...

  3. 单片机串口通信与同步异步通信

    文章目录 一.串口通信 二.异步通信 三.同步通信 四.串行通信的传输方向 一.串口通信 1.随着多微机系统的广泛应用和计算机网络技术的普及,计算机的通信功能愈来愈显得重要.计算机通信是指计算机与外部 ...

  4. 4.3 51单片机-串口通信

    4.3 串口通信 4.3.1 通信的概念 通信一词按照传统的理解就是信息的传输与交换. 对于单片机来说,通信则与传感器.存储芯片.外围控制芯片等技术紧密结合,成为整个单片机系统的"神经中枢& ...

  5. labview与单片机正弦信号_labview与单片机串口通信

    串口, VISA 和 MSComm 控件,与单片机通信 visa 编写串口程序时是不是必须要安装 MSComm 控件? 首先是 labview 有自带的串口资源,即 visa 控件,不需要安装 MSC ...

  6. STC89C52单片机串口通信以及代码演示

    目录 串口介绍 硬件电路 电平标准 常见通讯接口比较 51单片机的UART 串口参数及时序图 串口通信流程图 串口相关寄存器 波特率的计算方法 中断模式以及寄存器的配置 数据显示模式 代码示例(串口与 ...

  7. 基于PC与单片机串口通信的温度监控系统程序设计

    基于PC与单片机串口通信的温度监控系统程序设计 1.系统介绍 1)本系统主要讲解基于PC与单片机串口通信的温度监控系统程序设计(如图1),上位机采用常用的PC机,下位机使用的是STC89C52单片机, ...

  8. 51单片机串口通信原理

    计算机串行通信基础 通信有串行通信和并行通信两种方式 串行通信: 将数据字节分为一位一位的形式在一条数据线上逐个传送.如下图所示         串行通信特点:传输线少,长距离传送时成本低,且可以利用 ...

  9. 51单片机-串口通信

    目录 1.什么是通信 1.1.通信的概念 1.2.传送方式 1.3.同步方式 1.4.传送方向 1.5.校验方式 2.单片机串口介绍 2.1.硬件电路 2.2.电平标准 2.3.常见接口 2.4.内部 ...

最新文章

  1. Agile DSL Development in Ruby 笔记
  2. c语言2维动态数组的创建,如何创建一个动态2维数组?
  3. 挑战NLP、量子计算难题,300多支本科生队伍同场角逐,2020 ASC超算竞赛一触即发...
  4. Windows NT体系结构
  5. android volley post 参数,android – 使用Volley POST传递参数
  6. 2018年最具就业前景的7大编程语言:Java、Python、JavaScript、C++、C#、PHP、Perl ......
  7. 面向.NET开发人员的Dapr——俯瞰Dapr
  8. 冲击波病毒攻击-《截获网站服务器数据》
  9. php 内容编码错误,PHP输出缓冲,ob_gzhandler引起的内容编码错误?
  10. 理想汽车已累计交付2万台 仅用时10个月
  11. 线程池中 corePoolSize, maximumPoolSize, poolSize理解
  12. 2016计算机二级java_2016年计算机二级《JAVA》考试练习题
  13. CHIL-SQL-服务器 - RDBMS
  14. 创建font_使用python创建秒表
  15. 抖音直播预告开通条件是什么?
  16. 自定义View来显示多条支付信息
  17. 各大公司的大数据质量监控平台
  18. 经典图像质量评价指标原理
  19. html设置字体为雅黑,html怎么设置字体为宋体 html怎么设置字体为微软雅黑?
  20. sqlite3 dbconfig说明

热门文章

  1. 【报告分享】字节跳动2019年企业社会责任报告.pdf(附下载链接)
  2. 【电子书分享】决战大数据-驾驭未来商业的利器.pdf(附下载链接)
  3. linux shell tr,shell脚本 之 tee tr
  4. ROS入门-13.服务数据的定义与使用
  5. MLflow机器学习工作流框架更新(2019.3)
  6. Android技能树 — 网络小结(6)之 OkHttp超超超超超超超详细解析
  7. 性能测试:基础(1)
  8. 游戏王血计算机,【统计】历代主角控血一览
  9. 小括号教学设计导入_【干货】教学设计万能模板已到达,各科都能用!
  10. 计算机日志研究方法,基于日志的计算机取证技术研究与实现