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

STM32必须掌握的内容

  [复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
1 }5 H6 V! B) T6 v( _
STM32芯片架构; B, q6 {0 b+ N2 ~
   STM32F103系列芯片的系统架构如下:" P! I. K4 X" l2 f/ v

2 s7 i* j- g9 f$ U% b+ ?! ?7 o4 l. l' }, |! Y9 A9 s2 u
   STM32芯片基于ARM公司的Cortex-M3内核,由ST公司设计生产,内核与总线矩阵之间有I(指令)、S(系统)、D(数据)三条信号线。内核通过总线矩阵与FLASH、SRAM、外设连接。而外设包括GPIO、USART、I2C、SPI等。
& d9 `- U, t! h. }2 e3 {STM32芯片系统结构
* w& b$ J9 O+ |5 ?6 J; y9 ISTM32F103 系列芯片(不包含互联网型)的系统结构如下:4 p& @1 w2 R# d' E7 q5 D$ ~
3 `( j9 R  X& D" n; s. Q

! R0 v/ v/ G# ^* T1 }: @; g从上图可以看出,在小容量、中容量和大容量产品中,主系统由以下部分构
7 ]$ Q; d& H" s$ V6 G; d3 q' X( U成:; _" ?6 O1 V/ \; n; o
    四个驱动单元:
0 s, f: N3 G( F, _8 D* h( ?3 ^- u" s9 E) p, t& Q/ V" c+ w
    Cortex-M3 内核 DCode 总线(D-bus)& n2 o! v; ^! l. i! _: J
! H/ K( H" E3 H' h4 x( L& u( w1 _
    Cortex-M3 内核系统总线(S-bus)- h, S, H7 U' c

( k: i$ I* L% _% Z    通用 DMA1
5 B4 ^$ @/ y* H- i4 L9 z+ b; Z7 c
3 [6 r& r6 e9 M3 H* o- F; F    通用 DMA2+ {. n3 b) k1 O' L

3 R! p: K4 z6 t7 {8 ~" `5 N    四个被动单元:
5 Y3 m: l( Q* j4 a$ j6 m6 m( t  G
) }8 _: u* m3 l) s; p1 P7 g5 I$ i    内部 SRAM
) w1 G/ g1 c/ o" x/ m: S% Z5 j* t+ l; j4 `
    内部闪存存储器FLASH& t0 [) u  b% M4 x# N8 `* l1 S! u1 t
, E3 I+ a8 W% t# z& v; a8 Q
    FSMC+ [. q6 d2 U% b

+ F4 r' O- m! E    AHB 到 APB 的桥(AHB2APBx),它连接所有的 APB 设备
* e4 O% X: B' D0 O1 o
& k) Z- ?$ J  y! l    这些都是通过一个多级的 AHB 总线构架相互连接的。下面我们看看它们各自的功能:
: d" y6 q5 I7 [; c1 H, x  {* _! k$ C# B  k
    ICode 总线! V  @, T  Z1 C1 I3 w. K$ P

- f( Z* _4 F+ Y: S8 N; |2 |, `! z    该总线将 Cortex-M3 内核的指令总线与闪存指令接口相连接。指令预取在此5 R* e; ^1 y+ p0 R2 {
总线上完成。
4 n9 S6 A% k, j( S4 _
* l  e2 `" X; `# `! Y/ b3 d1 r    DCode 总线
2 S4 M; D3 W2 V* L
* x4 o+ P" q6 Z" Q4 W    该总线将 Cortex-M3 内核的 DCode 总线与闪存存储器的数据接口相连接(常量加载和调试访问)。1 E- y* U3 H6 p5 p) d
2 Z7 ], _9 F, w, i
    系统总线# ~4 z9 d; y  G, _

6 J0 h  s/ V1 o. I    此总线连接 Cortex-M3 内核的系统总线(外设总线)到总线矩阵, 总线矩阵协调内核和 DMA 间的访问。; |* O) x0 A0 ^$ @" L

# U6 {8 P% K; _9 t# ?" t* r    DMA 总线
; |7 _5 U5 c8 B$ m- O+ C' @1 I7 `# r! Y7 B' q" V4 \# U
    此总线将DMA的AHB主控接口与总线矩阵相联, 总线矩阵协调着CPU的DCode和 DMA 到 SRAM、闪存和外设的访问。
8 @5 }7 Z; h- n4 l( T( {" l. n9 w1 T& {5 Y
    总线矩阵; s: L* X1 Z" V- p
# S. X8 H& b9 \1 P+ P8 g7 ]6 ~: U
    总线矩阵协调内核系统总线和 DMA 主控总线之间的访问仲裁, 仲裁利用轮换算法。在互联型产品中,总线矩阵包含 5 个驱动部件(CPU 的 DCode、系统总线、以太网 DMA、 DMA1 总线和 DMA2 总线)和 3 个从部件(闪存存储器接口(FLITF)、SRAM 和 AHB2APB 桥)。AHB 外设通过总线矩阵与系统总线相连,允许 DMA访问。
. s' a1 w: y  s$ V
& @/ E5 T/ U4 {( Y, j    AHB/APB桥(APB)
0 Z# Y8 J, Z6 W  J- G- v6 a
( F5 U+ k7 [, e$ N/ u! C8 ^    两个 AHB/APB 桥在 AHB 和 2 个 APB 总线间提供同步连接。APB1 操作速度限于 36MHz, APB2 操作于全速(最高 72MHz)。有关连接到每个桥的不同外设的地址映射请参考《STM32F1xx 中文参考手册》存储器映像章节。在每一次复位以后,所有除 SRAM 和 FLITF 以外的外设都被关闭,在使用一个外设之前,必须设置寄存器 RCC_AHBENR 来打开该外设的时钟。
8 w% w9 z9 u/ i! V  f   STM32F1 的时钟系统相对复杂,在后续文章中再介绍。& b* P7 q6 j: M
STM32学习进阶路径* X" ~  j  H3 \0 H: R2 y

  v* N: w2 b3 @8 E5 j    基本外设:
, K6 i/ N+ V9 h4 j# }/ ]- U" f' X9 `
   GPIO 输入输出,外部中断,定时器,串口。理解了这四个外设,基本就入门一款mcu了。
: W5 V: j; Q% ?. [( S
7 W4 q' O( N- W; }4 j) k    基本外设接口:
7 r. m; d; `$ o7 @2 {
, k, R: h6 m2 R8 I3 T( ~   SPI,IIC,WDG, FSMC,ADC/DAC,SDIO 等。这些外设接口功能原理对每个芯片几乎都是一样。对芯片而言就是多和少而已。
, }) E3 }6 r4 x4 T+ b2 r. `$ T: e) Y0 D2 B) {3 a; m2 W# ]' T, S7 _
    高级功能:
9 O8 E; ~& [' g
' ~% \' V3 z8 S9 {2 o* v   UCOS,fatfs,EMWIN 等,以及一些应用。) Q% |- c$ J4 {* e% x+ U& o1 A
    另外值得一提的是,C 语言是嵌入式开发的基础中的基础,相关文章:C语言基础知识点汇总。如果 C 语言不过关,很大程度限制嵌入式学习的进度与深度。在这里推荐入门之后看一下关于c指针的书《C与指针》《C 指针编程之道》。学习嵌入式开发要多动手编程、多调试。

该用户从未签到

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

该用户从未签到

3#
发表于 2022-5-20 13:14 | 只看该作者
非常好的总结,# W$ p: S3 l( |* H
感谢||ヽ(* ̄▽ ̄*)ノミ|Ю

该用户从未签到

4#
发表于 2022-5-20 15:23 | 只看该作者
哦哦哦,\(^o^)/~
' j, F# t9 S- B( p* c(~ ̄▽ ̄)~
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2026-4-18 23:40 , Processed in 0.109375 second(s), 27 queries , Gzip On.

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

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

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