<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > DSP芯片TMS320f2812的外中斷

          DSP芯片TMS320f2812的外中斷

          作者: 時(shí)間:2011-06-06 來源:網(wǎng)絡(luò) 收藏

          一.實(shí)驗(yàn)?zāi)康?br />1.通過實(shí)驗(yàn)熟悉F2812A的響應(yīng)過程。
          2.學(xué)會(huì)C語言程序設(shè)計(jì),以及運(yùn)用程序控制程序流程。
          二.實(shí)驗(yàn)原理
          1.中斷及中斷處理過程
          (1)中斷簡介
          中斷是一種由硬件或軟件驅(qū)動(dòng)的信號(hào),在接到此信號(hào)時(shí),將當(dāng)前程序懸掛起來,
          轉(zhuǎn)向去執(zhí)行另外一個(gè)任務(wù),稱為中斷服務(wù)程序(ISR)。TMS320f28x 可支持32 個(gè)ISR,
          可由硬件或軟件觸發(fā)。
          所有的C28x 中斷,可以分成可屏蔽中斷和不可屏蔽中斷兩種,軟件中斷是不可屏蔽的。
          (2)處理中斷的步驟
          ①接收中斷請(qǐng)求。請(qǐng)求由軟件或硬件發(fā)出。
          ②響應(yīng)中斷請(qǐng)求。對(duì)于可屏蔽中斷,需要滿足若干條件,才發(fā)生響應(yīng);而對(duì)于不可屏蔽中
          斷,則立即響應(yīng)。
          ③準(zhǔn)備執(zhí)行中斷服務(wù)程序。
          -完成當(dāng)前正在執(zhí)行的指令;將進(jìn)入流水線但還未解碼的指令清除。
          -自動(dòng)保存若干寄存器的值到數(shù)據(jù)堆棧和系統(tǒng)堆棧。
          -取得用戶定義的中斷向量表中當(dāng)前中斷向量,中斷向量指向中斷服務(wù)程序入口。
          ④執(zhí)行中斷服務(wù)程序。中斷服務(wù)程序包含中斷返回指令,這樣返回時(shí)可以出棧以前保存的
          關(guān)鍵寄存器數(shù)據(jù),從而恢復(fù)中斷服務(wù)程序執(zhí)行前的現(xiàn)場。
          (4)外中斷
          可以響應(yīng)兩個(gè)外中斷。
          2.ICETEK-CTR板的鍵盤接口
          顯示/控制模塊ICETEK-CTR通過接口P8連接小鍵盤,接收小鍵盤傳送的掃描碼,并在
          每個(gè)掃描碼結(jié)束后保存,同時(shí)向DSP的XINT2 發(fā)送中斷信號(hào);當(dāng)DSP讀鍵盤時(shí)將掃描碼送到
          數(shù)據(jù)總線上。小鍵盤上每次按下一個(gè)鍵將產(chǎn)生2個(gè)掃描碼、2 次中斷。
          3.程序編制
          由一個(gè)不含中斷處理程序的工程通過改寫加入中斷處理程序部分大致需要如下操作(假設(shè)
          使用INT2):
          (1)編制中斷服務(wù)程序:可以用C語言程序?qū)崿F(xiàn)(參見實(shí)驗(yàn)程序),編寫單獨(dú)的一個(gè)函數(shù)XINT,
          此函數(shù)使用interrupt 修飾,沒有參數(shù)和返回值。
          (2)構(gòu)造中斷向量表:程序中“InitPieVectTable();”是初始化向量表,
          “PieVectTable.XINT2 = XINT2_isr;”把中斷服務(wù)程序和向量表該中斷對(duì)應(yīng)起來。
          (3)主程序中進(jìn)行初始化設(shè)置:使能中斷,清中斷等。
          4.實(shí)驗(yàn)程序流程圖(如下圖9-1所示):

          本文引用地址:http://www.ex-cimer.com/article/150624.htm

          圖9-1 程序流程圖
          三.實(shí)驗(yàn)設(shè)備
          計(jì)算機(jī),ICETEK-F2812-EDU實(shí)驗(yàn)箱(或ICETEK 仿真器+ICETEK-F2812-A系統(tǒng)板+相關(guān)連
          線及電源)。
          四.實(shí)驗(yàn)內(nèi)容與步驟
          1.實(shí)驗(yàn)準(zhǔn)備
          (1)連接實(shí)驗(yàn)設(shè)備:請(qǐng)參看本書第一部分、二。
          (2)連接實(shí)驗(yàn)箱附帶的鍵盤的PS2插頭到ICETEK-CTR的“鍵盤接口”P8。
          (3)將ICETEK-CTR板的供電電源開關(guān)撥動(dòng)到“開”的位置。
          2.設(shè)置Code Composer Studio 2.21在硬件仿真(Emulator)方式下運(yùn)行
          請(qǐng)參看本書第一部分、四、2。
          3.啟動(dòng)Code Composer Studio 2.21:請(qǐng)參看本書第一部分、五、2。
          選擇菜單Debug→Reset CPU。
          4.打開工程文件
          工程目錄:C:ICETEK-F2812-A-EDUlabDSP281x_examplesLab0304-Xintxint.pjt
          瀏覽xint.c文件的內(nèi)容,理解各語句作用。
          5.編譯、下載程序。
          6.運(yùn)行程序,觀察結(jié)果。
          運(yùn)行程序,按一下小鍵盤上任意一個(gè)鍵,注意觀察ICETEK-CTR板上指示燈閃爍的情況。
          7.觀察中斷函數(shù)的執(zhí)行
          選擇“Debug”菜單中“Halt”暫停運(yùn)行程序,在XINT2 中斷程序中的語句上加軟件斷
          點(diǎn),重新運(yùn)行程序(選擇“Debug”菜單中“Run”),觀察何時(shí)程序停留在斷點(diǎn)上。
          8.退出CCS
          五.預(yù)習(xí)要求
          1.了解F2812A的中斷響應(yīng)過程。

          2.了解C語言中斷程序設(shè)計(jì)。
          六.注意事項(xiàng)
          本實(shí)驗(yàn)要注意連接實(shí)驗(yàn)箱的連接。
          七.思考題
          修改程序完成按鍵中斷控制的指示燈依次逐一點(diǎn)亮功能。
          八.實(shí)驗(yàn)報(bào)告要求
          1.說明該實(shí)驗(yàn)中,每次按下鍵盤均會(huì)發(fā)生幾次中斷?
          2.說明該實(shí)驗(yàn)中產(chǎn)生連續(xù)的中斷的條件。
          3.說明xint2 中斷函數(shù)被執(zhí)行的條件。



          關(guān)鍵詞: 中斷 TMS320f2812 芯片 DSP

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();