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

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

[复制链接]
STMCU小助手 发布时间:2021-12-20 20:00
86.1 初学者重要提示3 }9 A0 l$ ?2 L7 q
  SPI Flash的相关知识点可以看第78章和79章。/ W& R/ O! e) x" A1 _
  操作本章配套例子前务必先将SPI Flash的下载算法放到MDK安装目录。
) B0 o. I7 l6 \; }2 d  本章节配套例子实现了将12点阵,16点阵,24点阵和32点阵中文全字库下载到外置SPI Flash。
8 M( ~; ?& K. k4 B1 }  全字库文件仅需下载一次即可,下载完毕后,大家可以删除工程中添加的算法文件,从这里删除即可:/ _( e# M! t: `* Z
0 g6 S$ ~& ~  b5 ^
4f31f47dabc8804ade935b670c9f129d.png
$ K6 x. M5 C8 `5 g  u
3 }+ m3 d1 _  y8 j, j! E7 X* o
86.2 内部Flash和SPI Flash同时一键下载的优势0 I: R+ q3 B& _& y# Z4 Y8 Q0 W& Y- B8 U
通过这种方式,可以方便的更新SPI Flash中的数据,特别是全字库,图库,主题等资源文件的下载。这样就可以通过MDK进行一键下载。# Y$ E2 R  b% j- ^4 ^' F& u
1 y5 d7 T( {2 o  m0 ~, h
86.3 下载算法存放位置/ g& |5 U# A* l; j, f+ H
编译例子:V7-065_SPI Flash的MDK下载算法制作,生成的算法文件位于此路径下:! r3 C5 e1 X0 A$ O; m, T! I+ Z

* c  x7 R9 l! p) w  B- V; K/ z2 P3 B
800da58659fed9e41448eb14bd059eb8.png

# q7 v: O1 E* F. a2 D' L% X' W7 o8 U% r
生成算法文件后,需要大家将其存到到MDK安装目录,有两个位置可以存放,任选其一,推荐第2种:
6 b, ]( G2 R6 S, |6 h
8 p; W  }) S6 O) D+ T/ P( o4 c  第1种:存放到MDK的STM32H7软包安装目录里面:\Keil\STM32H7xx_DFP\2.6.0\CMSIS\Flash(软包版本不同,数值2.6.0不同)。
1 n( t2 A% l# w0 ~4 {( q2 m  第2种:MDK的安装目录 \ARM\Flash里面。
  v' R5 H, x# ^/ C, }% L' n, d, t. F' V! K! ?
c685f7da1a598bf9355e4698ab4b3157.png
! b5 z9 e4 {0 C
, \) J2 j3 t6 |3 b/ e
86.4 下载全字库到外部SPI Flash说明5 P8 W; a$ N- Y/ a* r
全字库的下载注意以下两点即可。
* v7 s& x& X5 B; L; N) O( |8 Z5 u: q' P
86.4.1 设置全字库文件到外置SPI Flash( j6 I9 x! F$ [% D+ J" Z
增加地址空间:  m) z  w6 ]* u9 M
! a5 j+ Z5 |/ C7 `0 r
f860ba550a4bb5d79651dfb0ed3546db.png

. [3 J* k; C6 i' `) z" Y( G' w
% m, O+ @- c8 K, s% N设置文件gb3212到外部SPI Flash,此文件记录了12点阵,16点阵,24点阵和32点阵字体。
, Z  x+ H. _+ }# F( o/ P( c6 U& C  G2 C5 p
6eb37e990b5fac1fcebcf6e7748f6daa.png
# P! U; ]* D1 A% C
  I/ Q) o1 O- d" s1 c0 u
86.4.2 防止编译优化全字库文件
  o- T4 ~* [0 R8 P0 R9 T为了防止编译将文件gb2312优化掉(因为我们没有调用此文件),需要大家在Option->Linker选项里面设置保留此文件:! D! V6 W- S0 ?! ~: ^' I( c7 y

- K$ a4 L5 P6 v# t
b0734fc0c5dcc00653465e79e3a85a9f.png
# M8 M" Z1 c$ B6 k! h9 Y/ k$ I

5 M8 v" a6 g2 K# O86.5 内部Flash和QSPI Flash程序下载配置5 j( M8 N5 G: f
配置方法如下,注意这里一定要够大,否则会提示算法文件无法加载:
8 W# Q  d" C+ |
% y( Y, m7 s+ r
b291caa643e5c32c089d6ccfe22e44c0.png

9 D# A. O3 [6 b; L
: T% j+ \- b! M& R我们这里是将其加到DTCM中,即首地址为0x20000000,大家也可以存储到任意其它RAM地址,只要空间还够加载算法文件即可。推荐使用AXI SRAM(地址0x24000000),因为这块RAM空间足够大。5 G, w- e- |! |; E
/ H: b8 [! _0 q
如果要下载程序到内部Flash和外部SPI Flash里面,需要做如下配置,两个下载算法都要添加进来:: I2 W7 s0 g, a8 z; J3 N7 [

! N3 R5 z& a- w/ f
70ecd6cbc0767b1cfd5197d7d2bfaef3.png

( E- d- n. n8 L
3 c, w$ p, Y& D6 C4 B) {2 R* c! J' {86.6 实验例程说明
- ^' r1 Q% S1 W$ Z本章节配套例子:V7-067_MDK一键下载内部Flash和外部SPI Flash(下载的全字库文件支持12,16,24和32点阵)
: J+ `, r8 e5 l! w# g
1 @/ k" w- ~' O  g4 P  H效果如下:2 T# W2 f; g+ f0 e' U' J) J
  g; [% f1 P% ~: I/ S, B( t
b0cf3acce75b2e7e957abe7684881cd9.png
0 j( g* m( ~4 E1 @

1 Q3 F9 y% Q' k& W* x$ @/ v86.7 总结# X6 [! Y- _* V" c$ O) A. C3 e
本章节就为大家讲解这么,为了熟练掌握,大家可以尝试自己实现外部SPI Flash数据更新。
0 C4 d  _; u! n& Q6 P( l
$ j' V' v. _1 e* s. B) G7 j9 ]' Y9 p7 d1 u* p; U4 {9 N4 U! Q
赞 收藏 评论0 发布时间:2021-12-20 20:00

举报

0个回答

所属标签

相似技术帖

官网相关资源

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