新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于DSP與MAX147的多路數據采集系統設計

        基于DSP與MAX147的多路數據采集系統設計

        作者: 時間:2010-01-21 來源:網絡 收藏

        3. TMS320VC5402的McBSP

        3.1 McBSP的特點

        TMS320VC5402有兩個多通道緩沖串口(MCBSP0和MCBSP1),通過幀信號來控制數據流獨立的接收、發送幀和時鐘信號;雙倍的發送緩沖和三倍的接收緩沖數據存儲器;可直接與工業標準的編碼器、模擬界面芯片、其它串行A/D、D/A器件連接;具有外部移位時鐘 發生器及內部頻率可編程移位時鐘;可直接利用多種串行協議接口通信,如SPI、T1/E1,MVIP,AC97等;發送和接收通道數最多可以到達128路;寬范圍的數據格式選擇,包括8、12、16、20、24、32位字長;利用μ律和A律的壓縮擴展通信;8位數據發送的高位、低位先發送可選;幀同步和時鐘信號的極性可編程;可編程內部時鐘和幀同步信號發生器

        3.2 MCBSP的工作方式

        McBSP的工作方式有以下幾種:多通道緩沖模式、SPI工作模式,A-bit模式、數字回路模式、GPIO模式和省電模式McBSP的外部管腳為:串行數據接收管腳DR、接收時鐘管腳CLKR、接收幀同步信號管腳FSR、發送時鐘管腳CLKX、串行數據發送管腳DX、發送幀同步信號管腳FSXMCBSP的工作原理是:發送時,先寫數據于數據發送寄存器DXR[1,2],再在發送時鐘CLKX和幀同步發送信號FSX控制下,通過發送移位寄存器XSR[12]將數據經發送引腳DX移出發送;接收數據時,在接收時鐘CLKR和幀同步發送信號FSR控制下,將通過接受引腳DR接收的數據移入接收移位寄存器RSR[12]并復制這些數據到接收緩沖寄存器RBR[12]再復制到DRR[12]最后由CPU或DMA控制器讀出這個過程允許內部和外部數據通信同時進行如果接收或發送字長R/XWDLEN被指定為8,12或16模式時,DRR2、RBR2、RSR2、DXR2、XSR2等寄存器不能進行寫、讀、移位操作

        4. 與TMS320VC5402的接口電路

        芯片兼容SPI數據通信協議SPI協議具有主從模式,使用4 條信號線:1) 串行時鐘信號線(SCK) ;2) 主機輸入/ 從機輸出串口數據線(MISO) ;3) 主機輸出/ 從機輸入串口數據線(MOSI) ;4) 低電平有效的使能信號線(SS) TMS320C54XX提供的時鐘停止模式可用于SPI 協議通信當McBSP 被配置為時鐘停止模式時發送器和接收器在內部是同步的因此可以將McBSP 作為SPI 主設備或從設備當設置McBSP為SPI 主設備時發送端輸出信號(BDX) 就作為SPI 協議中MOSI 信號接收端輸入信號(BDR) 則被用作MISO 信號發送數據幀同步脈沖信號(BFSX) 用作設備片選信號(即SS) 而發送數據位時鐘信號(BCLKX) 用作SPI 協議中SCK由于收數據位時鐘(BCLKR) 和接收數據幀時鐘(BFSR) 在內部與BFSX 和BCLKX是相連的因此這些信號不用于SPI 模式TMS320VC5402與接口電路如圖


        500)this.style.width=500; border=0>

        5. 接口程序

        的McBSP工作在SPI模式下,需要進行以下初始化步驟:

        1)將SPCR寄存器中的XRST和RRST清零,復位發送器和接收器;

        2)McBSP保持復位狀態,設置相關寄存器,CLKSTP=0X,禁止時鐘停止模式;

        3)置SPCR寄存器中的GRST=1,采用率發生器退出復位,開始工作;

        4)等待兩個時鐘周期,確保初始化過程中McBSP內部正確同步;

        5)設置所需的CLKSTP值;

        6)若CPU訪問McBSP,則XRST=RRST=1使能發送器和接收器,SPCR寄存器中其它位不變,若DMAC訪問McBSP,先進行DMA初始化,啟動DMA,使之等待同步事件,然后XRST=RRST=1McBSP退出復位狀態;



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 芦溪县| 甘孜| 元阳县| 金秀| 忻州市| 西宁市| 广德县| 炉霍县| 海盐县| 筠连县| 曲松县| 汽车| 乳源| 永靖县| 镇安县| 德格县| 江陵县| 会昌县| 凤城市| 固原市| 茌平县| 宁安市| 罗甸县| 漠河县| 镇康县| 北票市| 长顺县| 正蓝旗| 聂荣县| 北宁市| 枣阳市| 噶尔县| 霍城县| 闻喜县| 勃利县| 樟树市| 鹤山市| 永川市| 邻水| 洪雅县| 桂林市|