完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
|
|
|
你说的是Jlink固件升级吧
|
|
|
|
或者指IAP?楼主没说明白
|
|
|
|
stm32的开发板自动升级?描述的不清楚,不知道你指的是什么升级?
|
|
|
|
开发板不能自动升级啊
|
|
|
|
STM32很强大的一个功能是支持IAP在线升级,IAP(In-Application Programming),即在“应用程序中编程 ", 通俗的来将是程序自己可以往程序存储器里写数据或修改程序。有了IAP功能, 即使在产品发布之后也可以方便的通过预留的通信端口(如串口、USB、IIC等)对产品中的程序固件进行更新升级,而无需通过传统的JTAG方式做烧录更新。IAP功能的固件一般包含两个部分:Boot和 UserApp。其中Boot部分必须通过JATG或ISP进行烧录,APP部分可以在烧录BOOT后通过IAP升级烧入或者与BOOT合并到一起后通过JATG或ISP进行烧录。
MCU上电后,首先运行BOOT,BOOT起来后,做如下操作: 1.对APP部分做校验,如果校验失败,认为APP出现异常,进入流程3,反之,进入流程4; 2.检查升级标志,看是否需要升级,如果需要升级,进入流程3,反之,进入流程4; 3.执行升级流程,升级完成后重置升级标志并软件复位; 4.跳转到APP执行,APP在需要升级时,写入升级标志并软件复位。 需要注意的是:如果BOOT程序被破坏,产品就只能通过JATG或ISP进行烧录了,这一点是不能容忍的,解决的方法是我们可以对BOOT区域设置成写保护。以禁止对BOOT区域进行编程或擦除操作。 |
|
|
|
楼上正解, 自动升级就是讲代码分成两部分:boot和app, boot只干一件事,初始化硬件,然后等待:1)升级;2)跳转到app;
如果用户需要升级则使用串口或者u***下载app,这个地方需要外部软件或者案件触发; 如果没有任何操作则跳转到app。 我们写的固件就是所谓的app,完成点亮led等操作,不知道楼主知道了不 |
|
|
|
非常感谢!学习了!!!!!
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
1129 浏览 0 评论
AD7686芯片不传输数据给STM32,但是手按住就会有数据。
1075 浏览 2 评论
2175 浏览 0 评论
如何解决MPU-9250与STM32通讯时,出现HAL_ERROR = 0x01U
1269 浏览 1 评论
hal库中i2c卡死在HAL_I2C_Master_Transmit
1693 浏览 1 评论
浏览过的版块 |
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-26 01:02 , Processed in 0.793491 second(s), Total 88, Slave 71 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号