void main(void)//主函数{TCON=0x01EX0=1//外部中断允许
EA=1//开总中断while(1){//其他程序}}
void int0(void) interrupt 0 //外部中断0 中断子程序{//这里面可以写中断子程序/*a++if(a==2) a=0while(!zd)if(a) TR0=1//开关计时器
else TR0=0*/}
由于对你的要求“按下INTO接的按键,使单片机执行间隔四灯轮流闪烁的中断子程序”不够理解,只能给你这样一个程序框架了
进入中断要执行中断子程序,不同的中断源要进入不同的中断子程序。对于51的C编程,可以用中断标号,如‘interrupt 0’来使中断进入不同的中断。
中断标号与它们的中断优先级一致,即
这个图未接入任何中断输入IO。中断程序写法是:void ext0() interrupt 0 //外部中断0
{
//中断服务程序类容
}
void ext1() interrupt 2 //外部中断1
{
//中断服务程序类容
}
void time0() interrupt 1 //定时器0中断
{
//中断服务程序类容
}
void time1() interrupt 3 //定时器0中断
{
//中断服务程序类容
}
void uart() interrupt 4 //串口中断
{
//中断服务程序类容
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)