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

查看: 758|回复: 2

【中文文档】AN3965_STM32F40x和STM32F41x基于串口的IAP

[复制链接]

1347

主题

1124

回帖

0

蝴蝶豆

管理员

最后登录
2020-12-9
发表于 2019-3-29 11:10:59 | 显示全部楼层 |阅读模式
1 前言

对于大多数基于 Flash 的系统而言,在最终产品中安装之后,能够对固件进行更新,这一点非常重要。这一功能被称为在应用中编程 (IAP)。此应用笔记的目的就是为创建 IAP 应用程序提供通用准则。

STM32F4xx 微控制器能够运行用户指定的固件,从而执行微处理器内置 Flash 的 IAP。借助这一特性,在重新编程过程中可以使用任意类型的通信协议。本应用笔记以 USART 为例进行说明。

2 IAP 概述

STM32F4xx 器件可在意法半导体的 STM324xG-EVAL 评估板上实现。

2.1 原理

应使用所选的开发工具通过 JTAG/SWD 接口,或使用系统存储区中工厂内置的自举程序将IAP 驱动程序编程到 Flash 的基址。

IAP 驱动程序使用 USART 执行以下操作:
● 从超级终端将二进制文件下载到 STM32F4xx 内部 Flash 中。
● 将 STM32F4xx 的内部 Flash 内容(从指定的用户应用程序地址开始)上传到二进制文件中。
● 执行用户程序。

2.2 IAP 驱动程序说明IAP

驱动程序包含下列源文件:
● main.c:在此文件中对 USART 进行初始化并配置 RCC。然后通过 menu.c 文件执行主菜单。
● menu.c:包含主菜单例程。主菜单提供了多种操作选项,包括下载新的二进制文件,上传内部 Flash,执行已加载的二进制文件,去除将要被加载二进制文件页的写保护(如果这些页面被写保护)。
● flash_if.c:包含内部 Flash 的写入、擦除和禁止写保护功能。
● common.c:包含从/向 USART 外设读取/写入相关功能
● ymodem.c:使用 YMODEM 协议从/向超级终端应用程序接收/发送数据(a)。如果接收数据时出现故障,则显示错误消息“接收文件失败”。如果成功接收数据,则将该数据编程到内部 Flash 的相应地址中。然后对内部 RAM 内容与内部 Flash 内容进行比较,以验证数据是否完整。如果数据存在不一致的情况,则显示错误消息“验证失败”。如果映像文件大小超过允许的存储空间,或用户中止任务时,还会显示其它错误消息。
● STM32F4xx 标准外设库。

用户可以按下连接到引脚的按钮来选择是执行用户应用程序,还是执行 IAP 重新编程:
● 复位时不按按钮:切换到用户应用程序。
● 复位时按下按钮:显示 IAP 主菜单。

有关 STM324xG-EVAL 板上用于进入 IAP 模式的按钮的详细信息,请参见表 1:STM32F4xxIAP 的实现。

IAP 流程图如图 1 所示。

3 运行 IAP 驱动程序

3.1 超级终端配置

要使用 IAP,用户的 PC 必须能够运行超级终端或其它支持 ymodem 协议的终端程序。本文档中使用超级终端。图 2 给出了超级终端的配置。
1.png


注: 使用波特率值 115200 bps 进行举例说明。选择系统时钟频率时,必须要小心。为了能顺利通过 USART 进行通信,最终应用中的系统时钟频率必须保证能够产生 115200 bps 的波特率。3.2 执行 IAP 驱动程序例如,在本应用笔记中,按下连接到引脚的按钮可以启动 IAP 驱动程序。在复位时按下按钮,用户可运行 IAP 驱动程序以重写编程 STM32F4xx 的内部 Flash。当然,不一定要使用按钮,用户还可以对该引脚施加相当于有效电平的信号。请参见表 1:STM32F4xx IAP 的实现。

.............

想了解更多,请下载原文阅读


回复

使用道具 举报

6

主题

930

回帖

133

蝴蝶豆

金牌会员

最后登录
2020-12-9
发表于 2019-3-29 12:47:05 | 显示全部楼层
收藏
回复 支持 反对

使用道具 举报

39

主题

285

回帖

42

蝴蝶豆

金牌会员

最后登录
2020-10-16
发表于 2019-4-3 14:21:45 | 显示全部楼层
不错
回复 支持 反对

使用道具 举报

请先关注话题后回复
关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版