CAN通信技术.pptx
《CAN通信技术.pptx》由会员分享,可在线阅读,更多相关《CAN通信技术.pptx(59页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、CANCAN简介简介 CANController Area NetworkCANController Area Network是控制器局域网是控制器局域网的简称的简称它是德国它是德国BoschBosch公司在公司在19861986年为解决现代汽车中年为解决现代汽车中众多测量控制部件之间的数据交换而开发的一种众多测量控制部件之间的数据交换而开发的一种串行数据通信总线串行数据通信总线现已被列入现已被列入ISOISO国际标准国际标准ISO11898ISO11898最初为汽车测控数据通信而设计的最初为汽车测控数据通信而设计的CAN CAN,现已在,现已在多领域被广泛采用多领域被广泛采用航天、电力、石化
2、、冶金、纺织、造纸、仓储等行业航天、电力、石化、冶金、纺织、造纸、仓储等行业火车、轮船、机器人、楼宇自控、医疗器械、数控机火车、轮船、机器人、楼宇自控、医疗器械、数控机床、智能传感器、过程自动化仪表等床、智能传感器、过程自动化仪表等CANCAN的主要技术特点的主要技术特点CANCAN网络上的节点不分主从网络上的节点不分主从任一节点均可在任意时刻主动地向网络上其他节点发送任一节点均可在任意时刻主动地向网络上其他节点发送信息,通信方式灵活信息,通信方式灵活CANCAN采用非破坏性的总线仲裁技术采用非破坏性的总线仲裁技术CANCAN网络上的节点具有不同的优先级,网络上的节点具有不同的优先级,当多个节
3、点同时向总线发送信息时,优先级较低的节点当多个节点同时向总线发送信息时,优先级较低的节点会主动地退出发送,而最高优先级的节点可不受影响地会主动地退出发送,而最高优先级的节点可不受影响地继续传输数据,从而节省了总线冲突的仲裁时间继续传输数据,从而节省了总线冲突的仲裁时间。可满足对实时性的不同要求可满足对实时性的不同要求高优先级的数据可在高优先级的数据可在134134微秒内得到传输微秒内得到传输通过报文滤波可实现点对点、一点对多点及全局通过报文滤波可实现点对点、一点对多点及全局广播等几种方式收发数据,无需专门的广播等几种方式收发数据,无需专门的“调度调度”CANCAN的直接通信距离的直接通信距离最
4、远可达最远可达10km10km(速率(速率5kbps5kbps以下);以下);通信速率最高可达通信速率最高可达1Mbps(1Mbps(此时通信距离最长为此时通信距离最长为40m40m)。)。CANCAN总线上的节点数决定于总线驱动电路,一般为总线上的节点数决定于总线驱动电路,一般为可达可达110110个;个;报文标识符:报文标识符:CAN2.0ACAN2.0A为为20322032种种CAN2.0BCAN2.0B扩展帧的报文标识符几乎不受限制扩展帧的报文标识符几乎不受限制CANCAN为短帧结构,传输时间短,受干扰概率低为短帧结构,传输时间短,受干扰概率低CANCAN节点节点具有良好的检错功能,具
5、有良好的检错功能,出错率低出错率低节点中均有错误检测、标定和自检能力。节点中均有错误检测、标定和自检能力。具有发送自检、循环冗余校验、位填充、报文格式检查等。具有发送自检、循环冗余校验、位填充、报文格式检查等。CANCAN节节点点在在错错误误严严重重的的情情况况下下具具有有自自动动关关闭闭输输出出功功能能,以使总线上其他节点的操作不受影响。以使总线上其他节点的操作不受影响。CANCAN的的通通信信介介质质可可为为双双绞绞线线、同同轴轴电电缆缆或或光光纤纤,选选择择灵活。灵活。CANCAN器件可被置于无任何内部活动的睡眠方式器件可被置于无任何内部活动的睡眠方式相当于未连接到总线驱动器相当于未连接
6、到总线驱动器可降低系统功耗可降低系统功耗其睡眠状态可借助总线激活或者系统的内部条件被唤醒。其睡眠状态可借助总线激活或者系统的内部条件被唤醒。CANCAN通信技术通信技术 CANCAN的通信参考模型的通信参考模型 CANCAN的通信模型的分层结构的通信模型的分层结构数据链路层数据链路层包括逻辑链路控制子层包括逻辑链路控制子层LLCLLCLLCLLC的主要功能是:为数据传送和远程数据请求提供服务,的主要功能是:为数据传送和远程数据请求提供服务,确认由确认由LLCLLC子层接收的报文实际已被接收,并为恢复管理子层接收的报文实际已被接收,并为恢复管理和通知超载提供信息和通知超载提供信息 媒体访问控制子
7、层媒体访问控制子层MACMACMACMAC子层主要规定传输规则,即控制帧结构、执行仲裁、子层主要规定传输规则,即控制帧结构、执行仲裁、错误检测、出错标定和故障界定错误检测、出错标定和故障界定 物理层物理层物理层规定了节点的全部电气特性物理层规定了节点的全部电气特性 数据链路层数据链路层 逻辑链路子层逻辑链路子层 接收滤波接收滤波 超载通知超载通知 恢复管理恢复管理 媒体访问控制子层媒体访问控制子层 数据封装数据封装/拆装拆装 帧编码(填充帧编码(填充/解除填充)解除填充)媒体访问管理媒体访问管理 错误监测错误监测 出错标定出错标定 应答应答 串行化串行化/解除串行化解除串行化 物理层物理层 位
8、编码位编码/解码;位定时;同步;解码;位定时;同步;驱动器驱动器/接收器特性接收器特性 CANCAN节点的网络连接节点的网络连接CANCAN总线信号的显位与隐位总线信号的显位与隐位显位显位(0)(0)V VCANHCANH:3.5v3.5vV VCANL 1 CANL 1 1.5v1.5v隐位隐位(1)(1)V VCANHCANH 2.5v 2.5vV VCANL CANL 2.5v2.5v显位可改显位可改写隐位写隐位CANCAN通信帧的类型通信帧的类型4 4种不同类型的帧:种不同类型的帧:数据帧、远程帧、出错帧、超载帧数据帧、远程帧、出错帧、超载帧数据帧携带数据,由发送器传送至接收器数据帧携
9、带数据,由发送器传送至接收器远程帧用以请求总线上的相关单元发送具远程帧用以请求总线上的相关单元发送具有相同标识符的数据帧有相同标识符的数据帧出错帧由检测出总线错误的单元发送出错帧由检测出总线错误的单元发送超载帧用于提供当前的和后续的数据帧的超载帧用于提供当前的和后续的数据帧的附加延迟附加延迟CANCAN的帧结构的帧结构 数据帧由数据帧由7 7个不同的位场(域)组成个不同的位场(域)组成:帧起始帧起始、仲裁场、控制场、数据场、仲裁场、控制场、数据场、CRCCRC场、应场、应答场、答场、帧结束帧结束帧起始位(帧起始位(1 1个显位),表示标志帧的开始个显位),表示标志帧的开始中间有仲裁场、控制场、
10、数据场、中间有仲裁场、控制场、数据场、CRCCRC场、应答场场、应答场帧结束(帧结束(7 7个隐位)个隐位)数据场长度可为零数据场长度可为零CANCAN数据帧的组成数据帧的组成 CAN2.0ACAN2.0A与与CAN2.0BCAN2.0BCAN2.0ACAN2.0A与与CAN2.0BCAN2.0B是是19911991年颁布的年颁布的CANCAN技术规范的两个部分技术规范的两个部分CAN2.0ACAN2.0A只有标准帧一种帧格式只有标准帧一种帧格式CAN2.0BCAN2.0B包括标准帧与扩展帧两种包括标准帧与扩展帧两种标准帧与扩展帧的区别主要在仲裁场与控制场标准帧与扩展帧的区别主要在仲裁场与控制
11、场标准帧具有标准帧具有1111位标识符位标识符扩展帧具有扩展帧具有2929位标识符位标识符标准帧的仲裁场由标准帧的仲裁场由1111位标识符和远程发送请求位位标识符和远程发送请求位RTRRTR(Remote(Remote Transmission Request)Transmission Request)组成组成仲裁场的仲裁场的1111位标识符从高位到低位顺序发送,最低位为位标识符从高位到低位顺序发送,最低位为ID.0ID.0,最高位,最高位为为ID.10ID.10,其中的高,其中的高7 7位(位(ID.10ID.10ID.3ID.3)不能全为隐位。)不能全为隐位。远程发送请求位(远程发送请求位
12、(RTRRTR)用于区分数据帧与远程帧)用于区分数据帧与远程帧在数据帧中在数据帧中RTRRTR位必须是显位位必须是显位在远程帧中在远程帧中RTRRTR位必须为隐位。位必须为隐位。扩展帧仲裁场的组成扩展帧仲裁场的组成2929位标识符位:位标识符位:ID.28ID.28至至ID.0ID.0远程请求替代位远程请求替代位SRR SRR(Substitute Remote Request)(Substitute Remote Request):设置设置SRRSRR为保持扩展帧与标准帧的格式兼容为保持扩展帧与标准帧的格式兼容扩展帧中的扩展帧中的SRRSRR为隐位为隐位标识扩展位标识扩展位IDE(Ident
13、ifier Extension)IDE(Identifier Extension):标识扩展位标识扩展位IDEIDE在标准帧中为显位在标准帧中为显位,在扩展帧中为隐位在扩展帧中为隐位远程发送请求位远程发送请求位RTRRTR组成组成控制场由控制场由6 6位组成位组成在扩展格式中控制场包括在扩展格式中控制场包括4 4位数据长度码位数据长度码DLCDLC和和2 2位保留位,位保留位,在标准格式中控制场包括在标准格式中控制场包括4 4位数据长度码位数据长度码DLCDLC、1 1位保留位、位保留位、1 1位标识扩展位位标识扩展位IDEIDE数据场包含被传送的数据,可包括数据场包含被传送的数据,可包括0-
14、80-8个个8 8位位的字节,先发送最高有效位。的字节,先发送最高有效位。CRCCRC场:场:1515位的位的CRCCRC序列,序列,1 1个隐位的个隐位的CRCCRC界定界定符符应答场应答场2 2位:位:1 1位应答间隙,位应答间隙,1 1位应答界定符位应答界定符发送器在应答间隙发送发送器在应答间隙发送1 1位隐位,接收器在正确位隐位,接收器在正确接收到报文后在应答间隙发送接收到报文后在应答间隙发送1 1位显位。位显位。应答界定符为隐位应答界定符为隐位远程帧远程帧远程帧由远程帧由6 6个场组成:帧起始、仲裁场、控制个场组成:帧起始、仲裁场、控制场、场、CRCCRC场、应答场和帧结束。远程帧不
15、存在场、应答场和帧结束。远程帧不存在数据场。数据场。远程帧的远程帧的RTRRTR位必须是隐位。位必须是隐位。出错帧出错帧出错帧由两个不同场组成,第一个场由来自各站的出错帧由两个不同场组成,第一个场由来自各站的出错标志叠加得到,第二个场是出错界定符出错标志叠加得到,第二个场是出错界定符错误标志具有两种形式:错误标志具有两种形式:活动出错标志活动出错标志(Active error flag)(Active error flag),由,由6 6个连续的显位组个连续的显位组成成认可出错标志认可出错标志(Passive error flag)(Passive error flag),由,由6 6个连续的
16、隐位个连续的隐位组成组成出错界定符包括出错界定符包括8 8个隐位个隐位超载帧超载帧超载帧包括两个位场:超载标志和超载界定符超载帧包括两个位场:超载标志和超载界定符超载标志由超载标志由6 6个显位组成个显位组成超载界定符由超载界定符由8 8个隐位组成个隐位组成发送超载帧的超载条件:发送超载帧的超载条件:接收器要求延迟下一个数据帧或远程帧接收器要求延迟下一个数据帧或远程帧实现实现CANCAN通信控制的几种通信控制的几种ASICASIC芯片芯片CANCAN通信控制器通信控制器82C200:82C200:实现实现CAN2.0ACAN2.0A的标准格式通信帧的通信的标准格式通信帧的通信控制控制CANCA
17、N通信控制器通信控制器SJA1000:SJA1000:实现实现CAN2.0BCAN2.0B的两种格式通信帧的通信的两种格式通信帧的通信控制控制带带CANCAN通信控制器与通信控制器与8 8位微控制器的位微控制器的P8XC592P8XC592带带CANCAN通信控制器与通信控制器与1616位微控制器的位微控制器的87C196CA/CB87C196CA/CB带带3232位位ARM7 ARM7 处理器内核、可编程逻辑、存储子系统、处理器内核、可编程逻辑、存储子系统、CANCAN接口、接口、以太网接口、以太网接口、I/OI/O接口等的片上系统接口等的片上系统TA7VTA7V带带CANCAN通信控制器的
18、通信控制器的CANCAN总线总线I/OI/O器件器件82C15082C150CANCAN总线收发接口器件总线收发接口器件82C25082C250CANCAN通信控制器通信控制器CANCAN通信控制器要实现通信控制器要实现CANCAN总线协议并具备与微控制总线协议并具备与微控制器的接口器的接口不同型号的不同型号的CANCAN总线通信控制器,其结构和功能大体相同;总线通信控制器,其结构和功能大体相同;与微控制器接口部分的结构及方式存在一些差异与微控制器接口部分的结构及方式存在一些差异由由CANCAN通信控制器芯片完成通信控制器芯片完成CANCAN总线协议中物理层和总线协议中物理层和数据链路层的所有
19、功能数据链路层的所有功能应用层功能由微控制器完成应用层功能由微控制器完成芯片工作的温度范围为芯片工作的温度范围为:4040125125,汽车及某些军用领域,汽车及某些军用领域,40408080,一般工业领域,一般工业领域CAN通信控制器82C200的功能框图82C200实现CAN2.0A协议CANCAN通信控制器通信控制器SJA1000SJA1000SJA1000 SJA1000 实现CAN2.0B协议SJA1000CANSJA1000CAN通信控制器由以下几部分构成通信控制器由以下几部分构成:接接口口管管理理逻逻辑辑IML:IML:它它接接收收微微处处理理器器的的命命令令,控控制制寄存器的地
20、址寄存器的地址,并为微处理器提供中断和状态信息。并为微处理器提供中断和状态信息。发发送送缓缓冲冲器器TXB:TXB:它它是是和和位位流流处处理理器器()之之间间的的接接口口,有有字字节节长长。能能存存储储一一条条将将在在总总线线上上发发送送的的完完整整报报文文。报报文文由由写写入入,由由位位流流处处理理器读出。器读出。接收缓冲器(接收缓冲器(,):是和接是和接收滤波器之间的接口收滤波器之间的接口,用来存储从总线收到并接用来存储从总线收到并接收的报文。接收缓冲器收的报文。接收缓冲器FIFOFIFO共字节长。其中有共字节长。其中有字节的窗口可供访问。在处理一个报文的字节的窗口可供访问。在处理一个报
21、文的同时,由这个继续接收其它正在到来的报文同时,由这个继续接收其它正在到来的报文 CANCAN通信控制器通信控制器SJA1000(SJA1000(续)续)接收滤波器接收滤波器ACF:ACF:接收滤波器把收到的报文标识符和接收滤接收滤波器把收到的报文标识符和接收滤波寄存器中的内容进行比较波寄存器中的内容进行比较,以判断该报文是否被接收。如以判断该报文是否被接收。如果判断结果是肯定的果判断结果是肯定的,则报文被存入。则报文被存入。位流处理器位流处理器BSP:BSP:位流处理器控制发送缓冲器和位流处理器控制发送缓冲器和总线之间数据序列总线之间数据序列,同时它也执行错误检测、仲裁、位同时它也执行错误检
22、测、仲裁、位填充和总线错误处理功能。填充和总线错误处理功能。位定时逻辑位定时逻辑BTL:BTLBTL:BTL监视总线上的串行序列,处理与监视总线上的串行序列,处理与CANCAN总总线相关的位时间,按收到的报文头与总线上的位流同线相关的位时间,按收到的报文头与总线上的位流同步。步。BTLBTL还为补偿传输迟延时间和相位跳变提供可编程的时还为补偿传输迟延时间和相位跳变提供可编程的时间段。间段。错误管理逻辑错误管理逻辑EML:EML:它按照协议完成错误界定。它接受它按照协议完成错误界定。它接受来自来自BSPBSP的出错通知,并向的出错通知,并向BSPBSP和和IMLIML提供出错统计提供出错统计 S
23、JA1000SJA1000功能框图功能框图出错处理功能的增强出错处理功能的增强仲裁丢失捕捉寄存器():以找到丢失仲仲裁丢失捕捉寄存器():以找到丢失仲裁位的位置裁位的位置出错代码捕捉寄存器():分析总线错误出错代码捕捉寄存器():分析总线错误类型和位置类型和位置出错警告限寄存器():定义出错警告出错警告限寄存器():定义出错警告极限值极限值接收出错计数寄存器()接收出错计数寄存器()发送出错计数寄存器()发送出错计数寄存器()记录发送和接收时出现的错误个数等。记录发送和接收时出现的错误个数等。可根据从这两个可根据从这两个寄存器读取的错误个数来判断目前控制器的出错寄存器读取的错误个数来判断目前控
24、制器的出错状态。状态。出错中断:出错中断:出出错错中中断断源源:总总线线出出错错中中断断、错错误误警警告告限限中中断断(可可编编程程设设置置)和和被被动动出出错错中中断断。由由中中断断允允许许寄寄存存器器()区区分分出出以以上上各各中中断断,也也可可直直接接从从中中断断寄寄存存器器()中中直直接接读读取取中中断断寄寄存器的状态来判断出错类型。存器的状态来判断出错类型。出错代码捕捉寄存器出错代码捕捉寄存器():当总线发生错误时当总线发生错误时,产生相应的出错中断产生相应的出错中断,同时,把同时,把对应的错误类型和产生位置写入出错代码捕捉寄存器对应的错误类型和产生位置写入出错代码捕捉寄存器(相对地
25、址为相对地址为12)12)。这个代码一直保存到被主控制器读取出。这个代码一直保存到被主控制器读取出来后来后,ECC,ECC才重新被激活工作,捕捉下一个错误代码。才重新被激活工作,捕捉下一个错误代码。可以从可以从ECCECC读取的数据来分析属于何种错误以及错误产生的读取的数据来分析属于何种错误以及错误产生的位置,从而为调试工作提供了方便。位置,从而为调试工作提供了方便。SJA1000SJA1000的应用电路的应用电路 SJA1000SJA1000与以下芯片或电路组合,构成与以下芯片或电路组合,构成CANCAN应用节点应用节点微控制器微控制器CPUCPU总线收发器总线收发器晶振、电源、复位电路晶振
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- CAN 通信 技术
限制150内