📄 em78p372n_int.c
字号:
//***********************************************************
//刚上电时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 + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -