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

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

[复制链接]
STMCU小助手 发布时间:2021-12-20 20:00
86.1 初学者重要提示  X6 m: P1 l  e7 k" t& W) w3 N
  SPI Flash的相关知识点可以看第78章和79章。" g% t  s/ d9 \2 E2 w" w% X! S
  操作本章配套例子前务必先将SPI Flash的下载算法放到MDK安装目录。
* Q- j* q$ x' S7 \, t  本章节配套例子实现了将12点阵,16点阵,24点阵和32点阵中文全字库下载到外置SPI Flash。9 E- x* O& J4 @
  全字库文件仅需下载一次即可,下载完毕后,大家可以删除工程中添加的算法文件,从这里删除即可:
8 ~6 |# F, w* t! H; }; r
3 B3 M/ V* D1 R
4f31f47dabc8804ade935b670c9f129d.png

1 D& q6 ]+ N5 R- O- I, p& [! j) _% u5 \" E
86.2 内部Flash和SPI Flash同时一键下载的优势/ m% k1 X3 K7 @( k! l2 H1 o, u" }
通过这种方式,可以方便的更新SPI Flash中的数据,特别是全字库,图库,主题等资源文件的下载。这样就可以通过MDK进行一键下载。
: }0 c6 B- ^+ {$ _4 x
+ W+ K* l# I: ]7 u8 \9 G" K7 R86.3 下载算法存放位置9 P0 l4 V+ R# E1 {1 G
编译例子:V7-065_SPI Flash的MDK下载算法制作,生成的算法文件位于此路径下:" }3 P( t; w' B; c, T2 a

8 h) {. E: q! O
800da58659fed9e41448eb14bd059eb8.png

3 `8 F* R# T3 [: {, ~3 |/ B$ l+ O+ x3 i4 M' X- I% P& e- C
生成算法文件后,需要大家将其存到到MDK安装目录,有两个位置可以存放,任选其一,推荐第2种:( s6 E) z& q: v5 Z. g1 u* [
3 m2 r, O1 ^. \+ y8 @# @9 L
  第1种:存放到MDK的STM32H7软包安装目录里面:\Keil\STM32H7xx_DFP\2.6.0\CMSIS\Flash(软包版本不同,数值2.6.0不同)。
) n- {8 e5 c3 ]1 w0 _0 H; w- O* T  第2种:MDK的安装目录 \ARM\Flash里面。
, f' C/ _5 j, x$ G6 z+ d2 x; Y( J5 V% ~/ N; _
c685f7da1a598bf9355e4698ab4b3157.png
, W" R! r" j. N% D/ i. _% `: V; a

6 R- F1 D2 u  `! B86.4 下载全字库到外部SPI Flash说明
) e  S+ J1 i( Q% \; C1 C全字库的下载注意以下两点即可。
1 L7 h9 F6 g: |& ~3 T) W( u5 T9 j2 M: c) ^
86.4.1 设置全字库文件到外置SPI Flash4 j  h3 \: m5 ~% c& f, ?4 G& L
增加地址空间:
& Y5 k5 r, s, M% v7 j4 Y0 z' c% Q; U" d1 g4 V  g$ X; d; ~  B
f860ba550a4bb5d79651dfb0ed3546db.png

/ B! o1 t, Q# S8 n6 ?8 E0 H1 o2 w3 P" I7 C
设置文件gb3212到外部SPI Flash,此文件记录了12点阵,16点阵,24点阵和32点阵字体。
8 T5 p) Q8 @2 B1 R. O" R: o/ j: V: _% W* H8 k
6eb37e990b5fac1fcebcf6e7748f6daa.png

; O, W% ?, N2 R8 {  X$ r# i
; C8 }5 [4 U; _86.4.2 防止编译优化全字库文件3 \' D: h& ?- G. h7 D5 j% r
为了防止编译将文件gb2312优化掉(因为我们没有调用此文件),需要大家在Option->Linker选项里面设置保留此文件:; L/ F6 L. o$ ^+ ~+ t1 V/ r3 Z8 |

% H. m' w* u5 c
b0734fc0c5dcc00653465e79e3a85a9f.png
8 l4 |5 o7 Y+ Q0 ~: R

3 P! M# l7 K8 v  {8 n" ?86.5 内部Flash和QSPI Flash程序下载配置
/ H" B% N  J' i配置方法如下,注意这里一定要够大,否则会提示算法文件无法加载:0 ], r7 O# X* T

3 L6 s+ X% G/ X5 N7 h6 b
b291caa643e5c32c089d6ccfe22e44c0.png
0 d( Z- s# F7 x  p/ C3 i  D

: x+ D5 |( _7 R9 K( J$ l& i* \我们这里是将其加到DTCM中,即首地址为0x20000000,大家也可以存储到任意其它RAM地址,只要空间还够加载算法文件即可。推荐使用AXI SRAM(地址0x24000000),因为这块RAM空间足够大。
5 N) D9 j6 @% {/ ^
/ K7 ?( Y( w8 X2 Z# o2 ^2 S, d2 [如果要下载程序到内部Flash和外部SPI Flash里面,需要做如下配置,两个下载算法都要添加进来:+ J5 K. Z) V! `) {$ o9 I
5 p8 N/ `$ d7 p3 ^% p
70ecd6cbc0767b1cfd5197d7d2bfaef3.png
; w" A; x* M# a% L1 {" @  e
/ k& A. g# T% w8 W, F" J+ d
86.6 实验例程说明
8 r  \. p/ G. W本章节配套例子:V7-067_MDK一键下载内部Flash和外部SPI Flash(下载的全字库文件支持12,16,24和32点阵)2 o1 O1 T! W  _  }% z

9 w0 Y3 l' O6 s0 {: J' p( u效果如下:
0 f! T1 _) A) o6 H4 `( M# l& o, e7 \4 `' U8 E( x
b0cf3acce75b2e7e957abe7684881cd9.png
3 Y9 L4 U- y- m) R' w! d

' P2 w0 s" J0 o% M+ n! N  T86.7 总结/ t- I# X6 L- Z$ O8 q% i2 F
本章节就为大家讲解这么,为了熟练掌握,大家可以尝试自己实现外部SPI Flash数据更新。0 v' T3 x2 G7 g! N' A1 r2 [

- Y1 }4 k% v$ p1 \# ~) I1 q/ {2 n! u7 b- J9 u, U2 ^' q! A/ `
收藏 评论0 发布时间:2021-12-20 20:00

举报

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