欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標(biāo)題: STM32中外部中斷與外部事件 [打印本頁]

作者: daming    時(shí)間: 2014-12-29 23:58
標(biāo)題: STM32中外部中斷與外部事件

    這張圖是一條外部中斷線或外部事件線的示意圖,圖中信號(hào)線上劃有一條斜線,旁邊標(biāo)志19字樣的注釋,表示這樣的線路共有19套。

    圖中的藍(lán)色虛線箭頭,標(biāo)出了外部中斷信號(hào)的傳輸路徑,首先外部信號(hào)從編號(hào)1的芯片管腳進(jìn)入,經(jīng)過編號(hào)2的邊沿檢測電路,通過編號(hào)3的或門進(jìn)入中斷“掛起 請(qǐng)求寄存器”,最后經(jīng)過編號(hào)4的與門輸出到NVIC中斷控制器;在這個(gè)通道上有4個(gè)控制選項(xiàng),外部的信號(hào)首先經(jīng)過邊沿檢測電路,這個(gè)邊沿檢測電路受上升沿或下降沿選擇寄存器控制,用戶可以使用這兩個(gè)寄存器控制需要哪一個(gè)邊沿產(chǎn)生中斷,因?yàn)檫x擇上升沿或下降沿是分別受2個(gè)平行的寄存器控制,所以用戶可以同時(shí)選擇上升沿或下降沿,而如果只有一個(gè)寄存器控制,那么只能選擇一個(gè)邊沿了。

    接下來是編號(hào)3的或門,這個(gè)或門的另一個(gè)輸入是“軟件中斷/事件寄存器”,從這里可以看出,軟件可以優(yōu)先于外部信號(hào)請(qǐng)求一個(gè)中斷或事件,既當(dāng)“軟件中斷/事件寄存器”的對(duì)應(yīng)位為“1”時(shí),不管外部信號(hào)如何,編號(hào)3的或門都會(huì)輸出有效信號(hào)。

    一個(gè)中斷或事件請(qǐng)求信號(hào)經(jīng)過編號(hào)3的或門后,進(jìn)入掛起請(qǐng)求寄存器,到此之前,中斷和事件的信號(hào)傳輸通路都是一致的,也就是說,掛起請(qǐng)求寄存器中記錄了外部信號(hào)的電平變化。

    外部請(qǐng)求信號(hào)最后經(jīng)過編號(hào)4的與門,向NVIC中斷控制器發(fā)出一個(gè)中斷請(qǐng)求,如果中斷屏蔽寄存器的對(duì)應(yīng)位為“0”,則該請(qǐng)求信號(hào)不能傳輸?shù)脚c門的另一端,實(shí)現(xiàn)了中斷的屏蔽。

    明白了外部中斷的請(qǐng)求機(jī)制,就很容易理解事件的請(qǐng)求機(jī)制了。圖中紅色虛線箭頭,標(biāo)出了外部事件信號(hào)的傳輸路徑,外部請(qǐng)求信號(hào)經(jīng)過編號(hào)3的或門后,進(jìn)入編 號(hào)5的與門,這個(gè)與門的作用與編號(hào)4的與門類似,用于引入事件屏蔽寄存器的控制;最后脈沖發(fā)生器把一個(gè)跳變的信號(hào)轉(zhuǎn)變?yōu)橐粋(gè)單脈沖,輸出到芯片中的其它功 能模塊。

    在這張圖上我們也可以知道,從外部激勵(lì)信號(hào)來看,中斷和事件是沒有分別的,只是在芯片內(nèi)部分開,一路信號(hào)會(huì)向CPU產(chǎn)生中斷請(qǐng)求,另一路信號(hào)會(huì)向其它功能模塊發(fā)送脈沖觸發(fā)信號(hào),其它功能模塊如何相應(yīng)這個(gè)觸發(fā)信號(hào),則由對(duì)應(yīng)的模塊自己決定。

    在圖上部的APB總線和外設(shè)模塊接口,是每一個(gè)功能模塊都有的部分,CPU通過這樣的接口訪問各個(gè)功能模塊,這里就不再贅述了。


--------------------------------------------------------


總結(jié):

      (1) 事件是中斷的觸發(fā)源,開放了對(duì)應(yīng)的中斷屏蔽位,則事件可以觸發(fā)相應(yīng)的中斷。

      (2) 事件還是其它一些操作的觸發(fā)源,比如DMA, ADC ,還有TIM中影子寄存器的傳遞與更新;而中斷是不能觸發(fā)這些操作的,所以要把事件與中斷區(qū)分開。


      (3) 在STM32中,中斷與事件不是等價(jià)的,一個(gè)中斷肯定對(duì)應(yīng)一個(gè)事件,但一個(gè)事件不一定對(duì)應(yīng)一個(gè)中斷。





歡迎光臨 (http://m.raoushi.com/bbs/) Powered by Discuz! X3.1