女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

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

3天內不再提示

Cortex-M0處理器電平觸發和脈沖輸入

strongerHuang ? 來源:極術社區 ? 作者:極術社區 ? 2022-05-16 09:10 ? 次閱讀

Cortex-M0處理器允許兩種形式的中斷請求:電平觸發和脈沖輸入 電平觸發是外設的中斷請求有持續的電平信號,若電平信號在處理器從ISR返回之前沒有被取消,則中斷返回后將再次觸發已經服務過的中斷。 脈沖中斷是在信號的上升沿同步采樣的中斷信號,為了確保NVIC檢測到中斷,外設必須維持中斷信號至少一個時鐘周期,在此期間,NVIC檢測脈沖和鎖存中斷。后續的脈沖可以將暫掛狀態加到活動中斷中,使狀態為中斷活動且掛起。然而,在有限周期內發生的多個脈沖只登記作為中斷調度的單個事件。 哪些中斷是電平觸發的,哪些是脈沖觸發的,具體選擇哪一種是根據芯片設計來決定,不過大多數的外設使用電平觸發中斷輸出。
1. 電平觸發和脈沖輸入

Cortex-M0處理器鎖存所有中斷,外圍中斷成為等待其中一個原因是:

  • NVIC檢測到中斷信號被置位并且對應的中斷不是active

  • NVIC檢測到中斷信號的上升沿

  • 軟件寫入相應的中斷集掛起寄存器

掛起的中斷將一直掛起,直到下列情況之一發生:

  • 處理器為中斷進入ISR,這將改變中斷的狀態等待活躍:

對于電平觸發型中斷,當處理器從ISR返回時,NVIC采樣中斷信號。如果中斷信號仍然有效,表示中斷的狀態更改為pending,這可能會導致處理器立即重新進入ISR。否則,中斷的狀態將變為非活動狀態。

對于脈沖觸發型中斷,NVIC繼續監視中斷信號,如果這樣觸發時,中斷狀態變為掛起和活動狀態。在這種情況下,當處理器從ISR返回中斷狀態時,中斷狀態變為掛起狀態可能會導致處理器立即重新進入ISR。如果中斷信號不是脈沖而處理器是在ISR,當處理器從ISR返回中斷狀態變為非活動狀態。

  • 軟件寫入相應的中斷清除寄存器位。

對于電平觸發型中斷,如果中斷信號仍然有效,則中斷的狀態中斷不會改變。否則,中斷的狀態將變為非活動狀態。

對于脈沖中斷,中斷狀態變為:

  • inactive,如果狀態是pending

  • active,如果狀態是活動的和掛起的

2. 中斷處理

當中斷事件發生時,由于外設連接到了NVIC上,中斷信號就會得到確認。在處理器執行中斷服務并且沒有清除外設的中斷的信號以前,該信號會保持高電平。

在NVIC內部,當檢測到有中斷發生時,該中斷的掛起狀態會被置位,當處理器接受該中斷并且開始執行中斷服務后,掛起狀態就會被清除。

15ed846c-d4b2-11ec-bce3-dac502259ad0.png

針對脈沖輸入的中斷請求,這種情況下,在中斷得到服務之前,掛起狀態寄存器將會一直保持該請求。

1646a740-d4b2-11ec-bce3-dac502259ad0.png

如果中斷請求沒有立即執行,并且在確認之前被軟件清除了,處理器將會忽略掉本次請求,并且不會執行中斷處理。

如果在軟件清除掛起狀態時,外設仍然保持著中斷請求,掛起狀態寄存器還會立即生成。

3. 中斷等待

通常情況下,處理器的中斷等待時間為16個周期,這個等待時間從中斷確認的處理器時鐘周期開始,一直到中斷處理開始執行結束。

計算中斷等待需具備以下前提:

  • 該中斷使能并沒有PRIMASK或者其他正在執行的異常處理所屏蔽

  • 存儲器系統沒有任何等待狀態,在中斷處理、壓棧、取向量表或者中斷處理開始時取指都會用到總線傳輸,如果存儲器系統需要等待,那么總線傳輸時產生的等待狀態則可能使得中斷延遲。

下面幾種情況可能會導致不同的中斷等待:

  • 中斷的咬尾連鎖,如果一個中斷返回時立即產生另外一個中斷請求,處理器就會跳過出棧和壓棧時間,減少了中斷等待時間。

  • 延遲到達,如果中斷發生時,另外一個低優先級中斷正在進行壓棧處理,由于延遲到達,高優先級的中斷就會立即執行,這樣會導致高優先級的中斷等待時間減少。

4. 異常屏蔽寄存器PRIMASK

有些對時間敏感的應用,需要在短時間內禁止響應所有的中斷,對于這種應用,處理器不是直接使用中斷使能、禁止控制寄存器來禁止所有中斷再恢復,而是一個單獨的特殊寄存器 - PRIMASK,通過它可以屏蔽掉除了NMI和HardFault異常的其他的所有的中斷和系統異常。

PRIMASK寄存器只有1位有效,并且在復位后默認為0。該寄存器為0時,所有的中斷和異常都處于允許狀態,設置為1后,只有NMI和HardFault處于使能狀態。


	

MOVSR0,#0x1;//中斷#2 MSRPRIMASK,R0;//將R0的值送到PRIMASK

NVIC編程提示軟件使用CPSIE i和CPSID i指令來啟用和禁用中斷。


	

CPSIEi;//清除PRIMASK(使能中斷) CPSIDi;//設置PRIMASK(不響應中斷)

CMSIS設備驅動庫提供了C語言的實現函數,用戶可以直接使用函數來設置和清除PRIMASK寄存器:


	

void__disable_irq(void)//不響應中斷 void__enable_irq(void)//啟用中斷

在對時間敏感的程序完成后,應該清除PRIMASK。要不然即使在中斷處理中使用\_\_disable\_irq()函數,處理器將停止接受新的中斷請求。主要原因是PRIMASK寄存器和Xpsr是相互獨立的,因此異常返回不會影響中斷屏蔽狀態。

5. NVIC使用提示

確保軟件使用正確對齊的寄存器訪問,處理器不支持對 NVIC 寄存器的未對齊訪問。

即使中斷被禁用,它也可以進入掛起狀態。

禁用中斷只能防止處理器處理中斷。

在對中斷向量表重定義之前,必須包含所有的異常中斷,例如 NMI、HardFault 和外設中斷等。

審核編輯 :李倩


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 處理器
    +關注

    關注

    68

    文章

    19804

    瀏覽量

    233528
  • 單片機
    +關注

    關注

    6063

    文章

    44915

    瀏覽量

    646909
  • 電平
    +關注

    關注

    5

    文章

    367

    瀏覽量

    40411

原文標題:單片機中斷電平觸發和脈沖輸入

文章出處:【微信號:strongerHuang,微信公眾號:strongerHuang】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦
    熱點推薦

    國民技術能否開展一個M7處理器的試用活動。

    國民技術最近推出了M7處理器,看起來能力很強,電子發燒友能不能聯合國民技術開展一個M7使用的活動,讓大家了解下M7核的國民技術。
    發表于 05-20 22:04

    瑞芯微RK3506(3核ARM+Cortex-A7 + ARM Cortex-M0)工業核心板選型資料

    創龍科技SOM-TL3506是一款基于瑞芯微RK3506J/RK3506B處理器設計的3核ARM Cortex-A7 + ARM Cortex-M0全國產工業核心板,主頻高達1.5GHz。核心板CPU、ROM、RAM、電源、晶振
    的頭像 發表于 04-09 09:04 ?627次閱讀
    瑞芯微RK3506(3核ARM+<b class='flag-5'>Cortex</b>-A7 + ARM <b class='flag-5'>Cortex-M0</b>)工業核心板選型資料

    RK3126處理器:高效四核Cortex-A7多媒體處理平臺

    Cortex-A7處理器,主頻高達1.2GHz,提供了出色的多任務處理能力和流暢的用戶體驗。無論是運行復雜的應用還是處理大型數據,RK3126都能輕松應對。 GPU方面,RK3126配
    的頭像 發表于 02-08 18:11 ?1212次閱讀

    RK3128處理器:高效四核Cortex-A7多媒體解決方案

    Cortex-A7處理器,頻率高達1.2GHz,提供了流暢的多任務處理能力,確保設備在各種應用場景下都能保持出色的響應速度和穩定性。 GPU方面,RK3128配備了Mali-400MP2圖形
    的頭像 發表于 02-08 18:08 ?1156次閱讀

    RV1109處理器概述

    RV1109處理器是一款集成了先進技術的高性能芯片,其主要特性彰顯了在多個領域的強大應用能力。 該處理器搭載了雙核設計,結合了ARM Cortex-A7處理器核心與RISC-V MCU
    的頭像 發表于 02-08 17:04 ?1220次閱讀

    面向NXP i.MX8處理器的電源解決方案

    電子發燒友網站提供《面向NXP i.MX8處理器的電源解決方案.pdf》資料免費下載
    發表于 12-24 15:53 ?0次下載
    面向NXP i.MX8<b class='flag-5'>處理器</b>的電源解決方案

    SK-AM68處理器入門套件用戶指南

    電子發燒友網站提供《SK-AM68處理器入門套件用戶指南.pdf》資料免費下載
    發表于 11-13 15:02 ?1次下載
    SK-AM68<b class='flag-5'>處理器</b>入門套件用戶指南

    AM69處理器入門套件用戶指南

    電子發燒友網站提供《AM69處理器入門套件用戶指南.pdf》資料免費下載
    發表于 11-13 08:34 ?1次下載
    AM69<b class='flag-5'>處理器</b>入門套件用戶指南

    ADS8361與TMS470處理器的接口

    電子發燒友網站提供《ADS8361與TMS470處理器的接口.pdf》資料免費下載
    發表于 10-22 10:13 ?0次下載
    ADS8361與TMS470<b class='flag-5'>處理器</b>的接口

    ADS786x與TMS470處理器的接口

    電子發燒友網站提供《ADS786x與TMS470處理器的接口.pdf》資料免費下載
    發表于 10-22 10:11 ?0次下載
    ADS786x與TMS470<b class='flag-5'>處理器</b>的接口

    恩智浦i.MX8處理器的集成電源設計

    電子發燒友網站提供《恩智浦i.MX8處理器的集成電源設計.pdf》資料免費下載
    發表于 09-18 14:25 ?0次下載
    恩智浦i.MX8<b class='flag-5'>處理器</b>的集成電源設計

    基于全志V853處理器的智能輔助駕駛算法介紹

    全志V853處理器,是專為智慧視覺領域設計的AI處理器,配備了高效的NPU算力和豐富的外設接口,能夠提供穩定的AI邊緣計算支持;同時,基于V853處理器這一性能優勢,全志還為客戶提供了一整套完整的智能輔助駕駛算法。
    的頭像 發表于 09-14 09:23 ?1653次閱讀
    基于全志V853<b class='flag-5'>處理器</b>的智能輔助駕駛算法介紹

    使用TPS6521815 PMIC為NXP i.MX 7處理器供電

    電子發燒友網站提供《使用TPS6521815 PMIC為NXP i.MX 7處理器供電.pdf》資料免費下載
    發表于 09-13 09:40 ?0次下載
    使用TPS6521815 PMIC為NXP i.MX 7<b class='flag-5'>處理器</b>供電

    d觸發器電平觸發還是邊沿觸發

    電平觸發D觸發器的特點 電平觸發D觸發器是一種在輸入
    的頭像 發表于 08-22 10:17 ?2171次閱讀

    RK3568處理器硬件設計的要點及注意事項

    電子發燒友網站提供《RK3568處理器硬件設計的要點及注意事項.pdf》資料免費下載
    發表于 06-11 11:48 ?2次下載