首页 > 其他分享 >蓝桥杯单片机学习(Day14 实现操作外部开启中断)

蓝桥杯单片机学习(Day14 实现操作外部开启中断)

时间:2024-07-21 15:30:45浏览次数:11  
标签:P2 Day14 函数 中断 void 蓝桥 单片机 0x1f 外部

外部中断相关寄存器的配置方法和触发方式:

        

实验配置:

        [email protected],J3跳线配置为IO方式,J5配置为BTN、J2配置为1-3和2-4。

配置方法:

        EX0、IT0负责外部中断0服务函数的开启其中断服务函数优先级为interrupt 0,EX1、IT1负责外部中断1服务函数的开启其中断服务函数优先级为interrupt 2。  

触发方式:

         P3.2-INT0引脚对应的按键S5。P3.3-INT1引脚对应的按键S4,故而触发方式为按下S5触发外部中断0服务函数,按下S4触发外部中断1服务函数

实例代码: 

     

#include <STC15F2K60S2.H>

sbit LED1=P0^0;
sbit LED2=P0^1;

void cls_buzz()
{
	P2=(P2&0x1f)|0xa0;
	P0=0x00;
	P2&=0x1f;
}

void cls_led()
{
	P2=(P2&0x1f)|0x80;
	P0=0xff;
	P2&=0x1f;
}

void main()
{
	cls_buzz();
	cls_led();
	EX0=1;
	IT0=1;  // 外部中断0服务函数,边沿触发方式(下降沿) ,对应引脚的按键为 S5
	EX1=1;
	IT1=1;  // 外部中断1服务函数,边沿触发方式(下降沿) ,对应引脚的按键为 S4
	EA=1;  //中断总开关
	while(1);  //使总程序持续执行
}

//外部中断0服务函数
void out_interrupt0()  interrupt 0
{
	P2=(P2&0x1f)|0x80;
	LED1=~LED1;
	P2&=0x1f;
}

//外部中断1服务函数
void out_interrupt1()  interrupt 2
{
	P2=(P2&0x1f)|0x80;
	LED2=~LED2;
	P2&=0x1f;
}

实验现象: 

        分别按S4、S5按键,对应的led1、led2亮灭显示。

       

标签:P2,Day14,函数,中断,void,蓝桥,单片机,0x1f,外部
From: https://blog.csdn.net/2302_80724534/article/details/140588546

相关文章

  • 蓝桥杯单片机学习(Day13 矩阵键盘 )
    现象:            按键S7、S11、S15、S19数码管显示00-03      按键S6、S10、S14、S18数码管显示04-07      按键S5、S9、S13、S17数码管显示08-11      按键S4、S8、S12、S16数码管显示12-15矩阵键盘介绍:    注......
  • 1029、基于单片机的闹钟(存储)
    毕设帮助、开题指导、技术解答(有偿)见文末。目录一、设计功能二、proteus仿真三、原理图四、程序源码五、资料包括一、设计功能单片机期末考试任务书设计一个程序,实现以下功能:具有4个以上按键,具有确定键,返回键,上移键,下移键,可以通过按键设定时间的时钟,分钟设......
  • 1028、基于单片机的流水灯(5个按键)
    毕设帮助、开题指导、技术解答(有偿)见文末。目录一、设计功能二、proteus仿真三、原理图四、程序源码五、资料包括一、设计功能花样流水灯1、扩展32个LED灯,低电平驱动2、使用5个按键切换5种花样二、proteus仿真三、原理图四、程序源码五、......
  • 嵌入式单片机STM32中堆栈使用方法
       学习STM32单片机的时候,总是能遇到“堆栈”这个概念。分享本文,希望对你理解堆栈有帮助。    对于了解一点汇编编程的人,就可以知道,堆栈是内存中一段连续的存储区域,用来保存一些临时数据。堆栈操作由PUSH、POP两条指令来完成。而程序内存可以分为几个区:栈区(stack......
  • 蓝桥杯 算法季度赛2
    T2第一发没判最后一组后没有间隔T3WA了两发,调不出来往后看T5是线段树板子,1A了T4贺了个zfunction板子,WA了两发,调不出来剩下的题都没来得及看丑陋sol3.兽之泪II讨论选不选\(x_n\)比较好些如果讨论的是\(y_n\),在选\(y_i\)的情况下可能会选一些\(>y_i\)......
  • 【I²C协议】STC89C51单片机IIC通信(代码+原理)
    STC89C51单片机IIC通信什么是I²C协议特点构成通信协议开始信号、结束信号、应答信号数据传输代码示例什么是I²C协议IIC,即I²C,全称Inter-IntegratedCircuit,字面上的意思是集成电路之间,它其实是I²CBus简称,所以中文应该叫集成电路总线,是由PHILIPS公司在80年......
  • 基于单片机的远程烟雾报警系统的硬件电路设计
    摘要:目前,智能家居已成为信息化时代的产物遍布全国各地,其中适用于家用的烟雾报警系统已成为家庭设备中安全管理的基础。本文设计了一款基于单片机对家用燃气进行实时监测的系统,该系统可通过短信的形式通知家庭主人当前的烟雾浓度。本设计主要完成了硬件电路设计,其中包括基于A......
  • 基于单片机的温控光控智能窗帘设计探讨
    摘要:文章使用的核心原件是AT89C52单片机,以此为基础进行模块化的设计,在整个设计中通过加入光检测模块和温度检测模块,从而对室内的温度和光照强度进行检测,然后将检测得到的数据传输给单片机,单片机对电机的继电圈的通断进行控制,从而通过电机的正转和反转,从而实现对窗帘开合......
  • 蓝桥杯Python算法竞赛常用的函数库
    博客主页:音符犹如代码系列专栏:Python关注博主,后期持续更新系列文章如果有错误感谢请大家批评指出,及时修改感谢大家点赞......
  • 【51单片机】1-2创建keil代码工程
    1.双击打开keil软件,点击Project->newuVisionproject2.在适当位置新建项目工程文件夹Template,双击进入该文件夹,并输入下方文件名保存。3.选择AT89C51或AT89C52均可后,点击是4.新建文本文件,保存为.c文件,主要保存.c文件的文件名与工程名相同5.右键添加文件或者双击......