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

【经验分享】STM32H7的内部Flash和SPI Flash同时使用MDK一键下载

[复制链接]
STMCU小助手 发布时间:2021-12-20 20:00
86.1 初学者重要提示
2 i5 F1 j) [  h% ]7 K* p4 s2 B  SPI Flash的相关知识点可以看第78章和79章。( j  ~" g8 W$ s, K) P- h
  操作本章配套例子前务必先将SPI Flash的下载算法放到MDK安装目录。4 K, Z2 C& d. M$ ~6 L+ L
  本章节配套例子实现了将12点阵,16点阵,24点阵和32点阵中文全字库下载到外置SPI Flash。
9 S( s2 n% O* N8 z6 z. ?  全字库文件仅需下载一次即可,下载完毕后,大家可以删除工程中添加的算法文件,从这里删除即可:3 D! l) V2 X) r% V9 B. U. k9 Q
( ~+ e: E* }& r% Z
4f31f47dabc8804ade935b670c9f129d.png

4 U& v: \7 b- @7 @( d9 l  f4 V6 X( }, _
86.2 内部Flash和SPI Flash同时一键下载的优势& B  f. [  k3 a) Y9 T
通过这种方式,可以方便的更新SPI Flash中的数据,特别是全字库,图库,主题等资源文件的下载。这样就可以通过MDK进行一键下载。
. _% ^' I- t. o% V3 R* |
4 C& C: _$ M( t% d- P# H* l' t86.3 下载算法存放位置
) V" `- f5 P* t# c编译例子:V7-065_SPI Flash的MDK下载算法制作,生成的算法文件位于此路径下:: R, ^# w6 D* d% K9 O2 E

1 P, e7 u. e4 e) A# b& N1 V
800da58659fed9e41448eb14bd059eb8.png
* t+ M# I) ?5 G& t9 T

; t5 G) B# l6 u# ~  B生成算法文件后,需要大家将其存到到MDK安装目录,有两个位置可以存放,任选其一,推荐第2种:
9 d6 }3 t: m4 p! H  ^- u# I) ^0 |) y" v" ^( {7 ^0 G
  第1种:存放到MDK的STM32H7软包安装目录里面:\Keil\STM32H7xx_DFP\2.6.0\CMSIS\Flash(软包版本不同,数值2.6.0不同)。1 C% G; t4 i& Q5 D' k+ Y6 X, w0 R
  第2种:MDK的安装目录 \ARM\Flash里面。+ S: F. L7 V) J6 L  L
' n9 o0 Y% N, z7 v. ^. b2 u/ X
c685f7da1a598bf9355e4698ab4b3157.png

  C5 E; x$ G* G' C: k, @
- d3 z5 q  q* Y/ Y, G86.4 下载全字库到外部SPI Flash说明
, ]8 R6 ]1 M, y3 Y全字库的下载注意以下两点即可。
9 Y- Y1 H0 W0 b2 t/ G+ h
0 m7 `% F& x# f3 ?4 H2 u# T0 Q+ h9 K86.4.1 设置全字库文件到外置SPI Flash
& m# w8 p( [& u+ _" \  J' V增加地址空间:5 e$ i4 ]) o) o5 @: M0 r

: O' \9 ~5 o5 G+ B' b
f860ba550a4bb5d79651dfb0ed3546db.png

  Z4 K( F: ^" k2 k' j& x0 T. u
4 E5 a6 }- ?: f4 C设置文件gb3212到外部SPI Flash,此文件记录了12点阵,16点阵,24点阵和32点阵字体。
( k5 x  r8 w) e( ~' m$ D
+ V) G; s: t) F- `
6eb37e990b5fac1fcebcf6e7748f6daa.png
" X( r9 U. {3 @; o0 G

" ^7 h% N/ ]' J86.4.2 防止编译优化全字库文件+ W/ s' i8 ]/ a) i) w) y, q# R2 C, M
为了防止编译将文件gb2312优化掉(因为我们没有调用此文件),需要大家在Option->Linker选项里面设置保留此文件:
% _- A! J: _9 B4 t
7 d0 }# G+ w. T
b0734fc0c5dcc00653465e79e3a85a9f.png
1 c; _' @/ m5 A; [" H/ w; Z0 f

+ @8 d8 Y8 ^: O5 T86.5 内部Flash和QSPI Flash程序下载配置# j8 E- G+ q& ]1 _) f7 g  T3 Q/ ~
配置方法如下,注意这里一定要够大,否则会提示算法文件无法加载:/ \$ C: }7 ^" O) E  l
! S$ z9 H# C6 O1 k, n
b291caa643e5c32c089d6ccfe22e44c0.png
7 A: ]  z% u' X1 K

; ?: \: \6 q' y我们这里是将其加到DTCM中,即首地址为0x20000000,大家也可以存储到任意其它RAM地址,只要空间还够加载算法文件即可。推荐使用AXI SRAM(地址0x24000000),因为这块RAM空间足够大。
4 d7 e: x9 D. g& r  X4 X
/ I4 V) m- S  x9 ~: P) z9 B如果要下载程序到内部Flash和外部SPI Flash里面,需要做如下配置,两个下载算法都要添加进来:8 ?3 F+ A5 ~1 J+ L

) Z; l- x7 T, t& c/ r+ ?+ n
70ecd6cbc0767b1cfd5197d7d2bfaef3.png
% p: l% g, O8 X4 G; S+ c
( U: y0 Q% R9 l8 L* I5 G" ~
86.6 实验例程说明
3 p9 H  {. G) k" p1 T- h! x本章节配套例子:V7-067_MDK一键下载内部Flash和外部SPI Flash(下载的全字库文件支持12,16,24和32点阵)
, K8 c; q" E$ u) d, @* j/ J7 V# ^6 e' r& ]2 p8 s) V- Z
效果如下:9 l; H1 X. B3 [6 F1 }2 l1 j

5 X0 F) o9 ]7 n8 t: w
b0cf3acce75b2e7e957abe7684881cd9.png

$ T9 g' L" y4 A# J7 j6 k7 X
/ z: x3 [* a0 N( \) G4 O6 p86.7 总结! O4 t' g7 l: D  N5 Y; R$ ~
本章节就为大家讲解这么,为了熟练掌握,大家可以尝试自己实现外部SPI Flash数据更新。! g, c% L/ o6 C& d% W) F& Z

- |( c- o3 X* t: Q0 I' ?; F3 J6 z! Y+ M$ |# E" n
收藏 评论0 发布时间:2021-12-20 20:00

举报

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