CAN(Controller Area Network)即控制器局域网,是一种能够实现分布式实时控制的串行通信网络。 想到CAN就要想到德国的Bosch公司,因为CAN就是这个公司开发的(和Intel) CAN有很多优秀的特点,使得它能够被广泛的应用。比如:传输速度最高到1Mbps,通信距离最远到10km,无损位仲裁机制,多主结构。 近些年来,CAN控制器价格越来越低,很多MCU也集成了CAN控制器。现在每一辆汽车上都装有CAN总线。 参考《项目驱动-CAN-bus现场总线基础教程》 广州周立功单片机科技有限公司 ### CAN知识点总结报告 #### 一、CAN总线概述 CAN(Controller Area Network,控制器局域网)是一种高效、可靠的串行通信网络技术,最初由德国博世公司(Bosch)开发,旨在满足现代汽车电子系统中对于分布式实时控制的需求。随着时间的发展,CAN不仅在汽车行业得到了广泛应用,在船舶电子设备等领域也开始崭露头角。 #### 二、CAN总线特点 CAN总线具有以下显著特点: 1. **高速传输**:最大传输速率可达1Mbps。 2. **远距离通信**:最大通信距离可达10公里。 3. **无损位仲裁机制**:确保多个节点同时发送数据时,不会因冲突导致数据丢失。 4. **多主结构**:支持多个节点同时作为主机进行数据传输,提高了系统的灵活性和可靠性。 #### 三、CAN总线应用场景 - **汽车工业**:CAN总线是现代汽车中不可或缺的一部分,用于实现车辆内部各部件间的通信。 - **船舶电子设备**:随着国家对海防的重视程度不断提高,CAN总线在船舶电子设备中的应用也在逐渐增加。 #### 四、CAN总线标准 CAN总线标准主要关注物理层和数据链路层的设计,具体包括: - **ISO 11898**:定义了高速CAN总线的规范,适用于传输速率为1Mbps的应用场景。 - **ISO 11519**:定义了低速CAN总线的规范,适用于传输速率为125Kbps的应用场景。 - **物理层**:涉及信号的编码方式以及收发器如何将逻辑信号转换为物理信号。 - **数据链路层**:包括帧结构、错误检测和管理等机制。 #### 五、物理层详解 - **接口器件**:CAN总线通常采用三种类型的接口器件来实现信号的转换。 - **差分信号**:利用双绞线来减少外部干扰的影响,保持信号的完整性。 - **“线与”操作**:在多节点环境下,当任意一个节点发送低电平信号时,整个总线就被认为处于低电平状态。 - **同步机制**:为了减少累积误差,CAN总线在连续五个相同位后会自动插入一个相反位。 #### 六、数据链路层详解 - **CAN帧类型**:数据帧、远程帧、错误帧、过载帧和帧间隔。 - **数据帧**:用于节点间的数据传输。 - **远程帧**:请求数据的帧。 - **错误帧**:用于通知错误。 - **过载帧**:表示接收方暂时无法接收更多数据。 - **帧间隔**:用于隔离不同的帧。 - **帧结构** - **帧起始**:由一个显性位(低电平)组成,标志着一个新帧的开始。 - **帧结束**:由七个隐性位(高电平)组成。 - **仲裁段**:决定了数据的优先级,帧ID越小优先级越高。 - **控制段**:包含扩展帧标志位、保留位和数据长度代码。 - **数据段**:数据长度范围为0-8字节。 - **CRC段**:用于校验数据的完整性。 - **ACK段**:接收方反馈确认信息。 #### 七、错误处理与节点状态 - **错误类型** - **CRC错误**:校验失败。 - **格式错误**:帧格式不符合规范。 - **应答错误**:未收到正确的确认信息。 - **位发送错误**:发送时发现总线电平与期望不符。 - **位填充错误**:违反通信规则。 - **节点状态** - 当节点检测到错误时,会进入特定的状态,并执行相应的操作以避免持续干扰通信。 #### 八、构建CAN节点 - **硬件结构**:包括CAN收发器和CAN控制器。 - **软件结构**:包括驱动程序、应用层协议和应用程序。 - **整体架构**:从底层硬件到上层应用,构成完整的CAN节点。 CAN总线作为一种成熟的串行通信技术,凭借其出色的性能和广泛的应用场景,在汽车、船舶等多个领域内发挥着重要作用。随着技术的进步,CAN总线将会继续发展和完善,为更多的应用领域提供支持。
- 粉丝: 3
- 资源: 15
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助