CAN总线技术在汽车ECU中的开发
目前,在国内还没有我们自己开发研制的基于CAN总线的ECU产品。本文是以一汽大众为合作伙伴,共同开展的基于CAN总线汽车控制系统研究工作的一部分,主要攻克了工程化关键技术,所做的汽车分布式电子控制系统具有完全自主产权。文中对CAN总线的原理及性能进行详细分析的基础上,深入研究了CAN总线控制器SJA1000,并设计了一套由单片机89C52和SJA1000以及82C250等芯片组成的CAN总线系统,该系统模拟了汽车中的仪表盘以及照明系统,各个ECU之间通过CAN总线实现相互通讯,从而达到减少汽车中的线束的目的,证实了CAN总线作为一个局域网应用在汽车中的极大优势。该项研究将对我国汽车工业技术水平的提高起到促进作用。
CAN总线技术的优越性
CAN总线与一般的通信总线相比,它的数据通信具有突出的可靠性、实时性和灵活性。其具有以下主要特性:CAN是目前为止唯一有国际标准的现场总线;CAN为多主方式工作,网络上任一节点均可在任意时刻主动的向网络上其他节点发送信息,而不分主从,通信方式灵活,且无需站地址等节点信息;CAN网络上的节点信息分成不同的优先级,可满足不同的实时要求,高优先级的数据最多可在134us内得到传输;CAN采用非破坏性总线仲裁技术,当多个节点同时向总线发送信息时,优先级较低的节点会主动地退出发送,而最高优先级的节点不受影响地继续传输数据,从而大大节省了总线冲突仲裁时间。尤其是在网络负载很重的情况下也不会出现网络瘫痪情况(以太网则可能);CAN只需通过报文滤波即可实现点对点、一点对多点及全局广播等几种方式传送接收数据,无需专门的“调度”;CAN的直接通信距离最远可达10km (速率5kbps以下);通信速率最高可达1Mbps(此时通信距离最长为40m);CAN上的节点数主要取决于总线驱动电路,目前可达成110个。采用短帧结构,传输时间短,受干扰概率低,具有极好的检错效果。CAN的每帧信息都有CRC校验及其他检错措施,保证了数据出错率极低。CAN的通信介质可为双绞线、同轴电缆或光纤,选择灵活。CAN节点在错误严重的情况下具有自动关闭输出功能,以使总线上其他节点的操作不受影响。CAN总线具有较高的性能价格比。它结构简单,器件容易购置,每个节点的价格较低,而且开发过程中,能充分利用现在的单片机开发工具。
CAN控制器与单片机的接口电路
SJA1000可以与不同类型的单片微型计算机接口,再加上收发器就组成了一个CAN应用系统的核心。系统硬件连接,硬件电路的设计主要是CAN通信控制器与微处理器之间和CAN总线收发器与物理总线之间的接口电路的设计。CAN通信控制器是CAN总线接口电路的核心,主要完成CAN的通信协议,而CAN总线收发器的主要功能是增大通信距离,提高系统的瞬间抗干扰能力,保护总线,降低射频干扰(RFI),实现热防护等。微控制器的时钟采自SJA1000的振荡器。通过SJA1000的时钟分频寄存器CDR,它决定了SJA1000的CLKOUT 脚的输出和它的工作方式。SJA1000的AD0- AD7 连接到89C52的P0口,CS片选信号连接到89C51 的P2. 7。P2. 7 为0时CPU片外存储器地址可选中SJA1000,CPU通过这些地址可对SJA1000执行相应的读/写操作。SJA1000的RD、WR、ALE分别与89C52的对应引脚相连,INT接89C52的P3. 2(INTO),89C52
也可以通过中断方式访问SJA1000。82C250与CAN总线的接口部分也采用了一定的安全和抗干扰措施。82C250的CANH和CANL引脚各自通过一个5Ω的电阻与CAN总线相连,电阻可起到一定的限流作用,保护8
CAN总线技术汽车EC 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)