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

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

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

Zynq中斷的三個(gè)部分:SGI、PPI、SPI

454398 ? 來源:瓜大三哥 ? 作者:米果不回來 ? 2020-11-16 17:21 ? 次閱讀

Zynq中斷大致可分為三個(gè)部分

第一部分為SGI,軟件生成的中斷,共16個(gè)端口;

第二部分為PPI,CPU私有外設(shè)中斷,有5個(gè);

第三部分為SPI,共享外設(shè)中斷,來自于44個(gè)PS端的IO外設(shè)以及16個(gè)PL端的中斷。中間部分為GIC,也即中斷控制器,用于對(duì)中斷進(jìn)行使能、關(guān)閉、掩碼、設(shè)置優(yōu)先等。


以下為中斷控制器框圖,主要的控制器部分為ICC和ICD,ICD連接SGI和PPI,ICD連接SPI,可配置兩者的寄存器來控制中斷。


SGI中斷(軟件產(chǎn)生中斷),共16個(gè)IRQ ID號(hào)


PPI中斷,CPU私有中斷,共5個(gè)IRQ ID號(hào)


SPI中斷部分,共60個(gè)IRQ ID號(hào)



接下來設(shè)置帶有中斷的GPIO

INT_MASK:中斷掩碼

INT_DIS: 中斷關(guān)閉

INT_EN: 中斷使能

INT_TYPE: 中斷類型,設(shè)置電平敏感還是邊沿敏感

INT_POLARITY:中斷極性,設(shè)置低電平或下降沿還是高電平或上升沿

INT_ANY: 邊沿觸發(fā)方式,需要INT_TYPE設(shè)置為邊沿敏感才能使用


GPIO初始化→設(shè)置按鍵和LED方向→設(shè)置產(chǎn)生中斷方式→設(shè)置中斷→打開中斷控制器→打開中斷異?!蜷_GPIO中斷→判斷KEY_FLAG值,是1,寫LED

GPIO_CONFIG =XGpioPs_LookupConfig(MIO_0_ID) ;
Status =XGpioPs_CfgInitialize(&GPIO_PTR, GPIO_CONFIG, PIO_CONFIG->BaseAddr) ;
    //設(shè)置LED方向
    XGpioPs_SetDirectionPin(&GPIO_PTR,0, GPIO_OUTPUT) ;
    XGpioPs_SetDirectionPin(&GPIO_PTR,13, GPIO_OUTPUT) ;
    //設(shè)置按鍵方向
    XGpioPs_SetDirectionPin(&GPIO_PTR,PS_KEY1, GPIO_INPUT) ;
    XGpioPs_SetDirectionPin(&GPIO_PTR,PS_KEY2, GPIO_INPUT) ;
    //使能LED輸出
    XGpioPs_SetOutputEnablePin(&GPIO_PTR,0, GPIO_OUTPUT) ;
    XGpioPs_SetOutputEnablePin(&GPIO_PTR,13, GPIO_OUTPUT) ; 
    //設(shè)置中斷類型 0表示上升沿  
XGpioPs_SetIntrTypePin(&GPIO_PTR,PS_KEY1, 0);//rising edge
    XGpioPs_SetIntrTypePin(&GPIO_PTR,PS_KEY2, 0);//rising edge
    //設(shè)置按鍵使能
    XGpioPs_IntrEnablePin(&GPIO_PTR,PS_KEY1) ;
    XGpioPs_IntrEnablePin(&GPIO_PTR,PS_KEY2) ;
    //設(shè)置中斷
    Status= IntrInitFuntion(&INTCInst, MIO_0_ID, &GPIO_PTR) ;
    //產(chǎn)生按鍵的GPIO
    while(1)
            {
                if (key_flag)
                {
                    XGpioPs_WritePin(&GPIO_PTR,0, key_val) ;
                    XGpioPs_WritePin(&GPIO_PTR,13, key_val) ;
                    key_val= ~key_val ;
                    key_flag= 0 ;
                }
            }
編輯:hfy

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

    關(guān)注

    68

    文章

    10804

    瀏覽量

    210829
  • MIO
    MIO
    +關(guān)注

    關(guān)注

    0

    文章

    12

    瀏覽量

    8147
  • Zynq
    +關(guān)注

    關(guān)注

    9

    文章

    607

    瀏覽量

    47101
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    基本理想電路元件的三個(gè)特征是什么

    基本理想電路元件是構(gòu)成電路的基本單元,它們具有三個(gè)基本特征:電壓-電流關(guān)系、能量轉(zhuǎn)換和電路參數(shù)。以下是對(duì)這三個(gè)特征的分析: 電壓-電流關(guān)系 理想電路元件的電壓-電流關(guān)系是其最基本的特征之一。這種關(guān)系
    的頭像 發(fā)表于 08-25 09:38 ?874次閱讀

    可調(diào)變阻器三個(gè)引腳怎么區(qū)分

    可調(diào)變阻器,也稱為電位器或可變電阻器,是一種可以調(diào)節(jié)電阻值的電子元件。它廣泛應(yīng)用于各種電子設(shè)備中,如音頻設(shè)備、電源管理、電機(jī)控制等。可調(diào)變阻器有三個(gè)引腳,分別是固定端、滑動(dòng)端和可調(diào)端。這三個(gè)引腳
    的頭像 發(fā)表于 07-24 11:12 ?774次閱讀

    微波測量的三個(gè)基本參量是什么

    微波測量是電子工程領(lǐng)域中的一個(gè)重要分支,它涉及到對(duì)微波信號(hào)的頻率、幅度、相位等參數(shù)的測量。在微波測量中,有三個(gè)基本參量:頻率、幅度和相位。這三個(gè)參量是微波信號(hào)的基本特征,對(duì)于微波系統(tǒng)的設(shè)計(jì)、調(diào)試
    的頭像 發(fā)表于 05-28 14:46 ?1031次閱讀

    如何判斷極管的三個(gè)極性

    極管是電子電路中的基本元件之一,其性能的好壞直接影響到整個(gè)電路的性能。而判斷極管的三個(gè)極性(基極b、發(fā)射極e、集電極c)是電路分析和設(shè)計(jì)中不可或缺的一步。下面將詳細(xì)介紹判斷極管
    的頭像 發(fā)表于 05-21 15:26 ?5338次閱讀

    RISC-V的中斷處理 中斷操作三個(gè)步驟

    中斷操作三個(gè)步驟: 1、中斷初始化 2、trap處理 3、用戶中斷處理
    的頭像 發(fā)表于 05-20 16:38 ?1011次閱讀

    個(gè)籬笆三個(gè)樁——記晶體極管的發(fā)明

    個(gè)籬笆三個(gè)樁——記晶體極管的發(fā)明
    的頭像 發(fā)表于 05-12 08:14 ?617次閱讀
    一<b class='flag-5'>個(gè)</b>籬笆<b class='flag-5'>三個(gè)</b>樁——記晶體<b class='flag-5'>三</b>極管的發(fā)明

    stm8單個(gè)定時(shí)器中斷沒有問題,加入U(xiǎn)ART/SPI中斷就異常的原因?

    各位大師,幫忙看看程序! 工程是EWSTM8-2105版本的,在main函數(shù)里面,只有任意開三個(gè)中斷的其中一個(gè),程序就會(huì)死機(jī),這是哪里出了問題? //UART2_ITConfig
    發(fā)表于 05-11 06:59

    TIM_PWM+DMA輸出三個(gè)不同占空比的單脈沖,為什么第三個(gè)數(shù)據(jù)總是第一個(gè)輸出?

    使用TIM_PWM + DMA,DMA傳輸長度為3,即順序輸出3個(gè)不同占空比的單脈沖(10%,20%,50%),三個(gè)脈沖輸出完成后進(jìn)入DMA傳輸完成中斷,關(guān)閉定時(shí)器。通過抓圖形發(fā)現(xiàn),實(shí)際輸出是50%,10%,20%,請(qǐng)問這是為什
    發(fā)表于 04-03 07:23

    電路組成的三個(gè)部分是什么

    電路是電流的流通路徑,它由電源、負(fù)載和連接導(dǎo)線三部分組成。這三部分共同構(gòu)成了一個(gè)完整的電路系統(tǒng),使得電能可以從電源傳輸?shù)截?fù)載并得以利用。 一、電源 電源是電路中提供電能的設(shè)備,它將其他形式的能量(如
    的頭像 發(fā)表于 01-23 16:58 ?6366次閱讀

    KPA 6EDL_SPI_LINK三個(gè)GPIO引腳需要3個(gè)LUT嗎?

    請(qǐng)找到 KPA 6EDL_SPI_LINK ,我們對(duì)這個(gè) KPA 有疑問。在 project perceptive 中,我們只能配置一個(gè) LUT,以及一個(gè)配置了 TCPWM 外設(shè)的曲柄信號(hào)輸入。
    發(fā)表于 01-19 06:29

    飛機(jī)的三個(gè)舵面以及如何控制

    飛機(jī)通常具有三個(gè)主要的舵面,它們是方向舵(rudder)、副翼(aileron)和升降舵(elevator)。
    發(fā)表于 01-15 14:54 ?4843次閱讀
    飛機(jī)的<b class='flag-5'>三個(gè)</b>舵面以及如何控制

    使用Chiplet的三個(gè)優(yōu)勢介紹

    小芯片的第三個(gè)主要好處是,即使是首次設(shè)計(jì),它們也可以顯著加快上市時(shí)間,從而使芯片制造商能夠更快地進(jìn)入市場。
    的頭像 發(fā)表于 12-27 14:34 ?658次閱讀
    使用Chiplet的<b class='flag-5'>三個(gè)</b>優(yōu)勢介紹

    串聯(lián)諧振電路的三個(gè)特征

    串聯(lián)諧振電路的三個(gè)特征? 串聯(lián)諧振電路是一種重要的電路結(jié)構(gòu),具有許多特征和應(yīng)用。本文將詳細(xì)介紹串聯(lián)諧振電路的三個(gè)主要特征,并對(duì)其原理和應(yīng)用進(jìn)行詳細(xì)討論。 首先,串聯(lián)諧振電路具有共振頻率。共振頻率是指
    的頭像 發(fā)表于 12-20 14:54 ?1409次閱讀

    mos管三個(gè)引腳怎么區(qū)分

    mos管三個(gè)引腳怎么區(qū)分? MOS管是一種常見的電子元件,它被廣泛應(yīng)用于各種電子設(shè)備中。MOS管通常具有三個(gè)引腳,即柵極(Gate)、源極(Source)和漏極(Drain)。這三個(gè)引腳在MOS管
    的頭像 發(fā)表于 11-22 16:51 ?6916次閱讀

    ART-PI使用SPI驅(qū)動(dòng)RC522讀卡器

    ARTPI 自帶三個(gè)硬件 SPI,我們這里以 SPI4 為例。
    的頭像 發(fā)表于 11-21 16:35 ?943次閱讀
    ART-PI使用<b class='flag-5'>SPI</b>驅(qū)動(dòng)RC522讀卡器