在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

DSP28335外部中斷的使用

冬至配餃子 ? 來源:電機人生 ? 作者:電機人生 ? 2023-07-07 16:41 ? 次閱讀

一、概述

處理器的外部中斷主要用于捕抓外部輸入的高低電平。本篇文章將介紹DSP28335的外部中斷的使用。

二、DSP28335外部中斷介紹

DSP28335處理器共支持7個外部中斷XINT1XINT7,其中XINT1XINT2只能對GPIO0GPIO31配置;XINT3XINT7只對GPIO32~GPIO63配置。每一個外部中斷可以被選擇為正邊沿或負邊沿觸發。DSP28335的中斷系統框圖為:

圖片

圖1 DSP中斷系統

DSP28335中斷分為三級,分別為:外設級、PIE級、CPU級。如下圖所示:

圖片

圖2 DSP28335的三級中斷機制

DSP28335的三級中斷機制可以這樣理解(以外部中斷為例):外設級為像外部引腳輸入高低電平時,同時外設級的中斷使能了,這時候外設級會產生一個中斷標志位,PIE級檢測到該中斷標志位,同時PIE自己的中斷使能了,這時候PIE會產生一個中斷標志位,PIE的中斷標志位給CPU,當CPU的中斷使能位打開了,就會響應這個中斷。總的概況:一個外部中斷要得到CPU響應,要越過外設級中斷使能、PIE中斷使能、CPU中斷使能。

圖片

圖3 DSP28335中斷過程

從圖3可以看出,只有一道一道開關閉合,才能把中斷送到CPU,讓CPU去響應中斷。

三、外部中斷涉及相關寄存器

1. 外部中斷控制寄存器---XINTnCR【外設級】

圖片

圖4 外部中斷控制寄存器---XINTnCR

外部中斷控制寄存器用于控制上升沿觸發還是下降沿觸發,中斷使能。

2. PIE這一級的寄存器【PIE級】

(1)PIE中斷使能寄存器----PIEIERx[x=1~12]

圖片

圖5 PIE中斷使能寄存器

(2)PIE中斷標志寄存器----PIEIFRx[x=1~12]

圖片

圖6 PIE中斷標志寄存器

(3)PIE中斷應答寄存器----PIACK

圖片

圖6 PIE中斷應答寄存器

3.CPU這一級寄存器【CPU級】

(1)CPU中斷標志寄存器---IFR

圖片

圖7 CPU中斷標志寄存器

(2)CPU中斷使能寄存器---IER

圖片

圖8 CPU中斷使能寄存器

四、DSP28335外部中斷實現

DSP28335外部中斷實現主要有以下步驟:

(1)失能CPU級中斷,并初始化PIE控制器和PIE中斷向量表;

(2)使能IO口時鐘,配置IO口為輸入;

(3)設置IO口與中斷線的映射關系;

圖片

圖9 中斷映射表

本次使用的是GPIO17,映射到XINT1,即INT1.4

(4)指定中斷向量表中斷服務函數地址;

(5)使能外設對應的PIE中斷**[PIE級使能];**

(6)設置外部中斷觸發方式并使能中斷**[外設級使能];**

(7)使能CPU級中斷及全局中斷**[CPU級使能];**

(8)編寫外部中斷服務函數。

編程實現:

//外部中斷配置步驟
//1。失能CPU級中斷,并初始化PIE控制器寄存器和PIE中斷向量表
//2.使能IO時鐘,配置IO口為輸入
//3.設置IO口與中斷線的映射關系
//4.指定中斷向量表中斷服務函數地址
//5.使能外設對應的PIE中斷
//6.設置外部中斷觸發中斷觸發方式并使能中斷
//7.使能CPU級中斷及全局中斷
void EXTI_Init(void)
{

// 步驟 1. 失能CPU級中斷,并初始化PIE控制器寄存器和PIE中斷向量表

DINT; // 禁止CPU全局中斷
  InitPieCtrl();
  IER = 0x0000;    // 禁止CPU中斷和清除所有CPU中斷標志
  IFR = 0x0000;
  InitPieVectTable();      //初始化PIE中斷向量表,并使其指向中斷服務子程序(ISR)

//步驟 2.使能IO時鐘,配置IO口為輸入
EALLOW;//關閉寫保護

SysCtrlRegs.PCLKCR3.bit.GPIOINENCLK = 1;    //開啟GPIO時鐘


  GpioCtrlRegs.GPAMUX2.bit.GPIO17 = 0;     //配置為通用IO口
  GpioCtrlRegs.GPADIR.bit.GPIO17 = 0;     //配置為輸入
  GpioCtrlRegs.GPAPUD.bit.GPIO17 = 0;     //配置為上拉
  EDIS;//打開寫保護




 //步驟3:設置IO口與中斷線的映射關系
  EALLOW;
  GpioIntRegs.GPIOXINT1SEL.bit.GPIOSEL = 17;//XINT1 對應 GPIO17腳(GPIO0-31配置XINT1、2;GPIO32-63配置XINT3~7)
  EDIS;

//步驟 4. 指定中斷向量表中斷服務函數地址
EALLOW;
PieVectTable.XINT1 = &EXTI_IRQ;
EDIS;

//步驟 5.使能外設對應的PIE中斷
PieCtrlRegs.PIEIER1.bit.INTx4 = 1;//使能PIE 1 組 4通道 (這里需要查詢PIE的中斷矢量表 來確定使能的位)

//6.設置外部中斷觸發中斷觸發方式并使能中斷
XIntruptRegs.XINT1CR.bit.POLARITY = 0;//下降沿觸發有效
XIntruptRegs.XINT1CR.bit.ENABLE = 1;//使能外部中斷

//步驟 7. 使能CPU級中斷及全局中斷
IER |= M_INT1;//使能INT1中斷通道 (對應的變量值在 DSP2833x_Device.h中已進行宏定義。要用|或符號賦值,防止改變其他位)

EINT;//打開全局中斷
  ERTM;//當使用仿真器調試時 開啟DEBUG中斷

}

int CNT=0;
//步驟 8. 編寫中斷函數,在中斷函數結束前寫1清零PIEACK對應位
interrupt void EXTI_IRQ(void)
{
GpioDataRegs.GPCTOGGLE.bit.GPIO75 = 1;
CNT = CNT+1;
// DELAY_US(5000);//延時

PieCtrlRegs.PIEACK.bit.ACK1 = 1;//寫1清零PIEACK對應位

}

主函數為:

void main(void)
{

InitSysCtrl();


GIOP_Init();
EXTI_Init();


while(1)
{

// GpioDataRegs.GPCSET.bit.GPIO75 = 1;
}

}

通過上面的程序就能使用按鍵使得一個LED燈翻轉。

*五、總結

本篇文章介紹了DSP28335的外部中斷的使用,使用一個按鍵作為外部輸入,觸發LED燈進行翻轉。

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

    關注

    68

    文章

    19409

    瀏覽量

    231207
  • led燈
    +關注

    關注

    22

    文章

    1592

    瀏覽量

    108419
  • GPIO
    +關注

    關注

    16

    文章

    1216

    瀏覽量

    52391
  • 外部中斷
    +關注

    關注

    1

    文章

    132

    瀏覽量

    15887
  • DSP28335
    +關注

    關注

    22

    文章

    59

    瀏覽量

    40773
收藏 人收藏

    評論

    相關推薦

    Dsp28335中斷的方

    本帖最后由 mr.pengyongche 于 2013-4-30 02:59 編輯 Dsp28335中斷的方
    發表于 01-06 13:24

    DSP28335外部中斷求助

    ` 本帖最后由 mr.pengyongche 于 2013-4-30 02:54 編輯 我想用GPIO15來控`
    發表于 03-30 07:57

    基于DSP28335的電能質量監測儀器設計

    基于DSP28335的電能質量監測儀器設計
    發表于 11-02 11:22 ?51次下載

    Dsp28335中斷的方法

    Dsp28335中斷的方法Dsp28335中斷的方法
    發表于 01-08 14:17 ?14次下載

    基于DSP28335的三電平SVPWM算法研究

    基于DSP28335的三電平SVPWM算法研究
    發表于 04-15 18:29 ?56次下載

    DSP28335中文手冊

    TI公司 DSP28335中文資料數據手冊
    發表于 05-19 11:17 ?163次下載

    DSP28335研發筆記_ccs5.2

    DSP28335研發筆記
    發表于 12-30 15:04 ?29次下載

    DSP28335串口通信(SCI)的理論,介紹和應用

    DSP28335串口通信(SCI)的理論,介紹和應用
    發表于 09-04 09:28 ?37次下載
    <b class='flag-5'>DSP28335</b>串口通信(SCI)的理論,介紹和應用

    基于DSP28335串口通信(SCI)的理論,介紹和應用

    基于DSP28335串口通信(SCI)的理論,介紹和應用
    發表于 09-04 14:07 ?29次下載
    基于<b class='flag-5'>DSP28335</b>串口通信(SCI)的理論,介紹和應用

    dsp28335如何入門:程序設計步驟

    本文首先介紹了dsp28335的概念,其次介紹了dsp28335電氣特性及特點,最后詳細闡述了關于dsp28335的程序設計步驟。
    發表于 05-23 17:09 ?2w次閱讀

    dsp28335開發板中文資料匯總(dsp28335最小系統_引腳圖_封裝_初始化程序)

    本文主要介紹了dsp28335開發板最小應用系統設計、dsp28335引腳圖功能和dsp28335封裝及dsp28335初始化程序。
    發表于 05-24 17:25 ?6.5w次閱讀
    <b class='flag-5'>dsp28335</b>開發板中文資料匯總(<b class='flag-5'>dsp28335</b>最小系統_引腳圖_封裝_初始化程序)

    使用DSP28335控制電機的資料合集免費下載

    本文檔的主要內容詳細介紹的是使用DSP28335控制電機的資料合集免費下載包括了:電機控制原理圖,硬件手冊,H橋直流電刷電機控制,DSP28335使用程序,DSP28335電機控制開發板測試步驟,
    發表于 05-18 08:00 ?165次下載
    使用<b class='flag-5'>DSP28335</b>控制電機的資料合集免費下載

    DSP28335學習筆記(3):InitSysCtrl

    在上一節中,我們講到DSP28335的啟動原理,啟動后來到main函數執行用戶代碼。我們現在已經啟動完成,那么啟動后我們如何對芯片進行配置呢?
    的頭像 發表于 07-02 15:48 ?4268次閱讀
    <b class='flag-5'>DSP28335</b>學習筆記(3):InitSysCtrl

    DSP28335學習筆記(5):GPIO介紹及使用

    在前面的章節中,我們對DSP28335系統初始化過程有了一個初步的了解,下面的章節我們開始外設的應用。
    的頭像 發表于 07-02 15:52 ?9790次閱讀
    <b class='flag-5'>DSP28335</b>學習筆記(5):GPIO介紹及使用

    研旭DSP28335實用版-硬件測評

    電子發燒友網站提供《研旭DSP28335實用版-硬件測評.pdf》資料免費下載
    發表于 10-09 15:19 ?3次下載
    研旭<b class='flag-5'>DSP28335</b>實用版-硬件測評
    主站蜘蛛池模板: 久久99热精品免费观看k影院 | 97视频免费上传播放 | 欧美伊人久久综合网 | 一级不卡毛片 | 中文字幕佐山爱一区二区免费 | 成人午夜性a一级毛片美女 成人午夜性视频欧美成人 成人小视频在线 | ts人妖另类国产 | 91网站在线播放 | 午夜男人影院 | 国产精选经典三级小泽玛利亚 | 色综合亚洲天天综合网站 | 怡红院最新网址 | 亚洲理论在线 | 酒色影院| 欧美网站在线播放 | 成人三级在线播放线观看 | 成人国产在线24小时播放视频 | 黄色毛片子 | 午夜视| 5g影院天天| 成人网男女啪啪免费网站 | 美女国产在线观看免费观看 | 深爱婷婷网| 天堂在线最新资源 | 日日摸夜夜添免费毛片小说 | 夜色资源站www国产在线观看 | 免费在线观看视频网站 | 男女性接交无遮挡免费看视频 | 日本不卡在线视频高清免费 | 精品国内一区二区三区免费视频 | 日本欧美一级 | 黄色永久免费 | 成人高清毛片a | 亚洲欧美色中文字幕 | 国产精品一级毛片不收费 | 婷婷春色| 天天做日日爱 | 91牛牛| 欧美在线观看一区二区三 | 91色在线视频| 啪啪福利视频 |