新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于CPLD的DSP多SPI端口通信設計

        基于CPLD的DSP多SPI端口通信設計

        作者: 時間:2012-06-05 來源:網絡 收藏

        引言

        本文引用地址:http://www.104case.com/article/257461.htm

        目前在電氣自動化控制裝置中,廣泛采用各種通信手段以完成上層與底層控制器、底層控制器以及控制芯片之間的信息傳遞,并實現相應的控制功能;各種通信功能的設計與實現已成為自動化裝置設計的重要組成部分。本文以一種超聲波電機運動控制裝置為應用背景,討論了基于控制芯片多技術。

        串行同步外設端口()通常也稱為同步外設端口,具有信號線少、協議簡單、傳輸速度快的特點,大量用在微控制器與外圍芯片的通信中。目前通信方式已被普遍接受,帶有SPI端口的芯片越來越多,如Flash、RAM、A/D轉換、LED顯示、控制專用 芯片等。

        本文介紹一種采用運動控制專用芯片DSP56F801設計的超聲波電機運動控制裝置。由于該超聲波電機需要采用兩相四路對稱.PWM信號來實現驅動控制,而DSP芯片無法直接產生所需PWM信號,采用軟件方法又會占用大量的DSP計算時間,于是設計了基于可編程邏輯器件()的對稱PWM信號發生器。該信號發生器在DSP的控制下,可以實現輸出兩相PWM控制信號的占空比及相位差調節;同時采用具有SPI接口的可編程振蕩器LTC6903,實現在DSF。控制下的PWM控制信號頻率調節[1]。由此可見,為了實現DsP對PwM控制信號占空比、相位差及頻率的控制,需要采用適當的通信方式實現DSP與及LTC6903之間的控制信息傳遞。DSP56F801芯片具有一個SPI通信端口。本文在分析SPI 數據傳輸時序關系的基礎上,設計并實現了基于CPLD的多SPI接口通信。

        1 工作原理

        SPI是一個同步協議接口,所有的傳輸都參照一個共同的時鐘。在同一個SPI端口可以實現一個主機芯片與多個從機芯片的相連,這時主機通過觸發從設備的片選輸入引腳來選擇從設備,沒有被選中的從設備將不參與SPI傳輸。SPI主使用4個信號:主機輸出/從機輸人(MOSI)、主機輸入/從機輸出(MISO)、串行時鐘信號SCLK和外設芯片選擇信號(SS)。主機和外設都包含一個串行移位寄存器,主機通過向它的SPI串行移位寄存器寫入一個字節來發起一次傳輸。寄存器是通過MOSI引腳將字節傳送給從設備,從設備也將自己移位寄存器中的內容通過MISO信號線返回給主機。這樣,兩個移位寄存器中的內容就被交換了。外設的寫操作和讀操作是同步完成的,因此SPI成為一個很有效的串行通信協議[2]。

        SPI端口的通信網絡結構框圖如圖1所示。為了使信號發生器輸出可調頻、調壓和調相輸出的兩相四路PWM波,需要DSP向CPLD電路輸出參數。這4個控制參數的傳遞是在小型的通信網絡中實現的。在該網絡中,DSP的SPl只是進行數據輸出端口的寫操作,即輸出電壓控制字、相位控制字和頻率控制字。數據流程:主機DSP向cPLD傳輸數據,在傳輸數據時,數據在MOSI引腳上輸出,同時數據在時鐘信號的作用下實現同步移位輸出。由于不需要從機向主機回送任何數據,主機在數據傳輸結束之后,結束這次傳送。由于sPI端口工作時沒有應答信號,并且數據在發送時無需校驗位,所以要求主、從器件的數據發送與接收必須完全符合設定的SPI時序要求,否則數據傳輸將出現錯誤。


        2 基于CPLD的串口SPI設計

        2.1移位寄存器設計

        本設計為一個12位的SPI串行接收端口。圖1中移位寄存器是由12個D觸發器和1個計數器組成的,實現移位接收和串并轉換。在傳輸過程中,先使能移位寄存器和計數器,啟動傳輸,同時計數器開始計數。當計數到16時,進位端輸出一個脈沖寬度的高電平脈沖,進行數據鎖存,其電路如圖2所示。


        實驗中為保證時序正確,測出了使能信號和計數器進位脈沖的輸出時序,如圖3、圖4 所示。其中十六進制計數器采用的是上升沿計數,在第16個上升沿到來時,跳變為高電平,保證數據的正確接收鎖存。



        2.2鎖存器設計

        鎖存器的工作特點:當gate引腳上輸入高電平信號時,鎖存器工作開始鎖存總線上的數據;當gate引腳上是低電平時,鎖存器不工作,即當總線上的數據發生變化時,鎖存器的輸出不發生變化。由于本設計需要多個參數傳輸,通過地址選擇的方法把這3個數據從一條總線上區分出來,設置傳輸數據的低兩位為地址選擇位。地址選擇位經移位寄存器,串并轉換,作為三輸入與門的兩個輸人端,進行地址選擇。每次16位的數據移位結束,數據穩定時,在計數器高電平作用下,相應gate的引腳上輸出高電平,數據鎖存入相應的鎖存器。例如,可以設置低兩位是“ll”時,DSP送入PWM電路的是ll位的調相信號;當低兩位設置成“01”時,DSP送入PwM電路的是10位調節A 相占空比的信號;當低兩位設置成“10”時,。DSP送入PWM電路的是10位調節B相占空比的信號。由此可以在電路中設計一個三輸入的與門,當16位數據傳輸完畢,即在相應gate的引腳上輸出高電平時,數據存入對應的鎖存器,如圖5所示。


        上一頁 1 2 下一頁

        關鍵詞: SPI DSP CPLD 端口通信

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 彩票| 南京市| 眉山市| 左云县| 浦江县| 如东县| 太仆寺旗| 晋州市| 鄂托克前旗| 洛阳市| 石城县| 太白县| 永嘉县| 雷州市| 潼关县| 科尔| 平顺县| 东台市| 邵东县| 元江| 巴楚县| 军事| 昌江| 西吉县| 长顺县| 巫山县| 乐山市| 天门市| 莲花县| 大同县| 富川| 九寨沟县| 延庆县| 宁陕县| 监利县| 高清| 邓州市| 永昌县| 丽水市| 罗甸县| 沽源县|