新聞中心

        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();

        }

        }




        關鍵詞: 單片機中斷舉

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 莱阳市| 屏南县| 安顺市| 富阳市| 文山县| 南华县| 贡觉县| 黎川县| 江都市| 台中市| 鄱阳县| 子洲县| 锡林郭勒盟| 梁平县| 五台县| 福安市| 昭平县| 子洲县| 陕西省| 海兴县| 博野县| 上犹县| 平湖市| 嘉兴市| 肇州县| 巴彦淖尔市| 湘阴县| 晋江市| 南通市| 玉屏| 博乐市| 都江堰市| 沂南县| 芷江| 德格县| 阿城市| 扶风县| 寿阳县| 疏勒县| 肥乡县| 湖南省|