isr.c

来自「凌阳061a单片机的中断使用例程。包括外部中断例子」· C语言 代码 · 共 34 行

C
34
字号
#include"spce061a.h"
unsigned int g_uiIOA_LED=0xff,g_uiIOB_LED=0xff,g_uiClockCnt=0;
void IRQ2(void)__attribute__((ISR));
void IRQ2(void)
{
	*P_IOB_Data=g_uiIOB_LED;
	g_uiIOB_LED^=0xffff;
	*P_INT_Clear=0x0400;
}
void IRQ4(void)__attribute__((ISR));
void IRQ4(void)
{
	if(*P_INT_Ctrl&C_IRQ4_1KHz)
	{
	if(g_uiClockCnt<=1024)
		g_uiClockCnt++;
		
	else
	{ 	
	*P_IOA_Data=g_uiIOA_LED;
	g_uiIOA_LED^=0xffff;
	g_uiClockCnt=0x0000;
	*P_INT_Clear=C_IRQ4_1KHz;
	}
	}
	if(*P_INT_Ctrl&C_IRQ4_2KHz)
		{
			*P_INT_Clear=C_IRQ4_1KHz;
		}
	if(*P_INT_Ctrl&C_IRQ4_4KHz)	
	{
		*P_INT_Clear=C_IRQ4_4KHz;
	}
}

⌨️ 快捷键说明

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