isr.c

来自「正弦信号发生器」· C语言 代码 · 共 113 行

C
113
字号
//=============================================================
//  文件名称: ISR.c
//  实现功能: 外中断
//  完成日期:  2005,9,8
//==============================================================
#include	"SPCE061V004.H"
#define     EXT1   0x0002       //IOB1
extern unsigned long int AMP;
extern  void Display(unsigned long int data);
//IOB1        输出
extern unsigned int test_time;
//=======================================================================================
//
//=======================================================================================
void BREAK(void) __attribute__ ((ISR));
void BREAK(void)
{
}
//=======================================================================================
//
//=======================================================================================
void FIQ(void) __attribute__ ((ISR));
void FIQ(void)
{
}
//=======================================================================================
//
//=======================================================================================
void IRQ0(void) __attribute__ ((ISR));
void IRQ0(void)
{
	
}
//=======================================================================================
//
//=======================================================================================
void IRQ1(void) __attribute__ ((ISR));
void IRQ1(void)
{
//	Display(AMP);
//	*P_INT_Clear=C_IRQ1_TMA;        	//clear INT flag
//	*P_INT_Clear=0x1000;
}
//=======================================================================================
//
//=======================================================================================
void IRQ2(void) __attribute__ ((ISR));
void IRQ2(void)
{
}
//=======================================================================================
//
//=======================================================================================
void IRQ3(void) __attribute__ ((ISR));
void IRQ3(void)
{
//	unsigned int uiDelay;
	if(*P_INT_Ctrl&C_IRQ3_EXT1)
	{	//IRQ3_Ext1
		if(*P_IOB_Data & EXT1)
		{
			*P_IOB_Data &= 0xfffd;
//			Delay(test_time);
//			*P_IOB_Data |= 0x0002;
		}	
		else
		{
//			Delay(test_time);
			*P_IOB_Data |= 0x0002;
//			Delay(test_time);
//			*P_IOB_Data &= 0xfffd;
		}	
	    
		*P_INT_Clear=C_IRQ3_EXT1;
	}
	else if(*P_INT_Ctrl&C_IRQ3_EXT2)
	{	//IRQ3_Ext2
		*P_INT_Clear=C_IRQ3_EXT2;
	}
	else
	{	//IRQ3_KeyWakeUp
		*P_INT_Clear=C_IRQ3_KEY;
	}

}
//=======================================================================================
//
//=======================================================================================
void IRQ4(void) __attribute__ ((ISR));
void IRQ4(void)
{
}
//=======================================================================================
//
//=======================================================================================
void IRQ5(void) __attribute__ ((ISR));
void IRQ5(void)
{
}
//=======================================================================================
//
//=======================================================================================
void IRQ6(void) __attribute__ ((ISR));
void IRQ6(void)
{
}
//=======================================================================================
//
//=======================================================================================
void IRQ7(void) __attribute__ ((ISR));
void IRQ7(void)
{
}

⌨️ 快捷键说明

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