《基于ARM的汽车电子控制系统单元设计.docx》由会员分享,可在线阅读,更多相关《基于ARM的汽车电子控制系统单元设计.docx(7页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、基于ARM的汽车电子控制系统单元设计0导语:随着电子控制系统单元ECU在汽车上广泛应用,汽车电子化程度越来越高随着电子控制系统单元ECU在汽车上广泛应用,汽车电子化程度越来越高。电控系统的增加固然进步了汽车的动力性、经济性和舒适性,但随之增加的复杂电路,必然导致车身布线庞大而且复杂,安装空间短缺。同时,为了进步电控单元信息利用率,要求大批的数据信息能在不同的电子单元间分享,汽车综合控制系统中大量的控制信号也需要实时交换,不同功能电子控制系统单元间的数据通讯变得越来越重要。因此对电子控制系统单元的设计提出了越来越高的要求,不仅要求通讯网络应具有通讯速率高、准确、可靠性高的特点,同时要求控制模块上
2、应具有控制实效性高、空间小等优点。本文采用了基于CAN总线技术,设计开发了应用于汽车网络系统中的电子控制系统单元。1电子控制系统单元CAN通讯模块的设计根据CAN通讯原理,电子控制系统单元CAN通讯模块硬件主要由CAN控制器、CAN驱动器及中心微处理器构成。传统的CAN通讯模块采用51系列的单片机作为中心处理器,SJA1000作为CAN控制器,PCA82C250作为CAN驱动器。这种方案所占空间大,外围接口扩展局限,同时功耗高。本设计中,我们采用内嵌有CAN控制器的LPC2119和TJA1050总线驱动器构成电子控制系统单元的CAN通讯模块。LPC2119内带有ARM7内核,具有封装小、功耗低
3、、多个32位定时器、4路10位ADC、2路CAN以及多达9个外部中断等优点。TJA1050是Philips公司消费的,用以替换PCA82C250的高速CAN总线驱动器。该器件提供了CAN控制器与物理总线之间的接口以及对CAN总线的差动发送和接收功能。对于由弱终端构成的端节点,TJA1050外围的电阻和电容能改善系统的EMC性能。理论证实,采用LPC2119和TJA1050构造CAN通讯模块,外围扩展才能强,空间小,同时改良电磁辐射EME性能和抗电磁干扰EMI性能。2电子控制系统单元控制模块的设计传统的蜘蛛网式控制模块,电路复杂,维修难度高。本设计中,我们采用功率模块、人机通讯模块、状态量输入模
4、块的结合,构造出电子控制系统单元控制模块,进步了整个系统的可观性和实效性。2.1功率模块考虑到汽车功率负载大及LPC2119的I/O口驱动的局限,系统中采用功率模块作为中心微处理器与功率负载之间的桥梁。设计中,我们采用摩托罗拉公司消费的MC33888功率器件控制远光灯、近光灯、倒车灯、刹车灯。MC33888内部集成有四路高端灯驱动器和8路继电器或者发光二极管驱动器,是一个可控制网络,具有在板诊断、与微控制器通讯报错才能及故障软化等优点。考虑到车内灯和示廊灯的功率相比照较大,我们采用MC33487功率器件进展控制。MC33487内部集成两路带有电流感应的20毫欧姆高端驱动器,电流输出4.5A.感
5、性负载以及大电流的短路保护是整个设计的难点。MC33887具有功耗低、等待形式下电流25微安、输出电流超过8安的短路关断等优点,所以系统采用MC33887功率器件对电机、锁、天线、洗涤泵进展控制。2.2人机通讯模块为了进步驾驶员和乘客的舒适性、平安性,整个系统必须在人和机器之间建立良好的人机通讯模块。BC7281、键盘模块及外围的LED之间的结合,构造出人机通讯模块。BC7281是比高公司推出的16位数码管显示及键盘接口专用芯片。该芯片通过外接移位存放器74HC164、74LS595等可控制16位数码管或128只独立的LED。BC7281的驱动输出极性及输出时序均可通过软件进展控制,进而和各种
6、驱动电路配合,合适任何尺寸的数码管。通过人机通讯模块,人的意识可以为机器所识别,同时机器也可以将一些相应的状态信息反应到LED或LCD上,到达人机通讯的可视化效果。23状态量输入模块状态量输入模块主要是将一些人为操纵的效果如大灯开关、转向灯开关、车身状态如车门、窗的开关及内部状态信息如油量、水温反应给中心处理器。中心处理器对反应信息进展分析处理,就可以准确判定本车所处的状况,并做出相应的操纵。外部状态信息可以分为开关量和模拟量。通过一系列外围电路如整形防颤电路,我们将开关量转换成CPU可识别的0V和+5V上下电平。在模拟量处理上,先经过归一化处理电路,将水温、油量、气压、室温的变化转化为0V到
7、5V之间电信号,然后通过LPC2119内嵌的4路10位AD转换器转换成相应的数字量。利用现有的CAN通讯模块将这些数字量传输到驾驶员附近的电子控制系统单元,再经过D/A转换器,反响在仪器仪表上。3电子控制系统单元软件设计对于LPC2119微处理器来讲,CAN控制器完全是基于事件触发的,即在本身状态发生改变时,CAN控制器会将状态变化的结果告诉微处理器。因此中心微处理器可以采用中断的方式或轮询的方式对CAN控制器作出相应的处理。各电子控制系统单元按规定格式和周期发送数据到总线上,同时根据需要各取所需的报文。对于接收数据,本系统采用中断的方式实现,一旦中断发生,即将接收的数据自动装载到相应的报文存
8、放器中。此时利用屏蔽滤波存放器对接收报文的标识符和预先在接收缓冲器初始化时设定的标识符进展有选择地逐位比拟,只有标识符匹配的报文才能进入接收缓冲器,那些不符合要求的报文将被屏蔽于接收缓冲器外,进而减轻CPU处理报文的负担。各电子控制系统单元的应用层程序都不一样,但是通讯模块的应用程序根本上一致,可分为CAN初始化、发送数据、接收数据。3.1CAN初始化程序CAN初始化程序主要用来实现CAN工作时的参数设置,其初始化主要内容包括:硬件使能CAN、设置CAN报警界限、设置总线波特率、设置中断工作方式、设置CAN验收滤波器的工作方式、设置CAN控制器的工作形式等。2发送数据程序对CAN模块初始化成功
9、后,就可以用它来传送报文。节点向总线上发送报文的经过是:LPC2119将待发送的数据按CAN格式组成一帧报文,写入CAN模块发送缓冲区,然后启动发送命令,将报文发送到总线上。在使用发送函数时有一点必须留意,由于在启动发送数据的命令后,CAN控制器要将缓冲区内的数据发送完毕后,才会将该帧数据是否发送成功的状态返回。这样假如在函数里一直等待数据发送完毕,会使整个微处理器的性能下降。为了防止这种情况,该函数在启动发送后便立即返回,通过发送中断或利用查询TCS状态位判定是否发送成功。3.3接收数据程序本设计中,我们采用中断的方式进展CAN总线上的数据接收。当LPC2119的CAN控制器出现内部中断时,我们先识别中断存放器的RI位,判定是否为接收中断,然后读取接收缓冲区的内容。4结论理论证实,基于CAN总线技术,带ARM7内核的汽车电子控制系统单元空间小,实效性高。十分是它的数据通讯具有很强的实时性、更高的可靠性和更好的抗干扰才能,即使在重负荷下也不会出现网络瘫痪的情况,但投入实用化仍需要进一步的研究和改良,且程序的通讯处理才能、纠错和容错才能有待进一步的进步。
限制150内