找回密码
 注册
关于网站域名变更的通知
查看: 246|回复: 3
打印 上一主题 下一主题

STM32必须掌握的内容

  [复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2022-5-20 10:22 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x

& n9 d8 s$ ?  ^8 g- o% uSTM32芯片架构- T. j: G3 B8 O6 i) \) `
   STM32F103系列芯片的系统架构如下:8 y( L5 e; M8 `" w

4 R* X/ X! [( t) d1 B9 s% `& _* ?3 K* Y2 g" ]" }+ [4 z
   STM32芯片基于ARM公司的Cortex-M3内核,由ST公司设计生产,内核与总线矩阵之间有I(指令)、S(系统)、D(数据)三条信号线。内核通过总线矩阵与FLASH、SRAM、外设连接。而外设包括GPIO、USART、I2C、SPI等。* z" @  k4 R3 b
STM32芯片系统结构
; v, h" H( _" d, B  d' [0 ~% ]STM32F103 系列芯片(不包含互联网型)的系统结构如下:
" }9 p' w% X* _  }0 ^" `2 u 0 t0 j$ q) p1 h2 l- o0 o  Q

$ n! S6 ]6 L: V8 e从上图可以看出,在小容量、中容量和大容量产品中,主系统由以下部分构  ]% L1 M. l, o2 S
成:0 }. u1 X/ ?  V, X
    四个驱动单元:
. D/ Y8 ~5 r1 J* H* ]1 A' @
  J2 L5 G: d) r. z6 Z    Cortex-M3 内核 DCode 总线(D-bus)9 o( x6 w) l; b  |6 A

0 t3 J3 b2 _* E$ z    Cortex-M3 内核系统总线(S-bus)
; ]* x2 I6 K+ U5 ^) \' i* X$ U& L( ~! T$ p2 A' O; C' q
    通用 DMA1: b3 d3 v; P( I' s1 c
" ]! W  @( `+ F; z" L4 n
    通用 DMA2) A  g3 Q& u# S; a' n
4 M* o& F( {( f* z- ]4 h2 m
    四个被动单元:9 L. |6 D7 A5 x/ Y: S, `  `

3 Y- {0 Z: q8 J/ c    内部 SRAM; V- f; `2 r' Z9 d( k) L0 X
% N( d6 z+ @9 K# W
    内部闪存存储器FLASH6 E+ ]5 U3 {- q: a  a- j
# {) g: B! {# o3 E
    FSMC" B0 i+ Z. F# Q, ]) h" U
3 U  B1 F. d! h- A5 ^1 T
    AHB 到 APB 的桥(AHB2APBx),它连接所有的 APB 设备2 c- j- j8 ]' u. z+ i1 k8 k( I
3 X( [$ ?  Q8 O4 A! u0 L1 k
    这些都是通过一个多级的 AHB 总线构架相互连接的。下面我们看看它们各自的功能:9 D4 |9 ^- D1 o0 h# b% h4 B
  y+ |. b8 Y1 D+ u; b5 T! i
    ICode 总线5 C/ D/ z% O: B
2 I$ R7 @8 Z! j( D$ N  {8 P# {' L
    该总线将 Cortex-M3 内核的指令总线与闪存指令接口相连接。指令预取在此
* e  ?- A& z0 D4 v( i2 f; z总线上完成。
8 y; A% h$ P! w) k  v2 i* L8 N. p* Y( z) Q# l# g
    DCode 总线: g/ J. S# M# w7 [0 p0 u9 P
8 _( E& m# s. O; n3 J0 @
    该总线将 Cortex-M3 内核的 DCode 总线与闪存存储器的数据接口相连接(常量加载和调试访问)。; O1 m# B% n7 v2 k6 W

$ s7 a5 ?- G% `$ S: O; z- b    系统总线3 p5 K9 |5 ^( u/ q

& {. m9 p6 k0 S    此总线连接 Cortex-M3 内核的系统总线(外设总线)到总线矩阵, 总线矩阵协调内核和 DMA 间的访问。
: k. D9 I) v- J* j& \! h; Z* t+ G" S9 r& V, B8 r
    DMA 总线0 j/ T, C" C6 k4 h
7 I. Q5 a4 y+ o9 [8 F
    此总线将DMA的AHB主控接口与总线矩阵相联, 总线矩阵协调着CPU的DCode和 DMA 到 SRAM、闪存和外设的访问。
9 G: D# c, v( J# N' c
4 x) j+ m- q1 a7 e- c3 s- B* Y% m/ v7 m8 X    总线矩阵0 E9 w+ m1 Z. V. V% \- l  H, \
$ U+ U, r9 _. a5 Q+ p5 Z. E
    总线矩阵协调内核系统总线和 DMA 主控总线之间的访问仲裁, 仲裁利用轮换算法。在互联型产品中,总线矩阵包含 5 个驱动部件(CPU 的 DCode、系统总线、以太网 DMA、 DMA1 总线和 DMA2 总线)和 3 个从部件(闪存存储器接口(FLITF)、SRAM 和 AHB2APB 桥)。AHB 外设通过总线矩阵与系统总线相连,允许 DMA访问。& w! d1 O0 X% Q# B* @
+ P% l# u$ ?2 K9 u
    AHB/APB桥(APB)% g% m3 N2 v8 U
6 T/ a, C7 J7 l1 w( P; y
    两个 AHB/APB 桥在 AHB 和 2 个 APB 总线间提供同步连接。APB1 操作速度限于 36MHz, APB2 操作于全速(最高 72MHz)。有关连接到每个桥的不同外设的地址映射请参考《STM32F1xx 中文参考手册》存储器映像章节。在每一次复位以后,所有除 SRAM 和 FLITF 以外的外设都被关闭,在使用一个外设之前,必须设置寄存器 RCC_AHBENR 来打开该外设的时钟。
5 N  r4 i2 P" v5 J4 }# K   STM32F1 的时钟系统相对复杂,在后续文章中再介绍。
2 Y2 ~* h$ {( U  Q# n* zSTM32学习进阶路径
: R3 \: l' D/ B& J) L' J' _! x' q  W! p5 S9 V( f9 i2 }
    基本外设:. ^: T$ Z# E- A' F0 b
9 \. m; \# C# }  @$ d9 k  r$ }  b# Z
   GPIO 输入输出,外部中断,定时器,串口。理解了这四个外设,基本就入门一款mcu了。+ Q, s* b6 F* p- |$ m+ s* B9 v
& c4 Q; K2 A; L7 B' |
    基本外设接口:, u" F+ w  V1 i+ t! _# C

# a& r$ b" Y( l0 I% }   SPI,IIC,WDG, FSMC,ADC/DAC,SDIO 等。这些外设接口功能原理对每个芯片几乎都是一样。对芯片而言就是多和少而已。" y0 v; a7 E' O" _3 j

. D6 Y, j3 }3 W; f    高级功能:! ]/ l. |; U6 A- T

+ c# j/ Q& M3 i, h   UCOS,fatfs,EMWIN 等,以及一些应用。
, Z4 f- h, C( w2 O    另外值得一提的是,C 语言是嵌入式开发的基础中的基础,相关文章:C语言基础知识点汇总。如果 C 语言不过关,很大程度限制嵌入式学习的进度与深度。在这里推荐入门之后看一下关于c指针的书《C与指针》《C 指针编程之道》。学习嵌入式开发要多动手编程、多调试。

该用户从未签到

2#
 楼主| 发表于 2022-5-20 11:01 | 只看该作者
非常好的总结,感谢版主

该用户从未签到

3#
发表于 2022-5-20 13:14 | 只看该作者
非常好的总结,
6 i& ]7 H/ d. N感谢||ヽ(* ̄▽ ̄*)ノミ|Ю

该用户从未签到

4#
发表于 2022-5-20 15:23 | 只看该作者
哦哦哦,\(^o^)/~
; z5 N2 X1 E( e. \$ C* s(~ ̄▽ ̄)~
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-8-4 11:14 , Processed in 0.156250 second(s), 26 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表