I2C与CAN的地址与标识符的区别

I2C上的设备一般来说是一主多从

CAN上的设备(节点)没有主从之分

        I2C总线上的每个设备都有一个7位或者10位的从机地址,主设备发起通信时,首先发送目标设备的地址,只有地址对应的从设备才会做出反应。即I2C通信会先选中某个从设备,再进行通信,主机决定给谁发,发什么。

        CAN总线上的设备没有地址。但是CAN总线上传输的数据帧和遥控帧都有一个标识符(identifier,ID)(数据帧用于发送数据,遥控帧用于请求数据)。ID不是地址。CAN总线上有设备在发送数据时,其他所有的设备都可以接收到,但是设备对对帧的ID进行分析。如果是该设备需要的数据,才会接收并进一步进行处理,如果不是,会自动忽略。即CAN通信发数据的设备只管发,不管给谁发,其余的设备自己判断这个数据自己是否需要。

猜你喜欢

转载自blog.csdn.net/weixin_63096487/article/details/132866040
I2C