蓝桥杯单片机程序设计——中断程序

本文介绍了一种基于STC15F2K60S2单片机的中断系统实现方法,通过两个外部中断0和中断1来控制LED状态的变化。文章详细展示了中断初始化配置过程及中断服务函数的具体实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.中断系统在这里插入图片描述

在这里插入图片描述
2.查询中断向量入口地址
在这里插入图片描述
3.中断系统模块化编程思路

Main()
{
….

}

中断函数1()
{}

中断函数2()
{}

4.程序
在这里插入图片描述

//main.c
#include "bsp_init.h"
#include "Int.h"
#include "bsp_led.h"

/*私有变量*/
unsigned char ucLed;//控制灯亮灭的字节变量 0x01=0001 0001   ,L8~L1

main()
{
	Cls_Peripheral();//关闭外设
	Int_init();//外中断0和外中断1初始化
	while(1);

}	

//函数名:外部中断0中断服务函数
//入口参数:无
//返回值:无
//功能:完成LEDX的翻转
isr_intr_0()interrupt 0
{
	ucLed^= 0x01;
	Led_Disp(ucLed);
}	

//函数名:外部中断1中断服务函数
//入口参数:无
//返回值:无
//功能:完成LEDX的翻转
isr_intr_1()interrupt 2
{
	ucLed ^= 0x02;
	Led_Disp(ucLed);
}	

//int.c
#include "Int.h"
#include "STC15F2K60S2.H"

//函数名:外部中断初始化函数
//入口参数:无
//返回值:无
//功能:对外中断0和外中断1进行初始化配置,配置成下降沿触发方式
void Int_init(void)
{
	IT0 = 1;//配置成下降沿触发
	EX0 = 1;//配置外中断0使能
	IT1 = 1;//配置成下降沿触发
	EX1 = 1;//配置外中断1使能
	EA = 1; //打开总中断
	
}	
//int.h
#include "STC15F2K60S2.H"

//函数名:外部中断初始化函数
//入口参数:无
//返回值:无
//功能:对外中断0和外中断1进行初始化配置,配置成下降沿触发方式
void Int_init(void);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wliiiams

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值