欢迎来到天天文库
浏览记录
ID:50906643
大小:53.13 KB
页数:2页
时间:2020-03-15
《基于51单片机的外部中断实例.docx》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、51单片机一般有两个外部中断输入端,并允许外部中断源以低电平或负边沿两种触发方式输入中断请求信号。本例就是利用一只按钮,在按下时产生的负边沿触发外部中断。1 硬件设计将一只按钮接在外部中断输入0(12脚),八支发光二极管分别接在P0.0~P0.7,其电路如下图所示。⒉ 软件设计通过按下按钮SW触发外部中断,从而改变发光二极管D1~D8的亮、灭,当第一次按下按钮时,只有D1发光二极管亮;第二次按下按钮时,只有D2发光二极管亮;第三次按下按钮时,只有D3发光二极管亮;……第八次按下按钮时,只有D8发光二极管亮;第九次按下按钮时,D1~D8发光二极管全亮;第十次按下按钮时,D
2、1~D8发光二极管全都不亮;第十一次按下按钮时,只有D1发光二极管亮; 按钮SW触发外部中断,从而控制D1~D8亮灭的详细C51程序如下。/***************外部中断****************/#includeunsignedcharcount=0; //外部中断计数unsignedcharF0=0;main(){F0=0;IE=0X81;//打开外部中断0和总中断使能或者(EX0=1;EA=1)IT0=1; //标志位清零,开中断 ,边沿激活(或者TCON
3、=0X01) while(1){ w
4、hile(F0==0); switch(count%10){ case(0):P0=0XFF;break; case(1):P0=0XFE;break; case(2):P0=0XFD;break;case(3):P0=0XFB;break; case(4):P0=0XF7;break; case(5):P0=0XEF;break;case(6):P0=0XDF;break;case(7):P0=0XBF;break;case(8):P0=0X7F;break; case(9):P0=0X00;break; }F0=0;}}voidint_int0()interrupt
5、0 //外部中断{count++;F0=1;}
此文档下载收益归作者所有