51单片机具有5个中断源,其中有两个外部中断,这次我们以下降沿触发Int0为例。
在B站跟个up主中断教程,
传送门 https://space.bilibili.com/483942191/video?tid=0&page=4&keyword=&order=pubdate
实验目的:用独立按键作为外部中断的触发信号,当按键按下发送来信号的时候,再执行中断函数(在函数内定义LED灯的亮灭)

如上图所示51单片机总共有5个中断源,本博文先展示第一种 INT0 中断

先看电路图


按键 P3^2 可以触发中断源 INT0

设置寄存器,打开终端并选择中断的触发方式。
EA为整体中断允许位,首先要将EA置1,打开中断。
EX0为外部中断INT0,置1开启。
IT0寄存器:置0为低电平触发,置1为下降沿触发。

编写中断函数,int0的中断编号为0,这里使用中断控制led的点亮与熄灭。
中断函数格式一般为:
void 函数名称(void) interrupt 中断编号 【using 寄存器组编号】{
语句;
}

贴上代码:
中断函数的定义

#include"pbdata.h"//外部中断初始化
void EX0_Init(void)
{//设置触发方式 外部中断0IT0=1;  //设置下降沿触发TCON 硬件可自动清零触发信号EX0=1; //IEEA=1;
}/**********************************************************
1、中断服务函数一定是一个没有返回值的函数
2、中断服务函数一定是个没有参数的函数
3、中断服务函数函数名后跟关键字 interrupt
4、interrupt n的取值从0~4 分别代表5个中断源 计算公式为 8*n +0003H分别为 0 0003H INT01 000BH T02 0013H INT13 001BH T14 0023H ES
5、中断服务函数不能被主程序或其他程序调用
6、n 后面跟 using m (0-3)工作寄存器组
***********************************************************/void EX0_ISR(void) interrupt 0
{LED_1=~LED_1;
}

上面注释很重要,记得看注释!

中断函数在main函数中的初始化与使用

void main()
{EX0_Init();  //在while函数外部初始化一次即可while(1)   以下程序中,定义了没调用会有1个warning{}
}

51单片机之外部中断方式 ——— INT0 中断相关推荐

  1. 51单片机之外部中断拙见

    外部中断需要注意的点 1. 外部中断其实是包含在中断系统中的,STC89Cx系列单片机提供4个外部中断:外部中断0(INT0),外部中断1(INT1),外部中断2(INT2),外部中断3(INT3) ...

  2. 51单片机:外部中断实现流水灯

    51单片机:外部中断实现流水灯 作业要求: 按照给定的实验板电路图编程实现外部中断控制流水灯,初始上电时,实验板右下侧的流水灯区域只有最右侧LED灯亮,其他灯全都熄灭,每按下一次按键,流水灯从右向左流 ...

  3. c51中断优先级c语言,基于proteus的51单片机开发实例(14)中断嵌套和中断优先级...

    1. 基于proteus的51单片机开发实例(14)中断嵌套和中断优先级 1.1. 实验目的 在前面实例中我们已经学习了51单片机的定时器/计数器中断,外部中断,通过这些实例,知道了中断电路的设计,中 ...

  4. 10 51单片机汇编:让定时器产生中断(使用Keil模拟器)[系列教程之10]

    10 51单片机汇编:让定时器产生中断(使用Keil模拟器)[系列教程之10] 该系列主仓库地址:https://gitee.com/langcai1943/8051-from-boot-to-app ...

  5. 51单片机串口通信实操(中断函数)

    51单片机串口通信实操(中断函数) 详细参考单片机手册 SM0.SM1分别为0,1时为模式一,因为模式一最为常用 REN=1,为接收,REN=0,为不接收 当 SM0,SM1,SM2,REN,TB8, ...

  6. 51单片机之外部引脚及总线接口

    51单片机之外部引脚及总线接口 MCS-51系列外部引脚 总线结构: 冯诺依曼结构: 哈弗结构: 寻址空间的区分: MCS-51系列外部引脚 记忆方法: 1.在前面的存储器和特殊功能寄存器篇讲过,标志 ...

  7. 基于51单片机的OLED驱动方式(iic通讯方式)

    基于51单片机的OLED驱动方式(iic通讯方式) 前言: 本人从事硬件开发,自学软件,因为发现在学习过程中,有很多问题对于没有项目实战经验的新手来讲太难解决了,可以说基本上是无从下手.现将自己学习过 ...

  8. 快速复习51单片机的外部中断、计数/定时器中断和串行口中断,加代码实现

    目录 1.中断系统的概念 1.1中断的概念 1.2中断系统的概念 1.3中断系统的优点 1.4我们要说的三种中断源 2.外部中断 2.1 外部中断0 代码示范 2.2 外部中断 分析 3.计数/定时器 ...

  9. 【51单片机】外部中断

    51的 外部中断 与 定时器(内部中断) 有一个共同特点,那就是与主程序是并行工作的,就是主程序在运行的时候,中断也在等待触发条件,当中断被触发的时候会暂停主程序转而执行中断服务程序,只有中断服务程序 ...

最新文章

  1. 腾讯 angel 3.0:高效处理模型
  2. RadASM的测试工程!
  3. [Elasticsearch2.x] 多字段搜索 (三) - multi_match查询和多数字段 译
  4. 201621123065《JAVA程序设计》第11周学习总结
  5. Mysql 获取年级每个班前十学生的信息
  6. ideahtml里面没有提示_抖音上爆火的苹果充电提示音,安卓手机也可以设置了!!...
  7. 美食杂志排行榜_百度知道
  8. IntelliJ IDEA2018版下载安装教程以及详细步骤
  9. ubuntu手动下载安装软件包
  10. 【AI视野·今日CV 计算机视觉论文速览 第220期】Wed, 16 Jun 2021
  11. P1157 组合的输出(#define mian main)
  12. 彩虹云秒赞内页美化-简约蓝色横排框架
  13. Hulu斩获两枚艾美奖提名!(附第68届艾美奖重要奖项提名名单)
  14. 基于FPGA的呼吸灯设计
  15. 深信服面试常见算法题整理笔记
  16. GO的gin依赖下载不下来的问题
  17. 软考软件设计师基础知识—法律法规知识
  18. 商城系统建设:如何搭建自己的网上商城平台
  19. MJ系列之手写代码汇总
  20. 计算机图形学 OpenGl-种子填充算法画红黄绿交通灯

热门文章

  1. 初识python评课稿_pythonrange函数
  2. Python 数据分析:时间序列
  3. Maven之查找依赖信息的网站
  4. STM32 TM1650数码管显示与按键识别
  5. 固态硬盘使用的优化——适用于任何版本的固态
  6. h5在ios下拉上拉会带动整个页面出现空白解决方案
  7. 第2关:求解出n以内所有能被5整除的正整数的乘积-------C语言程序设计技术(循环结构程序设计1)
  8. 使用D3D8实现2D图形显示技术
  9. redis集群模式详解
  10. MySQL-限制结果-LIMIT(limit)