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

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

[复制链接]
STMCU-管管 发布时间:2022-4-19 10:27
【学习必备】每天学习STM32小技巧-3
前一篇已分享了10个小技巧今天继续为大家分享10个小技巧:* {9 D) v! M5 _' Y* Y/ K
1.gif
技巧21:0号抢先优先级的中断,可以打断任何中断抢先优先级为非0号的中断;1号抢先优先级的中断,可以打断任何中断抢先优先级为2、3、4号的中断;……;构成中断嵌套。如果两个中断的抢先优先级相同,谁先出现,就先响应谁,不构成嵌套。如果一起出现(或挂在那里等待),就看它们2个谁的子优先级高了,如果子优先级也相同,就看它们的中断向量位置了。原来中断向量的位置是最后的决定因素!!!!; j8 r% Q/ v2 a# I1 o

: _# h. N) l8 Y- o

$ g8 l' _/ m5 a% C3 |. n' I' z技巧22:上电初始化后AIRC初始化为0,为16个抢先式优先级,但是由于所有的外部通道中断优先级控制字PRI_n为0,所以抢先式优先级相同,此时就不能嵌套了
" G2 N' j6 B: z7 |
. j' t8 @6 \' R6 a  ]. `, v$ ~" a
# N# S3 Z( s$ [. Z1 y
技巧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来表示打开或者关断是比较合理的" [- z: W7 L0 Y9 k. {; `) S

6 ~' s& e& p; m: z. C

! J, k- _$ T# z; {7 J! o技巧24:中断标志位需要手动清除  ~  \5 S9 ]# \- B

& I1 M0 `* F% p. Y, I" D% A0 Q# W

7 o2 U0 h$ Z" R技巧25:配置外围器件的一般步骤:: ?9 p9 D& ^# U5 I
·打开端口时钟
' R  V; W* k1 @- C/ ]·定义初始化结构体并初始化
# p% e8 z0 T" M2 a, |·调用* W  ^" g& O7 G' j: ?

1 q9 Q. q& B7 n. E8 S技巧26:串口的奇偶校验:如果是奇偶校验,那么USART_InitStructure.USART_WordLength= USART_WordLength_9b;这个数据的长度必须设定为9位!  W4 U. N% X+ p' Y. {

+ K8 Y. P. v0 W( r7 w9 l' [
! s; m3 E6 d6 k/ ^/ H2 j+ y0 Q
技巧27:ADC的规则组可以自定义转换通道顺序和转换的通道个数。在实际应用中,有时候希望有一些特别的通道具有很高的优先权,需要在规则组进行转换的时候强制打断,进行另一个通道的转换,这样一组通道,叫做注入组。
8 e8 ^7 b  h* a- z+ ~
) c8 L" b6 n3 F0 K9 T0 M% U

/ B  d# T- ?1 A& z技巧28:定时器的输出比较模式:Timing(冻结,什么都不做,普通定时),Active(OCxREF输出高电平有效),Inactive(OCxREF输出低电平),Toggle(比较成功后翻转电平)。+ c  ]" E) w* E9 N
) u# f6 v& U  i' e' n, I
7 U2 B' I; l+ r: F* B: D2 J
技巧29:STM32的定时器从0开始计数,满足一些条件,给出标志位(比如匹配成功、时间更新、溢出等)然后从0开始计数。这一点和51不同。
* \8 n# Y0 B; D% j; k$ v- @
. @, m( J: n6 x! m0 d
: M6 p  n& V: f6 f! \* U
技巧30:OCx=OCxREF+极性* r1 T8 w7 {( H& S" A

4 B4 I; ^# V9 l( p6 j
; H/ S$ @0 Y7 t* }& F/ H: V论坛还未大家准备诸多STM32系列开发经验:
4 F% F# i8 X7 O% A6 e1 ?2 }

' _% a( u% U- ^# P# S2 t
+ i5 D- D5 @+ ?  U5 F; o8 ]; b6 K
4 p( j& B- q& }  Y: @7 C
收藏 1 评论0 发布时间:2022-4-19 10:27

举报

0个回答

所属标签

相似分享

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版