车载软件检测系统,汽车检测系统软件
大家好,今天小编关注到一个比较有意思的话题,就是关于车载软件检测系统的问题,于是小编就整理了1个相关介绍车载软件检测系统的解答,让我们一起看看吧。
1、汽车ECU用什么语言编程,汽车电脑维修的前景如何?
我曾经在都汽车电子厂家从事过几年的汽车电子的研发,软件和硬件都有涉及。
为国内的几家合资车的新上市的车辆研发遥控中控以及车身控制系统。
主要功能包括车灯控制(比如,大灯,位置灯,顶灯,转向灯的开关检测以及逻辑控制),门锁的检测以及控制(包括RF遥控控制以及开关的手动控制),还有雨刮控制,车速检测,20km自动上锁,CAN,LIN通信等功能。
这些基本上都不直接涉及人身安全,我们国内没有哪一个汽车电子厂家能涉及出涉及安全的控制系统,比如发动机控制系统,助力转向系统等,不能研发不出来,而是没办法保证可靠性。受囿于国内的研发机制以及急功近利的心态。
那些声称可以研发,是对顾客生命的不负责任。
这些安全件不是几个工程师随便鼓捣就能出来的,需要包括物料、研发、测试、生产等环节长期系统性科学化的验证。
对于没有CAN,LIN通信功能的遥控中控功能由于功能简单,运算量小,选用了8位,最高主频为8MHz的microchip的PIC系列处理器,如PIC16F1936,该系列处理器最大优点是抗干扰性能好,但是ROM,RAM资源非常有效,运算效率也非常低,一条指令周期需要4个时钟周期,不支持硬件乘法,做乘法操作可能需要耗时上百毫秒。
多数产品采用c语言编写程序,通过PICC编译器编译成机器码。
编译出来代码有的时候有些冗余,执行效率不能达到最优。
为了达到最优的执行效率,有时会在c语言中嵌套汇编代码。
比如遥控信号接收的程序,遥控信号采用3E码进行编码,接收程序需要以100us左右的周期在中断程序检测遥控信号输入,如果用c语言编写,大概100us可能要占用50us以上,还有不到一半的时间处理其他逻辑,而如果嵌套汇编进行处理,则仅需要30us语言。
遥控数据采用数据编号进行滚动加密,避免被人空中截获,破解或者重发攻击,而数据解密进行大量移位运算,非常耗时,因此也用汇编语言编写解密代码。
对于功能要求很强大一点,比如有LIN,CAN通信功能的控制器,我们选择ROM/RAM资源更丰富,运算速度更快,来自于freescale的8位处理器DZ96,以及16位处理器DZ128。
由于性能得到了提升,所有代码都用C语言开发,没有在嵌入汇编代码。
考虑到实时性自己可靠性的要求,所有控制器都没有基于freeRTOS,linux等操作系统开发。
这都是几年前的事情了,这几年电子技术飞速发展,32位cortex-Mx的单片机以极高的性价比横扫一切,以前大行其道的PIC系列处理器应该已经慢慢退出了历史舞台。
我想现在CAN,LIN总线应该成了标配,车上的电器状况可以轻而易举通过诊断仪以及行车电脑进行诊断,所谓的汽车电子维修变成了诊断工具的使用以及元件替换,越来越没有技术含量,变成单纯的体力劳动。
汽车ecu就是通常讲的汽车电脑。
汽车ecu编程语言目前90%都是c语言编写,其中部分汇编语言,还有部分c 语言也会在汽车ecu使用。
汽车ecu目前主要还只是16位单片机,因此资源有限,需要特定的驱动代码和配置。汽车电脑的维修,一般能做的也是重新刷写软件,刷写参数。真正的电路板损坏或者其他元器件坏了,只能重新更换新的ecu,然后刷写软件配置参数。
汽车电脑维修,没有手机电脑维修那么复杂,也没有太多技术含量。
但也许未来不久,汽车也会变成一个大的电脑。到那时候维修可能就会和手机电脑维修一样,市场广阔,收益很大的。
看情况,我设计过车用ECU,不过不是汽油发动机,只是柴油发动机或发电机。上位机软件C 自编,没用INCA,太贵了,为客户省钱。发动机ECU都是用单片机,发电机ECU用的是DSP(不好意思,用的是德州DSP,希望国产普及),都是C语言编程,前面有人说用C 或者汇编,我说你真他妈本事。车用ECU无非是模拟量,开关量测控都有,主要特点:
1、带了大容量控制脉谱图(MAP),一般MAP二维横纵起码16点以上(各模块不同),但是MAP里的数据必须做大量实验标定,这就需要实现快速通信及读写,或者先在大容量RAM里标定,最后好了一次性写到存储器里。
2、通信:我们将标定通信和平时监控通信分开的,标定通信数据量大,我们用485或K线,平时数据通信用CAN。
普通单缸:用STC单片机,很意外吧?很多人特别是三脚猫的些人很鄙视用STC的,就因为它国产?就因为它老板看上去像吹牛?单片机这玩意要选就选适合的,反正我们用下来蛮可靠的,没遇到什么莫名其妙的问题。唯一不好的是他们号称要出汽车级芯片,一直难产。
多缸机:freescale,飞思卡尔,汽车上广泛应用,编程没什么难度,也有协处理XGATE,自带CAN收发器,方便很多。
发电机:DSP28系列,其实是是发动机发电机一起集成控制,带液晶操作界面,关键要实时采集计算三相交流电电压电流功率频率各项参数(本来有专用芯片,没用),DSP难度比单片机稍难,但实际上很多模块都配有专门头文件跟c文件,因此很方便,现在市场上牛逼轰轰的STM32(我没用过,看别人编程,狗屎水平)我看就是学DSP。
至于汽车维修,ECU坏了,也没必要修的,检测比修还费钱,一般也不容易坏,坏也是外围模块容易坏,如果改装,一般不会去也没那个本事改ECU程序,只是涉及到数据重新标定,弄到标定软件即可。但改装无非是加大喷油量,改变提前角,更改一些模块的控制MAP,但这是有风险的,轻则环保不过关,重则损坏发动机。
不要学,工作环境脏乱差,没银子只能买一堆盗版设备,主要客户就是汽修厂,说白了就是接点修理厂干不好的疑难杂症,又限于当今4s技术垄断你很难获取一些技术服务器的账号,只能花钱到处求人才能在线编程设码,所谓的工程师软件培训也只能一知半解。不建议你学。
ECU维修,或者说是改装,实际上用不到编程语言,维修改装所谓的“编程”,实际上是“重新刷写数据或者软件”,数据、软件都是专门的改装公司做好一套一套的,这个数据是高增压的,那个数据匹配某种排气,那个数据提升50马力,那个数据屏蔽了尿素喷射的,那个数据不限扭……你所要做的就是确保刷写的数据和目标机型相匹配,不会出门就拉缸,就行了。真正的ECU软件设计门槛是很高的,不是单枪匹马能做的了,涉及到汽车理论、硬件、平台软件、操作系统、算法、数据结构、标定、测试、通讯、试验,各种各样的行业标准等等,就算是没吃过猪肉也要看过猪跑才行,否则没法做这个行当。
别问我怎么知道的,我就是吃猪肉的。
一般使用C语言编程。ECU一般采用通用且功能集成,开发容易的CPU;软件一般用C语言来编写,并且提供了丰富的驱动程序库和函数库,有编程器,仿真器,仿真软件,还有用于calibration的软件。汽车电脑维修是个前景很广阔的职业,随着中国步入汽车社会,越来越多的家庭或者个人购买汽车,这就给了汽车维修,尤其是高级汽车维修更广阔的空间。
到此,以上就是小编对于车载软件检测系统的问题就介绍到这了,希望介绍关于车载软件检测系统的1点解答对大家有用。
[免责声明]本文来源于网络,不代表本站立场,如转载内容涉及版权等问题,请联系邮箱:3801085100#qq.com,#换成@即可,我们会予以删除相关文章,保证您的权利。 转载请注明出处:http://www.skvcd.com/zonghe1/6017.html