精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

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

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

3天內不再提示

S3C2440的中斷寄存器的分類及中斷的過程分析

電子設計 ? 作者:電子設計 ? 2018-11-27 07:37 ? 次閱讀

S3C2440一共有60個中斷源,其中有15個子中斷源,它們與SUBSRCPND寄存器中的每一位相對應,其他45個中斷源與SRCPND中的每一位相對應。要注意的是EINT4~7對應的是同一位SRCPND,而EINT8~23對應的也是SRCPND一位。

1 S3C2440的中斷寄存器

中斷分兩大類:外部中斷和內部中斷。

1.1 外部中斷寄存器

24個外部中斷占用GPF0-GPF7(EINT0-EINT7),GPG0-GPG15(EINT8-EINT23)。用這些腳做中斷輸入,則必須配置引腳為中斷,并且不要上拉。具體可參考datesheet數據手冊。

寄存器:

EXTINT0-EXTINT2:分別設置EINT0—EINT7、EINT8—EINT15、EINT16—EINT23的觸發方式(高電平觸發、低電平觸發、下降沿觸發、上升沿觸發)。

EINTFLT0-EINTFLT3:控制濾波時鐘和濾波寬度。

EINTPEND:這個是中斷掛起寄存器,清除時要寫1,后面還有幾個是寫1清除。當一個外部中斷(EINT4-EINT23)發生后,那么相應的位會被置1。為什么沒有EINT0-EINT3,因為它們分別由SRCPND寄存器的后4位控制。

EINTMASK:這個簡單,是屏蔽中斷用的,也就是說位為1時,此次中斷無效。

1.2 內部中斷寄存器

內部中斷有8個寄存器。

寄存器:

SUBSRCPND:當一個中斷發生后,那么相應的位會被置1,表示一個中斷發生了。

INTSUBMSK:與上一個是一樣的,中斷屏蔽寄存器。

SRCPND:當一個中斷發生后,那么相應的位會被置1,表示一個或一類中斷發生了。

INTMSK:用來屏蔽SRCPND寄存器所標識的中斷。但只能屏蔽IRQ中斷,不能屏蔽FIQ中斷。

INTMOD:當INTMOD中某位被設置為1時,它對應的中斷被設為FIQ,CPU將進入快速中斷模式。

PRIORITY:用于設置IRQ中斷的優先級。具體使用方法可參考芯片手冊。

INTPND:中斷優先級仲裁器選出優先級最高中斷后,這個中斷在INTPND寄存器中的相應位被置1,隨后,CPU進入中斷模式處理它。同一時間內,此寄存器只有一位被置1。

INTOFFSET:用來表示INTPND寄存器中哪位被置1了,即記錄INTPND中位[x]為1的位x的值。清除INTPND、SRCPND時自動清除。

S3C2440的中斷寄存器的分類及中斷的過程分析

1.3 各寄存器關系:

2 中斷過程

2.1 內部中斷過程

a 如果是不帶子中斷的內部中斷:發生后SRCPND相應位置1,如果沒有被INTMSK屏蔽,那么等待進一步處理。

b 如果是帶子中斷的內部中斷:發生后SUBSRCPND相應位置1,如果沒有被INTSUBMSK屏蔽,那么SRCPND相應位置1,等待進一步處理,幾個SUBSRCPND可能對應同一個SRCPND,對應表如下:

S3C2440的中斷寄存器的分類及中斷的過程分析

2.2 外部中斷過程

a 如果是外部中斷:EINT0-EINT3發生后SRCPND相應位置1,如果沒有被INTMSK屏蔽,那么等待進一步處理。EINT4-EINT23發生后EINTPEND相應位置1,如果沒有被EINTMASK屏蔽,那么SRCPND相應位EINT4-7 或EINT8-23置1,如果沒有被INTMSK屏蔽,等待進一步處理,幾個EINTPEND對應同一個SRCPND,對應表如下:

S3C2440的中斷寄存器的分類及中斷的過程分析

三種中斷都等待進一步處理了。接下來從SRCPND往下看,看INTMSK。如果中斷被屏蔽了,就不用說了(注意:快中斷也能被屏蔽)。如果沒有被屏蔽,那么會進一步到INTMOD。如果是快中斷,那么直接出來,進入FIQ(即CPU進入快中斷模式處理)。如果是普通中斷,那么SRCPND可以有多為置1(FIQ只能有一個),這時就會經過PRIORITY選出一個優先級高的,然后把根據選出的中斷把INTPND相應位置1(注意:只能選出一個),進入IRQ,讓CPU處理。

2.3 中斷的開啟

a.如果是不帶子中斷的內部中斷,只需設置INTMSK,讓它不屏蔽中斷就可以了。

b 如果是帶子中斷的內部中斷,需設置INTSUBMSK和INTMSK,讓它們不屏蔽中斷就可以了。

c 如果是外部中斷,對于EINT8-23需要設置EINTMASK和INTMSK。對于EINT0-EINT3只需設置INTMSK。

2.4 中斷的清除

a.如果是不帶子中斷的內部中斷,只需清除SRCPND,注意清除需位置1。

b 如果是帶子中斷的內部中斷,需清除SRCPND和SUBSRCPND,注意先清除SUBSRCPND,再清除SRCPND。因為,如果你先清除SRCPND的話,然后在清除SUBSRCPND的過程中,SRCPND會以為又有中斷發生,又會置1。也就是說一次中斷會響應兩次。所以必須先掐斷源頭。

c 如果是外部中斷,對于EINT8-23需要清除EINTPEND和SRCPND(同樣注意順序)。對于EINT0-EINT3只需清除SRCPND。

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

    關注

    31

    文章

    5325

    瀏覽量

    120053
  • 濾波
    +關注

    關注

    10

    文章

    663

    瀏覽量

    56604
  • 中斷
    +關注

    關注

    5

    文章

    895

    瀏覽量

    41401
收藏 人收藏

    評論

    相關推薦

    深圳嵌入式學習為你破解ARM中斷寄存器

    EINT8-23需要清除EINTPEND和SRCPND(同樣注意順序)。對于EINT0-EINT3只需清除SRCPND。深圳專業嵌入式ARM、Linux技術實訓,課程顧問:郭老師 QQ754634522本文詳細分析S3C2440
    發表于 11-11 15:39

    S3C2440 中斷服務程序的寄存器SRCPND、INTPND配置

    本帖最后由 zhaxidelebsz 于 2014-4-21 15:56 編輯 大家都知道,S3C2440 中斷系統的寄存器配置中,為了在下次能正確的得到同一個中斷源的
    發表于 04-21 15:54

    為你破析ARM中斷寄存器

    S3C2440中斷寄存器:1.中斷分兩大類:內部中斷和外部中斷。2.外部中斷。24個外部
    發表于 09-26 16:57

    S3C2440存儲控制的相關寄存器

    S3C2440存儲控制(memory controller)的寄存器使用
    發表于 09-24 14:25

    講下中斷寄存器(1)【2440

    )。清除SRCPND、INTPND寄存器時,INTOFFSET寄存器被自動清除。★S3C2410提供了以下外部中斷控制寄存器。24個外部
    發表于 08-30 08:28

    講下中斷寄存器(2)【2440

    2440中斷寄存器邏輯梳理如下:1.中斷分為兩大類(1)外部中斷24個外部中斷占用GPF0-GPF7(EINT0-EINT7),GPG0-G
    發表于 08-30 08:35

    EXTI外部中斷寄存器

    EXTI 外部中斷寄存器...
    發表于 08-16 08:38

    s3c2440 pdf datasheet

    s3c2440 pd
    發表于 07-10 23:45 ?571次下載

    s3c2440芯片中文手冊

    ARM s3c2440中文手冊,包括芯片信息,寄存器指令格式,外設信息,接口等等。
    發表于 04-06 11:45 ?4次下載

    C51中斷寄存器

    C語言 中斷寄存器 學習單片機的可以看看,詳細資料可以去別的地方看
    發表于 06-27 14:41 ?2次下載

    裸機學習s3c2440

    裸機學習s3c2440
    發表于 10-13 14:23 ?29次下載
    裸機學習<b class='flag-5'>s3c2440</b>

    如何選擇51單片機的中斷寄存器

    首先介紹一下51的寄存器組:通過設置PSW寄存器的第3位和第4位可以任意切換寄存器組。在進入中斷前,切換
    發表于 04-17 17:27 ?0次下載
    如何選擇51單片機的<b class='flag-5'>中斷寄存器</b>組

    51單片機與中斷相關的寄存器

    TCON串行口控制寄存器 SCON中斷控制寄存器IE位序號位名稱描述7EA當EA = 1,使能中斷;當EA = 0,禁止所有中斷6~5
    發表于 11-12 11:36 ?8次下載
    51單片機與<b class='flag-5'>中斷</b>相關的<b class='flag-5'>寄存器</b>

    S3C2440如何設置系統時鐘

    S3C2440如何設置系統時鐘 S3C2440是一款嵌入式處理,屬于SAMSUNG公司的ARM9系列。系統時鐘是嵌入式系統中非常重要的一個參數,它決定了系統的計算速度和精度,是系統穩定性的關鍵因素
    的頭像 發表于 09-02 15:12 ?951次閱讀

    s3c2410中斷控制模塊的中斷源狀態寄存器是?

    S3C2410是一款由三星電子公司設計的具有多種功能的嵌入式處理。其中的中斷控制模塊用于管理系統的中斷請求和中斷服務程序。在
    的頭像 發表于 01-05 17:28 ?666次閱讀