em78p372n_int.c

来自「义隆EM78P372N资料」· C语言 代码 · 共 49 行

C
49
字号
//***********************************************************
//刚上电时P51输出高,在INT有上升沿的脉冲时P51输出取反
//***********************************************************
//MCU:EM78P372N
//Oscillator:IRC  4MHz
//Clock:2
//WDT:Disable
//编译软件:eUIDE version  1.02.09.07

extern int IntVecIdx; //occupied 0x10:rpage 0
void main()
{
	DISI();
	WDTC();
	SCR=0X7F;			//选择4MHz
	PORT5=2;			//p51输出高
	P5CR=0;				//PORT5设为输出
	P6CR=1;				//P60设为输入,其余设为输出
	_asm{
		clra
		contw
		}
	WDTCR=0X40;			//使能P60作为外部中断输入口
	ISR2=0;
	IMR=0X04;			//使能外部中断
	ENI();				//开总中断
	while(1);

}
void _intcall ALLInt(void) @ int 
{     
  switch(IntVecIdx)
  {
    case 0x4:
    if	(EXIF==1)		//有外部中断吗?
    {
    	ISR2&=0XFB;		//清外部中断标志
    	PORT5^=2;		//P51输出取反
    }
    break;
  } 	
}

void _intcall Ext_l(void) @ 0x03:low_int 0
{
 _asm{MOV A,0x2};
}

⌨️ 快捷键说明

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