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

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

[复制链接]
STMCU小助手 发布时间:2022-3-22 13:00
在使用STM32F103C8T6单片机IAP功能时,可以自己写bootloader程序,也可以使用官方bootloader文件。下面说一下使用官方bootloader的使用方法。
5 B! I7 K) D8 `. j" ]首先下载官方bootloader文件+ F% f% J, w) e4 h) V) p' `
FQUQOLX$DVLLUVBSKQEPOFO.png 0 Q! g, B  Q* B) _9 `* f0 j" \' ?
8 h6 [- l1 j  L1 J  P  t, i
目前使用的是这个版本,打开文件夹,选择适合自己编译器的工程。! A' I1 t* }# d% u0 \" f* t+ m

/ c5 ^- l& v7 t9 |8 X9 Z# V! j+ x! | 1 _0 j1 g' T0 o
& n5 a) s2 \: I" L3 u2 w4 _
目前使用的是keil,所以打开MDK-ARM文件夹  {) U. s. E' s) H5 D0 K
3 T- Y; m1 q$ ?% Q) p# D
H%[FZ__}HD~R}IFU4K8QL_8.png 3 G! J1 G- ^/ Z, D2 J# S
  S5 |5 B) D. g& A
打开IAP工程/ P/ S1 T- ]9 N7 ~3 p* x% M

2 a. Z- w6 q6 I9 g KGHSBLCON{{V_J~MVS88ISM.png % g% Y% [" ^3 y

( S* ?0 t9 H% k+ _8 V打开后根据自己的单片机型号,对工程进行简单的修改。用的是STM32F103C8T6单片机,FLASH为64K,SRAM为20K。! x+ l; r! c4 Y, G2 q0 u

; T4 W- x8 U9 Q$ H I8K`)569G[J6U6S`TX2W.png
5 L# C+ |) q- L2 L9 P2 Y$ S% B+ X3 I" _+ ?, r! a/ E
设置IROM1的起始地址和大小。
4 |/ S2 ^% [0 X+ Y( e( L1 ]# P1 A- P6 [' @4 w( r' }; |  _
J}G3~GEIF4S](99W8{0YZM0.png
( p2 e" m0 ?& M/ S& F6 J5 A. E0 K7 r2 j% p
设置引用的头文件,STM32F103C8T6为中等容量,所以设置文件为STM32F10X_MD,。
2 o3 a( t, m1 F! G- e下来要设置APP的起始地址,这个地址要和下载的APP运行地址对应,否则下载的APP不能正常运行。
) j, Z* z  E! g. a9 Q- H# L' V
5 t* k4 j8 i4 h7 Z. ? 1W~}B)9NPZUS7F4_5Y52]50.png ! M" V! M$ ~) G, _2 l

+ n$ f. P6 z$ _1 ~9 s" H) \6 @在common.h 头文件中将 ApplicationAddress 地址设置为APP在FLASH中存储的位置。要因为要测试的APP在FLASH中的起始位置为0x8005000,所以此处将ApplicationAddress值也设置为0x8005000。然后编译项目
  x- t2 E. x: c0 G1 `1 q% `1 X2 g* T
OO5W0SNQV(B4GP79LHON]]M.png
+ M; G: R! {# Z3 t" t, i. c* W4 _! G- ?( ?
没有出现错误,将代码下载到单片机中。然后打开secureCRT软件。
- }( E$ A4 p: {5 y5 e! w( S/ y
+ \) ]- {% y( p9 E3 k! q AFK[@)DN2ZA`A`L%`~NO0G3.png 9 C# A- @2 R( d! L+ N1 i, ^) s! z, ~

# w- x, {6 W. k1 X; P/ R选择串口端口号和波特率0 {( Z. z. [5 l& L  c

; m; P$ ^% B  e0 ^8 w; T( v CE_4S2Z]HY))`$N5_L21JKM.png
$ b5 c4 C; A- l6 l7 k, R. q+ Z- J3 B2 N: ^; ~2 n
程序默认波特率为115200,8位数据位,1位停止位。无奇偶校验位。设置好之后选择连接。
+ x1 q3 B! |: f7 E
* [7 w; P0 s5 c3 A, I0 } 8J3VULDOU_~~CFPS`$I__NM.png
* v" p5 X. }8 [% O' J% W8 K% O5 j9 ~- g; Z$ u
然后给单片机重新上电,这时候软件上就会显示提示信息。6 R6 E% z# B1 ?2 D5 j2 g
' Y. v$ Z% |3 d2 E4 i$ d
Z`DC_[7TLQ0IHRZB2AG3HT7.png : k$ O* D& y2 ~! z& ?
" m( w- i$ F% {* ]6 x
然后按键盘的数字1,准备下载bin文件。. U) \: o7 t/ K
- [# Y9 M, G% ]( u" r
6OQ]9A2Y4LENLT4LTD1H9FF.png
( l9 T+ ]% m0 |8 X& h" A  p  B- D: t6 k# p
在菜单栏上面选择 传输----发送Ymodem选项。
# a6 v$ k0 m( k+ d
3 {9 d  J" [3 O" g (%GFLS]X}R6G4_5Q4_Y8[@K.png   z5 Q2 i7 r* k6 R. g) h
* t- s* p% D7 |! V) V; E5 C8 p
选择要下载的bin文件,然后点添加按钮。) ]. _8 r* `0 D8 _: N! C# ~* {
添加好bin文件后,选择确定按钮。- d% U- ~  C8 Y
& k/ I0 N' I$ T% {( A! a
22}_E8~AK}7L}TW9~`ZE0{B.png ' w0 @1 i3 S9 L0 ?# S+ S3 v

' P0 D5 F, Z/ \) f. o1 m' U 4CO4%UXTYLFFIJ{E}OVLS.png
9 n0 U% ?1 L& Y+ J  b( D' f: g0 Y# b5 M0 I+ F+ V+ A5 l$ Y
文件传输成功后,会出现提示信息。这时候说明bin文件已经下载到了FLASH中。
% [9 C9 G; R- L& F. _: ~下来在按键盘上的数字3,APP就开始执行了。
$ _; I9 R6 s; A& K0 B这个串口软件上没有回显功能,所以按下的数字键,界面上不会显示的。光标永远是个小黑点在闪烁。APP有没有成功运行,直接看单片机的现象就行。
. o0 v! i* \$ P; r. {
; u8 n. \; i% c; E3 v) o0 r2 x- a9 ?- H3 F' L! E: A

. A* ]# \8 |8 ?3 ~2 V6 w
赞 收藏 评论0 发布时间:2022-3-22 13:00

举报

0个回答

所属标签

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版