国产精品免费无遮挡无码永久视频-国产高潮视频在线观看-精品久久国产字幕高潮-国产精品99精品无码视亚

電子工程網(wǎng)

標題: 單片機C語言編程模板(外部中斷) [打印本頁]

作者: wp1981    時間: 2010-10-14 19:25
標題: 單片機C語言編程模板(外部中斷)
/*********************************************************************************************
函數(shù)名:外部中斷INT初始化函數(shù)
調(diào) 用:INT_init();
參 數(shù):無
返回值:無
結(jié) 果:啟動外部中斷INT1、INT0中斷,設(shè)置中斷方式
備 注:
/**********************************************************************************************/
void INT_init (void){
    EA = 1;    //中斷總開關(guān)
    EX1 = 1; //允許外部中斷1中斷   
    EX0 = 1; //允許外部中斷0中斷
    IT1 = 1; //1:下沿觸發(fā) 0:低電平觸發(fā)
    IT0 = 1; //1:下沿觸發(fā) 0:低電平觸發(fā)
}
/**********************************************************************************************/


/*********************************************************************************************/*********************************************************************************************
程序名:    外部中斷程序?qū)嵗?br /> 編寫人:    liwentong 
編寫時間:  2008年3月4日
硬件支持:  STC12C2052AD 外部12MHZ晶振
接口說明:  
修改日志:  
  NO.1-                              
/*********************************************************************************************
說明:
兩個按鍵分別控制LED燈的開關(guān)。
INT0接口的按鍵按下時開燈。
INT1接口的按鍵按下時關(guān)燈。

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

#include //51頭文件

sbit     LED     =     P1 ^ 0; //定義LED燈

//注:外部中斷固定與P3.2和P3.3復用,無需定義這兩個接口。

/*********************************************************************************************
函數(shù)名:外部中斷INT初始化函數(shù)
調(diào) 用:INT_init();
參 數(shù):無
返回值:無
結(jié) 果:啟動外部中斷INT1、INT0中斷,設(shè)置中斷方式
備 注:
/**********************************************************************************************/
void INT_init (void){
    EA = 1;    //中斷總開關(guān)
    EX1 = 1; //允許外部中斷1中斷   
    EX0 = 1; //允許外部中斷0中斷
    IT1 = 1; //1:下沿觸發(fā) 0:低電平觸發(fā)
    IT0 = 1; //1:下沿觸發(fā) 0:低電平觸發(fā)
}
/**********************************************************************************************/


/*********************************************************************************************
函數(shù)名:外部中斷INT1中斷處理程序
調(diào) 用:[外部引腳INT1中斷處理]
參 數(shù):無
返回值:無
結(jié) 果:用戶處理外部中斷信號
備 注:
/**********************************************************************************************/
void INT_1 (void) interrupt 2 using 2{ //切換寄存器組到2

    LED = 1; //關(guān)燈

}   
/**********************************************************************************************/

/*********************************************************************************************
函數(shù)名:外部中斷INT0中斷處理程序
調(diào) 用:[外部引腳INT0中斷處理]
參 數(shù):無
返回值:無
結(jié) 果:用戶處理外部中斷信號
備 注:
/**********************************************************************************************/
void INT_0 (void) interrupt 0 using 2{ //切換寄存器組到2

    LED = 0; //開燈

}   
/**********************************************************************************************/

/*********************************************************************************************/
void main(void){
    INT_init(); //外部中斷初始化
    while(1){

        //其他程序

    }
}
/*********************************************************************************************/1. MCS-51通用外部中斷有2種觸發(fā)方式,分別是下降沿觸發(fā)和低電平觸發(fā)。
# 下降沿觸發(fā):電平從高電平狀態(tài)突然降低(即電壓跌落)的過程中觸發(fā)中斷。
# 低電平觸發(fā):電平處在低電平時觸發(fā)中斷,具體的電平值因電路不同而有差異。
# 低電平觸發(fā)與下降沿觸發(fā)的區(qū)別是下降沿觸發(fā)是一有跌落馬上觸發(fā),而低電平觸發(fā)是跌落到低電平的閥值時(一般為0.8V)才觸發(fā)。

2. 當進入外部中斷處理程序時,系統(tǒng)會關(guān)閉其他中斷觸發(fā),在中斷處理程序中外部中斷接口只能做I/O接口使用,不可嵌套中斷。

可將其模板下載到本地硬盤,在編寫新程序的時候復制、粘貼到工程當中,然后根據(jù)情況寫入具體內(nèi)容
函數(shù)名:外部中斷INT1中斷處理程序
調(diào) 用:[外部引腳INT1中斷處理]
參 數(shù):無
返回值:無
結(jié) 果:用戶處理外部中斷信號
備 注:
/**********************************************************************************************/
void INT1 (void) interrupt 2 using 2{ //切換寄存器組到2

    //用戶函數(shù)內(nèi)容

}   
/**********************************************************************************************/

/*********************************************************************************************
函數(shù)名:外部中斷INT0中斷處理程序
調(diào) 用:[外部引腳INT0中斷處理]
參 數(shù):無
返回值:無
結(jié) 果:用戶處理外部中斷信號
備 注:
/**********************************************************************************************/
void INT0 (void) interrupt 0 using 2{ //切換寄存器組到2

    //用戶函數(shù)內(nèi)容

}   
/**********************************************************************************************/
作者: mmla    時間: 2010-11-3 19:46
謝謝
作者: chenmi    時間: 2010-11-16 13:45
好東西
作者: dy031    時間: 2010-11-23 12:39
哈哈,好東西
作者: bbcc1887    時間: 2010-11-25 16:10
不錯




歡迎光臨 電子工程網(wǎng) (http://m.4huy16.com/) Powered by Discuz! X3.4