从 OSI 的 7 层网络模型的角度来看同,CAN(Controller Area Network)现场总线仅仅定义了第 1 层(物理层,见 ISO11898-2 标准)、第 2 层(数据链路层,见 ISO11898-1 标准);而在实际设计中,这两层完全由硬件实现,设计人员无需再为此开发相关软件(Software)或固件(Firmware),只要了解如何调用相关的接口和寄存器,即可完成对 CAN 的控制。如图 2.1 所示。
但 CAN 没有规定应用层。也就是没有规定与实际应用相关的逻辑,比如开关量输入输出,模拟量输入输出。所以本身对于应用来说,是不完整的。这就像铁矿石(物理层)冶炼成铁锭(数据链路层),然后针对具体应用,再加工做成汽车、轮船、钢筋、坦克、钢结构建筑等等。如图 2.2 所示。
因此,基本每个行业的 CAN 应用,都需要一个高层协议来定义 CAN 报文中的 11/29 位标识符、8 字节数据的使用。但在 CAN 总线的工业自动化应用中,由于设备的互通互联的需求越来越多,所以需要一个开放的、标准化的高层协议:这个协议支持各种 CAN 厂商设备的互用性、互换性,能够实现在 CAN 网络中提供标准的、统一的系统通讯模式,提供设备功能描述方式,执行网络管理功能。其中包括: 应用层(Application layer):为网络中每一个有效设备都能够提供一组有用的服务与协议。 通讯描述(Communication profile):提供配置设备、通讯数据的含义,定义数据通讯方式。 设备描述(Device proflile):为设备(类)增加符合规范的行为。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
全部0条评论
快来发表一下你的评论吧 !