现场总线技术3-4-CAN总线-现场总线技术及其应用-教学ppt课件.ppt
2023/3/19,1,现场总线技术及其应用,第3讲胡青松,2023/3/19,2,3.4 CAN总线,3.4.1 CAN总线概述3.4.2 CAN通讯协议3.4.3 CAN器件介绍3.4.4 CAN总线应用,2023/3/19,3,3.4.1 CAN总线概述,CAN,全称为“Controller Area Network”,即控制器局域网,是国际上应用最广泛的现场总线之一。和FF,Profibus,LON是目前最流行、最常见的四种总线。,2023/3/19,4,3.4.1 CAN总线概述,CAN是一种有效支持分布式控制和实时控制的串行通信网络。CAN协议遵循ISO/OSI模型,采用了其中的物理层、数据链路层与应用层。CAN可以多主方式工作,本质上也是一种CSMA/CD方式,网络上任意一个节点均可以在任意时刻主动地向网络上的其它节点发送信息,而不分主从,节点之间有优先级之分,因而通信方式灵活;CAN采用非破坏性逐位仲裁技术,优先级发送,可以大大节省总线冲突仲裁时间,在重负荷下表现出良好的性能;CAN可以点对点、一点对多点(成组)及全局广播等几种方式传送和接收数据。CAN的直接通信距离最远可达10 km(传输速率为5 Kbit/s);最高通信速率可达1 Mbit/s(传输距离为40m)。,2023/3/19,5,3.4.1 CAN总线概述,CAN上的节点数实际可达110个。CAN数据链路层采用短帧结构,每一帧为8个字节,易于纠错;CAN每帧信息都有CRC校验及其它检错措施,有效地降低了数据的错误率;CAN节点在错误严重的情况下,具有自动关闭的功能,使总线上其它节点不受影响。信号调制解调方式采用不归零(NRZ)编码/解码方式,并且采用插入填充位(位填充)技术。数据位具有支配“0”(Dominant bit)和退让“1”(Recessive bit)两种逻辑值,采用时钟同步技术,具有硬件自同步和定时时间自动跟踪功能。,2023/3/19,6,图3-43总线位的数值表示,3.4.1 CAN总线概述,2023/3/19,7,图3-44 总线有效长度和传输速率的关系,3.4.1 CAN总线概述,2023/3/19,8,CAN总线作为一种国际标准,也遵从网络标准模型。CAN只采用OIS参考模型全部七层中的两层,即物理层和数据链路层。,3.4.2 CAN通讯协议,2023/3/19,9,OSI基准层,CAN采用的两层,7654321,CAN协议的核心,3.4.2 CAN通讯协议,2023/3/19,10,CAN通信模型,2023/3/19,11,物理层,物理层定义信号是如何实际地传输的。完成电气连接、实现驱动器/接收器特性、定时、同步、位编码解码。将连接于总线的各个节点称为电子控制装置(ECU)。所以物理层涉及到的是将ECU连接至总线的电路实现。ECU总数受总线上电气负载的限制,2023/3/19,12,物理媒体连接(PMA)子层,Physical Medium Attachment Sublayer功能:实现总线发送/接收的功能电路,并可提供总线故障检测方法CAN技术规范2.0B中没有定义该层的驱动器/控制器特性,以便在具体应用中进行优化设计。由物理媒体连接(PMA)和媒体从属接口(Physical Dependent Interface-MDI)构成媒体访问单元(MAU),2023/3/19,13,物理层信号(PLS),Physical Layer Signal Sublayer物理层信号实现与位表示、位定时和同步相关的功能,2023/3/19,14,PLS位定时,标称位速率(Nominal Bit Rate):理想发送器在没有重同步的情况下,发送的位数/秒标称位时间(Nominal Bit Time):1/标称位速率位时间指一位的持续时间正常位时间可划分为分开的、不重叠的时间段,如图,标称位时间,采样点,2023/3/19,15,PLS位编码/解码,CAN的数据帧的5个部分(帧起始、仲裁域、控制域、数据域和CRC序列)均通过位填充的方法编码。即发送器检测位流里有5个连续相同值的位,便自动在位流里插入一补充位。数据帧或远程帧的其余位域没有位填充。错误帧和远程帧的格式也是固定的,不用为填充方法编码在整个位时间里,位的电平非显性即隐性。,2023/3/19,16,PLS同步,同步包括硬同步和重同步两种形式。一个硬同步后,位时间由每个位定时逻辑单元以同步段重新启动。因此,硬同步强迫引起硬同步的跳变沿处于重新开始的位时间同步段内。重同步的结果使相位缓冲段1延长或相位缓冲段2缩短。延长或缩短相位缓冲段的总和存在一个上限,此上限由重同步跳转宽度给定。重同步跳转宽度应通过编程设置在1和4之间。,2023/3/19,17,媒体访问控制(MAC)子层 1/4,Medium Access Control Sublayer该层是CAN的协议的核心。作用:把接收到的报文提供给LLC子层,并接收来自LLC子层的报文。功能:负责报文分帧、仲裁、应答、错误检测和标定,2023/3/19,18,媒体访问控制(MAC)子层 2/4,CAN两种帧格式标准帧(11位标识符)扩展帧(29位标识符),数据帧远程帧出错帧超载帧,另外,数据帧和远程帧用帧间空间同先前帧隔开,数据在节点间发送和接收有4种帧,2023/3/19,19,数据帧,帧起始,仲裁域,控制域,数据域,CRC域,ACK域,帧结束,帧间隔,2023/3/19,20,远程帧,激活为数据接收器的节点通过发送远程帧启动源节点发送数据分标准格式(11bit标识符)和扩展格式(29bit标识符)同数据帧相比没有数据域RTR位数值为“1”,与数据帧的RTR相反,2023/3/19,21,出错帧,由两个域构成来自不同节点的错误标志叠加给出错误定界符 错误标志两种形式 错误主动标志(6bit连续显性位)错误被动标志(6bit连续隐性位)错误定界符8bit隐性位构成传送了错误标志后,每个节点就发送一个隐性位,并一直监控总线,直到检测到一个隐性位为止。然后开始发送剩余7个隐性位,2023/3/19,22,超载帧,两类超载帧LLC要求的超载帧重激活超载帧超载帧的两个位场超载标志超载定界符,2023/3/19,23,逻辑链路控制(LLC)子层 1/2,Logical Link Control Sublayer帧接收滤波功能:超载通告恢复管理,2023/3/19,24,标识符场LLC数据帧由三个位场组成DLC场LLC数据场LLC远程帧由两个位场组成标识符场 DLC场DLC的数值是独立的,是对应LLC数据帧的DLC。,逻辑链路控制(LLC)子层 2/2,2023/3/19,25,3.4.3 CAN器件介绍,CAN系统的主要器件 CAN控制器SJA1000P8xC591 CAN收发器PCA82C250TJA1040,2023/3/19,26,3.4.3.1 SJA1000独立CAN控制器,SJA1000独立CAN控制器具有如下特性:(1)和PCA82C200 独立CAN 控制器引脚兼容、电气兼容,具有PCA82C200模式,即默认的BasicCAN模式。(2)扩展的接收缓冲器为64B,先进先出(FIFO)。(3)和CAN2.0B 协议兼容(PCA82C200兼容模式中的无源扩展结构)。(4)同时支持11 bit和29bit识别码(5)位速率可达1Mbit/s(6)PeliCAN 模式扩展功能包括可读/写访问的错误计数器;可编程的错误报警限制寄存器;最近一次错误代码寄存器;对每一个CAN 总线错误的中断;具体控制位控制的仲裁丢失中断;单次发送无重发;只听模式(无确认无活动的出错标志);支持热插拔(软件位速率检测);接受过滤器扩展(4B代码、4B屏蔽);自身信息接收(自接收请求)。(7)24MHz时钟频率(8)对不同微处理器的接口(9)可编程的CAN 输出驱动器配置(10)增强的温度适应-40+125,2023/3/19,27,3.4.3.1 SJA1000独立CAN控制器,2023/3/19,28,3.4.3.2 P8XC591介绍,PP8xC591 是一个单片8bit高性能微控制器,具有片内CAN 控制器,从80C51 微控制器家族派生而来。它采用了强大的80C51 指令集,并成功的包括了Philips 半导体SJA1000 CAN 控制器的PeliCAN 功能。全静态内核提供了扩展的节电方式。振荡器可停止和恢复而不会丢失数据。改进的1:1 内部时钟预分频器在12MHz 外部时钟速率时实现500ns 指令周期。,2023/3/19,29,3.4.3.2 P8XC591介绍,P8xC591 的特性主要有:(1)全静态80C51 中央处理单元,可提供OTP、ROM 和无ROM 型。(2)16K字节内部程序存储器,可外部扩展到64K字节。(3)512字节片内数据RAM,可外部扩展到64K字节。(4)3个16bit定时/计数器T0,T1(标准80C51)和附加的T2(捕获&比较)。(5)带6 路模拟输入的10 bitADC,可选择快速8 bitADC。(6)2 个8 bit分辨率的脉宽调制(PWM)输出。(7)作为标准80C51引脚时有32 个I/O 口。(8)带字节方式主和从功能的I2C 总线串行I/O 口。(9)片内看门狗定时器T3。,2023/3/19,30,3.4.3.2 P8XC591介绍,(10)保密位,32 B加密阵列。(11)4 个中断优先级,15 个中断源。(12)CAN2.0B 控制器,支持11bit标准和29 bit扩展标识符。(13)8MHz 时钟可实现1Mbit/sCAN 总线速率。(14)电源控制模式,包括时钟可停止和恢复模式、空闲模式、掉电模式三种。(15)空闲模式中ADC有效。(16)双DPTR。(17)可禁止ALE实现低EMI。(18)软件复位(AUXR1.5)。(19)上电检测复位。(20)ONCE(On Circuit Emulation)模式,2023/3/19,31,3.4.3.2 P8XC591介绍,2023/3/19,32,3.4.3.2 P8XC591介绍,2存储器系统 PP8xC591总共有三个存储空间,即16K B内部程序存储器,可外部扩展到64K B;512 字节内部数据存储器,主和辅助RAM;最大64K B外部数据存储器(256 B位于内部辅助RAM)。(1)程序存储器 PP8xC591 包含16K 字节片内程序存储器,可使用外部存储器扩展到64KB。当EA 为高电平时,PP8xC591 从内部ROM 取指,除非地址超过3FFFh。地址4000h FFFFh 取自外部程序存储器。EA 在复位时锁存,复位之后不用考虑。对于ROM 和EPROM 的PP8xC591,器件执行了防范的措施,以保护其不会被非法的程序存储器读取。(2)数据存储器 PP8xC591 的内部数据存储器分为四个独立的部分:低128 BRAM,高128 BRAM,128 B特殊功能寄存器和256 B辅助RAM(AUX-RAM)。1.低128 BRAM(地址00H7FH)可直接和间接寻址 2.高128BRAM(地址80HFFH)为间接寻址 3.特殊功能寄存器,SFR(地址80HFFH)只能直接寻址。4.256 B AUX-RAM(00HFFH)通过MOVX 间接寻址(且EXTRAM 位清零)。,2023/3/19,33,3.4.3.3 PCA82C250CAN总线收发器,82C250的主要特性如下:(1)和“ISO11898”标准完全兼容。(2)高速(可达1Mbit/s)。(3)在汽车环境中,对总线提供瞬变保护。(4)斜率控制以降低射频干扰(RFI)。(5)差动接收器具有宽共模范围,有很强的抗电磁干扰(EMI)的能力。(6)热保护。(7)对电源和地的短路保护。(8)低电流待机模式。(9)一个未供电的节点不会干扰总线。(10)至少可挂110个节点。,2023/3/19,34,3.4.3.3 PCA82C250CAN总线收发器,2023/3/19,35,3.4.3.3 PCA82C250CAN总线收发器,表3-18 PCA82C250引脚功能,2023/3/19,36,3.4.3.3 PCA82C250CAN总线收发器,表3-19 引脚Rs用法,2023/3/19,37,3.4.3.3 PCA82C250CAN总线收发器,表3-20 CAN驱动器真值表,2023/3/19,38,3.4.3.4 TJA1040 高速CAN 总线收发器,TJA1040 是Philips公司生产的、完全可以替代PCA82C250的高速CAN总线收发器。TJA1040的主要特性总结如下:(1)完全符合ISO 11898 标准。(2)速度可高达1Mbit/s。(3)电磁辐射(EME)非常低。(4)差动接收器具有较宽的共模范围,可抗电磁干扰(EMI)。,2023/3/19,39,3.4.3.4 TJA1040 高速CAN 总线收发器,(5)处于不上电状态的收发器会从总线脱离零负载。(6)输入级符合3.3V 和5V 的器件。(7)如果使用分裂终端电压源可以稳定隐性总线电平进一步改善EME。(8)至少可以连接110 个节点。(9)消耗电流极低的待机模式具有通过总线唤醒远程的功能。(10)发送数据TXD 显性超时功能。(11)在汽车的瞬态环境下对总线引脚进行保护。(12)防止总线引脚和引脚SPLIT 对电池和对地短路。(13)过热保护。,2023/3/19,40,3.4.3.4 TJA1040 高速CAN 总线收发器,2023/3/19,41,3.4.3.4 TJA1040 高速CAN 总线收发器,表3-21 TJA1040引脚功能,2023/3/19,42,3.4.3.4 TJA1040 高速CAN 总线收发器,表3-22 TJA1040工作模式,2023/3/19,43,3.4.4 CAN总线应用,系统总体结构,2023/3/19,44,3.4.4 CAN总线应用,硬件电路设计,2023/3/19,45,3.4.4 CAN总线应用,软件设计,