1写在前面
上一篇文章讲述了can和canopen,相信大家can和canopen有一定理解了。本文说的can即是一种总线,也是一种协议。因此,我们常听见can总线,也常听见can协议。
can协议和canopen协议是两套不同的协议。从软硬件层次来划分,can协议属于硬件协议,而canopen属于软件协议。
本篇文章先概述一下can网络,让大家对can总线协议有一个全局的概念,再到底层的can总线协议知识。
2
can网络
can网络可以理解为多台can设备连接在同一条can总线上组合成的网络,其中的can设备我们称之为节点。can网络拓扑结构如下图:
如上图,一个can节点主要包含三类:mcu应用程序、can控制器、can收发器。
2.1 mcu应用程序
mcu应用程序我将其分为三块:业务逻辑代码、协议层代码、底层驱动代码。
a.业务逻辑代码:是根据项目需求而定,也很好理解。比如我读取一个传感器数据,并对其做出相应逻辑处理。
b.协议层代码:比如后续要讲述的canopen。
c.底层驱动代码:配置can总线相应参数、控制收发的代码。
2.2 can控制器
can控制器内部结构还是挺复杂的,一般现在can控制器都是与处理器集成在一起。
其实对于编程的人来说,无非也就是包含一些控制、状态、配置等寄存器。
比如我们看到有些stm32芯片带有can,也就是说can控制器已经集成在stm32芯片中了,我们只需要编程操作其中的寄存器即可。
2.3 can收发器
can收发器:将can收发引脚(can_tx和can_rx)的ttl信号转换成can总线的电平信号。
ps:你可以把can总线通信认为是uart通过485进行通信:can控制器就如uart的控制器,而can收发器就如485转换芯片。
3
iso标准化的can协议
写这一章节的主要目的就是想让大家了解can总线位于osi所在层次。
3.1 iso/osi基本参照模型
【注】
iso:international standardization organization国际标准化组织;
osi:open systems interconnection开放式系统间互联;
3.2 can在osi模型中的定义
【注】
llc:logical link control逻辑链路控制;
mac:medium access control媒介访问控制;
从上图可以知道can总线底层硬件的内容(can控制器、收发器)主要位于osi的第1层和第2层。
4
概述can总线协议
can总线协议:就是为了保证通信(收发)数据在can总线上能稳定传输而制订的一套协议。
can总线协议的内容很多,为方便初学者理解,本文先大概描述一下can总线协议,后续文章详细讲述can总线协议的内容。
4.1 总线信号
can总线为「两线」「差分」信号,用隐形代表逻辑1,显性代表逻辑0。如下图:
4.2 优先级
假如某一时刻,一个设备(节点)往总线发0,一个设备往总线发1。那么总线会呈现什么现象?
答案:最后总线呈现为显性,也就是0。
4.3 位时序
位时序逻辑将监视串行总线,执行采样并调整采样点,在调整采样点时,需要在起始位边沿进行同步并后续的边沿进行再同步。
简单的说就是对一个bit位分几段进行采样,目的就是提高数据传输稳定性。在stm32中底层驱动代码就需要进行位时序编程,在stm32参考手册中也会发现如下位时序图:
4.4 帧的种类和格式
帧的种类有多种:
数据帧:用于发送单元向接收单元传送数据的帧。
遥控帧:用于接收单元向具有相同 id 的发送单元请求数据的帧。
错误帧:用于当检测出错误时向其它单元通知错误的帧。
过载帧:用于接收单元通知其尚未做好接收准备的帧。
帧间隔:用于将数据帧及遥控帧与前面的帧分离开来的帧。
数据帧和遥控帧有标准格式和扩展格式两种格式。标准格式有11个位的标识符id,扩展格式有29个位的id。
4.5 位填充
位填充是为防止突发错误而设定的功能。当同样的电平持续 5 位时则添加一个位的反型数据。如下图:
4.6 错误的种类
can总线协议内容很多,初学者先了解这些,后面文章具体到每一个点上,相信大家就会更明白其中的含义。
瑞萨电子推出全新RAA2230XX降压稳压器产品
基于气胸超声诊断的基本原理、实现与分析
Q1季度电信业务增速同比提高0.8个百分点,同比增长17.7%
音频振荡器电路图分享
一文读懂机器学习的线性代数(10案例)
CANOpen系列教程02_ 理解CAN总线协议
一款专门用于现场操作的多功能监测接收机
意法半导体:驾驶信息与娱乐系统方案
南方五省区农村将实现智能电表和低压集中抄表全覆盖
为什么无线充电会成为下一个风口?
哈佛研究世界第一个全软体机器人:宛如章鱼
中国移动正式发布了2020年至2021年分布式块存储产品集采招标公告
万元以下听个响?来试试这款3000元的Hi-Fi音箱吧!好声音之外,还有时尚的设计
又曝光了一家伪AI明星公司,AI可能是泡沫?
索尼电子推出新型号ES接收器满足各种自定义安装需求
GPS的数据更新率/刷新速度
实验室超声波清洗器的作用
Linus:内核移除对i486 CPU支持提上日程
vivoAPEX2019手机上手评测 在手上仿佛握着颗经自然雕琢的鹅卵石
摩托罗拉Razr独屏幕铰链设计揭秘,采用垂直折叠的翻盖式方案