如何给汽车电脑编程

电脑教程020

如何给汽车电脑编程,第1张

现在的车载电脑都采用的可擦写的存储器,所以可以将修改原来ECU中存储的程式变为可能,但是如果要是一个普通的电脑编程员,还是不足以能编辑汽车ECU中的程序,因为这涉及到汽车的点火,喷油,各个传感器和执行器信号的输入和输出,另外现在都采用了CAN。所以要编汽车的语言需要学电脑的编程语言,要知道编写汽车的发动机的机械性能(包括各个转速下的点火时间,喷油时间等等),以及很强的汽车专业知识,现在还增加了对局域网知识的要求,所以现在中国大陆只有很少的一部分人能改汽车电脑里的程式 回答:2006-04-10 14:39提问者对答案的评价:

1、软件开发的第一个流程是项目开发目的分析与确定,主要是在软件开发商将开发项目确定下来之后,需要与需求方进行讨论,确定需求方对于软件开发的需要实现目标及其具体需要的功能等等,并确定是否可达成;

2、接下来就是需求分析,这个步骤也是为软件开发的正常进行确定具体思路的阶段。在确定软件开发可进行后,必须要对客户需要实现的软件功能需求进行具体详细的分析。同时应当考虑在开发过程中可能出现的变化情况,制定需求变更计划随时应对特殊情况的发生,保证软件开发流程的顺畅进行;

3、接下来就是软件设计。软件设计要根据上一阶段对软件功能需求分析的结果,来设计软件系统的框架结构、功能模块和数据库等等。它主要分为总体设计和详细设计两个部分;

4、接下来就是编程实施步骤。编程也是根据对软件设计,将软件设计的各部分需求通计算机程序代码来实现运行,编程有统一、规范的程序编写规则,保证软件程序的易懂性、易维护性;

5、接下来就是软件测试步骤。也就是在根据设计将客户软件需用编程代码来实现之后,也就是软件程序完成之后,需要对编写的程序,形成整体构架、功能进行单元、组装、系统三阶段的测试,以测试程序编写的正确性,以及对客户需求功能满足的充分性,以此来确定软件是否达到开发要求,同时也是一个发现问题、纠正问题的过程;

6、通过以上核心环节完成了软件开发,接下来就是在软件开发达到客户需求之后,开发者将软件系统交予客户,并将软件安装程序、数据库的数据字典、《用户安装手册》、《用户使用指南》、需求报告、设计报告、测试报告等产物交付给客户,同时指导客户进行软件安装、以及安装技巧,提醒客户注意软件运行状况、环境、服务器及相关中间件的检测与注意事项,知道客户软件的实际操作方法、使用流程等等问题,实现合同规定任务;

7、用户在接受开发商交付的软件开发结果,并进行实际操作、测试运行,实现满意结果之后,对开发出来的软件进行验收;

8、定制开发的软件通常都需要提供售后服务,定期对软件进行维护,或者根据用户出现的新需求,进行应用软件程序的修改,使之不断满足客户实际需求。

方面实现底层软件的解耦,模块化,可重用等特点。原装刷写的品牌极其极其有限,但是由于ECU就是用底层数据重写的,所以控制程序的稳定性比“原厂刷写”要高。

底层刷写断电后数据不会丢失,数据刷写断电后会恢复,就如同电脑的主板的CMOS,拿掉电池后就会恢复成出厂设置,如果刷写了芯片,拿掉电池后也不会丢失。

汽车ECU软件的完整开发包括应用层软件和底层软件。应用层软件主要是对于被控对象的控制,比如控制发动机在不同工况下应该喷多少油,进多少气;或者控制变速箱在什么油门什么车速去换挡,怎么去控制离合器和同步器实现换挡,亦或者控制电机多少转速,多少扭矩。

而底层软件是对于微控制器的编程,比如用代码实现设备驱动(如何配置寄存器),协议栈(如何配置CAN通道寄存器),电子器件或硬件电路的诊断等等。

对于底层软件来说,主要分为几个抽象层:服务层,ECU抽象层,微控制器抽象层和复杂驱动。