ZKX's LAB

CAN总线硬件控制的帧 CAN总线协议通信的数据是什么格式,及其显示的波形图是怎样的?

2020-07-24知识13

如何进行汽车 CAN 总线开发? CAN入门书-图文-文库 ? wenku.baidu.com 该入门书源自于著名汽车芯片生产商Renesas(瑞萨),个人感觉该材料特点实战意义很强,比较适合实战开发中学习使用。这里简单。CAN总线如何设置ID接收几个不同的数据,今天有网友问我CAN总线如何设置ID接收几个不同的数据,小编在网上查了些资料,再根据个人的经验总结。希望能帮助到大家。如何学习汽车CAN总线? 链接:https:// pan.baidu.com/s/1goTfK1 QjNVirbdtqQLFs4w密码:84sd 链接:https:// pan.baidu.com/s/1rs2zmZ ZYs2LFYgro7bmd-A密码:zdgq 这个是野火和正点原子两家的开发。关于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设备(例如USBCAN)是无法获取到的,必须使用专用的CAN总线分析仪才能获取到,然后做分析。我手头上有一台叫CANScope的CAN总线分析仪可以直接获取到CAN总线上的错误帧数据和波形,如下图:CAN总线协议通信的数据是什么格式,及其显示的波形图是怎样的? 共1 控制器局域网CAN(Controller Area Network)是一种多主方式的串行通信总线,基本设计规范要求有高的位速率,高抗电磁干扰性,而且能够检测出产生的任何错误。。can总线中扩展帧和标准帧的异同 扩展帧和标准帧的区别在于:扩展帧的仲裁域有29位,可以出现2^29中报文,且在数据链路上是有间隙的(对操作者透明)。标准帧的仲裁域是连续的11位,可以出现2^11种报文;控制帧中的DLC(数据长度)完全相同,但保留位不同,标准帧IDE、R0,扩展帧R1、R0,必须以显性电平发送(由数据链路层操作),对程序员透明;其它的都一模一样,所以,其实CAN标准帧和扩展帧只是在ID的长度上不一样,以能扩展更多的CAN节点,更好地支持上层协议而已。关于can总线控制器sja1000的一些问题 答:1、基本模式(BasicCAN)和扩展模式(PeliCAN)的选择是通过设置“时钟分频寄存器CDR”的第7位来确定的。这两种模式的“主要的”区别是BasicCAN仅支持11位的ID,PeliCAN通过选择标准帧和扩展帧分别具有13位的ID和29位的ID。2、两者晶振可以互不相干,一个非常实用的建议是请将SJA1000的晶振采用16M,方便利用现有的资料和波特率计算工具来计算波特率,避免用其他频率自己来算,对于初学,算波特率是一个稍微复杂的事情。3、采样率如果没有猜错的话说的还是波特率计算当中的事情。用了16M就省了。做通了再慢慢去理解都OK。4、第一个问题中已经有答案补充问题回复:关于复位模式:复位模式是软件的(SJA1000的复位引脚控制的是硬件复位),通过置位模式寄存器的第0位(MOD.0)进入复位模式,清0则进入正常工作模式。(只要通过改变该位就可以实现两种模式的切换)在复位模式时候该节点的CAN总线是关闭的,部分控制器参数需要在这个模式下才能进行初始化,而在正常模式时候就不能被修改。当总线出错关闭时候也会自动进入复位模式,这时候需要清除错误,并恢复到正常工作模式。

#can总线#can总线协议#波特率#收发器

随机阅读

qrcode
访问手机版