请选择 进入手机版 | 继续访问电脑版

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

STMF767Nucleo扩展板实验一 【程序在QSPI Flash内运行】

[复制链接]
lebment 发布时间:2019-10-29 14:15
  之前分享了,STMF767Nucleo的扩展板,https://www.stmcu.org.cn/module/forum/thread-621811-1-1.htmlhttps://www.stmcu.org.cn/module/forum/thread-622164-1-1.html
. F& r5 l6 ~4 O2 `6 Y& L  Mhttps://www.stmcu.org.cn/module/forum/thread-621674-1-1.html1 e7 K2 S+ H. w  M% ]

$ T% J% |# L! M  ~% t; k这次分享一下,在W25Q128上运行程序的教程。& N/ U5 q, [  e" ?# P$ {) w
  首先看看手册, 批注 2019-10-29 140045.png ,QSPI可以映射到内部,QSPI Flash地址参考手册Bank1地址0x90000000,QSPI Flash 没有onchip flash快,最好是开Cache 开TCM interface,最快133MHZ,我画的板子没有那么快的速度,所以只能凑合用(全速216MHZ时钟、FLash Pres 设置为2可以正常读写)。
  P" r( y3 T9 e- B+ O2 j. h: {+ x& A# Y0 l! _
在外部flash运行,要么bootloader跳转、要么设置OB中的Boot0 启动地址。
' a6 l, F; C+ R- h4 p这里我只给出bootloader方式启动。; _9 D# P. C; k0 F4 E5 H3 G9 Q

% m# E6 h2 V  u伪中文代码:9 `- R# I5 W/ p4 m7 d
main{2 N+ ~8 H7 l6 Y' H% z
初始化时钟;
# R, f; j4 }( ^$ K初始化QSPI;
2 I' c% ~. L3 \# I/ W读FlashID 确保Flash存在且容量足够/ t( m3 C7 N7 y$ |" {
关系统时钟中断0 F/ B; X& h2 |; B
跳转' b% `% g* s4 V' K, h
}  q; _' `3 l5 c7 j
为何给出伪代码原因: 系统不一样,我觉得给出一个模板就可以了,有时候系统时钟不一定是systick 也有可能是tim,自己选择关中断。, W. W. C- q# m9 H/ ~  O, I% @
3 r, ^8 Y7 h8 |
APP程序:
2 Q9 T% Y5 |1 C- |/ gmain{9 A$ v% H6 l) b' `" B5 d
你的应用;
8 A4 L+ v5 }& k- b8 S8 Y1 Z, S/ J7 h& q  R' i
}
0 f8 Z) q0 w7 Y8 w2 C5 M修改中断向量偏移地址 ,编译器的起始地址。这里我是0x90000000,MDK魔法棒设置flash 0x90000000。
' I. Y5 I+ I6 m
* P. J7 y) M$ c8 i1 W' y用MDK烧写W25Q128 Flash,然后开始运行。(烧写算法自己写的,如果要扩展板,我再发flm文件)7 |4 F, p& v. w" K7 P8 [
批注 2019-10-29 141309.png 4 O& Y* ]5 f" x) v" f  r( ?# R3 K
,我这里使用FreeRTOS 发送msg  闪烁LED。 批注 2019-10-29 143301.png ) p. N' @/ ?- m( N7 E8 F

9 w  b1 |6 ]5 U3 r7 q( D  ^/ `+ I& B! L

4 K: y7 _! h2 X9 h
收藏 1 评论1 发布时间:2019-10-29 14:15

举报

1个回答
Kevin_G 回答时间:2019-10-30 09:43:41
收藏

所属标签

相似分享

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