了解CAN功能

了解CAN功能,学习CAN功能,理解CAN和串口的区别,以及它和RS485的相似之处。

1、“多主机”特性

在CAN网络通讯中,无需其它设备同意,每个CAN设备都可以主动向外发送数据,且所有设备都会收到数据,包括它自己。而在RS485网络中,其它设备通常需要在主机的协调下才可以进入正常的通讯。

2、“高优先级的标识符设备”优先发送特性

假如网络中有设备在发送“标识符数据”,“高优先级的标识符设备”会打断发送方,进入优先发送“标识符”。如果它发现设备正在发送“非标识符数据”,它会主动让对方发送完成。为了保证多主机特性,“高优先级的标识符设备”的发送频率不要过高。

3、发送方知道发送的数据被正确接收

在CAN网络通讯中,每帧数据发送完成,所有的CAN设备都会给出应答,发送方应答隐性电平,而接收方均回答显性电平。由于显性电平优先,发送方会接收到正确的应答。在TTL串口和RS485网络中,发送方不知道发送是否被对方接收了,也就是说,发送了,对方是否正确收到,它不管。而在CAN中,发送方不仅知道发送,还知道发送是否被正确接收。即使接收方知道“解析标识符”不正确,它们也会给出接收正确的应答。

4、知道网络是否繁忙

在CAN总线空闲时,总线上为隐性电平,而CAN会时刻接收网路中的这些位数据,通过空闲位,它会知道网络是否繁忙。

5、CAN收发器和RS485收发器

通过上图,我们发现CAN收发器和RS485收发器有点相似,但CAN收发器没有“使能发送和使能接收”控制引脚,因此,CAN收发器在发送的同时,也可以接收自己发送的数据,以及其它设备发送来的显性位。CAN允许发送和接收同时进行,但它接收的是自己发送的数据或是显性数据位。TTL串口也可以收发同时进行,但是,它收到的是其它设备的数据。有人会说,把TXD和RXD连接到一起,使用单线通讯,采用软件实现,但方法复杂。如果RS485在发送时,使能了RS485接收,这样就和CAN有点相似了,但是,它不是知道总线是否空闲。即使知道,效率也很低下。CAN采用硬件实现,效率更高,更快。

6、CAN过滤器

CAN过滤器会对指定的标识符进行过滤,但不影响CAN的FIFO工作,即使标识符不匹配,FIFO一样会移入新数据位。经过标识符过滤后,硬件会快速告诉CPU接收到正确的数据。

7、CAN标识符

CAN的硬件决定了一个CAN设备可能有多个设备标识符,也可能只有一个设备标识符。这个标识符,可以理解为地址,也可以理解为ID。在CAN网络中,可能会有多个设备拥有相同的标识符。这样,CAN通讯会更加自由,更加灵活。它不再象串口那样,设备地址需要唯一性才可以实现正确的多机通讯。当然你也可以通过复杂的程序去实现,那样做,实在是太复杂了。

8、CAN空闲位

CAN总线空闲的定义是连续11个位的隐性电平(逻辑为1)。而CAN的显性电平逻辑为0,一旦有显性就说明肯定至少有1个设备节点在发送数据,那就表明总线不是空闲了。CAN的帧间隙是连续3个以上隐性电平。具体多少个空闲位,没有测试。这个是搜索得到的。

以上内容,通过实验总结得到的,可能存在理解偏差。

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

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

相关文章

【面试干货】 非关系型数据库(NoSQL)与 关系型数据库(RDBMS)的比较

【面试干货】 非关系型数据库(NoSQL)与 关系型数据库(RDBMS)的比较 一、引言二、非关系型数据库(NoSQL)2.1 优势 三、关系型数据库(RDBMS)3.1 优势 四、结论 💖The Begin…

孵化器补贴政策提问模板

对于一些需要创业的人来说,找场地是非常非常难的,一个好的场地能够提高创业的成功率,下面这些内容对于孵化器产业园的政策有一个好的提问,可以帮助你们了解这个孵化器合不合适。需要创业的人可以收藏 某孵化器政策示例 提问模板 …

源代码先转字节码,再转机器码的过程

编程语言分类 1. 机器语言 直接使用 (101010) 二进制指令去编写程序, 等于 直接操作硬件优点 : 最底层, 离计算机最近, 执行速度快缺点 : 复杂难记, 开发效率最低, 2. 汇编语言 用英文标签代替一组二进制指令, 本质上仍然是 直接操作硬件优点 : 比较底层, 执行速度最快缺点 …

【竞技宝】欧洲杯:德国被乌克兰逼平,27脚射门仍难得分!

欧洲杯前的热身赛已经全面开启,东道主德国队算是打响了热身赛的第一枪,只可惜他们在主场0比0被乌克兰逼平。整场比赛,德国队都占据明显优势,全场比赛轰出27脚射门,可是却无法实现破门。这个时候德国球迷似乎回想到了前两届世界大赛,球队被“锋无力”支配的恐惧。 本场比赛德国队…

如何制作Peppol文件?

Peppol (Pan-European Public Procurement Online) 是一种用于跨境电子采购的标准协议和网络。它允许企业和政府机构以电子方式交换文件,如电子发票、订单和发货单。如果你需要制作Peppol文件,可以参考如下步骤: 准备必要工具和资源 1.Pepp…

Serif Affinity 2.5 (macOS, Windows) - 专业创意软件

Serif Affinity 2.5 (macOS, Windows) - 专业创意软件 Affinity Designer 2, Affinity Photo 2, Affinity Publisher 2 请访问原文链接:Serif Affinity 2.5 (macOS, Windows) - 专业创意软件,查看最新版。原创作品,转载请保留出处。 作者主…

C语言什么打开⽂件后要及时关闭?

一、问题 对⽂件读写之前,需要使⽤ fopen( ) 函数打开该⽂件:在使⽤完⽂件后,需要及时关闭⽂件。那么,为什么要及时关闭⽂件呢? 二、解答 ⽂件打开的过程是将存放在磁盘等外部设备上的⽂件读⼊到内存中,以…

【第二节】C/C++数据结构之线性表

目录 一、线性表基本说明 1.1 基本概念 1.2 抽象数据类型 1.3 存储结构 1.4 插入与删除的区别 1.5 顺序存储和链式存储的优缺点 二、链表 2.1 基本概念 2.2 抽象数据类型 2.3 单链表的定义 2.4 单链表的基本操作 2.5 单链表模板形式的类定义与实现 三、单向循环链…

项目迭代中新老逻辑切换入口

前言 ​ 日常我们在项目开发中经常会进行项目迭代,比如说开发初期设定的代码逻辑根据功能需求迭代逐渐发现越来越难用,或者改动是对整体较大时,往往会进行专项处理,对这个逻辑进行改造。 ​ 那么就会涉及到原先被调用方切换接口…

成功解决“ModuleNotFoundError: No module named ‘tensorflow_datasets‘”错误的全面指南

成功解决“ModuleNotFoundError: No module named ‘tensorflow_datasets’”错误的全面指南 在Python编程和深度学习项目中,tensorflow_datasets(通常简称为tfds)是一个非常重要的库,它提供了大量现成的数据集,方便…

终于来啦!Stable Diffusion 3将在6月12日正式开源

6月3日晚,著名开源大模型平台Stability AI的联合首席执行官Christian Laforte,在AMD的产品发布会上宣布,文生图模型 Stable Diffusion 3将于6月12日在Hugging Face开源权重。 本次开源的是Stable Diffusion 3的Medium模型,有20亿…

武汉盛势启创科技携手三品软件 EDM系统助力企业图文档数字化

客户简介 武汉盛势启创科技有限公司(以下简称“盛世启创”)是一家专注于新能源汽车零部件领域的科技型企业,其主要业务涵盖新能源汽车三电系统智能传感器、智能座舱及线控底盘控制器的芯片开发、硬件设计、嵌入式系统开发。以及相关产品的生产…

C++第二十三弹---深入理解STL中list的使用

✨个人主页: 熬夜学编程的小林 💗系列专栏: 【C语言详解】 【数据结构详解】【C详解】 目录 1、list的介绍 2、list的使用 2.1、构造函数 2.2、赋值操作符重载 2.3、迭代器使用 2.4、容量操作 2.5、元素访问 2.6、修改操作 2.7、其…

从0开始学人工智能测试节选:Spark -- 结构化数据领域中测试人员的万金油技术(三)

分布式计算原理 分布式计算的原理总结一句话就是:分而治之。 把数据分片,存在不同的机器中,解决数据存储的压力。客户端和服务端之间通过相关协议来自动的完成在不同的机器之间进行数据的存取,用户并不感知数据的物理存储结构。 用…

UIKit之App界面Demo

需求 实现简单的APP界面 功能: 实现滚动实现上层、下层横栏滚动时穿透效果(永远浮在表面,不跟着滚动)。暂用UIView代替,还没学Bar。 分析: 知识点: 实现鼠标拖动的上下滚动:当…

小红书前端2轮面试期望22K,全程问低代码设计

一面(通过) 1、好,那我们开始把,先简单介绍一下自己的一个经历,以及自己有亮点的项目?balabala 2、你可以这样介绍:在这里边主要负责哪几个项目,哪些项目是比较有亮点的&#xff0…

python用PyPDF2函数库方法对pdf文件切割

烦透了那些软件动不动就要收费,于是自己尝试码程序处理pdf分割。 由于PyPDF2更新到了3.0之后,之前网上的旧代码无法使用,查了半天没出准谱,结果百度AI生成了代码,一试,成了! 果然,…

代码随想录-算法训练营day60【单调栈03:柱状图中最大的矩形】

代码随想录-035期-算法训练营【博客笔记汇总表】-CSDN博客 第十章 单调栈part03有了之前单调栈的铺垫,这道题目就不难了。 ● 84.柱状图中最大的矩形https://programmercarl.com/0084.%E6%9F%B1%E7%8A%B6%E5%9B%BE%E4%B8%AD%E6%9C%80%E5%A4%A7%E7%9A%84%E7%9F%A9%E5%BD%A2.htm…

智享直播(三代)2024年:打造24/7实景无人直播,引领年轻资产创业新纪元!

在21世纪的数字化浪潮中,直播行业以其独特的魅力和无限的可能性,正在全球范围内掀起一场前所未有的( keJ0277 )创业革命。而在这场革命中,智享直播(三代)以其创新的技术理念和前瞻的战略布局,立志于2024年打…

怎么用电脑录制视频?小白也能快速上手

随着网络技术的发展,电脑录制视频已经成为了许多人的日常需求,无论是游戏玩家想录制自己的精彩操作,还是上班族需要录制屏幕演示,一款好用的录屏软件变得尤为重要。可是你知道怎么用电脑录制视频吗?本文将介绍两种电脑…