你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

如何写一个针对STM32的android手机端升级app

[复制链接]
yklkadlfk7898 提问时间:2021-10-19 15:09 / 未解决
咨询一下,现在我一直用DfuSe_Demo_V3.0.6_Setup.exe方式来升级stm32f4程序,但是客户嫌弃这种方法,想要做一个android端的类似DfuSe_Demo_V3.0.6_Setup升级程序。请问哪里有此类似例子或者升级命令流程参考?现在我还不清楚进入void JumpToBootloader(void)模式后各种交互命令,请问哪里有参考资料
收藏 评论8 发布时间:2021-10-19 15:09

举报

8个回答
废鱼 回答时间:2021-10-19 15:28:12
现场升级可以考增加wifi或者蓝牙模块来进行升级。或者自己弄一个串口升级的功能。
yklkadlfk7898 回答时间:2021-10-19 16:01:17
废鱼 发表于 2021-10-19 15:28
现场升级可以考增加wifi或者蓝牙模块来进行升级。或者自己弄一个串口升级的功能。
...

我们出去的产品只有usb口,进入JumpToBootloader模式后,我想知道是dfu升级流程是怎样的,如何发送升级命令。请问哪里有这方面相关文档说明,我好自己写一个手机端的升级程序。
yklkadlfk7898 回答时间:2021-10-19 16:01:42
我们出去的产品只有usb口,进入JumpToBootloader模式后,我想知道是dfu升级流程是怎样的,如何发送升级命令。请问哪里有这方面相关文档说明,我好自己写一个手机端的升级程序。
STMWoodData 回答时间:2021-10-19 21:49:06
有USB口那你直接搞个U盘方式升级,更方便
废鱼 回答时间:2021-10-20 08:43:21
按网友说的,用U盘升级,自己通过U盘中指定文件或者版本信息来判断是否需要升级。这个是最简单的。升级过程自己写就行了。
yklkadlfk7898 回答时间:2021-10-20 11:54:37
废鱼 发表于 2021-10-20 08:43
按网友说的,用U盘升级,自己通过U盘中指定文件或者版本信息来判断是否需要升级。这个是最简单的。升级过程 ...

1:以前我测试过一种方法,就是stm32运行起来后,在运行过程中,擦除flash时就死了。后面得知stm32程序是运行在flash中的,所以在运行中不能擦除flash,导致无法写代码到flash中。无法用这种方式升级。请问如何让stm32运行起来时,全部运行在ram中?这样就可以擦除flash后马上升级更新代码。

2:第二中方式是开机起来后,通过usb指令让程序调用JumpToBootloader(void)函数进入bootloader dfu模式方式升级,电脑端的DfuSeDemo我就是用这种方式升级的。但是这种方式我想移植到手机端app,但是目前不知道dfu升级的协议和交互命令方式。哪里有参考资料?
yklkadlfk7898 回答时间:2021-10-20 11:55:46
yklkadlfk7898 发表于 2021-10-20 11:54
1:以前我测试过一种方法,就是stm32运行起来后,在运行过程中,擦除flash时就死了。后面得知stm32程序是 ...

你们说的U盘方式具体流程是怎么样的?有相关介绍文档吗?
废鱼 回答时间:2021-10-20 16:22:13
yklkadlfk7898 发表于 2021-10-20 11:54
1:以前我测试过一种方法,就是stm32运行起来后,在运行过程中,擦除flash时就死了。后面得知stm32程序是 ...

其实不是死了,是你自己擦除自己导致死掉的。一般做法是在默认启动地址使用一个BootLoader的程序,通过判断是否需要升级再结果。不用拷贝到RAM中执行,我目前使用103、407、L15系列都是可以这样操作的。
关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版