CAN2.0规范详解:标准与扩展格式

需积分: 9 18 下载量 72 浏览量 更新于2024-07-20 收藏 409KB PDF 举报
AN,Controller Area Network)是一种高性能、高可靠性以及灵活性的串行通信协议,广泛应用于汽车电子、工业自动化等领域。CAN 2.0规范是CAN协议的一个重要版本,由周立功公司出品的文档详细介绍了该规范的主要特点。 在CAN 2.0规范中,主要包含了两个部分:A部分和B部分。A部分主要描述了按照CAN 1.2规范定义的报文格式,即标准格式。而B部分则引入了扩展格式,扩展了报文标识符(ID)的范围,从原来的11位增加到了29位,提供了更大的地址空间,适用于需要更复杂寻址的应用场景。 1. **报文格式**: - **标准格式**:具有11位的标识符,适合简单的通讯需求,与早期的CAN 1.2规范兼容。 - **扩展格式**:扩展到29位的标识符,提供更广阔的地址空间,可用于更复杂的网络管理和数据区分。 2. **帧类型**: - **数据帧**:用于传输实际的数据,包含标识符和数据字段。 - **远程帧**:请求其他节点发送数据帧,不包含数据,只有标识符。 - **错误帧**:表示网络中检测到错误,通过特定的位模式发出。 - **过载帧**:在网络负载过高时,用于延长总线空闲时间,帮助恢复同步。 - **帧间空间**:确保帧之间的最小间隔,避免信号重叠。 3. **报文校验**:CAN 2.0使用CRC(循环冗余校验)来检验数据的正确性,确保数据在传输过程中的完整性。 4. **编码**:CAN协议使用二进制反码编码,可以提高抗干扰能力,并能快速检测出单比特错误。 5. **错误处理**: - **错误检测**:当节点检测到总线错误时,会立即响应。 - **错误标定**:根据错误计数器确定节点的错误状态,如主动错误标志和被动错误标志。 6. **故障界定**:在错误发生时,CAN协议允许节点进入不同的故障状态,例如总线关闭,以保护网络的稳定性。 7. **位定时要求**:规定了位的传输时间,包括位时间的细分,如采样点位置,确保不同速度的节点能够正确同步。 8. **CAN振荡器容差**:考虑到实际硬件的差异,CAN 2.0规范提出了振荡器容差要求,以保证网络中各个节点的时间基准一致。 CAN 2.0规范通过增加报文格式的多样性,提高了通讯系统的灵活性和效率,同时加强了错误检测和处理机制,提升了网络的可靠性和稳定性。这对于需要实时数据交换且对错误敏感的应用,如汽车电子系统和工业自动化设备,至关重要。