STM32 IAP 在线升级项目实例剖析

点击左上角的“关注”,定期更新 STM32 最新资讯,总有你想要的信息!

STM32 IAP 在线升级项目实例剖析

项目信息

  • 处理芯片:STM32F407VET6(512KB Flash,192KB RAM)
  • 升级接口:串口
  • 升级通信协议:Ymodem
  • 程序存储器:芯片内部 Flash
  • Bootload 程序大小:31396 byte
  • 升级固件大小:83452 byte

1. 为什么产品需要在线升级功能

  对于已经出厂的产品,在需要添加新的功能或者修复软件 BUG 的时候,这时就需要在线升级功能。如果出厂产品出现了严重的软件 BUG 却没有在线升级功能时,那么你就只能选择将产品召回,不仅造成了经济损失,还会让客户产生非常差的产品体验,从而可能导致丢失客户。
  对于那些需要给客户定制程序的产品,在线升级功能就更加必不可少了。有了在线升级功能,只需要把定制固件发给客户,让客户自己升级固件测试功能,就不需要自己亲自烧录程序再把产品寄给客户了。

2. IAP 在线升级

2.1. 用户如何使用 IAP 在线升级功能

在这里插入图片描述
用户是如何使用 IAP 在线升级功能给设备升级的呢?

  • 首先需要连接待升级的设备。
  • 打开升级软件,选择升级固件。
  • 最后复位设备,等待升级完成后设备自动重启即可。

2.2. 在开发者的层面上解析 IAP 在线升级功能

在这里插入图片描述
对于开发者来说,IAP在线升级功能又是由哪些部分组成的呢?

  • 首先需要生成升级固件。
  • 然后将固件通过传输协议传输到 STM32 上。
  • STM32 收到固件后将其写入到应用层区域的 flash 中。
  • 升级完成后 STM32 自动进入应用程序。
  • STM32 的升级过程如下:
    在这里插入图片描述

3. 产品代码加密

  最后一定要做的就是产品代码的加密处理。毕竟你也不想自己的产品代码被别人读取出来,然后再把你的电路板一抄,就可以量产你的产品了吧。
  实现代码加密最简单通用的方法对 STM32 的 flash 启动读保护。启动读保护后,用户就无法通过外部操作来读写芯片的 flash 代码了,只能通过解除读保护后才能继续读写 flash,当解除读保护时,STM32 会自动擦除整个 flash,从而起到了保护数据的作用。
  以下是启动了 flash 读保护后,ST-LINK 无法连接 STM32,起到了代码加密的作用。

在这里插入图片描述

4. STM32 IAP 在线升级专栏目录

后续会陆续更新下列文章,点个关注+收藏,就能获取最新文章的推送哦!

大家的支持就是我分享技术的动力,希望大家需转载时能附上原作者的博客:https://blog.csdn.net/u012993936,谢谢。

--- End ---

你可能还想看:

> 如何7天快速入门Zigbee?
> 免费的Zigbee抓包神器!比Ubiqua还好用!

文章都看完了,随手点个赞吧~
在这里插入图片描述
↓↓↓ ↓↓↓

版权声明:本文为CSDN博主「Jesse_嘉伟」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/u012993936/article/details/122951466

点击左上角的“关注”,定期更新 STM32 最新资讯,总有你想要的信息!

STM32 IAP 在线升级项目实例剖析

项目信息

  • 处理芯片:STM32F407VET6(512KB Flash,192KB RAM)
  • 升级接口:串口
  • 升级通信协议:Ymodem
  • 程序存储器:芯片内部 Flash
  • Bootload 程序大小:31396 byte
  • 升级固件大小:83452 byte

1. 为什么产品需要在线升级功能

  对于已经出厂的产品,在需要添加新的功能或者修复软件 BUG 的时候,这时就需要在线升级功能。如果出厂产品出现了严重的软件 BUG 却没有在线升级功能时,那么你就只能选择将产品召回,不仅造成了经济损失,还会让客户产生非常差的产品体验,从而可能导致丢失客户。
  对于那些需要给客户定制程序的产品,在线升级功能就更加必不可少了。有了在线升级功能,只需要把定制固件发给客户,让客户自己升级固件测试功能,就不需要自己亲自烧录程序再把产品寄给客户了。

2. IAP 在线升级

2.1. 用户如何使用 IAP 在线升级功能

在这里插入图片描述
用户是如何使用 IAP 在线升级功能给设备升级的呢?

  • 首先需要连接待升级的设备。
  • 打开升级软件,选择升级固件。
  • 最后复位设备,等待升级完成后设备自动重启即可。

2.2. 在开发者的层面上解析 IAP 在线升级功能

在这里插入图片描述

对于开发者来说,IAP在线升级功能又是由哪些部分组成的呢?

  • 首先需要生成升级固件。
  • 然后将固件通过传输协议传输到 STM32 上。
  • STM32 收到固件后将其写入到应用层区域的 flash 中。
  • 升级完成后 STM32 自动进入应用程序。
  • STM32 的升级过程如下:
    在这里插入图片描述

3. 产品代码加密

  最后一定要做的就是产品代码的加密处理。毕竟你也不想自己的产品代码被别人读取出来,然后再把你的电路板一抄,就可以量产你的产品了吧。
  实现代码加密最简单通用的方法对 STM32 的 flash 启动读保护。启动读保护后,用户就无法通过外部操作来读写芯片的 flash 代码了,只能通过解除读保护后才能继续读写 flash,当解除读保护时,STM32 会自动擦除整个 flash,从而起到了保护数据的作用。
  以下是启动了 flash 读保护后,ST-LINK 无法连接 STM32,起到了代码加密的作用。

在这里插入图片描述

4. STM32 IAP 在线升级专栏目录

后续会陆续更新下列文章,点个关注+收藏,就能获取最新文章的推送哦!

大家的支持就是我分享技术的动力,希望大家需转载时能附上原作者的博客:https://blog.csdn.net/u012993936,谢谢。

--- End ---

你可能还想看:

> 如何7天快速入门Zigbee?
> 免费的Zigbee抓包神器!比Ubiqua还好用!

文章都看完了,随手点个赞吧~
在这里插入图片描述
↓↓↓ ↓↓↓

版权声明:本文为CSDN博主「Jesse_嘉伟」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/u012993936/article/details/122951466

生成海报
点赞 0

Jesse_嘉伟

我还没有学会写个人说明!

暂无评论

发表评论

相关推荐

STM32 IAP 在线升级项目实例剖析

点击左上角的“关注”,定期更新 STM32 最新资讯,总有你想要的信息! STM32 IAP 在线升级项目实例剖析项目信息 处理芯片:STM32F407VET6(512KB

STM32 如何生成升级固件

点击左上角的“关注”,定期更新 STM32 最新资讯,总有你想要的信息! STM32 如何生成升级固件项目信息 处理芯片:STM32F407VET6(512KB Flash

STM32 如何生成升级固件

点击左上角的“关注”,定期更新 STM32 最新资讯,总有你想要的信息! STM32 如何生成升级固件项目信息 处理芯片:STM32F407VET6(512KB Flash

使用STM32G030进行IAP远程升级

网上有一篇F系列的远程升级,移植过来的时候可以用,但是缺芯得换成G系列的,使用的方法也不一样,所以移植的时候难免有些坑,所以来记录一下 不同之处 1.对于flash的操作