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

STM32大神笔记,超详细单片机学习汇总资料

[复制链接]
flyingstar 发布时间:2026-1-14 13:53
1、在STM32内部,FSMC的一端通过内部高速总线AHB连接到内核Cortex-M3,另一端则是面向扩展存储器的外部总线。

! a9 }8 h* e0 }+ n5 m
内核对外部存储器的访问信号发送到AHB总线后,经过FSMC转换为符合外部存储器通信规约的信号,送到外部存储器的相应引脚,实现内核与外部存储器之间的数据交互。
" `; @  y, V4 x0 w3 C3 Y, }3 A, M' ]
2、FSMC中的DATASET和ADDSET的设置需要参看外部存储器的时序图来确定。
( C* v% }5 l1 \& @8 Y$ o9 z
一般而言,DATASET指的是数据建立时间,也就是读/写信号开始到读/写信号停止(上升沿存储数据)的持续时间。(一般来说写比读快!)。
1 q- @  P& V2 D# X
而ADDSET指的是地址建立时间,指的是片选之后到读/写操作之前的时间,这是针对SRAM来说的,如果操纵的是TFT,不存在地址线,所以此时的ADDSET就是读/写信号结束到RS电平的转换时间。

% H* t3 A& a2 T( V# w6 g
微信图片_2026-01-14_135117_565.png & d5 A9 ~# I2 A9 F- g( |3 z9 M

- r5 @& e6 H0 Z4 @( h& o* \
3、
0 v) p4 E9 ?  S
微信图片_2026-01-14_135114_543.png 5 o3 {2 ]/ o% c5 i

6 _/ ~- k* U6 b- L& g
4、
7 N  ?3 N9 t: K  E% c
微信图片_2026-01-14_135111_453.png
" c; [2 x: V. h9 _

9 F7 @1 n% W! n4 C
5、FSMC的三个配置寄存器:FSMC_BCRx(片选控制配置)、FSMC_BTRx(片选时序)、FSMC_BWTRx(片选写时序)。
" D& V( y: a* C! [! @
6、RTC时钟配置必须要用到BKP寄存器,BKP寄存器在单片机复位、电源复位、待机唤醒模式下是不会更改值的,他的供电由VDD供电,VDD被切断后自动切换至外部的VBAT供电。

& u9 C/ U( A5 S+ w
7、要修改BKP寄存器的值,必须取消其写保护的标志。BKP寄存器在上电时自动写保护。

7 X+ e* c5 B$ D; {& S/ V
8、Stm32有三种省电模式:
; g0 K: g8 v: @# W
微信图片_2026-01-14_135108_541.png % o) v- |/ H5 o' s! I) a9 z
& S8 `& F; |9 ~9 e9 n" m" i
三种省电模式中,耗电量从上到下依次降低,待机模式的电流仅为2uA。

6 R; K  J& T& S# h5 P5 d" ~5 o
9、从待机模式中唤醒单片机等效于让单片机复位,但是电源寄存器的值会有一个标志位指示单片机是被唤醒的,不是被复位的。
0 b8 X. l' O/ T: E$ f
10、ADC的时钟不要超过14MHz,否则转换精度会下降。最大转换速率为1MHz,即转换周期为1us(14MHz,采样周期为1.5个ADC时钟)
4 j* v+ h9 D1 ]9 Y- i' n; r! n
11、Tcovn=采样时间+12.5个周期。采样时间尽量选长一点,这样精度高一些,但是转换速率下降,这也是有利必有弊。
- E2 Z/ Y8 ?, L: T. X
12、   
) Z  Z/ {( l1 F7 P
微信图片_2026-01-14_135105_749.png
; P3 z$ R; j0 b4 \

9 i4 L. C3 V# Y5 l7 w! Z
13、拿ARM7TDMI来说,T代表Thumb指令集,D是说支持JTAG调试(Debugging),M意指快速乘法器,I则对应一个嵌入式ICE模块。
3 _, H, [( F5 }) L
14、MMU作为嵌入式处理器与应用处理器的分水岭标志à具有内存管理单元的嵌入式处理器可以定位为应用处理器。

& ~6 r. \& @2 W# U+ U$ F+ L
这么说M系列和A系列的处理器的区别在于A系列的处理器具有MMU单元可以进行内存模块的管理。

3 O  X9 G1 \5 d7 P9 d
15、ARM处理器有两种状态:ARM状态和Thumb状态。
3 ?2 S5 g; U% d- b# {/ ~# Y* n
微信图片_2026-01-14_135102_253.png 9 U( r% T* u# n/ f
; `4 ?$ i$ k1 d* T; a
16、这张图说明了一切:Thumb2指令集做了一件很伟大的事情:将16位和32位的指令集融为一体,兼容性非常强!(这么说CM3不支持某些32位ARM指令集??)
& W+ o& t3 H6 D' D8 Q
17、

9 z# c3 t5 D7 ]( o& b
微信图片_2026-01-14_135057_950.png
  n; M- V' h, F0 u$ g: }; Z7 T

5 k  n0 @; q2 K. }
18、MSP是系统复位后使用的堆栈指针,PSP由用户的代码使用。两个堆栈指针为4字节对齐!!

$ |2 ]9 t& h  I' N& _
19、在ARM编程领域中,凡是打断程序运行的事件,统称为异常(exception)。

( m9 t5 s* f. {3 I
20、因为存在LR(链接寄存器),所以可支持1级的子程序调用而不用压栈到内存,大大提高了运行速度。---à这就是说,我们在编程的时候,一级调用是不会耗费太多时间的,除非是二级调用!

5 P0 Q- c& t* `# M) Y  Q. X2 E0 E

& M. I; @7 p5 d/ ?

7 r$ R4 G& r+ @4 `! V* |8 I! f
赞 收藏 评论0 发布时间:2026-1-14 13:53

举报

0个回答

所属标签

相似技术帖

官网相关资源

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