《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于DSP+CPLD的新型智能監測系統設計與開發
基于DSP+CPLD的新型智能監測系統設計與開發
摘要: 將CPLD/FPGA和DSP技術的結合起來實現DSP器件系統的解決方案,為測控儀器向高層次智能化方向發展提供了充分的現實可行性。為實現對電力系統大型設備智能在線監測,本文以WSM2000 DSP智能電動機保護裝置項目為背景,對一種DSP+CPLD新型的智能儀器結構進行了研究和設計。
Abstract:
Key words :

  一、背景及DSP+CPLD系統優越性

  作為電氣主設備,電動機是數量最多的一種,電動機及其保護的運行正常與否,直接關系到國計民生。據統計,可靠的保護每年可減少約20萬臺(次)以上的電動機燒毀,減少經濟損失數億元。

  傳統智能儀器大多數都是在單片機系統基礎上開發的。基于單片機的保護裝置受其內部結構、時鐘和總線的限制,運算能力弱,實時性差,軟硬件通用性不強,系統靈活性不高,日益不能滿足上述需要。DSP處理器因內部采用了區別于傳統單片機馮·諾依曼結構的哈佛結構而克服了取指令和數據都通過同一條總線完成而造成的傳輸通道瓶頸效應的問題。可編程邏輯器件(PLD)經歷了從PROM、PLA、PAL、GAL等低密度的PLD,發展到CPLD和FPGA兩種大規模的PLD,開發工具越來越完善,應用越來越普及。將CPLD/FPGA和DSP技術的結合起來實現DSP器件系統的解決方案,為測控儀器向高層次智能化方向發展提供了充分的現實可行性。

  為實現對電力系統大型設備智能在線監測,本文以WSM2000 DSP智能電動機保護裝置項目為背景,對一種DSP+CPLD新型的智能儀器結構進行了研究和設計。

 二、系統結構

  

        系統功能模塊

本系統采用美國TI 公司生產的浮點DSP器件TMS320C32作為底層主處理器件,實現對A/D采集得到的數字信號進行處理,并且把所有控制電路、地址分配等設計在EPM7128S中,使整個系統結構簡單化,體積小型化,功能多樣化。AD1674用來進行信號的采集,FLASH Memory用來存放軟件代碼、主要功能參數、故障數據記錄等;SRAM的功能一是程序仿真時使用,二是在系統脫機運行時,將FLASH Memory中的軟件搬運到SRAM中運行,提高軟的運行效率。系統功能模塊圖1所示。

  三、 CPLD開發流程

                                          設計流程圖

  CPLD的開發是指用利用CPLD芯片并借助于其開發系統,按照開發系統的工作步驟,將用戶設計轉化成CPLD配置數據并下載到CPLD芯片中實現用戶設計要求的全過程。其設計流程圖如圖2所示。

四、液晶顯示(LCD)模塊設計

 

  1  硬件接口設計內置

  T6963C控制器型液晶顯示模塊接口,由指令鎖存器、數據鎖存器、數據緩沖器、狀態寄存器以及數據控制電路、數據棧區等組成。接口部實現了CPU和T6963C內部寄存器及其所管理的顯示存儲器的存取操作,實現了CPU操作時序與T6963C內部工作時序的轉換。CPU對T6963C的每次操作時,接口部的鎖存器保留了其發來的指令代碼或顯示數據,并立即封鎖了接口部的對外電路,將后續的處理過程轉換到T6963C控制部的工作時序上,直到處理完成,方釋放接口部對外電路,等待下一次訪問。T6963C與TMS320C32和EPM7128S接口如圖3所示:

  TMS320C32的/IOSTROB 、A1、A0、引腳進行地址譯碼,參與系統的統一編址。/IOSTROB=0時,DSP對應有效地址為810000H--82FFFFH,當地址線A0為1時選通LCD,地址線A1用來實現液晶的數據通道和指令通道的區分,A1=1時為指令通道,A1=0時為數據通道。LCD接口地址為: 818003H為指令通道818001H 為數據通道。

                             T6963C與TMS320C32和EPM7128S接口

  2  軟件設計

  本系統T6963C接口部設計了一個數據棧,在寫帶有參數的指令時,先向數據通道寫入參數,接口部將其存在數據棧中,然后通道寫入指令代碼。T6963C將根據指令代碼的含義將數據棧內最近的數據作為其參數一同進行處理。讀顯示數據時,先寫入操作的指令代碼,T6963C將所需的顯示數據放入數據棧中,然后讀數據操作將數據棧中的數據讀出。

 


  3  內置T696 3C液晶顯示模塊的軟件實現

 

  (1)、地址分配及定義

           .data

        LCDC_ADD   .equ   820003H;指令通道

  LCDD_ADD   .equ   820001H;數據通道

  (2)、狀態字檢測子程序

        LCDR_ST:  LDI  @LCDC_ADD,R0

                     RETS

  由此程序派生出判斷有關標志位的子程序:

          

 

<1>判斷狀態位STA1和STA0子程序,在寫指令的讀、寫數據之前,這兩個標志位必須同時為“1”。

 

              LCDST01:   CALL  LCDR_ST

                          LDI   R0,R1

                          AND   01H,R1

                          BZ    LCDST01

                          AND   02H,R0

                          BZ    LCDST01

                          RETS

           <2>判斷狀態位STA3子程序(數據自動寫狀態)

              LCDST3:    CALL  LCDR_ST

  AND   08H,R0

  BZ    LCDST3

  RETS

 


 

  (3)、寫指令和寫數據子程序

        LCDPR1 :     CALL  LCDST01;雙字節參數指令寫入入口

 

                     LDI   AR1,R0   

                     CALL  LCDPR13 

        LCDPR11:    CALL  LCDST01  ;單字節參數指令寫入入口

               

 

      LDI   AR2,R0    

 

                     CALL  LCDPR13  

        LCDPR12:    CALL  LCDST01  ;無參數指令寫入入口

                     LDI   AR3,R0     

        LCDPR14:    STI   R0,@LCDC_ADD ;寫入指令操作

                     RETS            

        LCDPR13:    STI   R0,@LCDD_ADD;寫入數據操作

  RETS

  (4)、讀數據子程序

          LCDPR2:    CALL  LCDST01       ;判狀態位

                      LDI   @LCDD_ADD,R0  ;讀數據操作

          RETS

  五、  系統在線編程

  因系統最終要脫仿真器獨立運行,所以要把程序燒寫到掉電非丟失存儲器FLASHROM中。本系統開發所采用的將存儲器安裝到用戶電路板上進行編程的方法將用戶程序代碼裝入 FLASH存儲器的。它包括現在普遍采用的在系統編程(In System Programming,ISP),通過系統的微處理器實現對FLASH存儲器的編程。

 


 

  1、  FLASH在線編 程實現

  對FLASH的基本操作主要有讀、字節編程、復位、扇區擦除、片擦除等。Am29F010B閃爍存儲器讀操作與普通的存儲器操作相同,不需要特定的時序,在電路上電或內部編程等操作技術后,自動進入讀數據狀態。而擦除和寫操作相對復雜一些。它不能簡單的直接寫入,.OUT文件不能LOAD到FLASH中,CCS和C Source Debugger中的LOAD命令均不能對FLASH寫入,需要專門的程序寫入一系列Flash Memory的命令寄存器,然后調用嵌入式算法的內部程序來完成相應的命令。Am29F010B編程一般步驟是復位、擦除、字節編程等。

 

  2、  系統軟件加載程序設計

  系統軟件加載程序的主要作用是在系統上電處理器初始化后,開始執行的一段代碼,將用戶實時運行的程序和數據從外部低速FLASH Memory中加載到內部或外部高速靜態RAM存儲器中,然后跳到程序的進入點開始全速運行。

  TMS320C32 DSP芯片引導裝載程序的執行過程將復位中斷向量表中存放引導程序的起始地址,上電復位或手動復位之后,程序指針將指向引導程序。在運行搬移程序之前,要注意關中斷。向量如果MC/MP#=1,而且系統沒有接在仿真器上,那么DSP芯片自動運行固化在0h~0fffh中的

 

引導裝載程序。這一程序會自動判斷是INT0~INT2,還是INT3中斷。如果是INT0~INT2中斷,DSP將存放在BOOT1~BOOT3中的一段程序裝載到片內RAM或片外SRAM中;如果是INT3中斷,則DSP將從串口中把程序裝載到片內RAM或SRAM中。如果沒有中斷,DSP根據0H單元中的復位矢量,跳到該矢量所指出的單元為首地址,執行一段引導裝載程序。TMS320C32引導裝載程序關鍵代碼如下:

 

  LDI   01H,AR0

             LDI   *AR0,AR0

             LDI   02H,AR2

             LDI    *AR2,AR1

             LDI    87,RC

             RPTB   dload

             LDI  *AR0++,R0

  Dload: STI   R0,*AR1++

              LDI   03H,AR0

              LDI   *AR0,AR0

              LDI    04H,AR2

              LDI   *AR2,AR1

              LDI    4000H,RC

              RPTB   pload

               LDI  *AR0++,R0

  Pload:  STI   R0,*AR1++

 

              BR  900000H


  六、結束語

  上述討論的方法在軟、硬件上都已得到實現,效果理想。利用了Flash ROM的嵌入式算法,體現了DSP高效性和靈活性。非常適合應用于實時控制系統中,解決了只能依賴于燒錄器的問題,也可經常調整系統的參數,降低了系統成本、縮短了系統的開發周期。

  參考文獻:

  【1】         戴逸民,梁曉文等.基于DSP的現代電子系統設計.北京:電子工業出版,2002.5 P1-2

  【2】         王道憲.CPLD/FPGA可編程邏輯器件應用與開發.北京:國防工業出版社,2004.1.P60-68

  馮濤,王程.可編程邏輯器件開發技術及MAX+plusⅡ入門與提高.北京:人民郵電出版社,2002.10


此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 草草草网站 | 特级理论片 | 日本插插视频 | 成年免费大片黄在线观看com | 国产三区二区 | 国产欧美日韩综合精品一区二区 | 色综合手机在线 | 午夜日韩视频 | 6080私人午夜性爽快影院 | 污污的免费视频 | 亚洲精品免播放器在线观看 | 巨尻在线播放 | 国内精品视频一区二区三区 | 免费看色片网站 | 中文字幕在线观看网站 | 成人看的羞羞视频免费观看 | 欧美xxxx做受欧美88bbw | 在线免费观看a级片 | 亚洲一区二区免费在线观看 | 国产成人精品无缓存在线播放 | 天天在线精品视频在线观看 | 六月丁香综合 | 97国产在线视频公开免费 | 最近2019年中文字幕大全视频 | 波多野结衣一区二区三区四区 | 五月欧美 | 日韩精品无码一区二区三区 | 一个人看的免费高清视频www | 日韩成人激情 | 天天干天天操天天做 | 天天爱天天爽 | 天天摸天天爽视频69视频 | 精品视频在线v | 你懂的视频在线播放 | 精品亚洲成a人片在线观看 精品亚洲成a人在线播放 | 国产日产亚洲系列首页 | freexx性欧美黑人 | 免费的三级网站 | 桃花岛亚洲精品tv自拍网站 | 久久免费精品高清麻豆 | 色射视频|