找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 5942|回復: 8
打印 上一主題 下一主題
收起左側(cè)

51單片機外部中斷一個尷尬的問題,2種方式如何區(qū)分?

[復制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:275111 發(fā)表于 2018-9-28 09:51 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
使用了外部中斷1,觸發(fā)方式選的是1,下降沿;結(jié)果發(fā)現(xiàn)和0,低電平?jīng)]啥區(qū)別。
就是中斷里關閉PWM。
有2點疑問,請大神們指導:
1,我怎么去測量究竟是那種觸發(fā)方式?
2,它們真的有區(qū)別嗎?(個人理解是都是給1個信號,把中斷打開就行了)
3,它們是不是從持續(xù)時間長短來判斷是 “跳水一次”還是“一直在水里”?
4,我發(fā)現(xiàn)(不知道是不是問題?)把那個有中斷的I/O口 初始化 設置成 高電平,會有時靈,有時不靈?     (軟件還是硬件有問題?)
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發(fā)
ID:7485 發(fā)表于 2018-9-28 11:10 | 只看該作者
本帖最后由 ahshmj 于 2018-9-28 11:11 編輯

區(qū)別肯定是有的。下降沿觸發(fā):比如你的外部中斷引腳一直處于低電平狀態(tài)是不會產(chǎn)生中斷的。這時如果你給引腳一個高電平并一直保持,也不會產(chǎn)生中斷。只有等高電平消失的瞬間,也就是從高電平到底電平的變化的瞬間才會產(chǎn)生一次中斷。
而低電平觸發(fā),則是只要是低電平就可以觸發(fā)中斷,中斷程序執(zhí)行完成后,再次檢測到引腳仍然是低電平就會再次產(chǎn)生中斷。

評分

參與人數(shù) 1黑幣 +30 收起 理由
admin + 30 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

板凳
ID:387733 發(fā)表于 2018-9-28 12:02 | 只看該作者
     經(jīng)典51單片機的外部中斷方式0低電平,1下降沿,但是低電平因為會重復觸發(fā)中斷,很少被使用。
     現(xiàn)在STC的單片機已經(jīng)把低電平觸發(fā)改成了上升,下降沿都觸發(fā)。當ITx=0,那么系統(tǒng)在相應引腳探測到上升沿或下降沿都可產(chǎn)生中斷,當ITx=1時,只有下降沿才可產(chǎn)生中斷。
     所以在使用自己不熟悉的單片機之前,最好是下載相應的資料查看一下,不能僅憑經(jīng)驗。

評分

參與人數(shù) 1黑幣 +40 收起 理由
admin + 40 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

地板
ID:279667 發(fā)表于 2018-9-28 12:30 | 只看該作者
低電平觸發(fā)和下降沿觸發(fā)還是有區(qū)別的。低電平觸發(fā)是在檢測到低電平時,會觸發(fā)中斷,而下降沿觸發(fā)則是在由高電平變換到低電平時進行邊沿檢測時觸發(fā)中斷。觸發(fā)條件是不一樣的。

評分

參與人數(shù) 1黑幣 +40 收起 理由
admin + 40 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

5#
ID:403558 發(fā)表于 2018-9-28 13:04 | 只看該作者
下降沿是1變0才出觸發(fā),低電平是只要是0就觸發(fā)?隙ㄊ遣灰粯拥
回復

使用道具 舉報

6#
ID:275111 發(fā)表于 2018-9-28 14:36 | 只看該作者
sxhwdz 發(fā)表于 2018-9-28 12:02
經(jīng)典51單片機的外部中斷方式0低電平,1下降沿,但是低電平因為會重復觸發(fā)中斷,很少被使用。
     現(xiàn) ...

贊一個。你說的意思我有點明白了。
回復

使用道具 舉報

7#
ID:275111 發(fā)表于 2018-9-29 09:44 | 只看該作者
ahshmj 發(fā)表于 2018-9-28 11:10
區(qū)別肯定是有的。下降沿觸發(fā):比如你的外部中斷引腳一直處于低電平狀態(tài)是不會產(chǎn)生中斷的。這時如果你給引腳 ...

非常感謝。一直以為低電平也是就一下,不過就是持續(xù)時間長而已。
回復

使用道具 舉報

8#
ID:362076 發(fā)表于 2018-10-6 17:35 | 只看該作者
二樓的ahshmj說的最貼切,我再多啰嗦一下。單片機是一個處理和計算的中心,中斷是對外界的狀態(tài)給予即刻響應的一種途徑,但是外界的情況千變?nèi)f化,原本不是一個電平可以描述的,所以,對于只有二進制0和1兩種狀態(tài)的單片機來說,就需要進行具體的判斷,中斷的觸發(fā)可以理解為對外界電平變化的特征值獲取,而后在中斷服務函數(shù)中查看和處理,判斷這個變化是否是有效的,進而做出動作。
電平的變化方式多種多樣,高低電平、上升沿、下降沿、正負脈沖是主要的方式,ahshmj說的一種情況是這樣:假如外部中斷連接的設備在上電的時候是高電平,正常工作之后會變?yōu)榈碗娖,那么單片機檢測這個電平變化就可以知道該設備狀態(tài)的變化,從而在中斷中進行處理、記錄、重啟設備等等操作。這個時候外部中斷的觸發(fā)方式就尤為重要了。

評分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

9#
ID:275111 發(fā)表于 2018-10-8 13:21 | 只看該作者
凌凈清河 發(fā)表于 2018-10-6 17:35
二樓的ahshmj說的最貼切,我再多啰嗦一下。單片機是一個處理和計算的中心,中斷是對外界的狀態(tài)給予即刻響應 ...

謝謝高人。
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表