zoukankan      html  css  js  c++  java
  • 【转】对于CAN ID的理解

    本文主要讲的是自己对于CAN ID的理解,希望对需要的人有帮助,本文以通俗的方式来理解,不涉及到具体CAN通信。

    在接触CAN之前,应该接触过IIC通信,在IIC通信中,在同一条IIC通信总线上每个device有唯一的ID,后续对于device的操作都是通过唯一的ID号来区分。而CAN ID虽然也叫ID,但是意义却不一样,每个CAN device可以接收和发送多条不同的ID报文。

    比如在一条CAN总线上有三个device,叫做A,B,C吧。

    A device有接收ID:202,302;发送ID:101,102;

    B device有接收ID:101,303;发送ID:201,202;

    C device有接收ID:101,102,201;发送ID:302,303;

    如果A device发送了ID为101的一条报文,因为B device和C device都有接收为101的ID,那么B device和C device都可以接收到这条报文。

    如果A device发送了ID为102的一条报文,因为只有C device有接收为102的ID,那么只有C device可以接收到这条报文。

    如果B device发送了ID为202的一条报文,因为只有A device都有接收为202的ID,那么只有A device可以接收到这条报文。

    可以看出,CAN ID其实是个报文过滤器,当总线上报文的ID和自己接收的ID有相匹配的时候,就可以接收相应的报文。

    CAN中的ID是为了定义相应的报文的含义,每个ID对应有自己的具体含义。

    比如,101为电压信号,201为电流信号,这样当A device要发送电压信号时候,就用101 ID的报文,B和C device接收到101 ID的报文之后,知道这是电压信号。

  • 相关阅读:
    Android开发简单计算器
    解决eclipse在开发Android过程中崩溃的问题
    通过Button改变TextView文字颜色
    startActivityForResult方法解决Activity之间数据的保存问题
    A4Desk 网站破解
    windows不为人知的命令集合
    oracle常见故障恢复
    oracle的sql优化
    unix常用抓包方法
    EXT3fs error故障
  • 原文地址:https://www.cnblogs.com/tubujia/p/14110864.html
Copyright © 2011-2022 走看看