0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

聊聊一個關(guān)于TIMER事件觸發(fā)中斷的響應(yīng)話題

茶話MCU ? 來源:茶話MCU ? 2024-04-28 09:44 ? 次閱讀

這里有個關(guān)于TIMER事件觸發(fā)中斷的響應(yīng)話題,我們一起聊聊。

情況是這樣的,現(xiàn)在使用STM32G4系列的TIM8,工作在中心對齊計數(shù),單脈沖PWM模式,使用內(nèi)部系統(tǒng)時鐘做時鐘源,計數(shù)時不做分頻,即PSC=0。CH1做PWM輸出。

啟動時計數(shù)器從0開始計數(shù),與RCR對應(yīng)的計數(shù)器值為3。請問在0~ARR范圍內(nèi)調(diào)整CCR1的值時,整個工作周期內(nèi)進入基于比較事件的中斷響應(yīng)次數(shù)可能是下面哪些選項?

A:1 B:2 C:3 D:4 E:0

要回答上面問題,我們需厘清或注意幾個小細節(jié)。

第一,這里只說采用中心對齊計數(shù)模式,實際上STM32 TIMER的中心對齊計數(shù)有三種模式,其模式1只有在向下計數(shù)過程中發(fā)生計數(shù)器與CCR值匹配時才產(chǎn)生比較事件并可以觸發(fā)中斷或DMA。見下圖示意。閃電箭頭表示發(fā)生比較事件。

7244d2a4-044b-11ef-a297-92fbcf53809c.png

而中心對齊計數(shù)模式2只有在向上計數(shù)過程中發(fā)生計數(shù)器與CCR值匹配時才產(chǎn)生比較事件并可以觸發(fā)中斷或DMA。見下圖示意。閃電箭頭表示發(fā)生比較事件。

726162ca-044b-11ef-a297-92fbcf53809c.png

中心對齊計數(shù)模式3則在向上和向下計數(shù)過程中發(fā)生計數(shù)器與CCR值匹配時都可以產(chǎn)生比較事件并觸發(fā)中斷或DMA。見下圖示意。閃電箭頭表示發(fā)生比較事件。

72832860-044b-11ef-a297-92fbcf53809c.png

第二,這里提到RCR=3和單脈沖模式。意味著從啟動開始到計數(shù)停止。計數(shù)器剛好工作2個完整的計數(shù)周期,因為RCR=3對應(yīng)4次計數(shù)溢出,4次溢出后產(chǎn)生更新事件并停止計數(shù)。

72a5ba10-044b-11ef-a297-92fbcf53809c.png

顯然,這里結(jié)合第一點的提醒,我們不難得出可能發(fā)生的比較事件及相應(yīng)中斷響應(yīng)次數(shù)的情況。不過,我這里還有第3點提醒。

第三,條件里說CCR在0~ARR范圍變動,我們有必要對CCR=0和CCR=ARR時情況結(jié)合不同中心對齊計數(shù)模式來考慮。

第四,條件里對ARR和CCR的值并未具體說明,中斷響應(yīng)持續(xù)時間也未明確出來,這些會不會增加其它可能性呢?

那么以你的理解,結(jié)合開篇的條件和上面提醒,你認為可能出現(xiàn)哪些情形呢?即基于TIMER比較事件可能發(fā)生幾次中斷響應(yīng)?或者說可能進入幾次比較中斷服務(wù)程序?



審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • STM32
    +關(guān)注

    關(guān)注

    2263

    文章

    10848

    瀏覽量

    353820
  • 計數(shù)器
    +關(guān)注

    關(guān)注

    32

    文章

    2248

    瀏覽量

    94185
  • 觸發(fā)中斷
    +關(guān)注

    關(guān)注

    0

    文章

    11

    瀏覽量

    6553
  • PWM輸出
    +關(guān)注

    關(guān)注

    1

    文章

    66

    瀏覽量

    5110

原文標題:一個基于TIMER事件的中斷響應(yīng)話題

文章出處:【微信號:stmcu832,微信公眾號:茶話MCU】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    一個GPIO如何配置成外部中斷觸發(fā)

    1STM32中斷分組STM32 的每一個GPIO都能配置成外部中斷觸發(fā)源,這點也是 STM3
    的頭像 發(fā)表于 01-25 08:44 ?1.6w次閱讀
    每<b class='flag-5'>一個</b>GPIO如何配置成<b class='flag-5'>一</b><b class='flag-5'>個</b>外部<b class='flag-5'>中斷</b><b class='flag-5'>觸發(fā)</b>源

    利用TIMER事件和棧幀體驗中斷響應(yīng)

    對于這幾個中斷響應(yīng)的概念,我們是否可以比較直觀地感受下呢?
    的頭像 發(fā)表于 11-05 16:45 ?769次閱讀
    利用<b class='flag-5'>TIMER</b>事件和棧幀體驗<b class='flag-5'>中斷</b><b class='flag-5'>響應(yīng)</b>

    聊聊TIMER事件觸發(fā)中斷響應(yīng)話題

    情況是這樣的,現(xiàn)在使用STM32G4系列的TIM8,工作在中心對齊計數(shù),PWM單脈沖模式,使用內(nèi)部系統(tǒng)時鐘做時鐘源,計數(shù)時不做分頻,即PSC=0。CH2做PWM輸出。
    的頭像 發(fā)表于 05-06 16:07 ?810次閱讀
    <b class='flag-5'>聊聊</b><b class='flag-5'>TIMER</b>事件<b class='flag-5'>觸發(fā)</b><b class='flag-5'>中斷</b>的<b class='flag-5'>響應(yīng)</b><b class='flag-5'>話題</b>

    請問28027用timer0觸發(fā)ADC,無法進入timer0中斷是為什么?如何解決?

    本帖最后由 只耳朵怪 于 2018-6-14 11:15 編輯 單獨用timer0能夠進入中斷,在中斷中我設(shè)置了
    發(fā)表于 06-14 00:10

    TM4C,TIMER觸發(fā)ADC配制方法直進不去中斷

    TIMER觸發(fā)ADC配制方法直進不去中斷,麻煩看看有沒有問題呢,用ADC_TRIGGER_PROCESSOR方式可以進中斷,ADC_TRI
    發(fā)表于 08-14 07:33

    請問F28377S調(diào)用多個中斷時為什么只能響應(yīng)個中斷

    采用F28377S芯片,調(diào)用INT1.1和INT1.7兩個中斷,如果兩都打開,卻只能響應(yīng)INT1.7,即TIMER0,只有關(guān)閉了INT1.7,才能
    發(fā)表于 11-30 15:10

    觸發(fā)中斷時會調(diào)用對應(yīng)的中斷函數(shù)

    觸發(fā)中斷時會調(diào)用對應(yīng)的中斷函數(shù) 例如定時器2中斷: TIM2_IRQHandler(void) HAL 庫中對中斷的類型進行了分類處理,每
    發(fā)表于 08-13 07:58

    Linux中斷(interrupt)子系統(tǒng)之:軟件中斷(softIRQ)

    軟件中斷(softIRQ)是內(nèi)核提供的種延遲執(zhí)行機制,它完全由軟件觸發(fā),雖然說是延遲機制,實際上,在大多數(shù)情況下,它與普通進程相比,能得到更快的響應(yīng)時間。軟
    發(fā)表于 05-13 10:33 ?1250次閱讀

    聊聊關(guān)于架構(gòu)的話題

     技術(shù)需要架構(gòu),芯片的架構(gòu),軟件需要架構(gòu),公司需要架構(gòu),建筑需要架構(gòu),產(chǎn)品需要架構(gòu),人也需要架構(gòu),聊聊架構(gòu)的話題
    的頭像 發(fā)表于 09-28 02:48 ?2184次閱讀

    C51單片機外部中斷觸發(fā)方式

    中斷后,會硬件將IE清0(IE=0),但是不會取消掉外部中斷引腳的低電平,因此需要硬件加軟件清除低電平(p133)2. 下降沿觸發(fā)方式 ○ CPU采樣外部中斷的引腳電平 ○ 如果
    發(fā)表于 11-19 12:06 ?90次下載
    C51單片機外部<b class='flag-5'>中斷</b>的<b class='flag-5'>觸發(fā)</b>方式

    "外部中斷----高低電平觸發(fā),(邊沿觸發(fā))上升沿觸發(fā)和下降沿觸發(fā)區(qū)別"

    外部中斷可以分為電平觸發(fā)和邊緣觸發(fā)兩種,那么這兩種中斷有什么區(qū)別,我們今天講解下1什么是中斷CPU在處理某
    發(fā)表于 11-22 15:51 ?11次下載
    "外部<b class='flag-5'>中斷</b>----高低電平<b class='flag-5'>觸發(fā)</b>,(邊沿<b class='flag-5'>觸發(fā)</b>)上升沿<b class='flag-5'>觸發(fā)</b>和下降沿<b class='flag-5'>觸發(fā)</b>區(qū)別"

    關(guān)于GD32F330單片機定時器中斷初始化后立即進入中斷問題

    現(xiàn)象:通過插入硬件輸出片段觀察到定時器更新后10us左右進入了定時器中斷,而該定時器設(shè)置中斷時間為100us,明顯不對原因:定時器使能時中斷標志觸發(fā),允許
    發(fā)表于 12-02 16:06 ?20次下載
    <b class='flag-5'>關(guān)于</b>GD32F330單片機定時器<b class='flag-5'>中斷</b>初始化后立即進入<b class='flag-5'>中斷</b>問題

    MCU之TIMER精準延時(二)

    一個TIMER都可以配置定時器溢出中斷。使能溢出中斷,計數(shù)器溢出會觸發(fā)中斷操作。
    發(fā)表于 02-08 15:49 ?0次下載
    MCU之<b class='flag-5'>TIMER</b>精準延時(二)

    華芯微特MCU之TIMER觸發(fā)ADC

    華芯微特MCU之TIMER觸發(fā)ADC
    的頭像 發(fā)表于 09-27 16:21 ?779次閱讀
    華芯微特MCU之<b class='flag-5'>TIMER</b><b class='flag-5'>觸發(fā)</b>ADC

    什么是中斷響應(yīng)次序?什么是中斷處理次序?

    什么是中斷響應(yīng)次序?什么是中斷處理次序? 中斷響應(yīng)次序和中斷處理次序是計算機系統(tǒng)中非常重要的概念
    的頭像 發(fā)表于 10-24 11:49 ?2163次閱讀