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

STM32必须掌握的内容

  [复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x

! A0 W$ X  ?9 |: s6 \( q& cSTM32芯片架构
* n3 }- W# x% p6 e, x0 c   STM32F103系列芯片的系统架构如下:( v1 J, F* l/ s+ v+ r* V: S. B

5 L4 w/ I8 G& ^6 U3 x! q6 l# v: `* A2 b2 H* a/ W4 R
   STM32芯片基于ARM公司的Cortex-M3内核,由ST公司设计生产,内核与总线矩阵之间有I(指令)、S(系统)、D(数据)三条信号线。内核通过总线矩阵与FLASH、SRAM、外设连接。而外设包括GPIO、USART、I2C、SPI等。* P# T5 C2 ^: G$ q9 o
STM32芯片系统结构( h% [4 K3 P& g( j% i" T
STM32F103 系列芯片(不包含互联网型)的系统结构如下:/ P9 Q# g  F% K. w

+ Q  x" ?5 c! g" L7 ~4 s$ {
! K( Z% c" Q& g1 s! n从上图可以看出,在小容量、中容量和大容量产品中,主系统由以下部分构
( Q" i7 n7 a5 [4 n* @: W2 ^# M+ u成:
3 o% _" m, B( W6 J    四个驱动单元:, ^7 O. A: i+ [$ S/ z

2 w  E2 z: q7 z5 f1 b  _    Cortex-M3 内核 DCode 总线(D-bus)
" v0 [' g, n& h( ~1 P0 t' O: ^( \# L1 Q. R
    Cortex-M3 内核系统总线(S-bus)1 |: p  W* a. ?$ S

6 f% v# Y% e: u& m9 n5 H1 t    通用 DMA1
' V. c8 J) A0 F9 B- ^# i! l( ^: ]2 Q5 s% K/ l  ?* U
    通用 DMA2" B5 r$ P- g' G: i& m7 J) k0 r
" u# ?# O$ K$ A2 k
    四个被动单元:6 v- \- a; p5 }7 P# U$ B. u& Q

5 o6 k/ n; E* A& P6 O6 ~2 W    内部 SRAM# i! m/ I) e- z1 H% K6 B
& V" D/ C/ Y$ j# n
    内部闪存存储器FLASH2 p' p9 @' p: M6 N8 n3 S
) T; a, B5 P. L4 m; O  c0 j3 ?  ~+ S
    FSMC2 w; }" n+ u6 u

8 }+ R+ i, e$ ^3 o6 Z# _    AHB 到 APB 的桥(AHB2APBx),它连接所有的 APB 设备
# m# g2 V8 U& m2 M
  N# n8 v5 A8 @$ H6 J! x    这些都是通过一个多级的 AHB 总线构架相互连接的。下面我们看看它们各自的功能:, ?& m, l! s7 z2 j

8 p4 T% j, Z1 ?1 \  l. Q, @4 f    ICode 总线0 _+ Y+ Y6 [) g& ]
4 }, C. P2 H  B7 U$ Q
    该总线将 Cortex-M3 内核的指令总线与闪存指令接口相连接。指令预取在此
% c  E  O4 y! j  o$ y# A- }; \8 x+ c总线上完成。! L" P8 C) I6 j

* ~6 S% s  U! y( B% @3 I3 P    DCode 总线
3 m3 J$ J: k8 L/ h. k9 N( f
7 I3 X, k2 ]% u7 j    该总线将 Cortex-M3 内核的 DCode 总线与闪存存储器的数据接口相连接(常量加载和调试访问)。& Q. O3 v0 V3 _) J4 i

1 b! c7 n- w5 E    系统总线1 \  R" \% a' g1 H. }, N) z

$ u, L6 h, h3 h  {    此总线连接 Cortex-M3 内核的系统总线(外设总线)到总线矩阵, 总线矩阵协调内核和 DMA 间的访问。
0 w# w4 J+ g. X2 D4 X
) k4 }( L) [: z, p# `; f    DMA 总线7 y# M0 Q% {' M  T
4 F! j% m2 @0 o1 \7 [. ~3 X3 e
    此总线将DMA的AHB主控接口与总线矩阵相联, 总线矩阵协调着CPU的DCode和 DMA 到 SRAM、闪存和外设的访问。5 `0 ^- C$ C) z7 t

) o  H! F" H7 ?  @) j% j6 W    总线矩阵
- u$ A# V; p: }! e. P: k' ^
/ l, F; X. w+ b& p( n    总线矩阵协调内核系统总线和 DMA 主控总线之间的访问仲裁, 仲裁利用轮换算法。在互联型产品中,总线矩阵包含 5 个驱动部件(CPU 的 DCode、系统总线、以太网 DMA、 DMA1 总线和 DMA2 总线)和 3 个从部件(闪存存储器接口(FLITF)、SRAM 和 AHB2APB 桥)。AHB 外设通过总线矩阵与系统总线相连,允许 DMA访问。
9 {/ a1 ^9 R% J5 y! C! I( w- ~- D- [, c
    AHB/APB桥(APB)* \; q9 c$ r) Z' {9 U3 l6 Q
2 _" z$ i) l7 U: c% X' b9 l
    两个 AHB/APB 桥在 AHB 和 2 个 APB 总线间提供同步连接。APB1 操作速度限于 36MHz, APB2 操作于全速(最高 72MHz)。有关连接到每个桥的不同外设的地址映射请参考《STM32F1xx 中文参考手册》存储器映像章节。在每一次复位以后,所有除 SRAM 和 FLITF 以外的外设都被关闭,在使用一个外设之前,必须设置寄存器 RCC_AHBENR 来打开该外设的时钟。
0 t' G* ?( `- h' o+ d   STM32F1 的时钟系统相对复杂,在后续文章中再介绍。' i2 V! L$ k4 Q" n/ z+ {3 P: s
STM32学习进阶路径
6 \4 J5 _, D  _) k. a3 B
& H) a, K% n3 T# e6 F! t5 `9 h+ D    基本外设:8 e: ]8 a* E! ?% N& W, V5 s

4 }$ K& [4 U0 J4 P# a   GPIO 输入输出,外部中断,定时器,串口。理解了这四个外设,基本就入门一款mcu了。
' q0 j& N4 |, N4 d- f/ H1 I+ a% _' |# M4 K- N* u
    基本外设接口:1 Q/ b- y; `6 t- h

/ N6 L# W& V5 H   SPI,IIC,WDG, FSMC,ADC/DAC,SDIO 等。这些外设接口功能原理对每个芯片几乎都是一样。对芯片而言就是多和少而已。0 Q% v) V0 t) P: f# y
3 _* B8 N. T) M2 Z& \+ @0 ]7 M
    高级功能:
' m# R7 B" s7 ~5 Z; O8 L& A. J) A9 G: J- ]
   UCOS,fatfs,EMWIN 等,以及一些应用。- V7 m: c3 I+ y* V% W
    另外值得一提的是,C 语言是嵌入式开发的基础中的基础,相关文章:C语言基础知识点汇总。如果 C 语言不过关,很大程度限制嵌入式学习的进度与深度。在这里推荐入门之后看一下关于c指针的书《C与指针》《C 指针编程之道》。学习嵌入式开发要多动手编程、多调试。

该用户从未签到

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

该用户从未签到

3#
发表于 2022-5-20 13:14 | 只看该作者
非常好的总结,
6 D/ K0 `: e- n感谢||ヽ(* ̄▽ ̄*)ノミ|Ю

该用户从未签到

4#
发表于 2022-5-20 15:23 | 只看该作者
哦哦哦,\(^o^)/~
6 q) _: O% t, v- X& ^) I/ p(~ ̄▽ ̄)~
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-7-20 05:02 , Processed in 0.125000 second(s), 26 queries , Gzip On.

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

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

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