汽车电子自编程分析论文_0_第1页
汽车电子自编程分析论文_0_第2页
汽车电子自编程分析论文_0_第3页
汽车电子自编程分析论文_0_第4页
汽车电子自编程分析论文_0_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、汽车电子自编程分析论文 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方案一 如下图: SHAPE*MERGEFORMAT 图1方案一存储空间图 Fig.1Memoryaddressspaceofsolution

2、one 原理如下: Boot工程: Address:0x00000x3fff,interruptvector和自编程库函数,CAN,上位机通讯协议; Application工程: Address:0x00000x3fff,interruptvector和自编程库函数,CAN,上位机;应用程序函数; Dummyvector:用于中转中断处理函数。因为如果有中断产生,程序指针只会跳到Bootvector,应用程序中断处理函数无法响应中断。Dummyvector处理流程如下: SHAPE*MERGEFORMAT 图2方案一中断处理机制 Fig.2Theinterrupthandlemechanism

3、ofsolutionone 缺点: 1.Bootloader烧写在ROM里面,每次启动的时候需要执行,进行相应判断不是由应用程序开始。 2.每次进入中断程序时需要进行跳转,所以延长进入中断时间,且boot里面需要声明所有中断向量,boot里面的中断处理函数中要调用Application中的中断处理函数比较复杂,因为如果Application代码更新后,应用程序函数入口地址是变化的。 3.DummyInterruptVector需要在更新Bootloader时就写入,并且在更新应用程序的同时也更新这部分区域。 优点: 1.程序设计相对容易。 2.2方案二 如下图: SHAPE*MERGEFORM

4、AT 图3方案二存储空间图 Fig.3Memoryaddressspaceofsolutiontwo 缺点: 1.更新程序之前需要进行BootSwap功能切换应用程序和Bootloader程序,更新完毕后再次需要进行切换. 2.应用程序设计时比较复杂,需要加入Bootloader代码,且需要空出一段空白区域用于与Bootloader区域进行BootSwap交换. 优点: 1.ECU从应用程序开始跑,中断程序处理简单。Bootswap的目的就是为了处理中断机制。 SHAPE*MERGEFORMAT 图4方案二存储空间图 Fig.4Memoryaddressspaceofsolutiontwo 2

5、.3方案三 如下图: SHAPE*MERGEFORMAT 图5方案三存储空间图 Fig.5Memoryaddressspaceofsolutionthree 缺点: 1.芯片空间的使用效率比较低,需要有一半的ROM空间用做交换区. 优点: 1.Bootloader和应用程序整合在一个工程文件中,不需要专门的Boot区,程序设计简单,从应用程序开始跑。 2.由于旧程序仍然存在,应用更加安全. 2.4方案四 如下图: SHAPE*MERGEFORMAT Fig.6Memoryaddressspaceofsolutionfour 首先在RAM某段区间强行定义为ROM属性,否则无法执行代码,因为RAM

6、默认存放变量。然后将Bootloader工程代码拷入到指定RAM区间,指针跳转到RAM开始执行与上位机建立通讯。调用底层flash操作库函数更新应用程序。 缺点:程序设计比较复杂,需要跳转到RAM运行。在RAM中更新flash的时候需要开辟ROM空间作为启动备份区,否则发生断电或者意外,程序将无法恢复。 优点:节省空间。程序从应用程序启动。 3结论 中断矢量的拷贝是Bootloader的难点,以上的一些方法无论是方案一的中转函数还是方案二的Boot区交换,都是对中断矢量的拷贝,使得应用程序中断处理函数能够响应中断。对四种Bootloader方案进行了比较和优缺点分析,具体应用应该根据用户的实际

7、情况和客户的要求来设计。 实践中,要综合考虑到上位机的成本,ROM空间,启动时间,中断响应时间等因素。 4结束语 汽车电子已成为当前IT产业的一大亮点,呈现出巨大的市场需求。Bootloader的设计作为软件设计的一部分,有着非常重要的功能,可以实现ECU的在线诊断,在线标定,代码升级等功能。根据客户的实际需求,开发出成熟的软件是我们的目标。 参考文献 1NECElectronics.V850ES/Fx3UserManual,2006 2NECElectronics.Self-PragrammingNote,2007 3NECElectronics.DataFlashConvertUserManual,2007 4Vector.FlashKernelProgrammingonaHC12microcontrollerVersio

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论