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

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

[复制链接]
STMCU-管管 发布时间:2022-4-19 10:27
【学习必备】每天学习STM32小技巧-3
前一篇已分享了10个小技巧,今天继续为大家分享10个小技巧:
6 c& l7 i9 Q( t' ]: x$ W" Q3 K% i, f
1.gif
技巧21:0号抢先优先级的中断,可以打断任何中断抢先优先级为非0号的中断;1号抢先优先级的中断,可以打断任何中断抢先优先级为2、3、4号的中断;……;构成中断嵌套。如果两个中断的抢先优先级相同,谁先出现,就先响应谁,不构成嵌套。如果一起出现(或挂在那里等待),就看它们2个谁的子优先级高了,如果子优先级也相同,就看它们的中断向量位置了。原来中断向量的位置是最后的决定因素!!!!0 h- [9 J# ?5 d) ~. Z: d0 k% O! W7 X
' V8 \3 n; Q+ r7 y  }1 W
9 H$ |0 \5 n7 `6 h
技巧22:上电初始化后AIRC初始化为0,为16个抢先式优先级,但是由于所有的外部通道中断优先级控制字PRI_n为0,所以抢先式优先级相同,此时就不能嵌套了
/ D- C$ f8 u& D& W! }' i
) J2 u$ f8 v9 K; }& ^' L7 B! k

3 |" m9 N- K3 x$ T3 Q3 Y; h3 G技巧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来表示打开或者关断是比较合理的
4 W4 T( R6 V5 o, _( H: {6 `# B* c: q$ l

4 A4 ^; ]/ E2 c% ^( l) o6 R, q技巧24:中断标志位需要手动清除( J) D" p7 _7 a& D$ z
* E$ C% M9 A7 y
# \8 M9 P, h) q+ x
技巧25:配置外围器件的一般步骤:, X3 k9 p; A( w6 k% V: A- B$ v
·打开端口时钟3 m9 S1 M0 v; i5 ~' z
·定义初始化结构体并初始化, {3 `# R" p) _2 y! B0 S
·调用4 p/ C) L: }* F/ W
! D; t, [0 e9 H5 h0 F! }. @" \
技巧26:串口的奇偶校验:如果是奇偶校验,那么USART_InitStructure.USART_WordLength= USART_WordLength_9b;这个数据的长度必须设定为9位!8 l& b- @, t  Z- F0 l+ {. h+ j8 G
& W: a! S5 P; O. @

6 M9 a1 L: `8 `: N* }技巧27:ADC的规则组可以自定义转换通道顺序和转换的通道个数。在实际应用中,有时候希望有一些特别的通道具有很高的优先权,需要在规则组进行转换的时候强制打断,进行另一个通道的转换,这样一组通道,叫做注入组。+ W+ u% `& o+ q8 w2 L; F+ d

5 x$ E  w1 n6 Q1 T' P8 v0 P

' s9 f. c# h6 y- r技巧28:定时器的输出比较模式:Timing(冻结,什么都不做,普通定时),Active(OCxREF输出高电平有效),Inactive(OCxREF输出低电平),Toggle(比较成功后翻转电平)。
, J7 U# h( c3 T; y# O& K" v. I  z. p3 A
$ G6 P' b& _/ x7 `' R: ~5 _
技巧29:STM32的定时器从0开始计数,满足一些条件,给出标志位(比如匹配成功、时间更新、溢出等)然后从0开始计数。这一点和51不同。: s. z' j7 G! ~- \" d) t8 v% ~1 f
$ L  j5 m0 m$ T( O! @# J

5 x/ N# j3 j, x' p技巧30:OCx=OCxREF+极性* }( R* x& T' Z, m: y- X

  ^! x- ?  v8 z0 b' R. F! b9 F4 x
论坛还未大家准备诸多STM32系列开发经验:9 S- E: H1 N0 K* z$ u
8 v! H- a0 i+ n+ k* M! m& {) s

4 f! w- L4 z! A3 {1 i0 R
( @( E6 |( D- Y& {7 b0 Z9 P
赞 收藏 1 评论0 发布时间:2022-4-19 10:27

举报

0个回答

所属标签

相似技术帖

官网相关资源

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