<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > MCS51單片機邊沿觸發(fā)中斷響應時(shí)刻的測量

MCS51單片機邊沿觸發(fā)中斷響應時(shí)刻的測量

作者: 時(shí)間:2011-09-16 來(lái)源:網(wǎng)絡(luò ) 收藏
系列屬于8位單片機,它是Intel公司繼MCS48系列的成功設計之后,于1980年推出的產(chǎn)品。由于MCS51系列具有很強的片內功能和指令系統,因而使單片機的應用發(fā)生了一個(gè)飛躍,這個(gè)系列的產(chǎn)品也很快成為世界上第二代的標準控制器。51系列單片機有5個(gè)中斷源,其中有2個(gè)是外部輸入中斷源INT0和INT1??捎芍袛嗫刂萍拇嫫鱐CON的IT1(TCON.2)和IT0(TCON.1)分別控制外部輸入中斷1和中斷0的中斷觸發(fā)方式。若為0,則外部輸入中斷控制為電平觸發(fā)方式;若為1,則控制為方式。這里是下降沿觸發(fā)中斷。   
1問(wèn)題的引出
  
幾乎國內所有的單片機資料對單片機中斷的響應時(shí)刻方面的定義都是不明確的或者是錯誤的。例如文獻[1]中關(guān)于時(shí)刻的描述為“對于脈沖觸發(fā)方式(即邊沿觸發(fā)方式)要檢測兩次電平,若前一次為高電平,后一次為低電平,則表示檢測到了負跳變的有效中斷請求信號”,但實(shí)際情況卻并非如此。
  
我們知道,單片機外部輸入的中斷觸發(fā)電平是TTL電平。對于TTL電平,TTL邏輯門(mén)輸出高電平的允許范圍為2.4~5 V,其標稱(chēng)值為3.6 V;輸出低電平的允許范圍為0~0.7 V,其標稱(chēng)值為0.3 V[2],在0.7 V與2.4 V之間的是非高非低的中間電平。
  
這樣,在實(shí)際應用中,假設單片機外部中斷引腳INT0輸入一路由+5 V下降到0 V的下降沿信號,單片機在某個(gè)時(shí)鐘周期采樣INT0引腳得到2.4 V的高電平;而在下一個(gè)時(shí)鐘周期到來(lái)進(jìn)行采樣時(shí),由于實(shí)際的外部輸入中斷觸發(fā)信號由高電平變?yōu)榈碗娖酵枰欢ǖ臅r(shí)間,因此,檢測到的可能并非真正的低電平(小于0.7 V),而是處于低電平與高電平之間的某一中間電平,即0.7~2.4 V的某一電平。對于這種情況,單片機是否會(huì )依然置位中斷觸發(fā)標志從而引發(fā)中斷呢?關(guān)于這一點(diǎn),國內的絕大部分教材以及單片機生產(chǎn)商提供的器件資料都沒(méi)有給予準確的定義,但在實(shí)際應用中這種情況確實(shí)會(huì )碰到。
  
以美國Analog公司生產(chǎn)的運算放大器芯片AD708為例,其轉換速率(slew rate)為0.3 V/μs,在由AD708芯片組成的比較器電路中,其輸出方波的下降沿由2.4 V下降到0.7 V,所需時(shí)間約為: (2.4 V-0.7 V)/0.3V·μs-1=4.67 μs。即需要約4.67 μs的過(guò)渡時(shí)間,下降沿才真正地由高電平下降為低電平,在實(shí)際應用電路中,這個(gè)下降時(shí)間往往可達10 μs以上。對于精密的測量系統,這么長(cháng)的不確定時(shí)間是無(wú)法接受的,因此,有必要對單片機邊沿中斷觸發(fā)時(shí)刻進(jìn)行精確的測定。
  
2測試波形的設計與分析
  
為了測定下降沿觸發(fā)的實(shí)際時(shí)刻,使用Agilent公司生產(chǎn)的型號為33250A的80 MHz函數/任意波形發(fā)生器(function/arbitrary waveform generator),產(chǎn)生出如圖1所示的周期為20 ms的周期波形。

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

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

MCS51單片機邊沿觸發(fā)中斷響應時(shí)刻的測量

圖2建立的直角坐標設

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

MCS51單片機邊沿觸發(fā)中斷響應時(shí)刻的測量

  
求得L1方程為:

MCS51單片機邊沿觸發(fā)中斷響應時(shí)刻的測量

  
求得L2方程為:

MCS51單片機邊沿觸發(fā)中斷響應時(shí)刻的測量

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

MCS51單片機邊沿觸發(fā)中斷響應時(shí)刻的測量

  
將以上波形由單片機外部中斷0輸入,選擇邊沿觸發(fā)方式,通過(guò)中斷服務(wù)程序測取T1或者T2的值,從而可求出中斷發(fā)生時(shí)刻的電平值y′,即邊沿觸發(fā)中斷的實(shí)際時(shí)刻。
  
在使用單片機對中斷時(shí)刻進(jìn)行測量時(shí),使用兩個(gè)計數器,均設為方式1(16位計數方式)。其中,第一個(gè)計數器用于記錄從程序開(kāi)始執行到第一個(gè)下降沿到來(lái)所經(jīng)歷的時(shí)間,第二個(gè)計數器用來(lái)記錄程序開(kāi)始執行到第二個(gè)下降沿到來(lái)所經(jīng)歷的時(shí)間,將兩個(gè)計數器的計數值相減便可以得到兩個(gè)下降沿之間的時(shí)間間隔。由前面的分析可知,該時(shí)間間隔可能有兩種情況: 一種是T1時(shí)間,即t1′與t2′之間的時(shí)間間隔;另一種是T2時(shí)間,即t2′與t3′之間的時(shí)間間隔。其中,T1+T2=T,T1時(shí)間要小于T2時(shí)間。通過(guò)測量得到T1或者T2時(shí)間,利用式(4)便可求得下降沿觸發(fā)中斷時(shí)刻的實(shí)際電平。
  
3測試流程和相應的單片機程序
  
該單片機的中斷服務(wù)程序流程如圖3所示。

圖3中斷服務(wù)程序流程

相應的中斷服務(wù)程序為:

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

  
由于程序執行有一定的延時(shí),在中斷返回后,還需對兩個(gè)計數器的輸出值進(jìn)行校正。本實(shí)驗采用偉福公司生產(chǎn)的H51/L仿真器為單片機測量系統,測得T1值為6.514 ms,由式(4)可得:y′=0.729 V,即當y′約為0.73 V時(shí),單片機下降沿觸發(fā)中斷。
  
4結論
  
本文通過(guò)設計一簡(jiǎn)單的波形,對單片機的邊沿觸發(fā)時(shí)刻進(jìn)行了準確的測量,從而糾正了國內單片機學(xué)習資料在邊沿觸發(fā)中斷時(shí)刻方面的不明確定義,且最終結果經(jīng)過(guò)了實(shí)驗驗證。


評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>