TLC5620I與TMS320F2812的接口設(shè)計
該設(shè)計中,引出4路D/A轉(zhuǎn)換通道電壓,均由LM358構(gòu)成電壓跟隨器輸出,如圖3所示。該圖為AD0和AD1口由LM358組成的同向放大電路。AD2和AD3的放大電路與之相同。
TMS320F2812在引腳SPISIMO上將數(shù)據(jù)輸出,與之相對應(yīng)的是TLC5620I的DATA數(shù)據(jù)接收引腳:TMS320F2812的SPICLK引腳和TLC5620I的CLK引腳相對應(yīng),二者共用串行時鐘;TMS320F2812的IOPB1模擬控制TLC5620I的LOAD引腳電平,以鎖存數(shù)據(jù),更新輸出電壓。在數(shù)據(jù)傳輸時,有兩種方式控制TLC5620I輸出電壓的更新:LOAD引腳控制更新和LDAC引腳控制更新。該設(shè)計采用LOAD引腳控制更新方式,此時,LDAC引腳接低電平。開始控制LOAD為高電平,數(shù)據(jù)在CLK引腳的每一個下降沿與時鐘同步從DATA引腳輸入。當(dāng)所有的數(shù)據(jù)傳輸完畢時,控制LDAD引腳跳至低電平,所選擇的D/A通道的輸出電壓得到更新。由于TLC5620I的控制信號要求的VIH較高,所以需要將DSP輸出的SPI-CLK、SPISIMO以及I/O口模擬的CS信號的高電平提高,該設(shè)計采用MM74HC08器件來實現(xiàn)。
5 軟件設(shè)計
由于TLC5620I的工作頻率是1 MHz,故將DSP的SPI通信頻率也設(shè)置為1 MHz。程序采用C語言模塊化編寫,其流程如圖4所示,圖4a主程序完成系統(tǒng)初始化,中斷使能,等待中斷等工作;圖4b中斷服務(wù)程序主要完成輸出電壓的數(shù)字量計算和數(shù)據(jù)發(fā)送等工作。在編寫程序過程中,要注意TMS320F2812的低速外設(shè)預(yù)分頻和通信頻率間的關(guān)系。
利用該實驗程序,可以通過示波器在DACOUT0和DA-COUT1接口輸出端觀測到三角波,利用萬能表在DACOUT2接口輸出端測得電壓為2.475 V,在DACOUT3接口輸出端測得電壓為1.65 V。
6 結(jié)束語
以TMS320F2812與TLC5620I為例,詳細討論兩者的串口通信的硬件接口及軟件設(shè)計,實現(xiàn)數(shù)字信號到模擬信號的轉(zhuǎn)換,擴展TMS320TMS320F2812在控制領(lǐng)域的應(yīng)用范圍。在設(shè)計過程中,充分利用TMS320F2812的SPI模塊,只有少量的數(shù)據(jù)線和控制線,使電路設(shè)計簡化,提高了設(shè)計可靠性,并在實際應(yīng)用中效果良好。
評論