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

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

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

3天內不再提示

TMS320C6455外部中斷實現 淺談外部中斷的使用

ss ? 作者:工程師譚軍 ? 2018-09-07 09:48 ? 次閱讀

本文主要是關于TMS320C6455的相關介紹,并著重對TMS320C6455外部中斷實現進行了詳盡的闡述。

TMS320C6455

TMS320C6455是TI公司推出的的一款新型高性能單核定點DSP.它是TI公司基于第三代先進VeloviTI VLIW(超長指令字)結構開發出來的新產品,在通信,醫療圖像,無線傳輸方面都可以大有作為.TMS320C6455主頻達到了1GHz,1ns的指令周期.每周期執行8條32位指令,最大峰值速度達到8000MIPS.這意味著.在1G時鐘頻率下,8000個16位“16位的MACs能在1秒鐘發生.TMS320C6455還帶有Seria/RapidlOfr)總線,互連速率每秒高達25Gbits,實現了極高的多處理性能,降低了系統消耗,比此前的外部存儲器接口快12倍,這使得多DSP級連變得十分方便.TMS320CC6455片內是基于C64xx內核的L1/L2存儲結構.片上集成有大量的存儲空間.L1P為32K字節,L1D為32K字節 L2為2M字節、比此前C64x器的存儲器容量件翻一番,其中L1P和L2都可直接映射到存儲空間。

TMS320C6455的外圍總線包括:一個內部集成電路總線(I2C).兩個多路緩沖串口總線fMcBSPs),兩個64位通用定時器(可以配置成4個32位定時器),一個可配置的16位或32位主機接口(HPI6/HPI32).一個PCI總線,一個16管腳的通用輸入/輸出端口(GPIO),一個10/100/1000M 以太網媒體訪問控制器(EMAC)。一個無縫外部存儲器接口(64一bit EMIFA),一個32位DDR2 SDRAM接口。

C6455由于自帶千兆EMAC,外接PHY物理層芯片即可實現一個千兆以太網口。千兆以太網的實現使得C6455嵌入式處理器與臺式機等設備的數據傳輸變得異常方便。TI為C6455等處理器提供了NDK(Network Develop Kit),通過NDK的使用可以簡化C6455中TCP/IP或者UDP等數據傳輸協議的實現。

外部中斷

外部中斷和其他模塊中斷中斷原理一樣,也是先設置中斷級,然后PIE級,最后CPU級,外部中斷的中斷寄存器在中斷頭文件中,中斷觸發設置在中斷C文件中,外部中斷作為一個單獨的模塊使用。28335支持8 個可屏蔽的外部中斷(XINT1–XINT7, XNMI)。XNMI 可設置成INT13 或者CPU 的NMI 中斷。每一個中斷可設置成負邊沿、正邊沿或者正負邊沿觸發,并且設置啟用或禁用(包括XNMI 在內)。XINT1, XINT2,和XNMI 還包含一個16 位自由運行的遞增計數器,當檢測到一個有效的中斷邊沿時,該計數器復位為0。這個計數器可被用于中斷精確計時。與281x 器件不同,28335沒有專用的外部中斷引腳。XINT1,XINT2 和XINT 中斷可設置成GPIO0-GPIO31 引腳的輸入。XINT3–XINT7 中斷可設置成GPIO32-GPIO63 引腳的輸入。外部中斷控制寄存器的位定義如下圖所示。

TMS320C6455外部中斷實現 淺談外部中斷的使用

TMS320C6455外部中斷實現 淺談外部中斷的使用

由上可知,配置外部中斷的步驟為:

1、配置GPIO為外部中斷引腳。

2、設置外部中斷觸發條件。

3、開啟PIE中斷。

4、設置中斷向量表。

5、開啟CPU中斷。

6、編寫中斷函數,清除PIE中斷標志位。

TMS320C6455外部中斷實現

中斷模塊CSL庫使用

上面介紹了很多,其實就是想說清楚C6455的中斷機制。實際使用還是CSL比較方便。

使用CSL配置中斷需要如下幾個步驟:

1. 初始化中斷模塊

2. 使能NMI

3. 全局中斷使能

4. 打開中斷模塊

5. 綁定中斷服務程序

6. 使能相應事件

完整中斷配置例子----把GPIO4事件映射到INT4

CSL_Status intStat;

CSL_IntcContext gpiocontext;

CSL_IntcEventHandlerRecord isr_gpio;

CSL_IntcEventHandlerRecord record[1];

CSL_IntcGlobalEnableState state;

CSL_IntcParam vectId;

CSL_IntcHandle gpioIntcHandle;

CSL_IntcObj gpioIntcObj;

static void HANDLE_INTR4(void *arg)

{

//中斷服務程序

}

/*-----------------------------------------------------------------------------------

*

* 初始化外部中斷4

*

-----------------------------------------------------------------------------------*/

void InitAndEnableIntc4(void)

{

//初始化

gpiocontext.numEvtEntries = 1;

gpiocontext.eventhandlerRecord = record;

intStat = CSL_intcInit(&gpiocontext);

//使能NMI(不可屏蔽中斷)

intStat = CSL_intcGlobalNmiEnable();

//全局中斷使能

intStat = CSL_intcGlobalEnable(&state);

//打開中斷模塊(把GPIO4中斷事件映射到系統中斷INT4)

vectId = CSL_INTC_VECTID_4;

gpioIntcHandle = CSL_intcOpen(&gpioIntcObj, CSL_INTC_EVENTID_GPINT4, &vectId, &intStat);

//綁定中斷服務程序

isr_gpio.handler = (CSL_IntcEventHandler)&HANDLE_INTR4;

CSL_intcPlugEventHandler(gpioIntcHandle, &isr_gpio); //綁定

//使能該事件(開始監聽)

CSL_intcHwControl(gpioIntcHandle, CSL_INTC_CMD_EVTENABLE, NULL);

}

CSL_Status intStat;

CSL_IntcContext gpiocontext;

CSL_IntcEventHandlerRecord isr_gpio;

CSL_IntcEventHandlerRecord record[1];

CSL_IntcGlobalEnableState state;

CSL_IntcParam vectId;

CSL_IntcHandle gpioIntcHandle;

CSL_IntcObj gpioIntcObj;

static void HANDLE_INTR4(void *arg)

{

//中斷服務程序

}

/*-----------------------------------------------------------------------------------

*

* 初始化外部中斷4

*

-----------------------------------------------------------------------------------*/

void InitAndEnableIntc4(void)

{

//初始化

gpiocontext.numEvtEntries = 1;

gpiocontext.eventhandlerRecord = record;

intStat = CSL_intcInit(&gpiocontext);

//使能NMI(不可屏蔽中斷)

intStat = CSL_intcGlobalNmiEnable();

//全局中斷使能

intStat = CSL_intcGlobalEnable(&state);

//打開中斷模塊(把GPIO4中斷事件映射到系統中斷INT4)

vectId = CSL_INTC_VECTID_4;

gpioIntcHandle = CSL_intcOpen(&gpioIntcObj, CSL_INTC_EVENTID_GPINT4, &vectId, &intStat);

//綁定中斷服務程序

isr_gpio.handler = (CSL_IntcEventHandler)&HANDLE_INTR4;

CSL_intcPlugEventHandler(gpioIntcHandle, &isr_gpio); //綁定

//使能該事件(開始監聽)

CSL_intcHwControl(gpioIntcHandle, CSL_INTC_CMD_EVTENABLE, NULL);

}

結語

關于TMS320C6455外部中斷相關介紹就到這了,如有不足之處歡迎指正。

相關閱讀推薦:基于TMS320C6455的高速SRIO接口設計

相關閱讀推薦:基于TMS320C6000系列DSP的維特比譯碼程序優化設計

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

    關注

    552

    文章

    7962

    瀏覽量

    348256
  • TMS320C6455
    +關注

    關注

    0

    文章

    12

    瀏覽量

    11442
收藏 人收藏

    評論

    相關推薦

    基于TMS320C6455系列DSP的中斷系統的使用

    TMS320C6455是TI公司推出的的一款新型高性能單核定點DSP.它是TI公司基于第三代先進VeloviTI VLIW(超長指令字)結構開發出來的新產品。
    的頭像 發表于 09-07 09:35 ?1.2w次閱讀

    TMS320C6455求設計,有賞金的

    有哪位高人作過TMS320C6455的設計,本人設計需要一塊TMS320C6455最小系統板,基本模塊有TMS320C6455+nandflash+內存+千M網卡+uart串口,具體內容可以詳談,完成后,需要有原理圖+PCB圖.
    發表于 08-19 08:55

    TMS320C6455 pdf datasheet

    The TMS320C64x+™ DSPs (including the TMS320C6455 device) are the highest-performance
    發表于 08-07 22:10 ?144次下載

    TMS320C6455-850,pdf(Fixed-Poin

    The TMS320C64x+x99 DSPs (including the TMS320C6455 device) are the highest-performance
    發表于 12-08 23:31 ?11次下載

    TMS320C6455/54 Digital Signal

    for the TMS320C6455/54digital signal processors; see the TMS320C6455 Fixed-Point Digital Signal Processor data manual(literature number
    發表于 12-08 23:36 ?12次下載

    TMS320C6455-720,pdf(Fixed-Poin

    The TMS320C64x+x99 DSPs (including the TMS320C6455 device) are the highest-performance
    發表于 12-08 23:40 ?17次下載

    TMS320C6455-1200,pdf(Fixed-Poi

    The TMS320C64x+x99 DSPs (including the TMS320C6455 device) are the highest-performance
    發表于 12-08 23:43 ?21次下載

    TMS320C6455-1000,pdf(Fixed-Poi

    The TMS320C64x+x99 DSPs (including the TMS320C6455 device) are the highest-performance
    發表于 12-08 23:45 ?15次下載

    基于TMS320C6455的高速SRIO接口設計

    基于TMS320C6455的高速SRIO接口設計 引 言         數字信號處理技術已廣泛應用于通信、雷達、聲納、遙感、圖形圖像處理和語音處理等領
    發表于 02-24 16:58 ?1785次閱讀
    基于<b class='flag-5'>TMS320C6455</b>的高速SRIO接口設計

    基于TMS320C6455的視頻動目標檢測裝置設計

    介紹一種基于高速DSP芯片TMS320C6455構建的視頻動目標檢測裝置,有效地利用6455的大容量內存空間等特點,采用EDMA功能實現了高速數據傳輸的乒乓緩沖結構設計,軟件設計是基于背景更新
    發表于 04-13 15:56 ?97次下載
    基于<b class='flag-5'>TMS320C6455</b>的視頻動目標檢測裝置設計

    TMS320C6455官方源代碼

    TMS320C6455官方源代碼,又需要的下來看看
    發表于 08-08 18:26 ?101次下載

    TMS320C6455遷移到TMS320C6474

    電子發燒友網站提供《從TMS320C6455遷移到TMS320C6474.pdf》資料免費下載
    發表于 10-14 09:20 ?0次下載
    從<b class='flag-5'>TMS320C6455</b>遷移到<b class='flag-5'>TMS320C</b>6474

    TMS320C6455/C6454功耗匯總

    電子發燒友網站提供《TMS320C6455/C6454功耗匯總.pdf》資料免費下載
    發表于 10-16 11:21 ?0次下載
    <b class='flag-5'>TMS320C6455</b>/<b class='flag-5'>C</b>6454功耗匯總

    TMS320C6455/C6454上實現DDR2 PCB布局

    電子發燒友網站提供《在TMS320C6455/C6454上實現DDR2 PCB布局.pdf》資料免費下載
    發表于 10-16 11:24 ?0次下載
    在<b class='flag-5'>TMS320C6455</b>/<b class='flag-5'>C</b>6454上<b class='flag-5'>實現</b>DDR2 PCB布局

    TMS320C6455設計指南和與TMS320C6416T的比較

    電子發燒友網站提供《TMS320C6455設計指南和與TMS320C6416T的比較.pdf》資料免費下載
    發表于 10-16 10:48 ?0次下載
    <b class='flag-5'>TMS320C6455</b>設計指南和與<b class='flag-5'>TMS320C</b>6416T的比較