加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

关于 ST eMotion board 使用DFU的一点总结

发布时间:2020-12-15 07:09:02 所属栏目:百科 来源:网络整理
导读:在用 ST?eMotion?board 的过程中,使用 DFU 进行 reprogram 的时候,可能出现一些问题。 ST?eMotion?board 的结构如下: 并且dataSheet 提到: The?eMotion?also?implements?the?DFU?(device?firmware?upgrade)?feature,?therefore,?in?the? case?of?a?new?f

在用ST?eMotion?board的过程中,使用DFU进行reprogram的时候,可能出现一些问题。

ST?eMotion?board的结构如下:


并且dataSheet提到:

The?eMotion?also?implements?the?DFU?(device?firmware?upgrade)?feature,?therefore,?in?the?

case?of?a?new?firmware?release,?it?can?be?reprogrammed?without?the?need?to?use?a?

programmer.?See?www.st.com/mems?for?new?firmware?release.

也就是eMotion实现了DFU

关于DFU,网上教程零零散散,下面总结了一点:

1、eMotion?board进入DFU模式之前,必须先按住SW2,再上电直到D1,?D4,?D5,?and?D6?light?up.

2、使用DFU?file?manager的时候,最好选择bin文件转换,并修改rom起始地址和target?IDtarget?Name,具体参照DfuSe?Demonstration检测到设备之后的存储器可擦写的地址。


3、用IAR6.3以上版本编译官方Demo?project的时候,出现以下错误:

Error[Pe147]:?declaration?is?incompatible?with?"__nounwind?__interwork?__softfp?unsigned?long?__get_PSP(void)".........

解决办法:

under?project?options:

1-?on?the?"General?Options"?option?in?the?"Library?Configuration"?tab?

???check?the?checkbox?Use?CMSIS

2-?on?the?"C/C++?Compiler"?option?in?the?"Preprocessor"?tab?

???remove?the?include?directory?of?CM3?"$PROJ_DIR$....LibrariesCMSISCM3CoreSupport"

4、输出选择二进制Bin文件

==============================参考资料=================================

STM32DFU文件生成方详解

最近好象很多人都在问关于DFU文件的使用问题,正好我们刚研究过,给大家讲讲我们的用法。

第一步,准备好要转换的文件,bmpwav格式,ST原版的DEMO就是这两种格式,后缀改为.bin(也可不改,只是选文件类型过滤选ALL?Files(*.*)).

第二步,运行DFU?File?Manager,选择第一项(I?want?to?GENERATE?a?DFU?file?from?S19,HEX,or?BIN?Files),这个是生成DFU文件,第二项是解压DFU文件,点OK进入下一步。

第三步,左边的三个文本框是产品ID,版本信息,可以不用动它,右边有个Target文本框,这个是选择生成的DFU文件写到哪个存储器里,这个非常重要,一定要写对,前面问DFU不成功的都可能是这个问题,ST原版有三个存储器可写,分别是(0,片内Flash),(1,外部SPI?Flash),(2,外部Nor?Flash),这里我们选择写到外部Nor?Flash里面,所以改为?2,下面是芯片的名称可以不管,只要上面的数字对了就可以,点击Multi?BIN...进入下一步。

第四步,这里是添加你要转换的文件了,首先将地址该为你要存放的位置,如64000000,这是nor?flash?的起始地址,当然根据你的片选分配的不一样这个地址也是不一样的,然后点右边的...按钮选择一个你要添加的文件点打开,再点Add?to?list,一个文件就加进来了,下面显示有这个文件的起始地址和结尾地址,要再添加文件就在前一个文件的结尾地址上加1设置为下一个文件的起始地址,这样一直把你要添加的文件加完,点OK返回。点右下方的Generate...按钮选择你要保存DFU文件的目录和输入文件名称再点保存,一个DFU文件就生成了。

这里特别要注意的就是Target目标序号的设置和添加文件时地址的设置要正确,否则就有问题。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读