CAN总线学习笔记-CAN帧结构

数据帧

        数据帧:发送设备主动发送数据(广播式)

        标准格式的11ID不够用了,由此产生了扩展格式

SOF:帧起始,表示后面一段波形为传输的数据位

ID:标识符,区分功能,同时决定优先级

RTR:远程请求位,区分数据帧和遥控帧

IDE:扩展标志位,区分标准格式和扩展格式

SRR:替代RTR,协议升级时留下的无意义位

r0/r1:保留位,为后续协议升级留下空间

DLC:数据长度,指示数据段有几个字节(1-8字节的有效载荷)

CRC:循环冗余校验,校验数据是否正确

ACK:应答位,判断数据有没有被接收方接收

CRC/ACK界定符:为应答位前后发送方和接收方释放总线留下时间

EOF:帧结束,表示数据位已经传输完毕

遥控帧

        遥控帧:接收设备主动请求数据(请求式)

        遥控帧无数据段,RTR为隐性电平1,其他部分与数据帧相同

        CAN总线的数据主要依靠发送方自觉广播出来,一般发送放会定一个周期,定时广播自己的数据,但如果发送方没有及时发送出数据,或者说这个数据使用频率太低了,广播太频繁了大家用不到浪费总线资源,广播你太慢了,偶尔有用的话,又及时拿不到,可以规定发送发不需要主动广播这个数据,而是如果有设备需要的话,首先接收方(需要数据的一方)发出一个遥控帧,遥控帧包含报文ID(遥控帧也是广播出来的,每个设备都能收到遥控帧),如果其中某个设备有这个ID的数据,那这个设备就会通过数据帧广播出来

错误帧

        错误帧:某个设备检测出错误时向其他设备通知错误。

        总线上所有设备都会监督总线的数据,一旦发现“位错误”或“填充错误”或“CRC错误”或“格式错误”或“应答错误” ,这些设备便会发出错误帧来破坏数据,同时终止当前的发送设备

过载帧

        过载帧:接收设备通知其尚未做好接收准备。

                当接收方收到大量数据而无法处理时,其可以发出过载帧,延缓发送方的数据发送,以平衡总线负载,避免数据丢失

帧间隔

帧间隔:用于将数据帧及遥控帧与前面的帧分离开

位填充

        位填充规则:发送方每发送5个相同电平后,自动追加一个相反电平的填充位,接收方检测到填充位时,会自动移除填充位,恢复原始数据

        位填充作用:防止数据波形长时间不变化

        增加波形的定时信息,利于接收方执行“再同步”,防止波形长时间无变化,导致接收方不能精确掌握数据采样时机

        将正常数据流与“错误帧”和“过载帧”区分开,标志“错误帧”和“过载帧”的特异性

        保持CAN总线在发送正常数据流时的活跃状态,防止被误认为总线空闲

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/23882.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

先进制造aps专题十一 国内软件/erp行业的现状及对aps行业的启示

看到一个帖子 中国软件行业几乎全军覆没 OSC开源社区 2024-06-03 15:58 广东 刚刚网上冲浪刷到的 网友锐评:都是客户关系型公司。 知名大 V 「Fenng」评论称: 这里所谓的软件行业公司如果立刻倒闭,才能够利好中国整个行业软件生态。有个网…

巨详细Linux安装Nacos教程

巨详细Linux安装Nacos教程 1、检查是否有残留nacos版本2、上传安装包至服务器2.1安装包获取2.2创建相关目录 3、安装Nacos4、配置Nacos4.1修改数据源4.2新建nacos数据库4.3启动nacos4.4把nacos进程交给systemctl管理4.5设置nacos开机自启动 1、检查是否有残留nacos版本 rpm -q…

Unity基础实践小项目

项目流程: 需求分析 开始界面 选择角色面板 排行榜面板 设置面板 游戏面板 确定退出面板 死亡面板 UML类图 准备工作 1.导入资源 2.创建需要的文件夹 3.创建好面板基类 开始场景 开始界面 1.拼面板 2.写脚本 注意事项:注意先设置NGUI的分辨率大小&…

问题:律师会见委托人的方式包括团体会见和( )。 #职场发展#笔记#学习方法

问题:律师会见委托人的方式包括团体会见和( )。 参考答案如图所示

【Python报错】已解决TypeError: can only concatenate str (not “int“) to str

成功解决“TypeError: can only concatenate str (not “int”) to str”错误的全面指南 一、引言 在Python编程中,字符串(str)和整数(int)是两种基本的数据类型。然而,当我们尝试将这两种类型的对象进行连…

[matlab]折线图之多条折线如何绘制实心圆作为标记点

使用MarkerFaceColor是标记点填充的颜色,b,表示blue,蓝色 plot(x, a, d--, MarkerFaceColor, b); % 绘制仿真结果的曲线如果一张图多条曲线那么每条曲线需要单独调用一次plot,每个plot间用hold on 连接 plot(x, a, d--, MarkerF…

通配符SSL证书快速申请攻略

一、什么是通配符SSL证书 通配符SSL证书又叫泛域名SSL证书,可以保护一个主域名及其所有二级子域名,并对该级子域名数量无限制,且添加新的该级子域名无须另外付费。 二、通配符SSL证书有哪些优势 1.节省时间和金钱:与购买和安装…

Spring Boot + URule 实现可视化规则引擎,太优雅了!

Spring Boot URule 实现可视化规则引擎,太优雅了! 一、背景二、介绍三、安装使用四、基础概念整体介绍库文件变量库文件常量库文件参数库文件动作库文件规则集向导式规则集脚本式规则集 决策表其他 五、运用场景六、总结 一、背景 前段时间&#xff0c…

2、Tomcat 线程模型详解

2、Tomcat 线程模型详解 Tomcat I/O模型详解Linux I/O模型详解I/O要解决什么问题Linux的I/O模型分类 Tomcat支持的 I/O 模型Tomcat I/O 模型如何选型 网络编程模型Reactor线程模型单 Reactor 单线程单 Reactor 多线程主从 Reactor 多线程 Tomcat NIO实现Tomcat 异步IO实现 Tomc…

CentOs7 JDK21 安装

CentOs7 JDK21 安装 准备工作 先检查系统是否之前已经安装了jdk 。如果已经安装的话需要卸载。 方式一:使用压缩包的方式 下载jdk21的压缩包 https://www.oracle.com/java/technologies/downloads/ 将下载的gz压缩包上传到服务器并解压 # 创建文件夹 (你可以自…

java web如何调用py脚本文件

Controller public class IndexController {RequestMapping("/pythonTest")ResponseBodypublic String pythonTest(){// 假设你的Python脚本名为script.pyString pythonScriptPath "D:\\project\\c1\\hello.py";ProcessBuilder processBuilder new Proce…

C51学习归纳6 --- UART串口数据通信

这一部分我认为是十分重要的,没有了数据的传输,我们做的很多事情将是没有意义的。我们一般利用串口做两件事,一是单片机向电脑发送信息,二是单片机接收电脑的信息。 一、UART原理 TXD:发送信息通道,RXD: 接收信息通道。我发送你接…

Nginx之初识

1.Nginx概述 Nginx是一个高性能的反向代理和Web服务器软件,因其系统资源消耗低、运行稳定且具有高性能的并发处理能力等特性,在互联网企业中得到广泛的应用。 2.Nginx特性 1.访问路由 现今大型网站的请求量早已不是单一Web服务器可以支撑的了。单一入口…

微服务+分库分表的自增主键ID该如何设计?

一. 前言 分布式ID 是分布式系统里面非常重要的一个组成部分,那么我们在设计分布式ID的时候,需要考虑什么问题呢? ❓简单结构下是怎么实现 ID 的控制的? 单实例系统 :通过时间戳,系统内自增,上…

[Algorithm][动态规划][两个数组的DP][正则表达式匹配][交错字符串][两个字符串的最小ASCII删除和][最长重复子数组]详细讲解

目录 1.正则表达式匹配1.题目链接2.算法原理详解3.代码实现 2.交错字符串1.题目链接2.算法原理详解3.代码实现 3.两个字符串的最小ASCII删除和1.题目链接2.算法原理详解3.代码实现 4.最长重复子数组1.题目链接2.算法原理详解3.代码实现 1.正则表达式匹配 1.题目链接 正则表达…

《令狐带你阅读JDK源码之简单集合ArrayList》

文章目录 Java简单集合ArrayList继承体系源码解析 总结 大家好哈,欢迎来到令狐小哥本期专栏,这期专栏主要是带着大家阅读JDK源码,我会分几期篇幅来介绍这个jdk源码、会进行剖析、梳理,欢迎大家指正阅读。后面我会配套自己的视频进…

计算机网络 期末复习(谢希仁版本)第2章

物理层考虑的是怎样才能在连接各种计算机的传输媒体上传输数据比特流,而不是指具体的传输媒体。4 个特性: 机械特性:指明接口所用接线器的形状和尺寸、引线数目和排列、固定和锁定装置等。 电气特性:指明在接口电缆的各条线上出现…

【python进阶】python图形化编程之美--tkinter模块初探

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,…

白酒:茅台镇白酒的地域特色与环境优势

茅台镇,位于中国贵州省仁怀市,因其与众不同的自然环境和酿酒工艺而成为世界著名的白酒产区。作为茅台镇的品牌,云仓酒庄豪迈白酒以其卓着的品质和口感赢得了广大消费者的喜爱。而这一切,都离不开茅台镇的地域特色和环境优势。 茅台…

Python 知识图谱补全,Knowledge Graph Completion,基于大模型的知识图谱补全,基于LLMs的KGC任务

今天讲一篇文章《Exploring Large Language Models for Knowledge Graph Completion》 ,这篇文章主题:基于大模型做知识图谱补全 1.文章主要思想: 本章描述知识图谱补全中的三个任务:三元组分类、关系预测和实体(链接)预测&…