基于數(shù)據(jù)采集系統(tǒng)中的DSP控制回路設(shè)計
MAX 5633的輸入口為SPI接口,要實現(xiàn)與DSP通信,需將C5416的MCBSP0口配置成SPI口。MCBSP在結(jié)構(gòu)上可分為1個數(shù)據(jù)通道和1個控制通道。表1給出了有關(guān)引腳的信號定義。DX引腳負責數(shù)據(jù)的發(fā)送,DR引腳負責數(shù)據(jù)的接收,另外4個引腳提供控制信號(時鐘和幀同步)。C5416通過片內(nèi)的外設(shè)總線訪問串口的控制寄存器實現(xiàn)與MCBSP的通信和控制。
數(shù)據(jù)通道完成數(shù)據(jù)的收發(fā)。CPU和DMA控制器向數(shù)據(jù)發(fā)送寄存器(DXR)中寫入要發(fā)送的數(shù)據(jù),從數(shù)據(jù)接收寄存器(DRR)讀取接收到的數(shù)據(jù)。寫入DXR的數(shù)據(jù)通過發(fā)送移位寄存器(XSR)移位輸出至DX引腳。同樣,DR引腳上接收到的數(shù)據(jù)先移位進入接收轉(zhuǎn)換寄存器(RSR)中,然后被復制到接收緩沖寄存器(RBR),RBR再將數(shù)據(jù)復制到DRR中,最后等待CPU和DMA控制器讀取數(shù)據(jù)。這種多級緩沖方式使得片內(nèi)的數(shù)據(jù)搬移和外部數(shù)據(jù)的通信可以同時進行。
4 硬件連接電路
MAX 5633與C5416的硬件連接如圖1所示。片選CS可控制MAX 5633是否被選中。CS為低后,所有的轉(zhuǎn)換開始有效。DIN為串行數(shù)據(jù)輸入,SCLK為外部時鐘輸入。CLKSEL為時鐘選擇端,當C0或者該腳為高電平時,系統(tǒng)選擇外部時鐘模式,此時內(nèi)部時鐘模式將被關(guān)閉。所給出的硬件連接圖為外部時鐘模式。ECLK為外部時鐘模式控制引腳,可用于控制外部時鐘。RST為輸入復位端。DSP的BCLK0口與D/A的SCLK相連作為MAX 5633的外部時鐘,DSP的BDX0口與D/A的DIN相連作為MAX 5633的數(shù)據(jù)輸入,DSP的BFSX0口與D/A的/CS相連作為MAX 5633芯片選擇端。由于MAX 5633輸入?yún)⒖茧妷狠^多,為了盡量減小電壓的波紋對其精度的影響,需要根據(jù)實際情況進行濾波。
5 軟件程序設(shè)計
下面是針對硬件連接電路給出相應的C語言程序。該程序?qū)CBSP0配置成時鐘停止模式(SPI)的主模式。其中SPI的時鐘設(shè)置成1 MHz,幀數(shù)據(jù)長度為24位(如圖2所示)。幀的24位中C0,C2為控制方式選擇位;A0~A4為通道選擇位,可以選擇0~31共32個通道;D0~D15為需要傳輸?shù)?6位數(shù)據(jù)。
評論