chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

Cortex-M0處理器電平觸發(fā)和脈沖輸入

strongerHuang ? 來(lái)源:極術(shù)社區(qū) ? 作者:極術(shù)社區(qū) ? 2022-05-16 09:10 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

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

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

  • NVIC檢測(cè)到中斷信號(hào)被置位并且對(duì)應(yīng)的中斷不是active

  • NVIC檢測(cè)到中斷信號(hào)的上升沿

  • 軟件寫入相應(yīng)的中斷集掛起寄存器

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

  • 處理器為中斷進(jìn)入ISR,這將改變中斷的狀態(tài)等待活躍:

對(duì)于電平觸發(fā)型中斷,當(dāng)處理器從ISR返回時(shí),NVIC采樣中斷信號(hào)。如果中斷信號(hào)仍然有效,表示中斷的狀態(tài)更改為pending,這可能會(huì)導(dǎo)致處理器立即重新進(jìn)入ISR。否則,中斷的狀態(tài)將變?yōu)榉腔顒?dòng)狀態(tài)。

對(duì)于脈沖觸發(fā)型中斷,NVIC繼續(xù)監(jiān)視中斷信號(hào),如果這樣觸發(fā)時(shí),中斷狀態(tài)變?yōu)閽炱鸷突顒?dòng)狀態(tài)。在這種情況下,當(dāng)處理器從ISR返回中斷狀態(tài)時(shí),中斷狀態(tài)變?yōu)閽炱馉顟B(tài)可能會(huì)導(dǎo)致處理器立即重新進(jìn)入ISR。如果中斷信號(hào)不是脈沖而處理器是在ISR,當(dāng)處理器從ISR返回中斷狀態(tài)變?yōu)榉腔顒?dòng)狀態(tài)。

  • 軟件寫入相應(yīng)的中斷清除寄存器位。

對(duì)于電平觸發(fā)型中斷,如果中斷信號(hào)仍然有效,則中斷的狀態(tài)中斷不會(huì)改變。否則,中斷的狀態(tài)將變?yōu)榉腔顒?dòng)狀態(tài)。

對(duì)于脈沖中斷,中斷狀態(tài)變?yōu)椋?/span>

  • inactive,如果狀態(tài)是pending

  • active,如果狀態(tài)是活動(dòng)的和掛起的

2. 中斷處理

當(dāng)中斷事件發(fā)生時(shí),由于外設(shè)連接到了NVIC上,中斷信號(hào)就會(huì)得到確認(rèn)。在處理器執(zhí)行中斷服務(wù)并且沒有清除外設(shè)的中斷的信號(hào)以前,該信號(hào)會(huì)保持高電平。

在NVIC內(nèi)部,當(dāng)檢測(cè)到有中斷發(fā)生時(shí),該中斷的掛起狀態(tài)會(huì)被置位,當(dāng)處理器接受該中斷并且開始執(zhí)行中斷服務(wù)后,掛起狀態(tài)就會(huì)被清除。

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

針對(duì)脈沖輸入的中斷請(qǐng)求,這種情況下,在中斷得到服務(wù)之前,掛起狀態(tài)寄存器將會(huì)一直保持該請(qǐng)求。

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

如果中斷請(qǐng)求沒有立即執(zhí)行,并且在確認(rèn)之前被軟件清除了,處理器將會(huì)忽略掉本次請(qǐng)求,并且不會(huì)執(zhí)行中斷處理。

如果在軟件清除掛起狀態(tài)時(shí),外設(shè)仍然保持著中斷請(qǐng)求,掛起狀態(tài)寄存器還會(huì)立即生成。

3. 中斷等待

通常情況下,處理器的中斷等待時(shí)間為16個(gè)周期,這個(gè)等待時(shí)間從中斷確認(rèn)的處理器時(shí)鐘周期開始,一直到中斷處理開始執(zhí)行結(jié)束。

計(jì)算中斷等待需具備以下前提:

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

  • 存儲(chǔ)器系統(tǒng)沒有任何等待狀態(tài),在中斷處理、壓棧、取向量表或者中斷處理開始時(shí)取指都會(huì)用到總線傳輸,如果存儲(chǔ)器系統(tǒng)需要等待,那么總線傳輸時(shí)產(chǎn)生的等待狀態(tài)則可能使得中斷延遲。

下面幾種情況可能會(huì)導(dǎo)致不同的中斷等待:

  • 中斷的咬尾連鎖,如果一個(gè)中斷返回時(shí)立即產(chǎn)生另外一個(gè)中斷請(qǐng)求,處理器就會(huì)跳過(guò)出棧和壓棧時(shí)間,減少了中斷等待時(shí)間。

  • 延遲到達(dá),如果中斷發(fā)生時(shí),另外一個(gè)低優(yōu)先級(jí)中斷正在進(jìn)行壓棧處理,由于延遲到達(dá),高優(yōu)先級(jí)的中斷就會(huì)立即執(zhí)行,這樣會(huì)導(dǎo)致高優(yōu)先級(jí)的中斷等待時(shí)間減少。

4. 異常屏蔽寄存器PRIMASK

有些對(duì)時(shí)間敏感的應(yīng)用,需要在短時(shí)間內(nèi)禁止響應(yīng)所有的中斷,對(duì)于這種應(yīng)用,處理器不是直接使用中斷使能、禁止控制寄存器來(lái)禁止所有中斷再恢復(fù),而是一個(gè)單獨(dú)的特殊寄存器 - PRIMASK,通過(guò)它可以屏蔽掉除了NMI和HardFault異常的其他的所有的中斷和系統(tǒng)異常。

PRIMASK寄存器只有1位有效,并且在復(fù)位后默認(rèn)為0。該寄存器為0時(shí),所有的中斷和異常都處于允許狀態(tài),設(shè)置為1后,只有NMI和HardFault處于使能狀態(tài)。


	

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

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


	

CPSIEi;//清除PRIMASK(使能中斷) CPSIDi;//設(shè)置PRIMASK(不響應(yīng)中斷)

CMSIS設(shè)備驅(qū)動(dòng)庫(kù)提供了C語(yǔ)言的實(shí)現(xiàn)函數(shù),用戶可以直接使用函數(shù)來(lái)設(shè)置和清除PRIMASK寄存器:


	

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

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

5. NVIC使用提示

確保軟件使用正確對(duì)齊的寄存器訪問(wèn),處理器不支持對(duì) NVIC 寄存器的未對(duì)齊訪問(wèn)。

即使中斷被禁用,它也可以進(jìn)入掛起狀態(tài)。

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

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

審核編輯 :李倩


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

    關(guān)注

    68

    文章

    19896

    瀏覽量

    235318
  • 單片機(jī)
    +關(guān)注

    關(guān)注

    6067

    文章

    44992

    瀏覽量

    650617
  • 電平
    +關(guān)注

    關(guān)注

    5

    文章

    367

    瀏覽量

    40604

原文標(biāo)題:?jiǎn)纹瑱C(jī)中斷電平觸發(fā)和脈沖輸入

文章出處:【微信號(hào):strongerHuang,微信公眾號(hào):strongerHuang】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    國(guó)民技術(shù)能否開展一個(gè)M7處理器的試用活動(dòng)。

    國(guó)民技術(shù)最近推出了M7處理器,看起來(lái)能力很強(qiáng),電子發(fā)燒友能不能聯(lián)合國(guó)民技術(shù)開展一個(gè)M7使用的活動(dòng),讓大家了解下M7核的國(guó)民技術(shù)。
    發(fā)表于 05-20 22:04

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

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

    自主創(chuàng)新,安全可控:申威SW831處理器與國(guó)產(chǎn)終端產(chǎn)品推薦

    在信息技術(shù)領(lǐng)域,自主可控的硬件技術(shù)是保障國(guó)家安全和產(chǎn)業(yè)發(fā)展的核心基礎(chǔ)。作為國(guó)產(chǎn)處理器的代表之一, 申威(Sunway)SW831處理器 憑借其高性能、低功耗和高度安全性,成為國(guó)產(chǎn)信息化設(shè)備的核心
    的頭像 發(fā)表于 02-21 15:38 ?1598次閱讀

    RK3126處理器:高效四核Cortex-A7多媒體處理平臺(tái)

    Cortex-A7處理器,主頻高達(dá)1.2GHz,提供了出色的多任務(wù)處理能力和流暢的用戶體驗(yàn)。無(wú)論是運(yùn)行復(fù)雜的應(yīng)用還是處理大型數(shù)據(jù),RK3126都能輕松應(yīng)對(duì)。 GPU方面,RK3126配
    的頭像 發(fā)表于 02-08 18:11 ?1432次閱讀

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

    Cortex-A7處理器,頻率高達(dá)1.2GHz,提供了流暢的多任務(wù)處理能力,確保設(shè)備在各種應(yīng)用場(chǎng)景下都能保持出色的響應(yīng)速度和穩(wěn)定性。 GPU方面,RK3128配備了Mali-400MP2圖形
    的頭像 發(fā)表于 02-08 18:08 ?1462次閱讀

    RV1109處理器概述

    RV1109處理器是一款集成了先進(jìn)技術(shù)的高性能芯片,其主要特性彰顯了在多個(gè)領(lǐng)域的強(qiáng)大應(yīng)用能力。 該處理器搭載了雙核設(shè)計(jì),結(jié)合了ARM Cortex-A7處理器核心與RISC-V MCU
    的頭像 發(fā)表于 02-08 17:04 ?1418次閱讀

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

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

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

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

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

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

    ADS8361與TMS470處理器的接口

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

    ADS786x與TMS470處理器的接口

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

    恩智浦i.MX8處理器的集成電源設(shè)計(jì)

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

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

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

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

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

    d觸發(fā)器電平觸發(fā)還是邊沿觸發(fā)

    電平觸發(fā)D觸發(fā)器的特點(diǎn) 電平觸發(fā)D觸發(fā)器是一種在輸入
    的頭像 發(fā)表于 08-22 10:17 ?2405次閱讀