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

【经验分享】STM32F103C8T6用官方bootloader实现IAP升级操作方法

[复制链接]
STMCU小助手 发布时间:2022-3-22 13:00
在使用STM32F103C8T6单片机IAP功能时,可以自己写bootloader程序,也可以使用官方bootloader文件。下面说一下使用官方bootloader的使用方法。7 g' t( X' V  K6 C/ p- |" _
首先下载官方bootloader文件/ l( @; d/ l' q  k' N2 |
FQUQOLX$DVLLUVBSKQEPOFO.png
4 a8 D) e# O! ]( E4 E- {  Q2 G% r8 Y+ e0 k$ T
目前使用的是这个版本,打开文件夹,选择适合自己编译器的工程。' W8 ]  X, j' K: D$ Y- z

% I8 @  [; D4 c% n1 r2 S% f ; X! o  V7 d5 D; R. D8 q' Z; K; F
& S  \' G8 Z! n# |4 y* Z
目前使用的是keil,所以打开MDK-ARM文件夹
' x+ A2 r7 L, @+ y* ^+ g
# k8 m' G. C1 N! W+ s+ k H%[FZ__}HD~R}IFU4K8QL_8.png
0 n: n, N7 i2 o7 M6 |6 V
, |+ w9 H7 c0 U7 ?打开IAP工程
- d2 E- s! C- [! P) @: \, B/ O4 T8 q4 M9 D% l. p/ t
KGHSBLCON{{V_J~MVS88ISM.png 3 W. [: g1 _' D
& T6 T, p- c- t% ~* \/ h) C/ f
打开后根据自己的单片机型号,对工程进行简单的修改。用的是STM32F103C8T6单片机,FLASH为64K,SRAM为20K。
" p+ j" t: ^6 u2 e
" E9 Z  D5 E, j( V3 \  j I8K`)569G[J6U6S`TX2W.png
( \0 A8 A8 T* E$ d" b1 @
3 |3 D5 h1 |' r5 ?9 o- c) f设置IROM1的起始地址和大小。
- Y3 @1 o/ L% [8 @2 T( f) m! [
J}G3~GEIF4S](99W8{0YZM0.png . U1 Q$ }6 P5 E- t3 m

  w* b3 j2 X7 F* |5 {; _设置引用的头文件,STM32F103C8T6为中等容量,所以设置文件为STM32F10X_MD,。8 b1 t: X- t( `
下来要设置APP的起始地址,这个地址要和下载的APP运行地址对应,否则下载的APP不能正常运行。
7 H7 _3 q6 M- H( }6 U  Z! [3 G
! H; D- s$ d/ ^4 L 1W~}B)9NPZUS7F4_5Y52]50.png 7 b0 ^$ A# v; K& u# x& ]% o& L

' n! [  ~2 F/ W在common.h 头文件中将 ApplicationAddress 地址设置为APP在FLASH中存储的位置。要因为要测试的APP在FLASH中的起始位置为0x8005000,所以此处将ApplicationAddress值也设置为0x8005000。然后编译项目, [, c6 }+ s' I

* R* D9 [3 a0 Q$ } OO5W0SNQV(B4GP79LHON]]M.png ) M1 j1 I1 x7 y
* I# s7 t* R* A$ D
没有出现错误,将代码下载到单片机中。然后打开secureCRT软件。" x$ r+ X5 p) I! T& E7 z0 V# s9 m
# _  b4 p% v( l- N5 x/ N' C) m
AFK[@)DN2ZA`A`L%`~NO0G3.png
. v8 [9 }# r( x+ L, G
  s' n# ?: i* T; Z选择串口端口号和波特率
, q# P8 Q# q& M) ^
# ^( U( ~' Q5 M" _/ J& s CE_4S2Z]HY))`$N5_L21JKM.png * `! |) l! t2 [5 v9 c$ o9 m$ H

& e, Z( R, Z& I- ^5 G程序默认波特率为115200,8位数据位,1位停止位。无奇偶校验位。设置好之后选择连接。4 s; l, u& H' a
  M- ^' j/ O% ]" f6 s/ L8 D
8J3VULDOU_~~CFPS`$I__NM.png
" T1 ]2 }8 Z1 _* t0 G/ N8 U
2 y, M  q0 b, a  ~/ k然后给单片机重新上电,这时候软件上就会显示提示信息。
+ V/ E1 Q) k- ?. Z4 ^. Y
1 R7 a( E0 Z) B0 d3 f+ C+ Q Z`DC_[7TLQ0IHRZB2AG3HT7.png 9 j! E/ }1 v9 l0 {
7 p/ a: |$ j4 G$ `8 t3 s
然后按键盘的数字1,准备下载bin文件。$ ^9 W: n" z+ F: X
- ^( ]* A& a7 s1 b; y1 h5 M
6OQ]9A2Y4LENLT4LTD1H9FF.png
. S5 F/ J' G1 U9 ~" U3 }# b( p
在菜单栏上面选择 传输----发送Ymodem选项。3 ?1 v( G+ p$ h9 N+ I4 Z  K
- \6 ^4 z# |+ }  M2 J* l
(%GFLS]X}R6G4_5Q4_Y8[@K.png
& h  {! d6 s( j7 Q. x0 w, I
4 q3 h( a, {# @2 y( b选择要下载的bin文件,然后点添加按钮。0 g* ]# t2 w& V% \( g; r! t/ s5 c
添加好bin文件后,选择确定按钮。/ t* D9 U) L( w" M: W, N

# y0 ?1 N9 E0 G 22}_E8~AK}7L}TW9~`ZE0{B.png $ R8 m# ?' G8 ]( b& Y

% R( S3 r' S2 @# @ 4CO4%UXTYLFFIJ{E}OVLS.png
+ P$ T7 {; c! P! t
$ U( y, M8 T9 y" N4 C文件传输成功后,会出现提示信息。这时候说明bin文件已经下载到了FLASH中。
5 P6 Q2 u6 u# {% [0 ^; o/ R下来在按键盘上的数字3,APP就开始执行了。
; O3 t* p% J& n% [1 j* [( [这个串口软件上没有回显功能,所以按下的数字键,界面上不会显示的。光标永远是个小黑点在闪烁。APP有没有成功运行,直接看单片机的现象就行。
! V7 W9 v* @0 l' P) L1 b+ H" k  z* C9 t
1 Y2 B/ C( p/ p% Z. J
' v, s, }$ R) ?5 B* p! Y3 N
收藏 评论0 发布时间:2022-3-22 13:00

举报

0个回答

所属标签

相似分享

官网相关资源

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