CAN总线-----简介

 目录

前言

一、基本概念

二、主流通信协议对比 

三、CAN硬件电路

四、CAN电平标准

五、CAN收发器 – TJA1050(高速CAN)


前言

        本期我们就开始学习CAN总线,本人是跟着江协科技学的,在学习过程中我会发布相关博客来去分享个人所学的知识以及感悟,本期内容是接着前面stm32专栏的后继内容,相关程序也是以stm32来去编写的。(相关视频:CAN总线入门教程 - 持续更新中_哔哩哔哩_bilibili

一、基本概念

  1. CAN总线(Controller Area Network Bus)控制器局域网总线
  2. CAN总线是由BOSCH公司开发的一种简洁易用、传输速度快、易扩展、可靠性高的串行通信总线,广泛应用于汽车、嵌入式、工业控制等领域
  3. CAN总线特征:
  • 两根通信线(CAN_HCAN_L),线路少,无需共地
  • 差分信号通信,抗干扰能力强
  • 高速CANISO11898):125k~1Mbps, <40m
  • 低速CANISO11519):10k~125kbps, <1km
  • 异步,无需时钟线,通信速率由设备各自约定
  • 半双工,可挂载多设备,多设备同时发送数据时通过仲裁判断先后顺序
  • 11/29位报文ID,用于区分消息功能,同时决定优先级
  • 可配置1~8字节的有效载荷
  • 可实现广播式和请求式两种传输方式
  • 应答、CRC校验、位填充、位同步、错误处理等特性

CAN总线我们可以理解为类似一直局域网通讯,也就是在这个“局域网”内所有设备都是可以互相发送信息的,这里并没有所谓的主从之分,大家都是平行设备进行相互通讯,所以在新能源汽车那边应用的相当广泛,当今新能源汽车也是市场需求很大,很多人去入行新能源汽车是必须学习CAN总线的。从上面的介绍我们可以看出,CAN通讯是通过差分信号来通讯的,而且相较于我们之前学的通讯方式,CAN通讯是只有两根通讯线的,非常少,再加上差分通讯,所以抗干扰能力非常强。CAN总线分为高速和低速,高速速度快但距离短,低速速度慢但距离远,不过当今来说高速是使用比较多的,所以我们是以学习高速CAN为主。

二、主流通信协议对比 

名称

引脚

双工

时钟

电平

设备

应用场景

UART

TXRX

全双工

异步

单端

点对点

两个设备互相通信

I2C

SCLSDA

半双工

同步

单端

多设备

一个主控外挂多个模块

SPI

SCKMOSIMISOSS

全双工

同步

单端

多设备

一个主控外挂多个模块(高速)

CAN

CAN_HCAN_L

半双工

异步

差分

多设备

多个主控互相通信

 下图依次是USART、I2C、SPI通讯的通讯图。

三、CAN硬件电路

  • 每个设备通过CAN收发器挂载在CAN总线网络上
  • CAN控制器引出的TXRXCAN收发器相连,CAN收发器引出的CAN_HCAN_L分别与总线的CAN_HCAN_L相连
  • 高速CAN使用闭环网络,CAN_HCAN_L两端添加120Ω的终端电阻
  • 低速CAN使用开环网络,CAN_HCAN_L其中一端添加2.2kΩ的终端电阻

下面我们看到两种CAN总线的硬件电路, 我们看到高速CAN,这里是使用闭环的电路,当默认状态下,CAN_H和CAN_L之间会有一个120欧电阻的电路接通,此时电平是被导通为高电平,所以当设备想发送1的时候,这里就无需对CAN_H和CAN_L进行任何操作,默认状态就是高电平1;当想发送0的时候,这时候CAN_H和CAN_L就会被分开,CAN_H和CAN_L之间就会有电压差实现发送0,如果发送了0之后紧接着发送1的时候,电路就会松开对CAN_H和CAN_L的控制,回归默认状态。

                                 高速CAN                                                                ​​​​​​​     低速CAN

四、CAN电平标准

  • CAN总线采用差分信号,即两线电压差(VCAN_H-VCAN_L)传输数据位
  • 高速CAN规定:

          ​​​​​​​                   电压差为0V时表示逻辑1(隐性电平)

                  电压差为2V时表示逻辑0(显性电平)

  • 低速CAN规定:

          ​​​​​​​        ​​​​​​​        电压差为-1.5V时表示逻辑1(隐性电平)

          ​​​​​​​        ​​​​​​​        电压差为3V时表示逻辑0(显性电平)

 我们之前学过的通信方式都是使用的逻辑电平,而对于CAN通讯我们要学习一种新的电平,也就是差分电平,这是CAN总线在传输过程中使用的电平方式,其效果是跟逻辑电平一致的。下面我们可以看到对于高速CAN的电平是CAN_H和CAN_L默认为2.5V电平电压差为0,这里没有设备电路的干预所以表现为隐性;当发送表示逻辑0的时候,CAN_H和CAN_L就会分开,其之间电压差为2V,这时候是需要相关电路干预的表现为显性。(低速CAN分析也是类似的)

五、CAN收发器 – TJA1050(高速CAN)

 引脚图:

引脚功能说明图: 

 物理层特性:

 以上就是本期的全部内容了,我们下次见!

今日壁纸:

  • 13
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Fitz&

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值