基于CAN总线的UDS诊断bootloader升级MCU工具_第1页
基于CAN总线的UDS诊断bootloader升级MCU工具_第2页
基于CAN总线的UDS诊断bootloader升级MCU工具_第3页
基于CAN总线的UDS诊断bootloader升级MCU工具_第4页
基于CAN总线的UDS诊断bootloader升级MCU工具_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

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

文档简介

第第页基于CAN总线的UDS诊断bootloader升级MCU工具功能扩展

1、升级包可以做些加密功能。

2、结合pcan-view,扩展实现(CAN)报文分析工具。

3、其实有一个很重要的功能就是TrustZone,实现权限访问功能,对每个功能服务进行分离和加密。

开发经验

在开发过程,遇到一些坑,分享给大家,防止掉坑里。

1、之前在rasc添加的组件不能删除。

下面在rasc添加Thre(ad)X,不只是(RTOS),其他组件也出现这种情况。

当去掉组件不使用,重新配置。但是组件还是显示在软件包,导致编译

解决方式:经过自己琢磨发现,找到工程下buildinfo.gpdsc文件,删除残余的组件。

会有提示,点击确认就行,残余的组件就没有,可以顺利编译。

但是治不了根,当你重新再配置,还会出现前面的情况,需要做同样的操作,找到工程下buildinfo.gpdsc文件,删除残余的组件。可能需要做其他的配置。还有可以一种情况,在components下取消组件,在st(ac)ks还存在,比如TreadX,还在stacks中,直接Remove掉。

2、(SD)卡,FAT32文件系统的开发。

当把较多变量和数组放在局部函数会导致,错误中断

代码例子

int

transfer_data_cm36(FIL*

f_update){

UINT

update_fnum

=

1;

/*

文件成功读写数量

*/

BY(TE)

update_ReadBuffer[64]={0};

/*

读缓冲区

*/

u16

index;

u8

send_transfer_flag

=

0;

FRESULT

update_res_sd

=

FR_OK;

uint16_t

exit_crc

=

0xFFFF;

if(update_fnum

像这样,运行直接Default_Handler尝试改堆空间,也没什么作用。

把这部分变量放到全局,就能成功运行。

stat(ic)

UINT

update_fnum

=

1;

/*

文件成功读写数量

*/static

BYTE

update_ReadBuffer[64]={0};

/*

读缓冲区

*/static

u16

index;static

u8

send_transfer_flag

=

0;static

FRESULT

update_res_sd

=

FR_OK;

static

uint16_t

exit_crc

=

0xFFFF;int

transfer_data_cm36(FIL*

f_update){

if(update_fnum

3、CAN总线开发,忘记取消过滤CANID

开发板的CAN(收发器)CANH和CANL丝印是反的,花了一些时间才发现。

SDK建议使用比较新的版本包括(Keil)5用比较新的,不然很可能出现些奇怪的问题。

温馨提示

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

最新文档

评论

0/150

提交评论