07-中断系统与外部中断

#include "reg52.h"

sbit L1 = P0^0;
sbit L8 = P0^7;

void delay(unsigned char t)
{
	while(t--);
}

void HC138()
{
	P2 = (P2 & 0x1f) | 0x80;
}

void Working()
{
	HC138();
	L1 = 0;
	delay(60000);
	L1 = 1;
	delay(60000);
}

//============================
void Init_INT0()
{
	IT0 = 1;
	EX0 = 1;
	EA = 1;
}

void ServiceINT0() interrupt 0
{
	L8 = 0;
	delay(600000);
	L8 = 1;
}

//==============================

void main()
{
	Init_INT0();
	while(1)
	{
		Working();
	}
}

方法二

#include "reg52.h"

sbit L1 = P0^0;
sbit L8 = P0^7;

void delay(unsigned char t)
{
	while(t--);
}

void HC138()
{
	P2 = (P2 & 0x1f) | 0x80;
}

void Working()
{
	HC138();
	L1 = 0;
	delay(60000);
	L1 = 1;
	delay(60000);
}

//============================
void Init_INT0()
{
	IT0 = 1;
	EX0 = 1;
	EA = 1;
}
unsigned char state = 0;
	
void ServiceINT0() interrupt 0
{
	state = 1;
}
void led()
{
	if(state == 1)
	{
	L8 = 0;
	delay(600000);
	L8 = 1;
	}
	state = 0;
}
//==============================

void main()
{
	Init_INT0();
	while(1)
	{
		led();
		Working();
	}
}

 

posted @   Unclesundada  阅读(13)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示