关于STM32的外部引脚中断的问题

  1. 云栖社区>
  2. 博客>
  3. 正文

关于STM32的外部引脚中断的问题

杨奉武 2016-12-20 01:43:00 浏览223 评论0

摘要: 今天想用自己以前的比较干净的工程模板做一个东西,,,,,,,在添加上引脚中断的时候,,突然想知道自己配置的中断优先级是否正确执行,,,,, 以前刚学习32的时候测试过是可以的,,不过今天发现了一个大问题,,,,,,,,, 大家都知道32有抢占式优先级和响应式优先级,,,常理来讲,,,,,, 如果两个...

今天想用自己以前的比较干净的工程模板做一个东西,,,,,,,在添加上引脚中断的时候,,突然想知道自己配置的中断优先级是否正确执行,,,,,

以前刚学习32的时候测试过是可以的,,不过今天发现了一个大问题,,,,,,,,,

大家都知道32有抢占式优先级和响应式优先级,,,常理来讲,,,,,,

如果两个的抢占式优先级不相同,谁的级别高就优先执行谁,,,,级别高的可以打断级别低的

如果两个的抢占式优先级相同,谁先来就先执行完谁,,如果同时到来,那就看谁的响应式优先级高就先执行谁,,,,,,

那只是常理来讲,,,,,,,,,,,,,,以前也是按照常理来讲,,,,,,做程序,,,不过今天发现一个,,,,,,特殊来讲

今天我用PB0  和  PB2做实验---

第一种,,,,,,

 

 

我现在把PB0 和 PB2短接在一块,,用一根线连接,,然后把这根线在低电平和高电平之间切换

 

11111111111说明,,上拉模式下,下降沿触发,,抢占式优先级相同,,响应式优先级不相同,,谁的响应式优先级高就执行谁,,,,,,,,符合常规

 

 然后,,改一下

 

 

因为,因为

 

22222222222222 说明,,上拉模式下,上升沿触发,,抢占式优先级相同,,响应式优先级不相同,,,,,,,,,,触发时不符合常规

 

然后我再改一下

 

3333333333333说明,,上拉模式下,上升沿触发,,抢占式优先级不相同,,响应式优先级不相同,,,谁的抢占式优先级别高就先执行谁,,,,,,,符合常规

 

然后我再改一下

 

444444444444444 说明,,上拉模式下,下降沿触发,,抢占式优先级不相同,,响应式优先级不相同,,,谁的抢占式优先级别高就先执行谁,,,,,,,符合常规

 

 我再改一下

 

5555555555555555 说明,,下拉模式下,下降沿触发,,抢占式优先级相同,,响应式优先级不相同,,,谁的响应式式优先级别高就先执行谁,,,,,,,符合常规

 

我再改

 

 

6666666666666666666 说明,,下拉模式下,上升沿触发,,抢占式优先级相同,,响应式优先级不相同,,,,,,,,执行的不符合常规

 我再改一下抢占式优先级

然后在交换一下触发方式

 

 

 

 说明,,上拉模式下,下降沿触发,,抢占式优先级相同,,响应式优先级不相同,,谁的响应式优先级高就执行谁,,,,,,,,符合常规

 说明,,上拉模式下,上升沿触发,,抢占式优先级相同,,响应式优先级不相同,,,,,,,,,,触发时不符合常规

 说明,,上拉模式下,上升沿触发,,抢占式优先级不相同,,响应式优先级不相同,,,谁的抢占式优先级别高就先执行谁,,,,,,,符合常规

 说明,,上拉模式下,下降沿触发,,抢占式优先级不相同,,响应式优先级不相同,,,谁的抢占式优先级别高就先执行谁,,,,,,,符合常规

 

 说明,,下拉模式下,下降沿触发,,抢占式优先级相同,,响应式优先级不相同,,,谁的响应式式优先级别高就先执行谁,,,,,,,符合常规

 说明,,下拉模式下,上升沿触发,,抢占式优先级相同,,响应式优先级不相同,,,,,,,,执行的不符合常规

 说明,,下拉模式下,上升沿触发,,抢占式优先级不相同,,响应式优先级不相同,,,谁的抢占式优先级别高就先执行谁,,,,,,,符合常规

 说明,,下拉模式下,下降沿触发,,抢占式优先级不相同,,响应式优先级不相同,,,谁的抢占式优先级别高就先执行谁,,,,,,,符合常规

 

不知道亲们遇没遇到这样的问题,,,,,,,, 这是我的程序

链接:http://pan.baidu.com/s/1pLzxnN9 密码:mbbl

 上面的两条不符合常规不知道是什么原因,,,现在就是要注意额,,,,,,,,

 上拉配下降,,,,下降还下降,,,,,,,,,,,,,,,,,,,,,,,,,,,

 

【云栖快讯】一站式开发者服务,海量学习资源免费学  详情请点击

网友评论