基于51单片机的外部中断实例

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

51单片机一般有两个外部中断输入端,并允许外部中断源以低电平或负边沿两种触发方式输入中断请求信号。本例就是利用一只按钮,在按下时产生的负边沿触发外部中断。1硬件设计将一只按钮接在外部中断输入0(12脚),八支发光二极管分别接在P0.0~P0.7,其电路如下图所示。⒉软件设计通过按下按钮SW触发外部中断,从而改变发光二极管D1~D8的亮、灭,当第一次按下按钮时,只有D1发光二极管亮;第二次按下按钮时,只有D2发光二极管亮;第三次按下按钮时,只有D3发光二极管亮;……第八次按下按钮时,只有D8发光二极管亮;第九次按下按钮时,D1~D8发光二极管全亮;第十次按下按钮时,D1~D8发光二极管全都不亮;第十一次按下按钮时,只有D1发光二极管亮;按钮SW触发外部中断,从而控制D1~D8亮灭的详细C51程序如下。/***************外部中断****************/#includereg51.hunsignedcharcount=0;//外部中断计数unsignedcharF0=0;main(){F0=0;IE=0X81;//打开外部中断0和总中断使能或者(EX0=1;EA=1)IT0=1;//标志位清零,开中断,边沿激活(或者TCON|=0X01)while(1){while(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()interrupt0//外部中断{count++;F0=1;}

1 / 2
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功