CAN学习笔记

特点:

1.传输方式:广播式和请求式

2.高速CAN 125-1Mbps  40m  低速CAN 10k-125kbps  1km

3.11/29帧ID  区分消息功能 同时决定优先级

4.半双工  异步  差分  多对多  

5.高速和低速,主要区别是配置波特率不同,一般推荐250K,保证距离和传输速度

6.CAN最多挂载110个节点,但一般控制在30-50个

7.CAN使用位同步的方式来抗干扰、吸收误差,提高通讯能力

8.不支持使用DMA进行数据收发

9、三个发送邮箱,最多同时缓存三个报文

区别:

硬件电路:

CAN收发器作用:输出电平转换  输出驱动  输入采样   与单片机相连  无需交叉  

高速CAN使用闭环网络,CAN_H 和 CAN_L两端并上120欧电阻

低速CAN使用开环网络,CAN_H和CAN_L其中一端加2.2k电阻

实际电路测试:

H和L两端电阻是否是60欧姆,L对地,2.4V左右,H对地在2.6V左右 

CAN电平标准:

显性0电压差v 隐性1电压差v
高速CAN 2 0
低速CAN 3 -1.5

CAN的数据帧格式:

数据帧RTR位必须为显性电平,远程帧RTR位必须为隐形电平

CAN通讯相关配置

  CAN_InitStructure.TTCM              = DISABLE; //时间触发通信,无时间触发功能
  CAN_InitStructure.ABOM              = ENABLE; //自动总线管理,自动尝试连接总线,用于总线故障后的恢复
  CAN_InitStructure.AWKUM            = ENABLE;//总线唤醒,总线由活动时会从休眠中唤醒总线
  CAN_InitStructure.NART              = ENABLE;//启用禁用自动重发,enable表示禁止重新发送未成功发送的消息,避免总线阻塞
  CAN_InitStructure.RFLM              = DISABLE;//新的报文是否会覆盖旧的报文消息,适合实时更新数据的系统
  CAN_InitStructure.TXFP              = ENABLE;//优先级由发送请求的顺序决定  禁用表示按照标识符确定优先级
  CAN_InitStructure.OperatingMode     = OPERATINGMODE;//工作模式,正确
  CAN_InitStructure.RSJW              = CAN_BIT_RSJW;//时间再同步,调整收发产生的时间偏差,维持CAN同步
  CAN_InitStructure.TBS1              = CAN_BIT_BS1;//
  CAN_InitStructure.TBS2              = CAN_BIT_BS2;
  CAN_InitStructure.BaudRatePres

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值