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

【学习必备】每天学习STM32小技巧-3

[复制链接]
STMCU-管管 发布时间:2022-4-19 10:27
【学习必备】每天学习STM32小技巧-3
前一篇已分享了10个小技巧今天继续为大家分享10个小技巧:
+ S- |8 I9 a5 X& L0 U- k0 t: Q/ J
1.gif
技巧21:0号抢先优先级的中断,可以打断任何中断抢先优先级为非0号的中断;1号抢先优先级的中断,可以打断任何中断抢先优先级为2、3、4号的中断;……;构成中断嵌套。如果两个中断的抢先优先级相同,谁先出现,就先响应谁,不构成嵌套。如果一起出现(或挂在那里等待),就看它们2个谁的子优先级高了,如果子优先级也相同,就看它们的中断向量位置了。原来中断向量的位置是最后的决定因素!!!!
  y9 I1 z# q. x
0 b; r7 h" N+ z( N1 i- [, L9 U  n
8 u6 y+ |' t1 v
技巧22:上电初始化后AIRC初始化为0,为16个抢先式优先级,但是由于所有的外部通道中断优先级控制字PRI_n为0,所以抢先式优先级相同,此时就不能嵌套了6 u, [9 G0 T- b
, u: O' l# W1 g! |3 |

2 _# c" p1 {& o! b; q技巧23:NVI中有ISER[2](Interrupt Set-Enable Registers),ICER[2](Interrupt Clear-Enable Registers),ISPR[2](Interrupt Set-Pending Registers),ICPR[2](Interrupt Clear-Pending Registers),IABR[2](Active Bit Registers),IPR[15](InterruptPriority Registers)定义。其中ISER和ICER分别为中断使能和中断失能寄存器,都是写1来使能/失能中断的。为什么写1?为什么不采用一个寄存器而用两个寄存器来表示中断使能/失能状态?由于硬件,写0比较复杂,并且可能造成其他位的状态改变,所以用1来表示打开或者关断是比较合理的
1 m# i3 E* \( j6 w, d! T; Q# H- [
& v$ o, |* ^) K8 S

% k" L: L0 t3 z7 L6 \$ F4 G% F技巧24:中断标志位需要手动清除* |4 P  }3 X# h- S1 r, |

+ X( _- l! Y! C4 A

5 D! }, W8 ]1 T$ R9 b技巧25:配置外围器件的一般步骤:, b  g0 \, J- U5 [' i8 Q$ C
·打开端口时钟: G' R3 }3 t7 Y' }3 w) s( F' L" q) }/ C
·定义初始化结构体并初始化
- ~8 H0 S2 f" S! v·调用
7 a- k+ j# L% h- }: Z+ N
; S: r) J. t0 y3 V* Y5 d技巧26:串口的奇偶校验:如果是奇偶校验,那么USART_InitStructure.USART_WordLength= USART_WordLength_9b;这个数据的长度必须设定为9位!; V; O2 g7 w" x7 P

# p0 y8 R. _1 `( U
& I* h' T  o/ K2 r! ]
技巧27:ADC的规则组可以自定义转换通道顺序和转换的通道个数。在实际应用中,有时候希望有一些特别的通道具有很高的优先权,需要在规则组进行转换的时候强制打断,进行另一个通道的转换,这样一组通道,叫做注入组。
9 e0 X# u7 Q# ^: a$ q2 K$ O% y0 u. B0 Z' m5 A/ ~1 c

+ N9 Q8 E5 j  D; S+ |2 G技巧28:定时器的输出比较模式:Timing(冻结,什么都不做,普通定时),Active(OCxREF输出高电平有效),Inactive(OCxREF输出低电平),Toggle(比较成功后翻转电平)。
& w' Q4 l% r. n" ]4 {+ F1 A
! P+ L2 W! s/ s

  ?/ Y* a5 V; ?5 Y2 j技巧29:STM32的定时器从0开始计数,满足一些条件,给出标志位(比如匹配成功、时间更新、溢出等)然后从0开始计数。这一点和51不同。% }( V* z  c. f4 e  T: r7 d% ?
5 `" e8 U+ Y- @2 L3 o4 S  {
5 T" ~$ R. g0 v: I/ y8 ]! Y
技巧30:OCx=OCxREF+极性
( x* b, ~) z! a" D% w
# v5 H7 C) \% k5 e" d7 ~$ _3 l; H( {( S$ `# K1 f& u3 j# H
论坛还未大家准备诸多STM32系列开发经验:9 [6 w- J( n/ U, n
: i; g/ K) u8 v" b8 U! o. W! {
8 L! {9 Q) \6 c

3 u8 f# D/ {! S  d3 O6 Y
收藏 1 评论0 发布时间:2022-4-19 10:27

举报

0个回答

所属标签

相似分享

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版