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

【中文文档】AN3226_基于STM32F107以太网应用升级应用手册

[复制链接]
STMCU-管管 发布时间:2019-4-11 12:56
STM32F107 通过以太网实现在应用中编程 (IAP)   g  j7 K: h" Y+ x) ]% H6 `' p
$ r7 u2 Z8 s  S' m# o0 M  u) n
前言
: P8 z  j8 S$ y1 ^) c
  F% Z* `- L# O, m本应用笔记的目标读者为使用 STM32F107 微控制器的开发者。提供了如何使用 STM32F107以太网接口实现在应用中编程 (IAP)的解决方案。
0 \! s! e/ A3 d: l
, M0 S4 A0 k& B
在 LwIP TCP/IP 协议栈上提供了两种可行的解决方案: 3 \8 @# G/ f3 A$ Z- z; t
● 使用 TFTP (简单文件传输协议)的 IAP , V; U" ?5 k" r1 t1 k) W
● 使用 HTTP (超文本传输协议)的 IAP3 o2 K+ }2 N+ g9 r+ E
) I( f: E, Z$ d
1 IAP 概述
/ L, R5 O/ R+ ]4 t0 u) N

$ I' b3 r) g- h/ O1.1 工作原理
. N5 s9 f& \0 d/ ?+ j, `- S7 e
1 z6 l  l4 n  W% ]9 d在应用中编程(IAP)是一种在现场通过 MCU 的通信接口(例如 UART,USB,CAN 和以太网等)进行固件升级的方式。 - P2 }$ X; k0 q5 `4 |( p

- P, W# |  D$ H2 h当启动微控制器时,您可以选择让它进入 IAP 模式以执行 IAP 代码,或者进入正常模式来开始执行应用代码。IAP 代码和应用程序代码都存在于微控制器的嵌入式 Flash 中。通常 IAP 代码被存储在 MCU Flash 的前几页,用户应用代码占据剩余的 Flash 区域。
* J' \& i% c2 Q0 G1 ]* _6 f1 g( J+ T
* \- s- I- P, Z5 N# u( E7 Y
下图说明了 IAP 操作流程:+ I$ i2 f( n( V# _) y

0 p5 Z8 v1 V4 o+ ^
1.png
* y6 o: X# l  r9 F* A9 Y) B( [
1.2 使用 MCU 以太网接口实现 IAP

! z* \$ t& T' \" I
当以太网可用时,它通常是在嵌入式应用中实现 IAP 功能的更好的接口。其优点是:
# D: q. K2 e9 W' w
● 高速通信接口 (10/100Mbit/s)

- j$ V# Q% Y9 M& i
● 通过网络 (LAN 或者 WAN)进行远程编程

- S& n8 E1 d6 p: W3 }
● TCP/IP 协议栈上的标准应用协议可用于实现 IAP,比如:FTP、 TFTP、 HTTP……

) s( B3 r/ n# X# y3 J( x
1.3 在 STM32F107 上通过以太网实现 IAP
7 d; D! E2 A, Y6 r& e
本应用笔记说明了两种使用以太网通信外设在 STM32F107 上实现 IAP 的解决方案:

" @  C' |: l4 J& E0 P& g
● 使用 TFTP (简单文件传输协议)的 IAP

  b( a' O" g' J- o
● 使用 HTTP (超文本传输协议)的 IAP两种解决方案都运行在 LwIP 协议栈 (v1.3.1) 上,它是 TCP/IP 协议套件的一种轻量级实现。

% g8 U$ C+ }. }- F* O
1.3.1 使用 TFTP 实现 IAP 的方法
  N. I! p6 s* ~6 A# b( Z0 p
使用 TFTP 实现 IAP 的方法广泛应用于需要固件升级能力的嵌入式应用(比如在嵌入式 Linuxbootloader 中)。

6 n. ?* X, [; r6 V/ ?2 e; |- s, P
TFTP 是工作在 UDP 传输层上的简单文件传输协议,它主要应用在 LAN 环境中。它基于客户端 / 服务器体系结构,其中客户端向文件服务器请求文件传输 (读或写操作)。

* M7 U$ c1 ]7 p8 w9 U" E
在我们的例子中,在 LwIP 栈上实现了一个简单的 TFTP 服务器,该服务器只处理来自 PCTFTP 客户端的写请求。

2 {+ {, l" V5 P0 d. ?
1.3.2 使用 HTTP 实现 IAP 的方法
' U) p: G  w6 _+ U
通过 HTTP 协议进行固件更新没有使用 TFTP 常见,但是当需要通过互联网进行远程编程时,它是一种有用的解决方案。在这种情况下,需要 TCP 传输协议来确保最优操作。
) V  m/ F5 l/ k3 a8 B- T( I, R
工作在 TCP 上的 HTTP,提供了一种用 HTML 形式从 web 客户端(例如:Mozilla Firefox 或Microsoft Internet Explorer)发送二进制文件的方法,称作 HTTP 文件上传 (RFC 1867)。

' K- N- f+ ~; o* V& ?2 g) C; q+ |
...........

% i, J, j" D! E
想了解更多,请下载原文阅读
7 O3 j2 y. n+ F, F/ }4 @
收藏 1 评论1 发布时间:2019-4-11 12:56

举报

1个回答
Kevin_G 回答时间:2019-4-11 13:17:50
收藏
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版