新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 51單片機 中斷1中斷整體介紹

        51單片機 中斷1中斷整體介紹

        作者: 時間:2016-11-19 來源:網絡 收藏
        簡單介紹--[高手繞過這一段;心急的直接跳到下一部份]

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

        >_<:51單片機上的應用[應用控制篇]

        >_<:MCS51的中斷

        外部中斷請求源:即外部中斷0 和1,經由外部引腳引入,在單片機上有兩個引腳,外稱為INT0、INT1,也就是P3.2、P3.3這兩個引腳

        >_<:MCS51的中斷向量表

        單片機內部的中斷模塊在每個CPU周期都查詢各個中斷源的狀態,當其發生預期的中斷事件時,通知CPU將程序跳轉到中斷服務程序所在的程序存儲器(ROM)地址。該地址稱為中斷向量。

        中斷的實質仍然是查詢,只是不需要用戶程序查詢,不占用CPU運行時間而已。

        51系列只有5個中斷向量,5X系列還增加一個定時器2的中斷向量

        ——————————————————————————————
        地址中斷入口 中斷編號
        ——————————————————————————————
        0x0 復位
        0x3 外部中斷00
        0xB 定時器01
        0x0013 外部中斷1 2
        0x001B 定時器1 3
        0x0023 串口4
        0x002B 定時器2(5x系列新增的) 5
        ——————————————————————————————

        >_<:MCS51中斷運行的機里

        以INT0為例:中斷模塊在每個CPU時鐘周期都查詢P3.2的狀態,當輸入的電平由高電平變為低電平時,CPU的程序運行會立即跳轉的到地址0x03。處理INT0中斷的代碼放在地址為0x03開始的ROM區域。c語言中采用一類特殊的函數來實現此代碼定位的功能,叫做 中斷服務函數,格式如下:

        void 函數名()interrupt N

        函數名可以任意,但一般要用一個有意義的函數名,N代表中斷向量編號。

        >_<:中斷控制寄存器IE

        MCS51中斷系統中,中斷的允許或禁止是由片內可以進行位尋址的8位中斷允許寄存器IE來控制的。

        EX0 :外中斷0中斷允許

        ET0 :定時器0中斷允許

        EX1 :外中斷1中斷允許

        ET1 :定時器1中斷允許

        ES :串行口中斷允許

        ET2 :定時器2中斷允許

        EA :是總開關,若為0,則所有中斷都不允許。

        >_<:中斷標志及外部中斷方式選擇寄存器 TCON

        IT0 :INT0觸發方式控制位,邊沿/電平觸發模式

        IE0 :INT0中斷請標志,

        IT1 :同上

        IE1 :同上

        TF0 :定時器/計數器0的溢出中斷標志

        TF1 :定時器/計數器1的溢出中斷標志

        >_<:外部中斷的2種觸發模式

        觸發模式由IT0和IT1控制。

        1)邊沿觸發:IT0(IT1)=1,INT0(INT1)為邊沿觸發方式。如果一個周期中采樣到高電平,下個周期中采樣到低電平,則硬件使IE0(IE1)置1,向CPU請求中斷。

        2)電平觸發:IT0(IT1)=0,INT0(INT1)為電平觸發方式。此時外部中斷是通過檢測P3.2(P3.3)腳的輸入電平(低電平)來觸發的。采用電平觸發時,輸入腳的外部中斷源必須保持低電平有效,直到該中斷被響應。同時在中斷返回前必須使用電平變高,否則將會再次產生中斷。

        一般采用邊沿觸發方式,因為此模式抗干擾能力較強,極少采用電平觸發模式。



        關鍵詞: 51單片機中

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 都匀市| 固阳县| 贞丰县| 广元市| 隆德县| 观塘区| 寿宁县| 罗定市| 文山县| 临洮县| 雅江县| 通州区| 无极县| 江永县| 汝城县| 锦州市| 麟游县| 辉南县| 大厂| 日照市| 五峰| 通许县| 蚌埠市| 永善县| 金华市| 汉阴县| 上虞市| 民权县| 来宾市| 文化| 隆林| 平安县| 榆树市| 乌拉特前旗| 黄浦区| 平顶山市| 马关县| 务川| 灵武市| 马山县| 庆云县|