最近和同事研究CAN总线,不多说先看用OSC802示波器测量数据过程。 看了不少资料,才对CAN有了了解,首先给大家总结一下: 1、其工作原理: 当CAN总线上的一个节点发送数据时,它以报文的形式广播给网络中的所有节点,每个节点都会对其接收。每组报文开始的11位字符为标识符,定义报文的优先级。在同一系统中标识符具有唯一性。因此当几个节点竞争总线读取时,改配置就显得十分重要。 2、信号形态: 首先CAN总线只有两根导线:黄色和绿色分别是CAN_High线和CAN_Low线。 没有收发信号时,两条导线上的电平相同(大约2.5V)。这种电平状态为隐形状态,也称之为隐性电平。有信号时,CAN_High导线的电平升高至少1V;而对应的CAN_Low导线电平降低同样值,这种电平状态为显形状态,也称之为显性电平。 CAN总线就是利用电位差的变化来传输数据的。通常逻辑1表示隐性,而0表示显性。 3、CAN总线协议 CAN总线上传输数据,为了安全,我们遵循CAN总线协议,这样就不容易出错。 CAN标准定义了四种消息类型,分别是: · 数据帧:数据帧将数据从发送器传输到接收器。 · 远程帧:总线节点发出远程帧,请求发送具有同一标识符的数据帧。 · 错误帧:任何节点检测到总线错误就发出错误帧。 · 过载帧:过载帧用在相邻数据帧或远程帧之间的提供附加的延时。 CAN总线数据帧结构这里就不详述了。根据CAN的协议,我们采用Loto虚拟示波器OSC802的触发功能捕捉到CAN总线上的信号变化。
咨询QQ:173393190(添加时注明来自51黑论坛,否则不予通过) Q群:827046152(添加时注明来自51黑论坛,否则不予通过)
|