關 閉

        新聞中心

        EEPW首頁 > 工控自動化 > 設計應用 > 通過SPI接口協議實現DSP與其它設備的通信

        通過SPI接口協議實現DSP與其它設備的通信

        作者: 時間:2004-12-07 來源:網絡 收藏
        摘要:介紹了通信協議,給出了將TI公司生產的TMS320C5402 用于協議通信的串口配置方法和接口電路設計,同時給出了串口McBSP的配置程序。

        關鍵詞:多通道緩沖串行口 McBSP TMS320C5402 μPD780308

        1 引言

        隨著信息技術革命的深入和計算機技術的飛速發展,技術也正以極快的速度被應用到科技和國民經濟的各信領域。在很多工程開發設計中,由于要求實現單片DSP與單片DSP、多片DSP芯片以及及其它處理芯片之間的通信,因此,怎樣更高效、更便捷的實現這些通信,已成為廣大DSP應用者首先要解決的一個問題。

        本文根據筆者在工程應用和調試方面用TI的DSP TMS320C5402與NEC的μPD780308單片機進行通信的經驗,介紹并討論了將TMS320C5402 DSP的多通道緩沖串行口McBSP(Multi-channel Buffered Serial Port)配置為SPI模式(即時鐘停止模式),從而實現DSP與其它單片處理器之間的通信設計方法同時給出了實現方法的部分程序代碼。

        2 多通道緩沖串行口McBSP

        多通道緩沖串行口McBSP的功能是提供器件內外數據的串行交換。同以前的串口相比,McBSP串口具有相當大的靈活性。表1給出了有關TMS320C5402的McBSP管腳說明。其中串口接收、發送時鐘和同步幀信號既可由外部提供,又可由內部時鐘發生器提供,從而大大的提高了通信的靈活性。

        表1 TMS320C5402的有關McBSP管腳說明

        管腳說明說 明
        DR數據輸入端
        DX數據輸出端
        CLKR接收數據位時鐘
        CLKX發送數據位時鐘
        FSR接收數據幀時鐘
        FSX發送數據幀時鐘
        CLKS外部提供的采樣率發生器時鐘源

        3 SPI協議中的McBSP時鐘停止模式

        SPI協議是以主從方式工作的,這種模式通常有一個主和一個或多個從,其接口包括以下四種信號:

        (1)串行數據輸入(也稱為主進從出,或MISO);

        (2)串行數據輸出(也稱為主出從進,或MOSI);

        (3)串行移位時鐘(也稱為SCK);

        (4)從使能信號(也稱為SS)。

        圖1為設備的SPI接口示意圖。該接口在工作時,主設備通過提供移位時鐘和從使能信號來控制信息的流動。從使能信號是一個可選的高低電平,它可以激活從設備(在沒有時鐘提供的情況下)的串行輸入和輸出。在沒有專門的從使能信號的情況下,主從設備之間的通信則由移位時鐘的有無來決定,在這種連接方式下,從設備必須自始至終保持激活狀態,而且從設備只能是一個,不能為多個。

        TMS320C5402提供的時鐘停止模式可用于SPI協議通信,當McBSP被配置為時鐘停止模式時,發送器和接收器在內部是同步的,即可將發送數據幀時鐘(FSX)用作從使能(即SS),而將發送數據位時鐘(CLKX)用作SPI協議中SCK。由于收數據位時鐘(CLKR)和接收數據幀時鐘(FSR)在內部與FSX和CLKX是相連的,因此,該管腳不能用于SPI模式。

        當McBSP被配置為一個主設備時,傳送輸出信號(BDX)被用作SPI協議的MOSI信號,而接收輸入信號(BDR)則被用作MISO信號。圖2所示為McBSP用作主設備時的SPI接口示意圖。

        同樣地,當McBSP被配置為一個從設備時,BDX被用作MISO信號,BDR則被用作MOSI信號。圖3為McBSP用作從設備的SPI接口示意圖。

        當TMS320C5402的McBSP被用于時鐘停止模式時,寄存器SPCR1的CLKSTP位域和引腳配置寄存器的CLKXP位的配置如表2所列。

        表2 時鐘停止模式配置

        CLKSTPCLKXP

        說 明

        0XX不可用時鐘停止模式。時鐘被激活用于非SPI模式
        100時鐘開始于上升沿(無延遲)
        110時鐘開始于上升沿(有延遲)
        101時鐘開始于下降沿(無延遲)
        111時鐘開始于下降沿(有延遲)

        4 其它有關寄存器的配置

        為了更好地掌握和了解McBSP作為SPI設備時的有關寄存器配置,現以McBSP作為SPI從設備來介紹有關McBSP的其它有關寄存器的配置,若McBSP做為SPI主設備,則相關配置正好相反。當McBSP作為SPI從設備時,主設備外部產生主時鐘。CLKX引腳和FSX引腳必須被設置為輸入。由于CLKX引腳和CLKR信號在內部相連接,因而傳送和接收回路均由外部主時鐘計時(CLKX)。同時,由于FSX引腳和FSR信號也已在內部連接,因此,CLKR引腳和FSR引腳不再需要外部信號的連接。

        盡管CLKX信號由主設備外部產生且與McBSP同步,但是,McBSP的采樣率發生器仍然必須正確啟動SPI從設備,同時,采樣率發生器還應被設置為最大速率(CPU時鐘速率的一半)。另外,內部采樣率時鐘常被用來同步McBSP邏輯和外部主時鐘以及從使能信號。每次傳送時,McBSP一般在從使能信號的上升沿進行FSX輸入。也就是說,在每次傳送的開始,主設備必須維護使能信號,而在每次傳送完成后,則必須消除從使能信號。在兩次傳送之間,從使能信號不能一直保持為高電平。對正確的SPI從設備而言,McBSP的數據延遲參數必須設置為0,在這種運行模式中,設置值為1或2沒有定義。配置McBSP為從設備所需的寄存器位值如表3所列。

        表3 SPI操作模式下的寄存器位值表

        位 域功能描述寄存器
        CLKXM0配置BCLKX引腳為輸入PCR
        CLKSM1由CPU時鐘產生的采樣率時鐘SRGR2
        CLKGDV1為采樣率時鐘選擇2的劃分因素SRGR1
        FSXM0配置BFSX引腳為輸入PCR
        FSGM0對每個包傳送,BFSX信號被激活SRGR2
        FSXP1配置BFSX引腳為活動低電平PCR
        XDATDLY0為SPI從設備運行,必須為0XCR2
        RDATDLY0為SPI從設備運行,必須為0RCR2

        5 程序設計

        下面是有關TMS320C5402器件的McBSP各個控制寄存器的配置,該配置程序筆者在實踐中已經過測試,并已成功運用在了某工程設計中。

        Void McBSP1_Config(void)

        {

        offlset=0x0000;

        SPCR11=0x1800; ;配置串口時鐘停止模式CLKSTP=10

        offlset=0x0001;

        SPCR21=0x0222;

        offlset=0x0005;

        SRGR11=0x00FA;

        offlset=0x0007;

        SRGR21=0xa00F;

        offlset=0x0002;

        RCR11=0x0040; ;接收一幀含一字,一字含16位

        offlset=0x0003;

        RCR21=0x0044; 接收數據無延遲RDATDLY=00

        offlset=0x0004;

        XCR11=0x0040; ;發送一幀含一字,一字含16位

        offlset=0x0005;

        XCR21=0x0044; ;發送數據無延遲XDATDLY=00

        offlset=0x000E;

        PCR1=0x000; ;發送時鐘由外部時鐘驅動,CLKX為輸入腳CLKX=0,發送時鐘極性CLKXP=0,發送幀同步極性FSXP=1

        offlset=0x0008;

        MCR11=0x0001;

        offlset=0x0009;

        MCR21=0x0001;

        offlset=0x000C;

        XCERA1=0x0003;

        offlset=0x0001;

        SPCR21=0x0262;

        offlset=0x0001;

        SPCR21=0x0263;

        offlset=0x0000;

        SPCR11=0x1801; ;接收器有效

        offlset=0x0001;

        SPCR21=0x02e3; ;發送器有效

        Return;

        }

        6 結束語

        串行SPI通信協議是一種標準的通信協議,很多場合下都采用這種機制,文中將DSP作為從設備的目的是時鐘可由主設備來提供,因此不用再專門去調試時鐘,這種方式在開發中比較方便。



        關鍵詞: SPI DSP 接口協議 設備

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 通化县| 松溪县| 高陵县| 博白县| 远安县| 若羌县| 德州市| 右玉县| 莲花县| 加查县| 麻阳| 栖霞市| 江达县| 麻栗坡县| 桦川县| 天镇县| 嫩江县| 乌海市| 玛沁县| 札达县| 莱西市| 凤城市| 左权县| 施秉县| 新昌县| 大名县| 即墨市| 西安市| 万载县| 宁夏| 资阳市| 辛集市| 广汉市| 澳门| 潼南县| 微山县| 石阡县| 山丹县| 金坛市| 北安市| 阿巴嘎旗|