STMCU小助手
发布时间:2022-12-25 13:10
|
STM32的每个IO都可以作为外部中断的输入 STM32的中断控制器支持19个外部中断或事件请求 线0~15:对应外部IO口的输入中断 . E, s9 @; |6 Q2 X 线16:连接到PVD输出/ p/ P5 k0 y) P. [! s 1 z/ Q0 s s& {/ m% n8 W, } 线17:连接到RTC闹钟事件9 V' g$ ?; E/ ]3 N ) {) i* I1 V) A& ~6 ~ 线18:连接到USB唤醒事件 3 k# W9 E5 W. a5 N5 U/ S$ c 每个外部中断线可以: 独立地配置触发方式,上升沿,下降沿或双边沿触发 触发或屏蔽 Q. z! N5 B" R) B% U' n 拥有专用的状态位8 g8 ?, z, b# T8 m- K, ^ % ^6 J5 {8 i4 f& U3 p
. ^# P0 J2 i) J" N# Q, N1 l 外部中断的配置 1. 初始化IO口为输入 2. 开启IO口的时钟,复用时钟,注意使能AFIO时钟$ e5 ~8 F" m+ U, L1 T 3. 将IO口和中断线进行映射,例如PA0映射到EXIT0中断线; n1 [" ]# @1 n4 ^& X 9 \( \+ B0 X4 a8 u
! g8 }! h+ T( d1 P 4. 设置中断线的触发方式 2 e" Q# \2 e% T8 E V
7 k7 a2 j# k+ N4 c9 v 注意:这种配置方法在嵌入式C语言中是非常常见的/ |& k9 g n5 |& O; A p
+ F* {, m1 Z1 Q# E5 b M 5. 配置中断分组NVIC,并使能中断4 j1 x# k2 ?* v3 [8 f9 d- p/ k
6. 编写中断服务函数 d7 z* j" w' N: r- F( a7 w) y9 e
# p& B$ y/ R) T 7. 清除中断线上的中断标志位2 l E1 D- ?4 U" y z- ^. J. z3 k * g- {( A" {. L/ S- u) C0 `: u3 e
% Z- P# S6 N* i/ S( k" z ————————————————3 V" ?( I0 Z, n+ n: H 版权声明:CodeForCoffee& @- l l% [) C0 S 6 Q$ Z0 g9 |2 l8 Q5 L! N % c( M+ D4 E6 ] |
【福利三:雨露均沾·逢7狂欢】之一:STM32F1外部中断异常故障的解决办法
STM32中断响应延迟优化:从NVIC配置到DMA加速的极致性能调优
基于STM32串口中断之缓存区溢出卡死经验分享
基于STM32数组越界异常中断经验分享
基于STM32之数组越界异常中断经验分享
基于STM32连接参数更新进程后导致断连的问题分析
基于STM32连接参数更新进程后导致断连的问题分析
基于STM32的定时器不按设定超时产生中断
基于STM32利用TIMER事件和栈帧体验中断响应经验分享
基于STM32外部中断原理和配置代码经验分享
微信公众号
手机版