浅谈汽车电子自编程bootloader的几种实现

浅谈汽车电子自编程bootloader的几种实现

ID:25503586

大小:57.00 KB

页数:6页

时间:2018-11-20

浅谈汽车电子自编程bootloader的几种实现_第1页
浅谈汽车电子自编程bootloader的几种实现_第2页
浅谈汽车电子自编程bootloader的几种实现_第3页
浅谈汽车电子自编程bootloader的几种实现_第4页
浅谈汽车电子自编程bootloader的几种实现_第5页
资源描述:

《浅谈汽车电子自编程bootloader的几种实现》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、浅谈汽车电子自编程Bootloader的几种实现  论文关键词:汽车电子 NEC电子 Bootloader 自编程  论文摘要:自编程技术在汽车电子领域软件开发中发挥着非常重要的作用,它可以实现ECU的在线诊断,在线标定,代码升级等功能,解决了传统方案依赖于诊断软件,标定软件,专用烧写器的缺点。建立了基于NEC电子的32位车身专用微控制器的软件平台,编写了CAN协议驱动,通讯协议驱动,flash操作驱动代码,分析了Bootloader区和应用程序区的中断向量处理机制,列举了常见的几种Bootloa

2、der设计方法,结合实际平台进行了一系列试验,提出了一些可扩展型、创新型的方案并总结了其优缺点,这对于自主开发Bootloader是非常有实际意义的。  引言  随着国家对汽车产业的大力扶持,国内汽车电子领域自主研发实力不断增强,越来越多的汽车将由传统的机械化实现电子化。首先实现电子化的是仪表领域,目前市场上面的电子化仪表几乎涵盖了所有低端、中段、高端领域,价格从一百元到几千元的都有。其次,车载娱乐也得到了很大的发展,车载音像,车载DVD也都得到了普及。车身领域也得到了一定的发展,车门,车窗,车锁

3、RKE/PKE,雨括,BCM,EPS,导航等,国内也有一些企业投入了研发,很多产品已经上了整车。安全领域,如Airbag;动力总成领域,例如发动机控制,国内只有很少一些公司研发成功,大部分技术还是被国外公司垄断。2009年,中国汽车产量已经突破一千万辆,取代美国成为全球第一的汽车生产大国,因此,加强国内汽车电子自主研发是一件非常紧迫的事情。制约我国汽车电子自主研发的因素很多,其中最主要的一点是汽车电子本身是一个技术含量很高的高端行业,对产品稳定性、安全性要求很高,而我国起步比较晚,技术势必被国外垄

4、断,而打破这个技术壁垒的唯一途径就是自主研发。  Bootloader是应用程序运行前跑的一段程序,它可以烧写在FlashROM里面,也可以通过上位机下载到RAM运行,成熟的Bootloader可以实现ECU的在线诊断,在线标定,代码升级等功能,而客户不需要购买专门的诊断软件,标定软件,专用烧写器,不仅节省了研发成本,而且使用方便,实现功能多。NEC电子是全球知名的汽车电子芯片供应商,可以为用户提供成熟的解决方案跟技术支持,选用NEC电子的32位车身专用芯片V850/Fx3完全可以实现车身ECU的

5、Bootloader功能和应用程序的开发。  1系统平台  本系统采用NEC电子的32位车身专用芯片V850/Fx3系列,V850是NEC电子的32位微处理器核,5级流水线控制,内部32个32位寄存器,乘法/除法指令,数据空间支持最大4GB线性寻址能力,代码空间支持64M线性寻址能力,内部1MB的codeflash,60KB的RAM空间,32KB的dataflash用作EEPROM模拟。  2常见Bootloader设计方案  目前常用的Bootloader方案有一下四种:  2.1方案一  如下

6、图:  SHAPE*MERGEFORMAT  图1方案一存储空间图  Fig.1Memoryaddressspaceofsolutionone  原理如下:  Boot工程:  Address:0x0000~0x3fff,interruptvector和自编程库函数,CAN,上位机通讯协议;  Application工程:  Address:0x0000~0x3fff,interruptvector和自编程库函数,CAN,上位机;应用程序函数;  Dummyvector:用于中转中断处理函数。因

7、为如果有中断产生,程序指针只会跳到Bootvector,应用程序中断处理函数无法响应中断。Dummyvector处理流程如下:SHAPE*MERGEFORMAT              图2方案一中断处理机制  Fig.2Theinterrupthandlemechanismofsolutionone  缺点:  1.Bootloader烧写在ROM里面,每次启动的时候需要执行,进行相应判断不是由应用程序开始。  2.每次进入中断程序时需要进行跳转,所以延长进入中断时间,且boot里面需要声明

8、所有中断向量,boot里面的中断处理函数中要调用Application中的中断处理函数比较复杂,因为如果Application代码更新后,应用程序函数入口地址是变化的。  3.DummyInterruptVector需要在更新Bootloader时就写入,并且在更新应用程序的同时也更新这部分区域。  优点:  1.程序设计相对容易。  2.2方案二  如下图:    SHAPE*MERGEFORMAT            图3方案二存储空间图  Fig.3Memoryaddre

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。