ARM Mbed在汽车电子中的高效嵌入式系统设计:CAN总线详解

需积分: 50 19 下载量 64 浏览量 更新于2024-08-07 收藏 1.83MB PDF 举报
本文档详细介绍了总线关闭态在嵌入式系统设计中的应用,特别是在ARM Mbed平台上的Fast and Effective Embedded Systems Design。主要内容分为三个部分: 1. 主动错误状态与被动错误状态: - 主动错误状态是系统可以正常参与总线通信的状态,当单元检测到错误时,会主动发出错误标志,以便其他单元能够及时响应。 - 被动错误状态则是可能引发错误的状态,尽管单元仍能通信,但为了防止干扰,接收时不会立即发送错误通知。只有在检测到错误且未被其他主动错误单元发现的情况下,总线才会被视为无误。被动错误状态的单元发送前需要插入延迟传送。 2. 总线关闭态: - 总线关闭态是最严格的通信限制状态,单元完全退出总线通信,信息发送和接收被禁止。这个状态通过发送错误计数器(TEC)和接收错误计数器(REC)来管理,当计数值达到特定阈值(256~未定义)时,系统会自动进入关闭状态。错误状态和计数值之间的关系有助于系统的故障管理和恢复。 3. CAN协议的概述: - CAN (Controller Area Network) 是一种国际标准化的串行通信协议,最初由博世公司为汽车行业开发,旨在减少线束数量,支持高速、可靠的数据传输。文档还介绍了CAN协议的各个组成部分,如帧类型(数据帧、遥控帧、错误帧和过载帧)、同步方法、错误处理机制以及位填充等。 4. CAN的特点: - CAN强调可靠性,通过错误检测和重发机制确保数据传输的准确性。它适用于对安全性、低成本和低能耗有高要求的场景,如汽车电子控制系统。 通过阅读这份指南,读者可以了解到如何在嵌入式系统设计中有效地应用CAN协议,特别是在处理错误状态和维护总线通信稳定性方面。同时,文档提供了一种实用的方法来降低系统复杂性并提高整体性能,这对于那些寻求在汽车或工业自动化等领域的高效通信解决方案的工程师来说是一份宝贵的资源。