C51语言检测电平变化,单片机引脚上的电平变化

外部中断,就是通过外部信号所引起的中断,如单片机引脚上的电平变化(高电平、低电平)、边沿变化(上升沿、下降沿)等。51单片机有5个中断源,其中有两个是外部中断,分别为INT0和INT1,INT0被分配在P3.2引脚,INT1被分配在P3.2引脚,也即是说如果使用51单片机的外部中断0,则必须将信号接在P3.2上,否则无效。

所谓查询方式就是单片机一遍一遍的扫描,查看所监视的目标有没有发生变化,是一种主动式的监视方法,用一个成语可以很客观的描述:守株待兔。

所谓中断方式就是单片机不主动去监视目标,而是目标主动通知单片机状态发生了变化。

f2508fa64c1e35745e8b9ee3b598373a.png

STM32单片机的每一个GPIO都可以被设置为外部中断输入,根据引脚序号的不同可以将外部中断分为不同的组,分别为PA0-PG0为EXTI0组,以此类推,PA15-PG15为EXTI15组,共16组,并且每一组中同一个时刻只能有一个中断源工作,所以,STM32单片机最多允许同时有16个外部中断。外部中断的分配方式如下表所示:

STM32单片机的外部中断触发方式为边沿触发,即上升沿触发和下降沿触发。

STM32外部中断配置步骤

STM32单片机在配置外部中断时可以按照以下步骤来操作:

初始化GPIO为输入;

开启复用时钟,设置映射关系;

设置触发条件;

分配中断向量控制器,并使能;

编写中断服务函数;

a19b0d288a9e12921c2e21ea9348637b.png

STM32外部中断相关的寄存器

初始化GPIO时要用到如下寄存器:

APB2ENR:开启GPIO时钟和复用时钟;

CRH:端口配置高寄存器;

CRL:端口配置低寄存器;

EXTICR[0]-EXTICR[3]:外部中断配置寄存器

IMR:中断屏蔽寄存器;

EMR:事件屏蔽寄存器;

FTSR:下降沿触发选择寄存器;

RTSR:上升沿触发选择寄存器

6acc6924a716648bd176b61cf2d25f9a.png

(素材来源:21IC和ttic和eechina.如涉版权请联系删除。特别感谢)

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值