定時器+外部中斷課件_第1頁
定時器+外部中斷課件_第2頁
定時器+外部中斷課件_第3頁
定時器+外部中斷課件_第4頁
定時器+外部中斷課件_第5頁
已閱讀5頁,還剩15頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

DSP實驗課——第三周主要內容:DSP定時器及外部中斷

本周實驗課主要內容一、中斷的相關知識(課本81~86頁)

1.

什么是中斷以及中斷的分類

2.

中斷管理寄存器

3.中斷矢量及優(yōu)先級、中斷向量表

4.DSP處理中斷過程及中斷程序設計二、實驗一(定時器中斷)1.什么是定時器(課本13~16頁)

2.定時器中斷的相關配置三、實驗二(外部中斷)

中斷及其分類

中斷:是由硬件或軟件驅動信號產(chǎn)生的,它使DSP暫停當前程序的執(zhí)行而去執(zhí)行中斷服務程序(ISR)。

TMS320C55xDSP支持32個中斷服務程序(ISR),中斷可以由軟件或硬件觸發(fā)。軟件中斷由程序指令(INTR、TRAP或RESET)產(chǎn)生,硬件中斷由設備的一個信號產(chǎn)生。所有C55x中斷(無論是硬件還是軟件中斷)都可以分為可屏蔽中斷和非屏蔽中斷兩類??善帘沃袛啵嚎梢酝ㄟ^軟件來加以屏蔽,所有的可屏蔽中斷都是硬件中斷,但硬件中斷不全是可屏蔽中斷;不可屏蔽中斷:包括所有的軟件中斷及部分硬件中斷。

內部中斷是指內部定時器、串口、AD、IIC、SPI等資源的中斷;而外部中斷則是外部信號引起的中斷,如高電平、低電平、上升沿、下降沿等。定時器中斷:硬件中斷、內部中斷、可屏蔽中斷外部中斷:硬件中斷、可屏蔽中斷

中斷管理寄存器中斷標志寄存器(IFR0、IFR1):它們都是16位寄存器,用來標記有可屏蔽中斷,當一個可屏蔽中斷向CPU提出申請時,IFR中相應的標志位置1,等待CPU應答中斷;中斷被響應后將相應位清0,器件復位將所有位清0。

中斷使能寄存器(IER0、IER1):用來禁止或使能可屏蔽中斷。通過設置IER0、IER1的位為1則打開相應的可屏蔽中斷,為0則關閉相應的可屏蔽中斷。上電復位時,將所有IER位清0,即禁止所有可屏蔽中斷。中斷管理寄存器

調試中斷使能寄存器(DBIER0、DBIER1):僅當CPU工作在實時仿真模式調試暫停時,這兩個16位的調試中斷使能寄存器才會使用;如果CPU工作在實時方式下,DBIER0、DBIER1將被忽略。對于可屏蔽中斷,還有一個寄存器需要配置,即:狀態(tài)寄存器ST1-55。該寄存器中的INTM中斷模式位能夠全局允許或禁止可屏蔽中斷,即允許或禁止所有的可屏蔽中斷。INTM=0,表示允許所有可屏蔽中斷;INTM=1,表示禁止所有可屏蔽中斷。介紹兩個匯編語句:BCLR為清0;BSET為置1。

中斷矢量及優(yōu)先級

中斷向量表中斷向量:可用來存放中斷服務程序的入口地址或一個跳轉指令以用來跳轉到中斷服務程序的入口地址。中斷向量地址:存放中斷服務程序入口地址的內存空間的地址。中斷向量表:是可重新定位的且總是以匯編的形式出現(xiàn)。C55x復位后,此表的起始地址可由用戶在程序的一開始進行設置。具體可以通過函數(shù)來給IVPD和IVPH賦值。C55x的中斷向量地址為:中斷向量指針I(yè)VPD(IVPH)(16位)+左移3位的中斷向量序號(0~31)。具體計算方法為IPVD+矢量序號(0~31)+016bit5bit3bit例如:復位中斷向量是0,又由于在DSP復位后中斷向量表的起始地址固定為FFFFH,所以C55x是從FFFF00H開始執(zhí)行程序。即111111111111111100000000(2進制)=FFFF00H(16進制)

DSP處理中斷過程與中斷程序設計中斷程序設計

程序中應包含中斷向量表,VC5509A默認向量表從程序區(qū)0地址開始存放,根據(jù)IPVD和IPVH的值確定向量表的實際地址。

注意觀察程序中INTR_init()函數(shù)的定義部分,其中IPVD和IPVH的值都為0x0d0;同時觀察配置文件ICETEK–VC5509-AE.cmd中的VECT段描述中o=0x0d000。向量表中每項為8個字,存放一個跳轉指令,跳轉指令中的地址為相應服務程序入口地址。第一個向量表的首項為復位向量,即CPU復位操作完成后自動進入執(zhí)行的程序入口。服務程序在服務操作完成后,清除相應中斷標志,返回,完成一次中斷服務。

定時器結構框圖計數(shù)器部分

C5509定時器的計數(shù)器分為兩類,一類用于定時器工作,一類用于CPU設置定時長度。它的定時長度為20bit:4bit的預定標器和16bit的主計數(shù)器。其中,4bit的預定標值由預定寄存器PRSC中的TDDR定義;16bit主計數(shù)器的值由定時周期寄存器PRD定義。相關寄存器的格式如下表所示。假定定時器的工作時鐘周期為clockin,則定時長度T可用下式計算:T=clockin*(PRD+1)*(TDDR+1)預定標寄存器PRSC定時周期寄存器PRD定時控制寄存器TCR定時器配置C程序流程:關閉定時器,開啟拷貝(控制寄存器TCR中TLB=1(11位),TSS=1(5位))設定定時長度T(設置PRSC中的TDDR和PRD中的PRD)停止拷貝,開啟定時器(控制寄存器TCR中TLB=0(11位),TSS=0(5位))

*tcr0=0x04f0;(0000010011110000)*prd0=0x0ffff;(65535)*prsc0=15;*tcr0=0x00e0;(0000000011100000)定時器中斷實驗程序流程圖中斷服務結束中斷服務開始改變指示燈狀態(tài)開始初始化DSP時鐘初始化中斷向量初始化EMIF接口等待中斷產(chǎn)生初始化定時器

實驗二一、實驗目的1.掌握VC5509A的中斷結構和對中斷的處理流程;2.學會C語言中斷程序設計,以及運用中斷程序控制程序流程。二、實驗原理

TMS320C5509可以響應INT0-INT4五個外中斷。(使用INT2)顯示/控制模塊ICETEK-CTR通過接口P8連接小鍵盤,接收小鍵盤傳送的掃描碼,并在每個掃描碼結束后保存,同時向DSP的INT2發(fā)送中斷信號;當DSP讀鍵盤時將掃描碼送到數(shù)據(jù)總線上。小鍵盤上每次按下一個鍵將產(chǎn)生2個掃

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論