在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 中斷控制led開關(guān)程序

            中斷控制led開關(guān)程序

            作者: 時間:2016-11-18 來源:網(wǎng)絡 收藏
            //---------------------------------------------------
            #include
            //---------------------------------------------------
            //重定義I/0引腳名稱
            sbit led1=P0^0;
            sbit led2=P0^1;
            sbit led3=P0^2;
            sbit led4=P0^3;
            sbit P13=P0^3;
            //---------------------------------------------------
            //全局變量及位標志定義
            bit FINT0;
            bit FINT1;
            bit FT0;
            bit FT1;
            bit FT2;
            unsigned char T0_10ms;
            unsigned char T0_50ms;
            unsigned char T0_100ms;
            //---------------------------------------------------
            //固定函數(shù)聲明
            void int_0(); //外部中斷0
            void int_1(); //外部中斷1
            void timer_0(); //定時器中斷1
            void timer_1(); //定時器中斷2
            void serial_1(); //串行中斷1
            void serial_2(); //串行中斷2
            //---------------------------------------------------
            //用戶函數(shù)聲明
            void initial(); //初始化
            //---------------------------------------------------
            void main(){
            initial();
            while(1){
            P13=0; //為了使按取消、確定鍵能夠產(chǎn)生INT0及INT1中斷
            //led4=0; //上一句等價于此句
            if(FINT0){ //中斷0來到要做什么事情
            FINT0=0;
            led1=0; //INT0中斷時點亮
            led2=0;
            led3=0;
            led3=0; //可以在此設一個斷點
            }
            if(FINT1){ //中斷1來到要做什么事情
            FINT1=0;
            led1=1; //INT1中斷時熄滅
            led2=1;
            led3=1;
            }
            if(FT0){
            FT0=0;
            if(++T0_10ms>30){
            T0_10ms=0;
            //定時多少做什么事,未初始化里定時器尚未設置
            }
            }
            }
            }
            //-------------------------------------------------------------------
            void initial(){
            EA=1; // CPU所有中斷開(IE最高位MSB)
            EX0=1; // INT0中斷開
            IT0=0; // INT0低電平觸發(fā)(為1則為下降沿觸發(fā))
            EX1=1; // INT1中斷開
            IT1=0; // INT1低電平觸發(fā)(為1則為下降沿觸發(fā))
            return;
            }
            //-------------------------------------------------------------------
            //INT0中斷 由P3.2引腳產(chǎn)生
            void int_0() interrupt 0 using 0
            {
            FINT0=1;
            }
            //-------------------------------------------------------------------
            //INT1中斷 由P3.3引腳產(chǎn)生
            void int_1() interrupt 2 using 1
            {
            FINT1=1;
            }
            //-------------------------------------------------------------------
            //定時器0中斷
            void timer_0() interrupt 1 using 2
            {
            FT0=1;
            }
            //-------------------------------------------------------------------
            //定時器1中斷
            void timer_1() interrupt 3 using 3
            {
            FT1=1;
            }
            //-------------------------------------------------------------------
            //串行中斷1
            void serial_1() interrupt 4
            {
            }
            //-------------------------------------------------------------------
            //定時器2中斷
            void timer_2() interrupt 5
            {
            FT2=1;
            }
            //-------------------------------------------------------------------


            關(guān)鍵詞: 中斷控制led開

            評論


            技術(shù)專區(qū)

            關(guān)閉