本文目录一览

1,CAN总线中使用11为标识符还是28位是由什么决定的啊

标准帧是11位标示符,扩展帧采用29位标示符,不是28位
1.can协议中有规定,在某几位发送目的站的地址,目的站可以通过对这几位进行选择,自行决定是否接受该消息,是自己变成设定的2.一般can通信芯片都可以在寄存器里设定自己需要接受的标识符等a要和b通信,a要指导b的标识符,然后发出去,b发现标识符正确接受,c和d读完标识符后选择丢弃。c d节点选择不同的标识符即可。你的想法是对的。要实现can通信,选择一个合适的can控制芯片和驱动芯片即可

CAN总线中使用11为标识符还是28位是由什么决定的啊

2,CAN总线标准格式数据帧的最小位数为多少最大位数又为多少

标准格式数据帧包括:1位帧起始位,11位ID位+1IRQ位,8个控制位,8字节的数据位,2字节的CRC校验位,7个终止位(记得不一定全面)同时有码流控制功能,即位填充功能.当出现4个相同电平的位时,会在中间插入1个不同的位.码流填...

CAN总线标准格式数据帧的最小位数为多少最大位数又为多少

3,can总线问题

首先不得不说提问者爱思考也爱探究竟,不过我要提醒您一句的是,CAN总线数据帧与数据帧可不像串口一样紧挨着,之间还有“帧间空间”,也就是说,即使循环发送CAN帧,也至少还有3位隐性位间歇场,换句话说,最小间隔至少是8+3=11位,即16*11/8=22微秒。
1,传感器是不能直接连can的,是由单片机采集传感器的信号然后通过can总线发出去,所以要考虑的是传感器和单片机的连接2.这个根据你的实际需求可以自己去设定时间3,。一般情况不用人去管了,只需要出问题了再进行维修4,这个就看你系统硬件是怎么设计的了,不同方案肯定不一样5,这个依然看你的硬件设计来估算

can总线问题

4,can 标准帧长度能超过108位吗

不能超过108位。ID Data0..87E0: 02 21 C1 00 00 00 00 00 (02:单帧&数据长度为2;21 C1: 实际数据0&数据1)7E8: 10 14 61 C1 41 43 41 31 (1:应答第一帧;0 14: 数据长度20;61: 服务名;C1 41: DID;43 41 31: 为实际数据0~2 )7E0: 30 00 00 00 00 00 00 00 (3: 流控制帧,表示让7E8继续发送剩余数据)7E8: 21 38 39 41 32 53 5A 46 (2: 连续帧;1: 此帧为连续 续帧的第一帧; 38 39 …… 46: 实际数据3~9)7E8: 22 45 41 38 37 36 39 01(2: 连续帧;2: 此帧为连续 续帧的第二帧; 45 41 …… 01: 实际数据10~16)以上粗体为数据长度14(非实际数据长度)。连续帧 续帧最大为F,最大长度为连续帧的 F*7+第一帧的3=15*7+3=108

5,can总线发了几帧就停了

扩展帧和标准帧的区别在于:扩展帧的仲裁域有29位,可以出现2^29中报文,且在数据链路上是有间隙的(对操作者透明)。标准帧的仲裁域是连续的11位,可以出现2^11种报文;控制帧中的dlc(数据长度)完全相同,但保留位不同,标准帧ide、r0,扩展帧r1、r0,必须以显性电平发送(由数据链路层操作),对程序员透明;其它的都一模一样,所以,其实can标准帧和扩展帧只是在id的长度上不一样,以能扩展更多的can节点,更好地支持上层协议而已。
CAN总线发多帧数据?是说不间断的发送多帧数据吗?这个不科学,给你举个例子。A的缓冲三帧连续发的CAN数据,ID是0x000005,在A发送第一帧的同时,B准备发送CAN数据,B的数据帧ID是0x000001,等A发完第一帧后,A的第二帧肯定是和B的数据一起仲裁,结果是A仲裁失利,等B发完才能继续发送。你要发多帧数据,可以看看ISO15765-2,里边就有CAN数据传输协议。

6,CAN总线每帧含多少字节

标准最大可以到131位,扩展帧最大可以到156位。CAN 的高性能和可靠性已被认同,并被广泛地应用于工业自动化、船舶、医疗设备、工业设备等方面。现场总线是当今自动化领域技术发展的热点之一,被誉为自动化领域的计算机局域网。它的出现为分布式控制系统实现各节点之间实时、可靠的数据通信提供了强有力的技术支持。扩展资料:CAN总线通过CAN收发器接口芯片82C250的两个输出端CANH和CANL与物理总线相连,而CANH端的状态只能是高电平或悬浮状态,CANL端只能是低电平或悬浮状态。这就保证不会在出现在RS-485网络中的现象,即当系统有错误,出现多节点同时向总线发送数据时,导致总线呈现短路,从而损坏某些节点的现象。而且CAN节点在错误严重的情况下具有自动关闭输出功能,以使总线上其他节点的操作不受影响,从而保证不会出现像在网络中,因个别节点出现问题,使得总线处于“死锁”状态。而且,CAN具有的完善的通信协议可由CAN控制器芯片及其接口芯片来实现,从而大大降低系统开发难度,缩短了开发周期,这些是仅有电气协议的RS-485所无法比拟的。

7,大神你好我有几个关于CAN总线的问题问你比如说的总线电平值

你好,偶然间发现有人找我,很荣幸。大神愧不敢当,只是接触过一些CAN总线方面的东西,可以互相探讨一下。 CAN总线是一种双绞线,他的电平值是一种差分电压,也就是说总线电平值是双绞线两根线电平的差值,一般制定CAN协议的时候会定义好,如果差分电压高于某个值(自己定义)就表示当前总线是显性状态,用逻辑0表示。 只要总线空闲,任何单元都可以开始发送报文。如果2 个或2 个以上的单元同时开始传送报文,那么就会有总线访问冲突。通过使用识别符的位形式仲裁可以解决这个冲突。仲裁的机制确保信息和时间均不会损失。当具有相同识别符的数据帧和远程帧同时初始化时,数据帧优先于远程帧。仲裁期间,每一个发送器都对发送位的电平与被监控的总线电平进行比较。如果电平相同,则这个单元可以继续发送。如果发送的是一隐性电平而监控视到一显性电平,那么该单元就失去了仲裁必须退出发送状态。仲裁竞争失败的节点,必须等总线空闲时,参与下一次仲裁竞争,直至竞争成功才能把报文发送出去。
不明白啊 = =!

8,关于CAN总线的一些问题

1.标准格式数据帧包括:1位帧起始位,11位ID位+1IRQ位,8个控制位,8字节的数据位,2字节的CRC校验位,7个终止位(记得不一定全面)同时有码流控制功能,即位填充功能。当出现4个相同电平的位时,会在中间插入1个不同的位。码流填充区域包括从起始位一直到数据位结束。具体细节可以参见《现场总线CAN原理与应用》一书,北京航空航天大学出版社。2.11位标识符与屏蔽寄存器和代码寄存器组成了CAN总线的滤波模式。3.初始化总线定时寄存器,控制寄存器,输出寄存器,中断寄存器。4.屏蔽寄存器全部为0xFF,使滤波位“无关”5. 高8位为9,即为0000_1001,CODE0= 0000_1001 MASK0 = 1111_0110 (二进制表示)6. 这个我以前算过,《现场总线CAN原理与应用》一书中有详细介绍,现在书没有在手边,印象里是 BTR0 = 0x43;BTR1 = 0x1c;
can的总线协议和其他协议一样是分层协议,常用的有物理层、传输层、协议层,应用层、网络管理层;can控制器实现协议层,can驱动器和双绞线可以看做物理层和传输层,控制单元之间传输的信号是应用层的,网络管理层是基于应用和协议层实现的。所有ecu都是由处理器+can控制器+can驱动器构成(就can总线而言)只要满足物理层协议要求和应用层要求的设备都可以挂在can总线上,向笔记本,plc,手持设备等

9,汽车 CAN总线的入门

原发布者:明远图文第4讲CAN数据总线(CANBUS)CAN通信技术概述CAN(ControllerAreaNetwork)即控制器局域网络。由于其高性能、高可靠性、及独特的设计,CAN越来越受到人们的重视。国外已有许多大公司的产品采用了这一技术。CAN最初是由德国的BOSCH公司为汽车监测、控制系统而设计的。现代汽车越来越多地采用电子装置控制,如发动机的定时、注油控制,加速、刹车控制(ASC)及复杂的抗锁定刹车系统(ABS)等。由于这些控制需检测及交换大量数据,采用硬接信号线的方式不但烦琐、昂贵,而且难以解决问题,采用CAN总线上述问题便得到很好地解决。1993年CAN成为国际标准ISO11898(高速应用)和ISO11519(低速应用)。CAN的规范从CAN1.2规范(标准格式)发展为兼容CAN1.2规范的CAN2.0规范(CAN2.0A为标准格式,CAN2.0B为扩展格式),目前应用的CAN器件大多符合CAN2.0规范。CAN总线特点CAN总线是一种串行数据通信协议,其通信接口中集成了CAN协议的物理层和数据链路层功能,可完成对通信数据的成帧处理,包括位填充、数据块编码、循环冗余检验、优先级判别等项工作。CAN总线特点如下:(1)可以多主方式工作,网络上任意一个节点均可以在任意时刻主动地向网络上的其他节点发送信息,而不分主从,通信方式灵活。(2)网络上的节点(信息)可分成不同的优先级,可以满足不同的实时要求。(3)采用非破坏性位仲裁总线结构机制,当两个节点同时向网络上传送信息时,优先级低的节点主动
《汽车CAN总线系统原理.设计与应用》 罗峰 电子工业出版社 推荐这本书
can-bus即can总线技术,全称为“控制器局域网总线技术(controller areanetwork-bus)”。can-bus总线技术最早被用于飞机、坦克等武器电子系统的通讯联络上。将这种技术用于民用汽车最早起源于欧洲,在汽车上这种总线网络用于车上各种传感器数据的传递。 目前汽车上的can总线连接方式主要有两种,一种是用于驱动系统的高速can总线,速率可达到500kb/s,另一种是用于车身系统的低速can总线,速率为100kb/s。当然对于中高级轿车还有一些如娱乐系统或智能通讯系统的总线,它们的传输速率更高,可以超过1mb/s。高速can总线主要连接发动机控制单元、abs控制单元、安全气囊控制单元、组合仪表等这些与汽车行驶直接相关的系统。这些系统由于信息传递量较大而且对于信息传递的速度有很高的要求,所以则需要高速can总线来满足其信息传递的需要。车身系统的can总线主要连接像中控锁、电动门窗、后视镜、车内照明灯等对数据传输速率要求不高的车身舒适系统上。

10,单片机串行通信里面的数据帧是怎么理解一帧数据的位数可以改变吗

感觉你的概念不太清晰。上面所说的“1+8bit+1+1”应该是串行通讯一个字节的格式,属于串行通讯中的最小数据格式单位的一种:1个起始位+8个数据位+1个校验位+1个停止位(也有1+8+0+1等等),也就是说如果需要收发N个字节,就有N x (1+8bit+1+1)个这样的组合出现在TXD或RXD线路上,而不是1+nbit+1+1或者1+nx8bit+1+1。这些位中: 1、起始位和停止位:用于同步 2、校验位:用来保证通讯信息的正确性 3、8个数据位:设备需要的真正数据。 起始位和停止位都是收发双方UART适配器自身的硬件完成的,校验位需要程序处理及判断以便知道信息是否正确。一般而言,在初始化设置完成后,软件编程者只需要关注8个数据位及校验位就可以了。 下面说一下帧。 串行通信中,帧信息一般是根据需要自己约定而确定的。其内容一般是由多个8位单字节数据组成,比如你所说的传感器,需要采集电压值,电流值等信息,假设这些信息需要10个字节,那么你的一帧信息最少需要10个字节,也就是收发两方都需要计数,计数到10时才能说明通讯完成。这是最简单的,但大多数应用中规范的做法一帧信息都会包含帧头标识符、帧长度、信息内容及校验信息。给你个链接,这是我以前的回答,其中简单的叙述了帧协议,理解后你可以规定自己的帧格式。http://zhidao.baidu.com/question/273360213.html 对于多个传感器,应给每一个分配一个唯一的地址,只有地址相符的传感器才对主端的信息做应答。地址信息可以包含到通讯协议中,比如: 帧头 + 帧长度 + 中断地址 + 信息内容 + 校验和 如果使用的是51单片机,也可以用串行通讯方式3方式完成,你可以查阅一下资料,我记不住了。
兄弟呀,你干吗要那么着急的想一侦数据就要发完呢?你需要的采集的频率很大吗?我来给你理下思路吧:首先,你得知道并且设置你传感器的采集位数,即采集的精度。其次,你需要多少个采集通道,比如有5个采集通道,那么,你在传数据的时候,就的将每个通道的数据附一个标记,比如一通到为0X01,二通道为0X02等等。再次,你得将每个通道采集的数据放在单片机里的BUFFER里面,建议开一个缓存区来存放你一次采集的多个通道的数据,当然,每个通道采集的数据分开来放,然后,将这个缓存区的数据,一个个的读到串口通信的TX(BUFFER),发送采用中断的方式来做,读数据采用循环指针来读。最后,你得弄清楚一侦数据里每个数据的意思,通信,都是有通信协议的,有同步通信与异步通信之分,主机与单片机之间,最好用相同的通信方式,你所说的串行通信,你可以在8BIT的数据里用一个字节来标识是哪一通道的数据、、、
51单片机串口通信里所说的一帧数据,不同的工作模式帧的格式有可能不一样,比如工作模式3的帧格式为:1位起始位+8位数据位+1位可编程位+1位停止位。一次只能发送8比特的数据,像你说的1+n+1+1,这里的n只能是8,不能是其它数,意思是一帧数据最多只能包含一个字节的数据,如果想要发送N字节,那你必需发送N帧。明白?
最简单的控制(不想用数字电路的话)可以使用4位单片机(没见过吧?),一般复杂控制(比如空调、冰箱、热水器、微波炉等这类家电产品的控制都可以用8位单片机,你可以以这个为标准,凡是功能在这些以下的都可以用8位单片机。一些基础仪器,比如中低档的万用表、示波器、频率计、信号发生器都可以用8位单片机)比较复杂的控制(一些工业专用设备,比如汽车发动机信息采集,数据量比较大,但又较图形图像低的)可以用16位机。32位机一般是arm了,可以用来处理图形、图像、视频等多媒体信息,搭载windows ce操作系统(包括使用office 软件),可以有网络功能(tcp/ip),初初一看像台小电脑似的。
我没有见过,一般都是起止位、8个数据位、奇偶校验位。你的意思是你的单片机tx,rx口上接了两个或者两个以上的传感器采集设备,这个方法不适合,容易造成采集到的数据穿插混乱,采集时序有可能这样:甲设备发送完一个字节,然后乙设备发送一个字节,甲设备发送一个字节、甲发送一个字节、乙发送一个字节……单片机没法去区分这些字节信息。而你想要的结果是甲发送的时候,乙不能发送,只有甲发送完了乙才能发,或者乙发完了甲才能发。建议你找一个支持多串口的MCU吧,或者设置主从机来解决这个问题,因为当前我没有发现一次串行通信可以发n个字节的情况,都是1个字节

文章TAG:can线一帧是多少位can  线一  多少  
下一篇