interrupt.h

来自「经过改进之后的CAN-USB接口卡固件程序」· C头文件 代码 · 共 52 行

H
52
字号
//实时中断历程
#pragma CODE_SEG __NEAR_SEG NON_BANKED

interrupt void IRQ_ISR(void)
{
	static uchar i = 0;	
	
	i++;
	if(i < 10)
		USB_LED_ON;
	else if(i < 20)
	{		
		USB_LED_OFF;
	}
	else
		i = 0;	
	
	//读取中断寄存器
	D12_INT = D12_ReadInterruptRegister();	
	
	//清中断	
	if(D12_INT & 0x40)//复位
	{
		D12_SPD_1;
	}

	if(D12_INT & 0x80)//挂起改变
	{
		D12_SPD_0;
	}

	if(D12_INT & 0x01)		EP0_Out();
	if(D12_INT & 0x02)		EP0_In();
	if(D12_INT & 0x04)		EP1_Out();
	if(D12_INT & 0x08)		EP1_In();
	if(D12_INT & 0x10)		EP2_Out();
	if(D12_INT & 0x20)		EP2_In();	
	//..........		
}


interrupt void RTI_ISR(void)
{
	RTI_count++;
	
	//clear RTIF bit
	CRGFLG = 0x80;  
}



⌨️ 快捷键说明

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