国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

TMS320F28335外部中斷分析與研究

2021-09-22 10:14:03魯昕曈
關鍵詞:外設寄存器中斷

魯昕曈

【摘? 要】隨著信息科技的發(fā)展與變革,DSP技術已成為人們廣泛關注與應用的前沿技術。DSP不僅可靠性較高,而且穩(wěn)定性較好、功耗較低,可以實現(xiàn)大規(guī)模集成。此外,它很大程度上提高了信號處理能力,可以滿足更高的實時性要求。中斷處理是DSP應用系統(tǒng)中非常重要的一個環(huán)節(jié)。TMS320F28335提供了定時器和中斷器功能,因此,在數(shù)據(jù)采集、工業(yè)控制、智能測量等方面具有廣泛的應用。論文主要闡述DSP芯片TMS320F28335外部中斷的相關知識和中斷機制,并詳細說明了中斷處理過程及實例分析。

【Abstract】With the development and change of information technology, DSP technology has become the frontier technology widely concerned and applied. DSP not only has high reliability, but also has good stability and low power consumption, which can realize large-scale integration. In addition, it greatly improves the signal processing ability and can meet higher real-time requirements. Interrupt processing is a very important link in DSP application system. TMS320F28335 provides timer and interrupter functions, so it has a wide range of applications in data acquisition, industrial control, intelligent measurement and so on.? This paper mainly describes the knowledge and mechanism of external interrupt of DSP chip TMS320F28335, and describes the process of interrupt processing and example analysis in details.

【關鍵詞】外部中斷;中斷系統(tǒng);TMS320F28335

【Keywords】external interrupt; interrupt system; TMS320F28335

【中圖分類號】TP311.5? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?【文獻標志碼】A? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?【文章編號】1673-1069(2021)10-0194-03

1 研究背景

1.1 DSP的發(fā)展歷史

數(shù)字信號處理DSP是如今的一門新興學科,其發(fā)展經(jīng)歷了3個主要階段。

最初數(shù)字信號處理只能依靠微處理器完成,但是微處理器的處理速度較為緩慢,不能滿足當時大容量信息的需求。隨著大規(guī)模集成電路和半導體技術的發(fā)展,1982年第一代DSP芯片TMS32010問世,它采用了NMOS技術,速度比微處理器快數(shù)十倍,在語言合成等領域得到了廣泛的使用,后來隨著基于CMOS制作的DSP芯片的出現(xiàn),存儲容量也得到了進一步的改善,能夠在圖像硬件處理中占據(jù)一席之地。20世紀90年代,第三、四、五代DSP芯片的發(fā)明使運算速度又提高了許多。其中第五代的集成度較高,因此逐漸滲入人們的生活、學習和工作當中,成為電子器件更迭的關鍵。

1.2 DSP的發(fā)展情況

在數(shù)字化時代中,DSP己成為電子信息、通信交流器件等方面的基石。TMS320F28335是TI公司研發(fā)的一個32位浮點數(shù)字控制處理器,它的外形豐富,設計多樣化,性價比高。該芯片具有豐富的系統(tǒng)資源,時鐘控制靈活,提供了多種低功耗模式;有56個通用I/O引腳可以復用,功能豐富;獨特的寄存器保護模式可確保程序穩(wěn)定地運行;PIE中斷擴展控制器能夠增強芯片的中斷處理能力。故本文主要對TMS320F28335芯片的外部中斷進行詳細的介紹、分析與研究。

2 DSP中斷概述

CPU在正常執(zhí)行程序時,有時會接受實時性要求更高或者更高級別的指令,就需要中斷現(xiàn)有的程序而去響應其他請求,進入中斷服務程序;當執(zhí)行完該程序時能夠返回原有的程序繼續(xù)執(zhí)行,該過程就是中斷響應機制。中斷的主要功能有:①實現(xiàn)CPU與外部設備的速度配合;②實時控制;③出現(xiàn)故障時及時發(fā)現(xiàn)并處理;④實現(xiàn)人機互聯(lián)。

3 中斷系統(tǒng)簡介

3.1 中斷源

當某種軟件或硬件事件發(fā)生時,計算機暫時停止當前的程序,而去執(zhí)行另一個程序,處理完畢后又返回原程序繼續(xù)執(zhí)行。引起這一過程的原因或者能觸發(fā)中斷請求信號的來源稱為中斷源。TMS320F28335處理器中斷源以及連接關系如圖1所示。

軟件中斷由指令產(chǎn)生,而硬件中斷是由片上外設或外部中斷源產(chǎn)生的。中斷系統(tǒng)流程圖如圖2所示。

3.2 中斷管理機制

F28335采用三級中斷機制,包括CPU級中斷、PIE級中斷和外設級中斷。CPU需要通過PIE級中斷作為中間級,外設才能夠經(jīng)過外設級中斷、PIE、CPU的允許并作出響應時產(chǎn)生中斷響應。外設級中斷主要管理具體的外設中斷源條件;PIE級中斷負責將外設級中斷分組并根據(jù)優(yōu)先級進行控制;CPU級中斷管理則負責處理直接向CPU申請的中斷請求。

3.2.1 CPU中斷

當中斷請求送達CPU時,CPU級中斷的標志位IFR將會被置位。標志鎖存到IFR,并且外設中斷請求不被屏蔽時,CPU就能響應該中斷。一切準備就緒后,CPU就會開始執(zhí)行相應的中斷服務。

3.2.2 PIE級中斷

PIE模塊把外部引腳中斷和8個外設模塊組合到1個CPU中斷上,它們一共分成12組,每組能夠組合到1個新的CPU中斷上,所以PIE可以一共支持96個獨立的中斷。當PIE發(fā)出中斷請求時,對應的PIED的中斷標志位置1,然后檢查其對應的中斷應答寄存器置位,若該組的ACKx位為0,那么PIE向CPU發(fā)出中斷請求;若ACKx位為1,那么PIE將繼續(xù)等待,直到ACKx位被清零,才能夠再次發(fā)出請求。

3.2.3 外設級中斷

每個外設都能產(chǎn)生一個中斷,并且它的寄存器中斷標志位會被置位,外設模塊向PIE發(fā)出中斷請求;若外設模塊中斷使能失效,中斷標志位就會保持置位狀態(tài),等待軟件清零。

3.3 外部中斷相關寄存器

3.3.1 外部中斷控制寄存器(XINTnCR)

F28335支持7個外部中斷(XINT1-XINT7),XINT13還有一個不可屏蔽的外部中斷XNMI共用中斷源。每一個外部中斷可以被選擇為正邊沿或負邊沿觸發(fā),也可以被使能或者禁止(包括XNMI)。其各位信息如表1所示。

3.3.2 外部NMI中斷控制寄存器(XNMICR)

外部NMI中斷控制寄存器(XNMICR)各位信息如表2所示。

3.3.3 外部中斷x計數(shù)器(XINTXCTR)

外部中斷x計數(shù)器(XINTXCTR)各位信息如表3所示。

4 外部中斷配置過程

①失能CPU級中斷,并初始化PIE控制器寄存器和PIE中斷向量表;②使能IO口時鐘,配置IO口為輸入;③設置IO口與中斷線的映射關系;④指定中斷向量表中斷服務函數(shù)地址;⑤使能外設對應的PIE中斷;⑥設置外部中斷出發(fā)方式并使能中斷;⑦使能CPU級中斷及全局中斷;⑧編寫外部中斷服務函數(shù)。

5 外部中斷實驗

5.1 實驗原理

5.1.1 中斷處理

DSP的中斷控制器發(fā)現(xiàn)一個中斷以后,它就會把下一個將要執(zhí)行的指令地址保存起來,然后跳到中斷服務指令處執(zhí)行,執(zhí)行完以后,再把剛才保存的地址重新裝入執(zhí)行寄存器,然后正常執(zhí)行。中斷向量表里面保存著不同中斷的服務指令入口地址,同時DSP內(nèi)部有1個中斷控制器,它能夠識別每一個編號的中斷,所以一旦中斷發(fā)生后,中斷控制器就可以根據(jù)編號在相應的中斷向量表里面找中斷服務指令的地址。

5.1.2 中斷執(zhí)行的流程

該中斷執(zhí)行的過程大致如下:①若外設級中斷產(chǎn)生,則檢查外設級中斷是否允許,若允許則將中斷送至PIE模塊,令PIEIFRx,y=1。②若PIEACKx=0,則將中斷送至CPU,PIEACKx=1,F(xiàn)IRx=1。③程序繼續(xù)向下執(zhí)行,判斷INTM是否為0,若是則啟動現(xiàn)場保護,清除IFRx,并且置位INTM,清除EALLOW。④識別中斷向量,并且讀取中斷向量地址,然后執(zhí)行中斷服務程序,清除PIEACKx和INTM。⑤返回開始狀態(tài)。

5.2 程序設計

第一,實驗準備:①連接實驗設備。②連接試驗箱附帶的鍵盤的PS2插頭與鍵盤接口P8。③打開供電電源開關。第二,設置Code Composer Studio 3.1,在硬件仿真下運行。第三,啟動Code Composer Studio 3.1,選擇菜單Debug—Reset CPU。第四,右鍵點擊Project Explorer窗口下的“Open Project”命令打開該工程。第五,點擊菜單欄下Project/Build All命令編譯、下載程序。第六,運行程序,按下鍵盤上的任意鍵,觀察指示燈亮滅狀態(tài)。第七,觀察中斷執(zhí)行情況,單擊“Debug”菜單中“暫?!卑粹o,在程序中加斷點,重新運行程序,觀察程序在斷點停留的時間。第八,退出仿真模式,右鍵點擊Project Explorer窗口下的工程文件的Close Project命令關閉該工程,關閉CCS軟件,實驗完畢。

5.3 實驗說明

TMS320F28335有4個LED燈和8個開關,它們都連接到CPLD上,通過編寫程序來實現(xiàn)特定的功能。

SW1的設置如表4所示。

撥碼開關示意如圖3所示。

6 實驗結果與程序分析

通過編譯程序生成的.out文件,再經(jīng)過加載,運行以后分別按1次和8次“單脈沖輸出”開關,試驗箱上LED燈的情況如圖4所示。

要使用外部中斷,需要從2個方面進行準備:第一,硬件上必須把中斷信號引到DSP的外部中斷引腳上。第二,軟件上需要有如下的配置:①初始外部中斷寄存器。②使能CPU INT1中斷。③編寫中斷服務程序。④將中斷服務程序的入口地址賦給中斷向量表。

TMS320F28335可以響應INT0~INT4五個外中斷。顯示模塊可以通過接口P8連接到小鍵盤上,當收到鍵盤傳送的掃描碼時,就向DSP的INT2發(fā)送中斷信號;當DSP讀鍵盤時,將掃描碼傳送到數(shù)據(jù)總線上,小鍵盤每按下1個鍵就會產(chǎn)生2個掃描碼。為了能夠通過中斷方式來實現(xiàn)數(shù)碼管狀態(tài)的變化,需先在主函數(shù)中進行初始化操作。首先清除所有的中斷并且初始化中斷向量表,然后打開GPIO時鐘,GPIO50引腳為輸入低電平,設置IO口與中斷線的掛接關系,再確定中斷向量表中斷服務的地址函數(shù),接著外設對應的PIE中斷使能,設置外部中斷觸發(fā)方式并外設中斷使能,使能CPU級中斷及全局中斷,編寫中斷函數(shù),在中斷函數(shù)結束前寫1清零PIEACK對應位,即設置數(shù)碼管顯示、等待、寫1清零PIEACK對應位。輸入當按下1次“單脈沖輸出”開關,第1個LED燈亮,當按下1次“單脈沖輸出”開關,試驗箱第4個LED燈亮。

7 結論

通過以上實驗的操作與分析,對TMS320F28335外部中斷相關知識有了更加深入的理解。中斷分為3級,外設級一旦產(chǎn)生中斷,對應的外設中斷標志寄存器中的中斷標志位IF就會置位,將中斷信號送入PIE控制器;若外設中斷被禁止輸入,則IF仍保持為1,直到軟件清零。由于在TMS320F28335中斷系統(tǒng)中,當同時有多個外設發(fā)出中斷請求時,CPU會優(yōu)先響應較高一級的中斷,然后再處理低級的請求。如果多個請求先后到來,則不存在優(yōu)先級的問題,即按照順序依次執(zhí)行。TMS320F28335的一個缺點在于其硬件中沒有斷嵌套程序,并且ISR的硬件不能中斷,只能通過軟件程序編寫實現(xiàn)。本文只針對TMS320F28335的外部中斷作了簡單的分析,對于中斷嵌套程序的編寫還需進一步研究。

【參考文獻】

【1】劉陵順,高艷麗,張樹團.TMS320F28335 DSP原理及開發(fā)編程[M].北京:北京航空航天大學出版社,2011.

【2】趙紅怡.DSP技術與應用實例[M].北京:電子工業(yè)出版社,2012.

【3】譚威,羅仁澤,高文剛,等.基于TMS320F28335的DSP最小系統(tǒng)設計[M].西安:西安電子科技大學出版社,2015.

猜你喜歡
外設寄存器中斷
Lite寄存器模型的設計與實現(xiàn)
計算機應用(2020年5期)2020-06-07 07:06:44
跟蹤導練(二)(5)
千里移防,衛(wèi)勤保障不中斷
解放軍健康(2017年5期)2017-08-01 06:27:44
分簇結構向量寄存器分配策略研究*
Microchip推出具備雙ADC外設的全新器件,擴展其低成本8位PIC?單片機產(chǎn)品線
AT89C51與中斷有關的寄存器功能表解
FPGA內(nèi)嵌PowerPC的中斷響應分析
微處理機(2012年4期)2012-06-13 11:32:24
高速數(shù)模轉換器AD9779/AD9788的應用
一種可重構線性反饋移位寄存器設計
通信技術(2010年8期)2010-08-06 09:29:16
貼身呵護 必不可少的PSP外設
宁阳县| 泾川县| 农安县| 微山县| 陆河县| 漳平市| 桐庐县| 大港区| 中宁县| 上林县| 绥滨县| 延安市| 固始县| 永平县| 汤原县| 凌云县| 鄂伦春自治旗| 绥德县| 河间市| 浦东新区| 县级市| 宝清县| 柳林县| 克什克腾旗| 南丹县| 芦山县| 谷城县| 老河口市| 普宁市| 卫辉市| 海阳市| 杭锦旗| 囊谦县| 上林县| 灵丘县| 宣恩县| 西盟| 星子县| 改则县| 尚志市| 青浦区|