新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > TMS320VC5402串行通信接口設計

        TMS320VC5402串行通信接口設計

        作者: 時間:2011-12-29 來源:網絡 收藏

          近年來,DSP在電子、通信和控制領域得到了非常廣泛的應用,在DSP應用系統設計中與上、下位機的通信必不可少。目前幾乎所有的DSP都提供一個或多個串口,然而,多數DSP芯片提供的是同步串口,在實際的應用中,DSP要能夠與外設進行異步串行通信,如與PC機進行串行數據傳輸就要求DSP系統具UART串行接口。另外,由于單片機控制靈活方便、便于鍵盤及顯示的擴展,使得其與DSP結合的更加緊密。針對這種情況,本文研究并實現了DSP與PC機及單片機通信接口的擴展。

          1 SPI接口協議

          串行外圍設備接口(SPI)是MOTOROLA公司提出的一個同步串行外設接口,以主從方式工作,允許CPU 與各種外圍接口器件以串行方式進行通信、交換信息。接口包括4條線:串行時鐘線(SCK)、主機輸入/從機輸出線(MIsO)、主機輸出/從機輸入線(MOSI)、低電平有效的使能信號線(/SS)。這樣,僅需3~4根數據線和控制線即可擴展具有SPI接口的各種I/O器件。

          2 TMS320VC5402與PC機的異步串口通信

          2.1 McBSP的功能與特點

          TMS320VC5402芯片具有2個高速、全雙工、多通道緩沖串行接口(McBSP),其方便的數據流控制可使其與大多數同步串行外圍設備接口。McBSP通過6個引腳(BDX、BDR、BCLKX、BCLKR、BFSX 和BFSR)與外設接口。

          McBSP串口工作于時鐘停止模式時與SPI協議兼容。此時,發送器和接收器在內部得到同步,McBSP可作為SPI的主設備或從設備。發送時鐘信號(BCLKX)對應于SPI協議中的串行時鐘信號(SCK),發送幀同步信號對應于從設備使能信號(/CS)。在這種方式下對接收時鐘信號(BCLKR)和接收幀同步信號(BFSR)不進行連接,因為它們在內部分別與BCLKX和BFSX相連。McBSP工作于SPI模式的主機時,與SPI從設備接口如圖1所示。

          圖1 McBSP作為SPI的主設備

          2.2 MAX3111通用異步收發器

          MAX3111通用異步收發器是MAXIM 公司為微處理系統設計的通用異步收發器UART,包括振蕩器、可編程波特率發生器、可屏蔽的中斷源、8字節的接收FIFO緩沖器和兩個RS232電平轉換器。它應用SPI接口技術直接與主控制器進行通信,通信速率可達230 Kb/s,無需再接入普通的MAX232進行電平轉換,即可應用一個芯片實現微控器與PC機或其它設備之間的異步數據傳輸。

          2.3 DSP與MAX3111的接口設計

          由于MAX3111是3.3 V器件,DSP的McBSP串行接口工作于SPI模式時可直接與MAX3111連接,實現與RS232設備異步數據傳輸。此時DSP作為SPI協議中的主設備,發送時鐘信號(BCLKX)作為MAX3111的串行時鐘輸入,發送幀同步脈沖信號(BFSX)作為MAX3111的片選信號(/CS)。BDX與DIN 連接作為發送數據線,BDR與DOUT 連接作為接收數據線。MAX3111的TX 與TIIN連接,RX與R1OUT連接,以便利用其片內的轉換

          器實現UART到RS232電平的轉換。MAX3111的中斷信號(IRQ)與DSP的外部中斷INTO相連,其接口電路如圖2所示。這樣硬件上無需任何其它外圍器件,由于異步數據的發送和接收由MAX3111以硬件方案實現,所以軟件編程只需考慮DSP與MAX3111之間的同步數據通信。

          圖2 DSP與MAX3111的接口電路

          在SPI串行協議中,主設備提供時鐘信號并控制數據傳輸過程,必須對McBSP初始化并設定適當的工作方式才能保證與MAX3111的時序相配合,設計中采用McBSP的時鐘停止模式2(CLKSTP=11 b,CLKXP=0) 。

          3 TMS320VC5402與AT89S51單片機的串口通信

          DSP主機接口HPI具有強大功能的智能外設,主要用于DSP與其它總線或CPU進行連接。DSP與單片機的接口通常采用HPI來實現,但要外加電平轉換,硬件電路較復雜。這里采用C5402通過SPI總線與AT89S51單片機進行數據通信,但由于后者不帶SPI總線接口,故采用軟件模擬SPI串行時鐘及輸入、輸出數據。

          圖3 DSP與89S5l單片機的接口電路

          DSP與AT89S51單片機的接口如圖3所示。DSP通過MOSI引腳將要傳送的數據寫到主機的發送數據寄存器DXR,啟動發送過程,在同步時鐘BCLKX的控制下將待發的數據從高位到低位逐位送到單片機接收引腳RXD,當RXD接受移位完畢時產生中斷,通知主機數據發送完畢。值得注意的是,單片機接收數據時是低位在前,高位在后。對于從機而言,在同步時鐘的節拍下將從機移位寄存器SBUF中的數據逐位經MISO移到主機的接收數據寄存器RSR,再拷貝這些數據到接收緩沖寄存器RBR中,最后再送到DRR,當一個完整的數據塊接收完后置中斷標志,通知從機數據接收完畢。

          4 結論

          本文介紹了利用TMS320VC5402的2個McBSP擴展與PC機和51系列單片機的通信,硬件設計簡單可靠,實用性強,軟件上僅需對McBSP進行設置和編程,實現起來非常容易。在足球機器人模型識別與控制過程中完成了PC機、DSP和單片機的實時通信,效果良好。



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 台安县| 巍山| 江门市| 桂东县| 铜鼓县| 怀来县| 淮阳县| 定日县| 凤山市| 石景山区| 邵阳市| 罗甸县| 西贡区| 河西区| 新乡市| 霍山县| 淮滨县| 奉贤区| 牡丹江市| 双桥区| 郯城县| 本溪市| 建水县| 封丘县| 廊坊市| 泾源县| 措美县| 增城市| 顺平县| 德格县| 怀宁县| 共和县| 台山市| 德令哈市| 韶山市| 马公市| 定州市| 清流县| 合山市| 南宁市| 石屏县|