中断的概念:

CPU在处理某一事件A时,发生了另一事件B请求CPU迅速去处理(中断发生),那么CPU就会暂停当前的工作(A事件),去执行B事件(中断响应和中断服务),然后B事件做完之后,再回到原来的事件(A事件)中继续工作。(中断的返回)。

51单片机有5个中断源分别是:

  1、INT0——外部中断0,由P3.2端口引入,低电平或下降沿引起。默认优先级最高

  2、INT1——外部中断1,由P3.3端口引入,低电平或下降沿引起。默认优先级第二

  3、T0——定时器/计数器0中断,由T0计数器计满回零引起。默认优先级第三

  4、T1——定时器/计数器1中断,由T1计数器计满回零引起。默认优先级第四

  5、TI/RI——串行口中断,串行端口完成一帧字符发送/接收后引起。默认中断优先级最低

今天为大家演示51单片机中外部中断0的使用示例:

下面是显示仿真电路,该电路的功能是单片机上电后数码管从A-G循环点亮,当连接P3^2(INT0)引脚的按键按下时,系统检测到外部中断请求信号,CPU执行的主程序断开,跳转去执行中断模块程序,中断模块的功能是数码管闪烁显示数字‘8’ 八次。然后CPU返回主程序断点继续执行A-G的循环点亮。

实现代码:

#include<reg51.h>
#include<intrins.h>//左移函数和右移函数包含头文件
#define uint unsigned int//把unsigned int 重新起名为uint
#define uchar unsigned char
uchar aa;void delayms(uint xms){//延时函数uint i,j;for(i=xms;i>0;i--)for(j=110;j>0;j--);
}
void main(){EA=1;//开启总中断EX0=1;//开启外部中断0IT0=1;//把外部中断0设置为下降沿触发aa=0x01;while(1){P0=aa;//把aa的值赋给P0delayms(1000);//延时1saa=_crol_(aa,1);//把aa的值左移一位在赋给aa}
}void ex0_time()interrupt 1//中断函数
{unsigned char a;P0=0x00;//熄灭数码管for(a=8;a>0;a--){//使数码管闪烁显示数字8(带小数点)8次P0=0xff;//使数码管显示数字8delayms(1000);//延时1sP0=0X00;//熄灭数码管delayms(1000);//延时1s}}

Protues仿真结果部分截图:

51单片机中外部中断使用示例(Protues仿真)相关推荐

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

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

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

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

  3. 51单片机测量脉冲频率C程序及protues仿真结果精确

    测定脉冲频率,附带部分PROTUES仿真结果和完整C语言程序,对于初学者或着急使用的电子爱好者来说,软件硬件结合,十分方便移植.仿真结果十分精确,实际应用中可能会存在少许误差,通过相应的电路处理,可以 ...

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

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

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

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

  6. 51单片机之外部中断方式 ——— INT0 中断

    51单片机具有5个中断源,其中有两个外部中断,这次我们以下降沿触发Int0为例. 在B站跟个up主中断教程, 传送门 https://space.bilibili.com/483942191/vide ...

  7. 02讲 | 51单片机按键外部中断实现LED灯的亮灭

    前言 专栏内容持续补充更新,目前正在进行优惠活动! 目录 一.按键中断控制原理 二.外部中断实现 LED 灯亮灭功能代码

  8. 51单片机动态数码管显示时间+protues仿真

    项目场景: 纯小白 第一次写文章 写的不好请见谅 做51单片机数码管显示时间实验的时候protues 仿真出现了问题 问题描述 做51单片机数码管显示时间实验的时候protues 仿真出现了问题 仿真 ...

  9. 51单片机 定时器外部中断 proteus仿真

    实验实现:八个红蓝LED灯实现流水灯定时闪烁,当按下按键Key则停止闪烁,松开按键恢复闪烁. #include <reg52.h> #define uchar unsigned char ...

  10. STM32CubeMX | STM32 F1系列HAL库低功耗STOP和STANDBY模式唤醒(RTC时钟唤醒+外部中断唤醒示例)

    STM32CubeMX | STM32 F1系列HAL库低功耗STOP和STANDBY模式唤醒(RTC时钟唤醒+外部中断唤醒示例) 目录 STM32CubeMX | STM32 F1系列HAL库低功耗 ...

最新文章

  1. 蓝桥杯--2013--黄金连分数(大数)
  2. Android动态加载黑科技 动态创建Activity模式
  3. python编程第四版_清华编程教授强力推荐《Python编程》,指导你如何学习python
  4. Qt QMYSQL driver not loaded 解决办法
  5. 上海市高校计算机一级考试试题,上海市计算机一级考试试题
  6. 洛谷P2024 [NOI2001]食物链
  7. 如何写出让同事吐血的代码?
  8. Mac将本地文件上传到服务器以及从服务器下载文件到本地
  9. 深色背景黑底白字,蓝底白字课件材料“洗白”打印,ps批处理教程
  10. 解决方案(.sln)文件
  11. paypal 国际版网站集成
  12. 哦, 这该死的txt回车符~
  13. Bootstrap按钮样式
  14. 软件测试前景怎么样?大概要学什么?
  15. 北京大学可视化发展前沿研究生暑期学校Day2
  16. java日志保存_log4j实现日志集中存储
  17. bios和boot menu的关系?
  18. 如何快速构建量化股票池?
  19. 关于音箱的鉴别与选择
  20. Kafka-eagle监控平台

热门文章

  1. C语言简易贪吃蛇(附完整代码)
  2. 英文键盘盲打最快速练习口诀和方法
  3. ❤️❤️固高运动控制卡的相关知识点
  4. MATLAB_R2020b安装
  5. 《HTTP权威指南》读书笔记
  6. 理发店收银系统php,理发店收银系统优缺点
  7. python语言基础与应用 mooc答案_Python语言基础与应用_中国大学 MOOC_章节考试选修课答案...
  8. 通俗易懂的极限学习机(Extreme Learning Machine)
  9. IOMMU/SMMUV3代码分析(0)IOMMU架构
  10. OEIS A098928 数表扩充