日韩床上生活一级视频|能看毛片的操逼网站|色悠悠网站在线观看视频|国产免费观看A淫色免费|国产av久久久久久久|免费A级视频美女网站黄|国产毛片av日韩小黄片|热久久免费国产视频|中文字幕无码色色|成人在线视频99久久久

機電之家資源網
單片機首頁|單片機基礎|單片機應用|單片機開發(fā)|單片機文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發(fā)
培訓信息
贊助商
51單片機邊沿觸發(fā)中斷響應時刻的測量分析
51單片機邊沿觸發(fā)中斷響應時刻的測量分析
 更新時間:2009-10-20 14:25:43  點擊數:0
【字體: 字體顏色
MCS51單片機系列屬于8位單片機,它是Intel公司繼MCS48系列的成功設計之后,于1980年推出的產品。由于MCS51系列具有很強的片內功能和指令系統,因而使單片機的應用發(fā)生了一個飛躍,這個系列的產品也很快成為世界上第二代的標準控制器。51系列單片機有5個中斷源,其中有2個是外部輸入中斷源INT0和INT1?捎芍袛嗫刂萍拇嫫鱐CON的IT1(TCON.2)和IT0(TCON.1)分別控制外部輸入中斷1和中斷0的中斷觸發(fā)方式。若為0,則外部輸入中斷控制為電平觸發(fā)方式;若為1,則控制為邊沿觸發(fā)方式。這里是下降沿觸發(fā)中斷。

1  問題的引出

  幾乎國內所有的單片機資料對單片機邊沿觸發(fā)中斷的響應時刻方面的定義都是不明確的或者是錯誤的。例如文獻[1]中關于邊沿觸發(fā)中斷響應時刻的描述為“對于脈沖觸發(fā)方式(即邊沿觸發(fā)方式)要檢測兩次電平,若前一次為高電平,后一次為低電平,則表示檢測到了負跳變的有效中斷請求信號”,但實際情況卻并非如此。

  我們知道,單片機外部輸入的中斷觸發(fā)電平是TTL電平。對于TTL電平,TTL邏輯門輸出高電平的允許范圍為2.4~5 V,其標稱值為3.6 V;輸出低電平的允許范圍為0~0.7 V,其標稱值為0.3 V[2],在0.7 V與2.4 V之間的是非高非低的中間電平。

  這樣,在實際應用中,假設單片機外部中斷引腳INT0輸入一路由+5 V下降到0 V的下降沿信號,單片機在某個時鐘周期采樣INT0引腳得到2.4 V的高電平;而在下一個時鐘周期到來進行采樣時,由于實際的外部輸入中斷觸發(fā)信號由高電平變?yōu)榈碗娖酵枰欢ǖ臅r間,因此,檢測到的可能并非真正的低電平(小于0.7 V),而是處于低電平與高電平之間的某一中間電平,即0.7~2.4 V的某一電平。對于這種情況,單片機是否會依然置位中斷觸發(fā)標志從而引發(fā)中斷呢?關于這一點,國內的絕大部分教材以及單片機生產商提供的器件資料都沒有給予準確的定義,但在實際應用中這種情況確實會碰到。

  以美國Analog公司生產的運算放大器芯片AD708為例,其轉換速率(slew rate)為0.3 V/μs,在由AD708芯片組成的比較器電路中,其輸出方波的下降沿由2.4 V下降到0.7 V,所需時間約為: (2.4 V-0.7 V)/0.3V·μs-1=4.67 μs。即需要約4.67 μs的過渡時間,下降沿才真正地由高電平下降為低電平,在實際應用電路中,這個下降時間往往可達10 μs以上。對于精密的測量系統,這么長的不確定時間是無法接受的,因此,有必要對單片機邊沿中斷觸發(fā)時刻進行精確的測定。

2  測試波形的設計與分析

  為了測定MCS51單片機下降沿觸發(fā)的實際時刻,使用Agilent公司生產的型號為33250A的80 MHz函數/任意波形發(fā)生器(function/arbitrary waveform generator),產生出如圖1所示的周期為20 ms的周期波形。


圖1  周期為20 ms的周期波形

  將該波形通過單片機的外部中斷0輸入,可以測出下降沿中斷觸發(fā)的實際時刻,下面對該波形進行具體分析。建立如圖2所示的直角坐標。


圖2  建立的直角坐標設

  圖2所示波形的周期為T,單片機在電壓下降到y=y′時刻觸發(fā)中斷,t1′、t2′、t3′分別為前后周期的中斷觸發(fā)時刻,則有:

求得L1方程為:

求得L2方程為:

  由圖2所示的電路及式(1)、式(2)、式(3),可求得:

  將以上波形由單片機外部中斷0輸入,選擇邊沿觸發(fā)方式,通過中斷服務程序測取T1或者T2的值,從而可求出中斷發(fā)生時刻的電平值y′,即邊沿觸發(fā)中斷的實際時刻。

  在使用單片機對中斷時刻進行測量時,使用兩個計數器,均設為方式1(16位計數方式)。其中,第一個計數器用于記錄從程序開始執(zhí)行到第一個下降沿到來所經歷的時間,第二個計數器用來記錄程序開始執(zhí)行到第二個下降沿到來所經歷的時間,將兩個計數器的計數值相減便可以得到兩個下降沿之間的時間間隔。由前面的分析可知,該時間間隔可能有兩種情況:一種是T1時間,即t1′與t2′之間的時間間隔;另一種是T2時間,即t2′與t3′之間的時間間隔。其中,T1+T2=T,T1時間要小于T2時間。通過測量得到T1或者T2時間,利用式(4)便可求得下降沿觸發(fā)中斷時刻的實際電平。

3  測試流程和相應的單片機程序

  該單片機的中斷服務程序流程如圖3所示。


圖3  中斷服務程序流程

  相應的中斷服務程序為:

    INCR1
    MOVA,R1
    CJNEA,#01H,SEC
    CLRTR0
    MOV20H,TL0
    MOV21H,TH0
    CLRIE0
    RETI
  SEC:CLRTR1
    MOV22H,TL1
    MOV23H,TH1
    CLREX1
    CLREX0
    RETI

  由于程序執(zhí)行有一定的延時,在中斷返回后,還需對兩個計數器的輸出值進行校正。本實驗采用偉福公司生產的H51/L仿真器為單片機測量系統,測得T1值為6.514 ms,由式(4)可得:y′=0.729 V,即當y′約為0.73 V時,單片機下降沿觸發(fā)中斷。

4  結論

  本文通過設計一簡單的波形,對單片機的邊沿觸發(fā)中斷響應時刻進行了準確的測量,從而糾正了國內單片機學習資料在邊沿觸發(fā)中斷時刻方面的不明確定義,且最終結果經過了實驗驗證。

參考文獻

[1]  梅麗鳳,等.單片機原理及接口技術. 北京:清華大學出版社,2004.
[2]  曹漢房.數字電路與邏輯設計. 武漢:華中科技大學出版社,2004.
[3]  白駒衍,雷曉平. 單片計算機原理及其應用. 成都:電子科技大學出版社,1997.

王朋(碩士),主要研究方向為自動測試與系統;
李智(教授),主要研究方向為虛擬儀器與系統、自動測試總線與系統

  • 上一篇: 編寫基于單片機的寬音域高音準音樂程序
  • 下一篇: 沒有了
  • 發(fā)表評論   告訴好友   打印此文  收藏此頁  關閉窗口  返回頂部
    熱點文章
     
    推薦文章
     
    相關文章
    網友評論:(只顯示最新5條。)
    關于我們 | 聯系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機電之家 | 會員助手 | 免費鏈接

    點擊這里給我發(fā)消息66821730(技術支持)點擊這里給我發(fā)消息66821730(廣告投放) 點擊這里給我發(fā)消息41031197(編輯) 點擊這里給我發(fā)消息58733127(審核)
    本站提供的機電設備,機電供求等信息由機電企業(yè)自行提供,該企業(yè)負責信息內容的真實性、準確性和合法性。
    機電之家對此不承擔任何保證責任,有侵犯您利益的地方請聯系機電之家,機電之家將及時作出處理。
    Copyright 2007 機電之家 Inc All Rights Reserved.機電之家-由機電一體化網更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術支持

    主辦:杭州市高新區(qū)(濱江)機電一體化學會
    中國行業(yè)電子商務100強網站

    網站經營許可證:浙B2-20080178-1