1. <code id="ya7qu"><span id="ya7qu"><label id="ya7qu"></label></span></code>

    <b id="ya7qu"><bdo id="ya7qu"></bdo></b>
    <wbr id="ya7qu"><optgroup id="ya7qu"><strike id="ya7qu"></strike></optgroup></wbr>
  2. <u id="ya7qu"><bdo id="ya7qu"></bdo></u>
    現在位置:范文先生網>理工論文>電子通信論文>TMS320F206的中斷技術及其實現

    TMS320F206的中斷技術及其實現

    時間:2023-02-20 22:51:24 電子通信論文 我要投稿
    • 相關推薦

    TMS320F206的中斷技術及其實現

      摘要:TMS320F206是德州儀器公司定點DSP芯片中具有代表性的一種,在介紹其特點和中斷技術的基礎上,重點闡述了該芯片在軟件開發過程中中斷技術是如何實現的。
      關鍵詞:TMS320F206DSP中斷
      
      以信息高速公路為標志的信息化,已成為社會發展的大趨勢,并在逐步成為現實。信息化是數字化為背景的,而數字信號處理技術則是數字化最重要的基本技術之一。在過去短短的十幾年里,各種集成化的單片數字信號處理器(DSP)的性能得到了很大的改善,軟件開發工具越來越多,也越來越好;而價格卻大幅度下降,從而使得數字信號處理器件及技術更容易使用,價格也能夠為廣大用戶接受。從市場上各種DSP產品來看,德州儀器公司產品占據半壁江山,特別是TMS320系列,本文討論的TMS320F206就是這個系列中的定點數字信號處理芯片。
      
      1TMS320F206的結構特點
      
      TI公司的TMS320F206芯片是采用靜態CMOS集成電路工藝制造的。結構設計建立在TMS320C20X芯片的基礎上,只需5V的低電壓就可運行。它的先進的哈佛結構、片內外設、片上內存以及豐富的命令集使它的速度和可靠性大大提高。
      
      TMS320F206的主要特點有:
      
      (1)32K×16字的FLASHEEPROM大大降低了開發成本;
      
      (2)采用了100線TQFP的封裝技術;
      
      (3)64K字的程序存儲空間、64K字的數據存儲空間和64K字的I/O空間,通過三條并行總線(PBA、DRAB、DWAB)獨立操作。所以可以同時訪問程序空間和數據空間,在一個指定機器周期內,可央算術邏輯單元可執行多達三次的并行存儲器操作;
      
      (4)片上4.5K的RAM使得芯片可以實現快速的DSP計算,并使大部分運算能夠在一個指令周期內完成;
      
      (5)豐富的指令集和靈活的尋址方式;
      
      (6)有四條流水線操作和九級可斷,并且大多數可斷用戶可以屏蔽,可以通過軟件的方式靈活控制。
      
      2TMS320F206的可斷
      
      在TMS320F206的程序空間可,可斷向量占據了00~3fh的位置,并且中斷的優先級也是固定的,所以在編程開發時先要編好一個中斷向量表,對于沒有用到的中斷也應該編上,并讓它返回到一個空位置,以免發生意外情況。TMS320F206的中斷有許多特殊的地方,如HOLD和INT1共用一個中斷向量,INT2與INT3也共用一個中斷向量。如果在實際應用中用到的中斷比較多時,那么控制中斷就是一件比較難的事,此時就要對它的三個中斷寄存器靈活運用。下面就來介紹這三個寄存器。
      
      (1)16位的中斷標志寄存器(IFR),地址為0006h,各位情況如圖1所示。當有一個可并蔽中斷到達CPU時,IFR的相應標志位就置1,這表明相應中斷正在被掛起或正在等待響應。將1寫入到相應的標志位,可清除相應的位并清除其中斷請求。
      
      在圖1中,0表示一般情況下讀的數為0,R表示讀,W1C表示寫1時把這位清為0。-0表示復位后這位為0。
      
      (2)16位的中斷屏蔽寄存器(IMR),地址為0004h,各位情況如圖2所示。它用來屏蔽外部和內部硬件中斷(NMI和RS除外)。當要屏蔽某硬件中斷時,就把相應位清0當要開放某硬件中斷時,就把相應位置1,并且它的每一位不受硬件復位的影響。
      
      在圖2中,0表示一般情況下讀的數為0,R表示讀,W表示寫,-0表示復位后這位為0。2位是定時器中斷,該位為1表示開放定時器中斷。
      
      (3)16位的中斷控制寄存器(ICR),地址為0FFECh,各位情況如圖3所示。主要用來控制HOLD/INT1和INT2/INT3。
      
      在圖3中,0位為0時表示屏蔽中斷2(INT2),0位為1時表示開放中斷2;1位為0時表示屏蔽中斷3(INT3),1位為1時表示開放中斷3;2、3位分別為INT2、INT3的標志位,當其為1時表示對應的中斷有中斷請求;4位1時表示單邊沿觸發模式,INT1引腳下降沿到來時,向CPU發出中斷請求,用于INT1中斷。4位為0時表示
      
      
      
      雙邊沿觸發模式,這種模式適用于HOLD操作。
      
      此外,TMS320F206還有兩個不能由這三種寄存器來操作和控制的中斷,即:
      
      (1)RS(Reset),RS上一旦有請求,將中止程序的流程,使程序執行重新從程序存儲器地址為0000h處開始執行。
      
      (2)NMI,當NMI引腳激活時,程序將強行轉移到中斷向量在24h的位置,并且其它可屏蔽中斷都將禁止。所以當NMI引腳不用時,通常應把它到高電平,發免發生意外情況。
      
      3TMS320F206的中斷實現
      
      在應用實際中,讓INT2引腳測交流電壓頻率和相位而交流電流相位則由INT3引腳來測量,并計算電壓、電流間的相位差。在本實例中,中斷信號均采用過零信號,定時器的中斷向量為timer,INT2/INT3的中斷向量為intp2(中斷向量表略)。
      
      主程序流程圖中圖4所示。
      
      主程序如下:
      
      start:nop
      
      setcintm;禁止所有中斷
      
      splk#0ffffh,ifr;清中斷標志
      
      splk#2h,imr;清中斷標志
      
      splk#2h,imr;清INT2,INT3的屏蔽位
      
      splk#1h,60h
      
      out60h,0ffech;僅開INT2
      
      splk#0h,61h
      
      splk#0f9fh,62h;設置定時器
      
      out61h,0fffah
      
      out62h,0fff9h
      
      clrcintm;開中斷
      
      wait:idle
      
      bwait1;等待中斷
      
      中斷INT2/3服務程序(intp2)流程圖如圖5所示。
      
      中斷INT2/3服務程序(intp2)如下:
      
      Intp2:setcintm;進入INT2,INT3中斷服務程序。
      
      ……;根據控制字判斷是進入頻率測試子程序還是進入相位測試子程序
      
      bondintp23,tc
      
      bintp21
      
      intp23:in60h,0fffech;讀控制字ICR
      
      bit60h,13
      
      sst#1h,62h
      
      bit62h,4;判斷是INT2還是INT3
      
      bcndintp22,tc中斷
      
      bintp31
      
      intp22:splk#0002h,60h;INT2服務程序
      
      out60h,0ffech;開INT3中斷
      
      splk#0c29h,63h
      
      out63h,0fff8h;啟動定時器
      
      splk#0002h,ifr;清INT2/INT3的標志位
      
      clrcintm;開中斷
      
      ret
      
      intp31:setcintm;INT3服務程序
      
      splk#0412h,64h
      
      out64h,0fff8h;停止定時器
      
      
      
      
      splk#0002h,ifr;清INT2/INT3的標志位
      
      clrcintm
      
      ret
      
      in65h,0fffah;讀定時器的時間
      
      ……;計算相位
      
      intp21:setcintm;判斷中斷次數,第一次開
      
      ……;定時器,第二次關定時器
      
      bchdstoptimerl,ntc
      
      out63h,0fff8h;啟動定時器
      
      splk#0002h,ifr;清除INT2/3標志
      
      clrcintm;開中斷
      
      ret
      
      stoptimer1:splk#0412h,64h
      
      out64h,0fff8h;關定時器
      
      ……;計算頻率
      
      b$;等待
      
      定時器中斷服務程序(timer)流程圖如圖6所示。
      
      timer:lacl73h;定時器中斷服務程序
      
      ……;據控制字判斷是進入頻率測試子程序還是進入相位測試子程序。
      
      cmpr0
      
      bcndtimer2,tc
      
      btimer1
      
      timer1:lacl69h;頻率定時器服務子程序
      
      add#1h
      
      sacl69h
      
      splk#4h,ifr;清除定時器標志
      
      clrcintm
      
      ret
      
      timer2:lacl69h;相位定時器服務子程序
      
      add#1h
      
      sacl69h
      
      splk#4h,ifr;清定時器的標志位
      
      clrcintm
      
      ret;中斷返回
      
      
      
      

    【TMS320F206的中斷技術及其實現】相關文章:

    嵌入式WebServer技術及其實現08-06

    雙目立體視覺技術的實現及其進展08-06

    基于MPLS的VPN技術原理及其實現08-06

    在CPLD管理下實現高效多串口中斷源08-06

    多制式語音編碼及其DSP實現08-06

    TrueFFS原理及其在CF卡上的實現08-06

    論司法獨立及其實現08-12

    TMS320C32 DSP的中斷編程方法及BOOT功能實現08-06

    固定幾何結構的FFT算法及其FPGA實現08-06

    国产福利萌白酱精品tv一区_日韩亚洲中字无码一区二区三区_亚洲欧洲高清无码在线_全黄无码免费一级毛片
    1. <code id="ya7qu"><span id="ya7qu"><label id="ya7qu"></label></span></code>

      <b id="ya7qu"><bdo id="ya7qu"></bdo></b>
      <wbr id="ya7qu"><optgroup id="ya7qu"><strike id="ya7qu"></strike></optgroup></wbr>
    2. <u id="ya7qu"><bdo id="ya7qu"></bdo></u>
      日本三级香港少妇 | 宅男噜噜69国产精品观看 | 在线人成精品免费视频 | 亚洲精品无在线码 | 亚洲人成在线观看网站高清 | 亚洲第四色色色色 |