对于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的报文之后,知道这是电压信号。
---------------------
作者:zdc1122
来源:CSDN
原文:https://blog.csdn.net/zdc1122/article/details/77803921
版权声明:本文为博主原创文章,转载请附上博文链接!
对于CAN ID的理解的更多相关文章
- 对规范中每个模块只允许一个id的理解
优点: 每个模块只有一个ID,并且在css中不适用ID,ID从模板中传入js中,则该模块的复用灵活性会非常高.想要复用该模块时,只需要改动两个地方.一个是html中的ID,另外一个是写到全局conf. ...
- 理解SIFT
理解SIFT.tab{font-size:12px; margin-bottom: 10px;}.tab a{cursor:pointer;cursor:pointer;display:inline- ...
- asp.net结合uploadify实现多附件上传
1.说明 uploadify是一款优秀jQuery插件,主要功能是批量上传文件.大多数同学对多附件上传感到棘手,现将asp.net结合uploadfiy如何实现批量上传附件给大家讲解一下,有什么不对的 ...
- Access数据库多表连接查询
第一次在Access中写多表查询,就按照MS数据库中的写法,结果报语法错,原来Access的多表连接查询是不一样的 表A.B.C,A关联B,B关联C,均用ID键关联 一般写法:select * fro ...
- jQuery uploadify 文件上传
uploadify这个插件是基于js里面的jquery库写的.结合了ajax和flash,实现了这个多线程上传的功能.现在最新版为3.2.1. 在线实例 实例预览 Uploadify 在线实例Demo ...
- Python操作RabbitMQ
RabbitMQ介绍 RabbitMQ是一个由erlang开发的AMQP(Advanced Message Queue )的开源实现的产品,RabbitMQ是一个消息代理,从“生产者”接收消息并传递消 ...
- CSS Sprites+CSS3 Icon Font
CSS Sprites+CSS3 Icon Font CSS Sprites在国内很多人叫CSS精灵,是一种网页图片应用处理方式.它允许你将一个页面涉及到的所有零星图片都包含到一张大图中去,这样一来, ...
- php多图上传问题笔记
图片上传好用插件有,比如 uploadify ueditor html5的各种ajax上传插件,大部分都是异步,返回只是true之类,有些时候需要上传图片需要一起上传,其实可以通过操作流程来避免这个 ...
- 博客CSS
<p style="background: #CFE0F8; padding: 5px;">理解Code First及其约定和配置</p> <p id ...
随机推荐
- ThinkPHP 5.0/5.1 自定义404界面的配置
★ 背景还要啥背景,就是觉得不可能用框架自带的 404 界面呗.可能跟之前的版本配置方法有点区别,在此做一下简单的笔记 框架:ThinkPHP 5.1,ThinkPHP5.0.20 ★ 配置过程♩. ...
- JS:onmouseover 、onmouseout
鼠标移动到P标签上时,改变文本和边框样式 <style type="text/css"> .onmouseover { color: red; border: 1px ...
- MySQL-每日定点运行
最近做项目的时候设计每天定点执行的脚本,所以在这 马克一下,方便查找 set time_zone = '+8:00'; set GLOBAL event_scheduler = 1; ...
- 三、Snapman多人协作电子表格之——软件的基本功能
Snapman多人协作电子表格是一个即时工作系统. 一.SnapmanServer服务端 SnapmanServer服务端在安装Snapman软件一起自带,是一个小巧的控制台程序SnapmanServ ...
- java压缩指定目录下的所有文件和文件夹的代码
将代码过程较好的代码段备份一下,下边资料是关于java压缩指定目录下的所有文件和文件夹的代码,希望对码农有帮助. String sourceDir="E:\test";int pa ...
- 软件工程实践-WC项目之C实现
1.Github项目地址 https://github.com/ShadowEvan/homework 基本功能 -c 统计文件字符数(实现) -w 统计文件词数(实现) -l 统计文件行数(实现) ...
- TSC条码打印机C#例程(tsclib.dll调用) 【转】
//---- program.cs using System;using System.Collections.Generic;using System.Windows.Forms; using S ...
- SQL server数据库表碎片比例查询语句
For rebuilding index, here is also a script to figure out the fragmentation and decide whether rebui ...
- k8s部署dashboard:v1.5.1
1.准备dashboard.yaml文件 apiVersion: extensions/v1beta1 kind: Deployment metadata: # Keep the name in sy ...
- mysql之limit使用
在mysql中,limit的使用方式如下: limit m,n --m:表示从哪一行开始查,n:查询多少条 需要明确的是,m表示取条数的起始位置,而n表示取多少条.例如我查询某个表,获取第一条数据,那 ...