新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 單片機中斷舉例

        單片機中斷舉例

        作者: 時間:2016-11-26 來源:網絡 收藏

        單片機中斷舉例


        本文引用地址:http://www.104case.com/article/201611/321780.htm

        單片機多任務執行。P1口LED燈閃爍、P3口按鍵輸入,兩任務“同時”執行。

        方案一:在主程序中循環調用P1口LED燈閃爍子程序,P3口按鍵掃描子程序;

        缺點:可能造成P3口按鍵輸入不靈的現象;

        方案二:主程序一直循環調用P1口LED燈閃爍子程序,P3口按鍵程序采用中斷執行。

        以下程序將兩個外部中斷全部打開,同學們可以在proteus中驗證。

        //********************************

        //51單片機中斷嵌套程序演示

        //作者:曾憲陽

        //網址:http://hi.baidu.com/zxymcu

        //********************************

        #include

        #include

        #defineucharunsignedchar

        #defineuintunsignedint

        voiddelay_ms(uintt)

        {

        ucharx,y;

        for(t;t>0;t--)

        {

        for(x=0;x<114;x++)

        for(y=0;y<1;y++);

        }

        }

        voidLED(void)

        {

        ucharx;

        P1=0XFE;

        for(x=0;x<8;x++)

        {

        delay_ms(500);

        P1=_crol_(P1,1);

        }

        }

        voidLED_0(void)interrupt0using1

        {

        ucharx;

        P0=0XFE;

        for(x=0;x<8;x++)

        {

        delay_ms(500);

        P0=_crol_(P0,1);

        }

        }

        voidLED_1(void)interrupt2using2

        {

        ucharx;

        P2=0XFE;

        for(x=0;x<8;x++)

        {

        delay_ms(500);

        P2=_crol_(P2,1);

        }

        }

        voidmain(void)

        {

        EA=1;EX0=1;EX1=1;

        IT0=1;IT1=1;

        while(1)

        {

        LED();

        }

        }




        關鍵詞: 單片機中斷舉

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 岳普湖县| 平潭县| 绥德县| 五大连池市| 吉木萨尔县| 霸州市| 赣榆县| 海南省| 德令哈市| 商丘市| 巫山县| 武定县| 响水县| 扎赉特旗| 丹东市| 林周县| 辽宁省| 高密市| 西昌市| 万年县| 岚皋县| 安岳县| 当涂县| 东乌珠穆沁旗| 大洼县| 星座| 喀喇| 通山县| 上犹县| 米脂县| 荔浦县| 灵丘县| 耒阳市| 阜平县| 平南县| 迭部县| 定襄县| 建瓯市| 汕头市| 凤翔县| 新源县|