CAN协议,系统结构和帧结构
- 博客园
- 首页
- 新随笔
- 联系
- 管理
- 订阅
<div class="blogStats"><div id="blog_stats">
随笔- 26
文章- 0
评论- 0
</div><!--end: blogStats --></div><!--end: navigator 博客导航栏 -->
CAN协议,系统结构和帧结构
CAN:Controller Area Network,控制器局域网
是一种能有效支持分布式控制和实时控制的串行通讯网络。
CAN-bus: Controller Area Network-bus,控制器局域网总线技术
CAN总线系统结构
- CAN 控制器
接收控制单元中微处理器发出的数据,处理数据并传给CAN收发器
- CAN收发器
将数据传到总线 or 从总线接收数据给控制器
- CAN数据传递终端
避免数据传输终了反射回来
- CAN数据总线
传输数据的数据线,两根 CAN-high and CAN-low,差分信号
CAN总线系统的数据传输
CAN总线节点上的节点发送数据是以报文的形式广播给网络中所有节点。收发器接收到数据就把数据传送给控制器,再由控制器检查判断是不是所需数据。不是则忽略。
- 网络上任何一个节点在任何时候都可以发送数据
- 多个节点发送数据,优先级低主动退出发送
- 短帧结构,每帧数据信息为0~8字节(具体用户定义),对数据编码而不是地址编码
- CAN每帧都有CRC校验和其他检验措施,严重错误的情况下具有自动关闭输出的功能
CAN总线系统数据格式
CAN-bus通信帧共分为数据帧、远程帧、错误帧、过载帧和帧间隔
五种类型。
- 数据帧
结构上由7个段组成,其中根据仲裁段ID码长度的不同,分为标准帧(CAN2.0A)和扩展帧(CAN2.0B)。
帧起始、帧结束
仲裁段
显性隐性
总线仲裁
- 从该分析过程得出结论是:帧ID值越小,优先级越高
- 对于同为扩展格式数据帧、标准格式远程帧和扩展格式远程帧的情况同理。
控制段
数据段
CRC段
ACK段
远程帧
数据帧与远程帧的区别
CAN-bus 错误类型
过载帧
帧间隔
关注 - 0
粉丝 - 17
» 下一篇:2014年9月23日
</div><div class="postDesc">posted @ <span id="post-date">2014-09-22 19:40</span> <a href="https://www.cnblogs.com/pejoicen/">Pejoicen</a> 阅读(<span id="post_view_count">34428</span>) 评论(<span id="post_comment_count">0</span>) <a href="https://i.cnblogs.com/EditPosts.aspx?postid=3986587" rel="nofollow">编辑</a> <a href="#" onclick="AddToWz(3986587);return false;">收藏</a></div>
</div>
<script type="text/javascript">var allowComments=true,cb_blogId=197595,cb_entryId=3986587,cb_blogApp=currentBlogApp,cb_blogUserGuid='e255cf9f-3838-e411-b908-9dcfd8948a71',cb_entryCreatedDate='2014/9/22 19:40:00';loadViewCount(cb_entryId);var cb_postType=1;</script>
</div><!--end: forFlow -->
</div><!--end: mainContent 主体内容容器--><div id="sideBar"><div id="sideBarMain">
公告
园龄:4年3个月
粉丝:17
关注:0
<div id="calendar"><div id="blog-calendar" style=""><table id="blogCalendar" class="Cal" cellspacing="0" cellpadding="0" title="Calendar">
<tbody><tr><td colspan="7"><table class="CalTitle" cellspacing="0"><tbody><tr><td class="CalNextPrev"><a href="javascript:void(0);" onclick="loadBlogCalendar('2018/11/01');return false;"><</a></td><td align="center">2018年12月</td><td class="CalNextPrev" align="right"><a href="javascript:void(0);" onclick="loadBlogCalendar('2019/01/01');return false;">></a></td></tr>
</tbody></table></td></tr><tr><th class="CalDayHeader" align="center" abbr="日" scope="col">日</th><th class="CalDayHeader" align="center" abbr="一" scope="col">一</th><th class="CalDayHeader" align="center" abbr="二" scope="col">二</th><th class="CalDayHeader" align="center" abbr="三" scope="col">三</th><th class="CalDayHeader" align="center" abbr="四" scope="col">四</th><th class="CalDayHeader" align="center" abbr="五" scope="col">五</th><th class="CalDayHeader" align="center" abbr="六" scope="col">六</th></tr><tr><td class="CalOtherMonthDay" align="center">25</td><td class="CalOtherMonthDay" align="center">26</td><td class="CalOtherMonthDay" align="center">27</td><td class="CalOtherMonthDay" align="center">28</td><td class="CalOtherMonthDay" align="center">29</td><td class="CalOtherMonthDay" align="center">30</td><td class="CalWeekendDay" align="center">1</td></tr><tr><td class="CalWeekendDay" align="center">2</td><td align="center">3</td><td align="center">4</td><td align="center">5</td><td align="center">6</td><td align="center">7</td><td class="CalWeekendDay" align="center">8</td></tr><tr><td class="CalWeekendDay" align="center">9</td><td class="CalTodayDay" align="center">10</td><td align="center">11</td><td align="center">12</td><td align="center">13</td><td align="center">14</td><td class="CalWeekendDay" align="center">15</td></tr><tr><td class="CalWeekendDay" align="center">16</td><td align="center">17</td><td align="center">18</td><td align="center">19</td><td align="center">20</td><td align="center">21</td><td class="CalWeekendDay" align="center">22</td></tr><tr><td class="CalWeekendDay" align="center">23</td><td align="center">24</td><td align="center">25</td><td align="center">26</td><td align="center">27</td><td align="center">28</td><td class="CalWeekendDay" align="center">29</td></tr><tr><td class="CalWeekendDay" align="center">30</td><td align="center">31</td><td class="CalOtherMonthDay" align="center">1</td><td class="CalOtherMonthDay" align="center">2</td><td class="CalOtherMonthDay" align="center">3</td><td class="CalOtherMonthDay" align="center">4</td><td class="CalOtherMonthDay" align="center">5</td></tr>
<div id="leftcontentcontainer"><div id="blog-sidecolumn"><div id="sidebar_search" class="sidebar-block">
搜索
常用链接
- 我的随笔
- 我的评论
- 我的参与
- 最新评论
- 我的标签
- 更多链接
我的标签
- DSP(2)
- USB(2)
- vivado(2)
- 枚举(2)
- U盘(1)
- CAN(1)
- cmd(1)
- CSL(1)
- datasheet(1)
- DMA(1)
- 更多
随笔分类
- Altera
- FAT(1)
- FPGA(2)
- job
- USB(2)
- UTMI
- 攻城略地(7)
- 攻城狮(2)
随笔档案
- 2016年8月 (1)
- 2016年5月 (1)
- 2016年3月 (1)
- 2016年2月 (3)
- 2015年8月 (1)
- 2015年7月 (1)
- 2015年6月 (1)
- 2015年4月 (2)
- 2015年1月 (1)
- 2014年12月 (1)
- 2014年11月 (2)
- 2014年10月 (1)
- 2014年9月 (10)
最新评论
<div id="RecentCommentsBlock"></div>
阅读排行榜
- 1. CAN协议,系统结构和帧结构(34427)
- 2. FPGA时序约束和timequest timing analyzer(14548)
- 3. CCS调试教程(11355)
- 4. vivado保存debug波形(3639)
- 5. vivado编译出错 [Synth 8-729] [Synth 8-787](1958)
评论排行榜
推荐排行榜
- 1. FPGA时序约束和timequest timing analyzer(2)
- 2. CAN协议,系统结构和帧结构(1)
</div><!--end: sideBarMain --> </div><!--end: sideBar 侧边栏容器 --> <div class="clear"></div> </div>
CAN协议,系统结构和帧结构相关推荐
- TCP/IP协议专栏——以太帧结构 详解——网络入门和工程维护必看
以太网帧结构 以太网帧发送数据时都是从8个字节的前导码开始的.前导码是1和0的交互. > > 前导码:作用是通知接收方有数据到来.要与其的时钟保持同步.在物理层加进去的.不属于帧这部分 & ...
- 以太网学习笔记1——主要协议及帧结构
目录奉上,用者自取: 文章目录 1. 以太网主要协议关系介绍 2. 协议介绍及帧结构 2.1 媒体访问控制子层协议MAC 2.2 地址解析协议ARP 2.2.1ARP帧结构 2.2.2 ARP协议工作 ...
- 【计算机网络学习笔记06】以太网帧结构、HDLC协议
[计算机网络学习笔记06]以太网帧结构.HDLC协议 一.以太网帧结构 1.1 两种帧格式 1)Ethernet_II帧格式 2)IEEE802.3帧格式 1.2 帧的3种发送方式 1)单播: 帧从单 ...
- 38211协议学习笔记(2)-帧结构和物理资源
一.基础 二.Numerologies 三.帧结构 3.1 帧和子帧 上行和下行传输帧持续时间位Tf =10ms,每个帧有10个子帧组成,Tsf=1ms:每个子帧中的OFDM数是: 每个帧被平均分成两 ...
- LIN总线协议详解2(LIN总线报文帧结构)
目录 一.LIN总线报文帧结构 (Message Frame ) 1.报文整体机构 2.同步间隔段(Break Field) 3.同步段(Sync Byte Field) 4.受保护 ID 段(Pro ...
- 5G/4G:空口帧结构之帧、子帧、时隙、符号、RB。
5G引入了参数集的概念,针对不同环境选择不同的参数集大大增加了通信的灵活性. 子载波:不同参数集下,子载波间隔的变化,在上一篇中做了比较详细的介绍. 帧结构: 帧(Frame)的时间仍然是10ms,分 ...
- HCNA之网络基础【以太网帧结构】
一.分层结构 OSI七层模型:应用层.表示层.会话层.传输层.网络层.数据链路层.物理层.其中:程序员负责应用层.表示层.以及会话层的工作,而网工负责网络层的路由寻址,以及数据链路层交换机的配置,物理 ...
- 5G NR基础参数及帧结构
本篇主要讲述5G的基础知识--基础参数及帧结构 1.子载波间隔: 我们知道LTE中子载波间隔是固定的15kHz,但NR中采用了更加灵活的子载波间隔,如下表: 我们可以把它叫做numerology,也就 ...
- 曼彻斯特编码_两种编码方式以及两种帧结构
一.不归零制编码(Non-Return to Zero) 对于不归零制编码是最简单的一种编码方式,正电平代表1,负电平代表0.如下图: 其实在不归零制编码中有一个很明显的缺陷,那就是它不是自同步码. ...
最新文章
- 从源码到实战:BERT模型训练营
- python文本替换 数据库_Python pptx(Power Point)查找和替换文本(ctrl+H)
- Python的C/C++扩展
- 结构体和类的区别-Objective-C基础
- zabbix 自动发现规则 触发器_运维监控实战篇,zabbix自动发现和自动注册图文详解...
- showModalDialog模态对话框的使用详解以及浏览器兼容
- CCF201809-4 再卖菜(100分)【DFS】
- java 内存快照怎么看_jvm工具篇-(1)-分析工具MAT使用(内存快照分析)
- [转]laravel 4之视图及Responses
- 算法中的最优化方法_学习目录
- Linux内核分析(四)----进程管理|网络子系统|虚拟文件系统|驱动简介
- 动易软件向网站服务器上传软件,动易CMS粘贴图片自动上传到服务器(Java版)
- ps考证分数是用电脑改的吗
- 武警部队公安应急人防安监三维可视化交互电子沙盘方案书
- AI芯片:寒武纪DianNao,英伟达NVDLA和谷歌TPU1的芯片运算架构对比分析
- React-Native 高仿“掘金”App 注册和登录界面
- Quartus II工具1——signaltap
- 记录下对Clipper.js的使用
- java全景图片生成_如何制作全景图片?
- 使用Java语言开发在线电影推荐网 电影推荐系统 豆瓣电影爬虫 基于用户、物品的协同过滤推荐算法实现 SSM(Spring+SpringMVC+Mybatis)开发框架 机器学习、人工智能、大数据开发