關(guān)鍵字:TLC5620I TMS320F2812 接口設(shè)計(jì)
近年來(lái),,數(shù)字信號(hào)處理器的應(yīng)用越來(lái)越廣泛,數(shù)字信號(hào)處理器并非只局限于音視頻層面,,它廣泛的應(yīng)用于通信與信息系統(tǒng),、信號(hào)與信息處理、自動(dòng)控制,、雷達(dá),、軍事、航空航天,、醫(yī)療,、家用電器等許多領(lǐng)域。以往是采用通用的微處理器來(lái)完成大量數(shù)字信號(hào)處理運(yùn)算,,速度較慢,,難以滿足實(shí)際需要;而同時(shí)使用位片式微處理器和快速并聯(lián)乘法器,,曾經(jīng)是實(shí)現(xiàn)數(shù)字信號(hào)處理的有效途徑,,但此方法器件較多,邏輯設(shè)計(jì)和程序設(shè)計(jì)復(fù)雜,,耗電較大,,價(jià)格昂貴。數(shù)字信號(hào)處理器DSP的出現(xiàn),,很好的解決了上述問(wèn)題,。DSP可以快速的實(shí)現(xiàn)對(duì)信號(hào)的采集、變換,、濾波,、估值、增強(qiáng),、壓縮,、識(shí)別等處理,以得到符合人們需要的信號(hào)形式,。
2 TMS320F2812的SPI工作原理
TMS320F2812數(shù)字信號(hào)處理器是TI公司最新推出的32位定點(diǎn)DSP(Digital signal o數(shù)字信號(hào)處理器)控制器,,是目前控制領(lǐng)域最先進(jìn)的處理器之一。其頻率高達(dá)150MHz,大大提高了控制系統(tǒng)的控制精度和芯片處理能力,。TMS320F2812芯片基于C/C++高效32位TMS320C28x DSP內(nèi)核,,并提供浮點(diǎn)數(shù)學(xué)函數(shù)庫(kù),從而可以在定點(diǎn)處理器上方便地實(shí)現(xiàn)浮點(diǎn)運(yùn)算,。在高精度伺服控制,、可變頻電源、UPS電源等領(lǐng)域廣泛應(yīng)用,,同時(shí)是電機(jī)等數(shù)字化控制產(chǎn)品升級(jí)的最佳選擇,。
圖1為SPI模塊與CPU接口結(jié)構(gòu)框圖。
由圖1可知,,SPI模塊數(shù)據(jù)傳輸由40,、41、34,、35引腳完成,,其引腳功能見(jiàn)表1。
TMS320F2812支持125種不同的波特率和4種不同的時(shí)鐘模式,。根據(jù)SPI的工作模式(從動(dòng)或主控),,引腳SPICLK可分別接收一個(gè)外部的SPI時(shí)鐘信號(hào)或由片內(nèi)提供SPI時(shí)鐘信號(hào)。
在該設(shè)計(jì)中,,SPI工作在主控模式,,SPI時(shí)鐘由片內(nèi)的SPI產(chǎn)生并由SPICLK引腳輸出。TMS320F2812波特率的設(shè)置是由系統(tǒng)的低速外設(shè)模塊時(shí)鐘頻率LSPCLK和SPI主控制器中的SPIBRR寄存器的值決定的,,其計(jì)算公式如下:
SPI波特率=LSPCLK/(SPIBRR+1)SPIBRR=3~127
SPI波特率=LSPCLK/4 SPIBRR="0",、1、2
引腳SPICLK上的四種不同的時(shí)鐘模式是由時(shí)鐘極性位和時(shí)鐘相位位控制的,,其中時(shí)鐘極性位選擇時(shí)鐘有效沿為上升沿還是下降沿,,時(shí)鐘相位位則設(shè)定是否選擇時(shí)鐘的1/2周期延時(shí)。四種不同的時(shí)鐘模式如表2所示,。
3 TLC5620I簡(jiǎn)介
TLC5620I是四路8位電壓輸出數(shù)模轉(zhuǎn)換器(DAC),,帶有緩沖基準(zhǔn)輸入端(高阻抗),包含上電復(fù)位功能以確??芍貜?fù)啟動(dòng),,用5 V電源工作。每個(gè)D/A轉(zhuǎn)換的核心是帶有256個(gè)抽頭的單電阻,,分別對(duì)應(yīng)256個(gè)可能的代碼,。每個(gè)電阻串的一端連接到GND端,另一端由基準(zhǔn)輸入緩沖器的輸出饋電,。通過(guò)使用電阻串保持單調(diào)性,。線性度取決于電阻元件的一致性以及輸出緩沖器的性能,。由于輸入端是經(jīng)過(guò)緩沖的,所以DAC對(duì)于基準(zhǔn)源總是呈現(xiàn)為高阻抗負(fù)載,。每一個(gè)DAC的輸出由可配置增益輸出放大緩沖,,它可以配置為一倍或兩倍增益。
通過(guò)簡(jiǎn)單的3線串行總線可數(shù)字控制TLC5620I,,此總線與CMOS兼容且易于與所有常用的微處理器作為控制器器件接口,。11位的命令字由8位數(shù)據(jù)(D0~D7),,2個(gè)DAC選擇位(A0,、A1)和1個(gè)范圍位(RNG)組成。后者允許在一倍或兩倍輸出范圍之間作選擇,。DAC寄存器是雙緩沖的,,允許完整的新數(shù)值組寫(xiě)入器件,然后DAC輸出通過(guò)LDAC端的控制同時(shí)更新,。每個(gè)通道輸出的電壓V0由下式計(jì)算:
V0=REF×(CODE/256)×(1+RNG bit value)
式中,,REF為相應(yīng)通道基準(zhǔn)電壓,CODE是從數(shù)據(jù)位(D7~D0)計(jì)算出的十進(jìn)制數(shù),,RNG是范圍位串行控制字的0或1,。
4 TLC5620I和TMS320F2812的接口電路
該設(shè)計(jì)中,引出4路D/A轉(zhuǎn)換通道電壓,,均由LM358構(gòu)成電壓跟隨器輸出,,如圖3所示。該圖為AD0和AD1口由LM358組成的同向放大電路,。AD2和AD3的放大電路與之相同,。
TMS320F2812在引腳SPISIMO上將數(shù)據(jù)輸出,與之相對(duì)應(yīng)的是TLC5620I的DATA數(shù)據(jù)接收引腳:TMS320F2812的SPICLK引腳和TLC5620I的CLK引腳相對(duì)應(yīng),,二者共用串行時(shí)鐘,;TMS320F2812的IOPB1模擬控制TLC5620I的LOAD引腳電平,以鎖存數(shù)據(jù),,更新輸出電壓,。當(dāng)所有的數(shù)據(jù)傳輸完畢時(shí),控制LDAD引腳跳至低電平,,所選擇的D/A通道的輸出電壓得到更新,。由于TLC5620I的控制信號(hào)要求的VIH較高,所以需要將DSP輸出的SPI-CLK,、SPISIMO以及I/O口模擬的CS信號(hào)的高電平提高,,該設(shè)計(jì)采用MM74HC08器件來(lái)實(shí)現(xiàn)。
5 軟件設(shè)計(jì)
由于TLC5620I的工作頻率是1 MHz,,故將DSP的SPI通信頻率也設(shè)置為1 MHz,。程序采用C語(yǔ)言模塊化編寫(xiě),,其流程如圖4所示,圖4a主程序完成系統(tǒng)初始化,,中斷使能,,等待中斷等工作;圖4b中斷服務(wù)程序主要完成輸出電壓的數(shù)字量計(jì)算和數(shù)據(jù)發(fā)送等工作,。在編寫(xiě)程序過(guò)程中,,要注意TMS320F2812的低速外設(shè)預(yù)分頻和通信頻率間的關(guān)系。
利用該實(shí)驗(yàn)程序,,可以通過(guò)示波器在DACOUT0和DA-COUT1接口輸出端觀測(cè)到三角波,,利用萬(wàn)能表在DACOUT2接口輸出端測(cè)得電壓為2.475 V,在DACOUT3接口輸出端測(cè)得電壓為1.65 V,。
6 結(jié)束語(yǔ)
以TMS320F2812與TLC5620I為例,,詳細(xì)討論兩者的串口通信的硬件接口及軟件設(shè)計(jì),實(shí)現(xiàn)數(shù)字信號(hào)到模擬信號(hào)的轉(zhuǎn)換,,擴(kuò)展TMS320TMS320F2812在控制領(lǐng)域的應(yīng)用范圍,。在設(shè)計(jì)過(guò)程中,充分利用TMS320F2812的SPI模塊,,只有少量的數(shù)據(jù)線和控制線,,使電路設(shè)計(jì)簡(jiǎn)化,提高了設(shè)計(jì)可靠性,,并在實(shí)際應(yīng)用中效果良好使產(chǎn)品更便宜,。