4.江科大STM32学习之EXTI外部中断

1.中断系统是什么?

简单就是说:

1.你在写作业时突然就要吃饭,你认为吃饭的优先级比写作业高,这叫产生中断,然后去吃饭,这叫中断处理,等吃完饭后你继续回去写作业,这叫中断结束

2.你在写作业时突然就要打游戏并且你妈妈叫你吃饭:这时候就要判断优先级了,假设你觉得游戏的优先级高,你去打游戏这就叫中断优先级选择,你在打游戏的时候你妈妈拿着鸡毛掸子上来这时候吃饭的优先级瞬间就高了(这个游戏还没打完就是抢占优先级高,游戏打完了吃饭就是响应优先级高),然后你只能乖乖去吃饭,这叫中断嵌套。

什么是NVIC

总共4位寄存器嘛:你如果抢占优先级多了,那么响应的就少

2.EXIT是什么?

相同Pin不可以:(例)PA1和PB1不可以

因为通道数总共20个,其中16个分别为Pin0~Pin15,所以PA1与PB1挤同一个通道这要先哪个先进去NVIC优先级也是进去了才排队的

就差不多类似于这样

1.AFIO中断引脚选择

2.AFIO默认引脚重定义(爸妈打你时用新武器打你)

其中外部中断的5~9会触发同一个中断函数,10~15也会触发同一个中断函数

弯弯的是或门(就类似于双性自己是1,可接受0或1)

直的是与门(就单性自己是1,只接受1)

三角的是非门就类似于转性0变1,1变0

从此可以得出屏蔽寄存器为1时NVIC中断控制器,以及脉冲发生器才能运行

请求挂起寄存器就类似于中断标志位,我们可以通过中断标志位来判定20个通道中哪个通道触发中断

/20:表示内部有20个通道线

3.旋转编码器是什么?

机械式旋转编码器:通过机械触点旋转,可得出其方波信号

其旋转编码器正转和反转相位差为90就可以区分正转和反转

VCC是外接上拉电源,负责输出高电平,R3是防止电压过大限流电阻,当其旋转没到触点时A点输出高电平,B点也一样,当其旋转到触点时输出低电平

4.代码实操部分

什么是时钟,时钟作用是什么:STM32系统时钟超详解

1.开启时钟

由基本结构可得出:需要经过GPIO,AFIO,EXIT,还有NFIC这四个时钟,由于EXIT以及NFIC(内核外设和CPU一起)这两个外设时钟是开着的所以只要开启GPIO,以及AFIO的时钟

2.重映射选择AFIO的外设引脚

3.EXIT结构体初始化:外部中断发生通道,外部中断使能,外部中断模式(中断模式和事件模式选择其一),外部中断触发方式(上升沿和下降沿和上升下降沿都可以)

3.NVIC配置:

分别是

1.NVIC_PriorityGroupConfig 中断分组

2.NVIC_Init NVIC 初始化

3.NVIC_SetVectorTable 设置中断向量表

4.NVIC_SystemLPConfig系统低功耗配置

旋转编码器触发中断条件:正转时B先出现下降沿,A是位于低电平

反转当A出现下降沿时,B是为于低电平

通过    Encoder_Count 自增和自减来确定旋转编码器旋转方向

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值