• 博客园
  • 首页
  • 新随笔
  • 联系
  • 管理
  • 订阅
     <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总线系统结构

  1. CAN 控制器

接收控制单元中微处理器发出的数据,处理数据并传给CAN收发器

  1. CAN收发器

将数据传到总线 or 从总线接收数据给控制器

  1. CAN数据传递终端

避免数据传输终了反射回来

  1. 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 错误类型

    过载帧

    帧间隔

分类: 攻城略地
标签: CAN
好文要顶 关注我 收藏该文

Pejoicen
关注 - 0
粉丝 - 17

+加关注

1
0

« 上一篇:经验太重要了
» 下一篇: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">

公告

昵称:Pejoicen
园龄: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;">&lt;</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;">&gt;</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协议,系统结构和帧结构相关推荐

  1. TCP/IP协议专栏——以太帧结构 详解——网络入门和工程维护必看

    以太网帧结构 以太网帧发送数据时都是从8个字节的前导码开始的.前导码是1和0的交互. > > 前导码:作用是通知接收方有数据到来.要与其的时钟保持同步.在物理层加进去的.不属于帧这部分 & ...

  2. 以太网学习笔记1——主要协议及帧结构

    目录奉上,用者自取: 文章目录 1. 以太网主要协议关系介绍 2. 协议介绍及帧结构 2.1 媒体访问控制子层协议MAC 2.2 地址解析协议ARP 2.2.1ARP帧结构 2.2.2 ARP协议工作 ...

  3. 【计算机网络学习笔记06】以太网帧结构、HDLC协议

    [计算机网络学习笔记06]以太网帧结构.HDLC协议 一.以太网帧结构 1.1 两种帧格式 1)Ethernet_II帧格式 2)IEEE802.3帧格式 1.2 帧的3种发送方式 1)单播: 帧从单 ...

  4. 38211协议学习笔记(2)-帧结构和物理资源

    一.基础 二.Numerologies 三.帧结构 3.1 帧和子帧 上行和下行传输帧持续时间位Tf =10ms,每个帧有10个子帧组成,Tsf=1ms:每个子帧中的OFDM数是: 每个帧被平均分成两 ...

  5. LIN总线协议详解2(LIN总线报文帧结构)

    目录 一.LIN总线报文帧结构 (Message Frame ) 1.报文整体机构 2.同步间隔段(Break Field) 3.同步段(Sync Byte Field) 4.受保护 ID 段(Pro ...

  6. 5G/4G:空口帧结构之帧、子帧、时隙、符号、RB。

    5G引入了参数集的概念,针对不同环境选择不同的参数集大大增加了通信的灵活性. 子载波:不同参数集下,子载波间隔的变化,在上一篇中做了比较详细的介绍. 帧结构: 帧(Frame)的时间仍然是10ms,分 ...

  7. HCNA之网络基础【以太网帧结构】

    一.分层结构 OSI七层模型:应用层.表示层.会话层.传输层.网络层.数据链路层.物理层.其中:程序员负责应用层.表示层.以及会话层的工作,而网工负责网络层的路由寻址,以及数据链路层交换机的配置,物理 ...

  8. 5G NR基础参数及帧结构

    本篇主要讲述5G的基础知识--基础参数及帧结构 1.子载波间隔: 我们知道LTE中子载波间隔是固定的15kHz,但NR中采用了更加灵活的子载波间隔,如下表: 我们可以把它叫做numerology,也就 ...

  9. 曼彻斯特编码_两种编码方式以及两种帧结构

    一.不归零制编码(Non-Return to Zero) 对于不归零制编码是最简单的一种编码方式,正电平代表1,负电平代表0.如下图: 其实在不归零制编码中有一个很明显的缺陷,那就是它不是自同步码. ...

最新文章

  1. 从源码到实战:BERT模型训练营
  2. python文本替换 数据库_Python pptx(Power Point)查找和替换文本(ctrl+H)
  3. Python的C/C++扩展
  4. 结构体和类的区别-Objective-C基础
  5. zabbix 自动发现规则 触发器_运维监控实战篇,zabbix自动发现和自动注册图文详解...
  6. showModalDialog模态对话框的使用详解以及浏览器兼容
  7. CCF201809-4 再卖菜(100分)【DFS】
  8. java 内存快照怎么看_jvm工具篇-(1)-分析工具MAT使用(内存快照分析)
  9. [转]laravel 4之视图及Responses
  10. 算法中的最优化方法_学习目录
  11. Linux内核分析(四)----进程管理|网络子系统|虚拟文件系统|驱动简介
  12. 动易软件向网站服务器上传软件,动易CMS粘贴图片自动上传到服务器(Java版)
  13. ps考证分数是用电脑改的吗
  14. 武警部队公安应急人防安监三维可视化交互电子沙盘方案书
  15. AI芯片:寒武纪DianNao,英伟达NVDLA和谷歌TPU1的芯片运算架构对比分析
  16. React-Native 高仿“掘金”App 注册和登录界面
  17. Quartus II工具1——signaltap
  18. 记录下对Clipper.js的使用
  19. java全景图片生成_如何制作全景图片?
  20. 使用Java语言开发在线电影推荐网 电影推荐系统 豆瓣电影爬虫 基于用户、物品的协同过滤推荐算法实现 SSM(Spring+SpringMVC+Mybatis)开发框架 机器学习、人工智能、大数据开发

热门文章

  1. java 中 的 字节流!
  2. Exif文件格式描述
  3. 利用 Sunbird 处置你的日程表
  4. [C/C++基础知识] 面试再谈struct和union大小问题
  5. Git之常用的高效处理技巧
  6. App设计灵感之十二组精美的手机文件管理App设计案例
  7. RxSwift之环境的搭建配置与基础控件的使用
  8. 教你用100多行写一个数据库(附源码)
  9. 11.2.4 jQuery动画
  10. 给定一个数组,求如果排序之后,相邻两数的最大差值,要求时间复杂度O(N),且要求不能用非基于比较的排序。