interrupt.c.bak

来自「QH_MCU_V1.1单片机C源码. 内含实验程序 这是修改版.」· BAK 代码 · 共 61 行

BAK
61
字号
#include <REG51.H>
#include <sys.h>
//说明:按下S18外部中断0按键蜂鸣器开始鸣叫,按下S19外部中断1按键蜂鸣器开始鸣叫
static uchar beep_flag = 0;
void delay ();
void speaker1();
void ISRit0(void) interrupt 0 using 0
{
  EA = 0;
  beep_flag = 1;
  EA = 1;
}

void isr_it1(void) interrupt 2 using 1
{
	EA = 0;
	beep_flag = 0;
	EA = 1;
}
  

void main()
{
	EA = 1;
	IT0 = 1;
  EX0 = 1;
  EX1 = 1;
  speaker1();

	while(1)
	{
     if(beep_flag)
     	  speaker1();
     delay();

	}
}

void delay()
{
    uchar i = 0;
	uchar j = 0;
  for (j=0;j<255;j++)
   {
    for (i=0; i<250; i++)
	  ;
   }
}

void speaker1()
  {
     delay ();
     P2 = 0x10;
     P0 = 0xf7;
     P2 = 0x00;
     P2 = 0x80;
     P0 = 0x01;
	   delay ();
     P0 = 0x00;
     P2 = 0x00;
   }

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?