问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

CAN总线技术详解:从基础概念到硬件实现

创作时间:
作者:
@小白创作中心

CAN总线技术详解:从基础概念到硬件实现

引用
CSDN
1.
https://blog.csdn.net/m0_73633088/article/details/141105168

CAN总线(Controller Area Network Bus)是一种由BOSCH公司开发的串行通信总线,具有简洁易用、传输速度快、易扩展、可靠性高等特点,广泛应用于汽车、嵌入式、工业控制等领域。

一、基本概念

CAN总线的主要特点如下:

  • 采用两根通信线(CAN_H、CAN_L),无需共地
  • 采用差分信号通信,抗干扰能力强
  • 支持高速(ISO11898)和低速(ISO11519)两种模式
  • 异步通信,无需时钟线
  • 半双工通信,支持多设备同时发送数据
  • 使用11位或29位报文ID区分消息功能并决定优先级
  • 可配置1~8字节的有效载荷
  • 支持广播式和请求式两种传输方式
  • 具有应答、CRC校验、位填充、位同步、错误处理等特性

二、主流通信协议对比

下表对比了CAN总线与其他常见通信协议的主要特点:

名称
引脚
双工
时钟
电平
设备
应用场景
UART
TX、RX
全双工
异步
单端
点对点
两个设备互相通信
I2C
SCL、SDA
半双工
同步
单端
多设备
一个主控外挂多个模块
SPI
SCK、MOSI、MISO、SS
全双工
同步
单端
多设备
一个主控外挂多个模块(高速)
CAN
CAN_H、CAN_L
半双工
异步
差分
多设备
多个主控互相通信

三、CAN硬件电路

CAN总线的硬件电路主要包括:

  • 每个设备通过CAN收发器挂载在CAN总线网络上
  • CAN控制器的TX和RX与CAN收发器相连,CAN收发器的CAN_H和CAN_L与总线相连
  • 高速CAN使用闭环网络,两端添加120Ω终端电阻
  • 低速CAN使用开环网络,一端添加2.2kΩ终端电阻

高速CAN和低速CAN的硬件电路如下图所示:

四、CAN电平标准

CAN总线采用差分信号传输数据位:

  • 高速CAN:
  • 电压差为0V时表示逻辑1(隐性电平)
  • 电压差为2V时表示逻辑0(显性电平)
  • 低速CAN:
  • 电压差为-1.5V时表示逻辑1(隐性电平)
  • 电压差为3V时表示逻辑0(显性电平)

高速CAN的电平状态如下图所示:

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

TJA1050是常用的高速CAN收发器,其引脚图和功能说明如下:

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号