基于DAC75112的數(shù)控直流恒流源設(shè)計
3 系統(tǒng)軟件設(shè)計
本系統(tǒng)中,單片機程序由3個模塊組成,分別是初始化模塊,串口通信模塊及SPI通信模塊。初始化模塊完成串口通信參數(shù)以及其他參數(shù)的設(shè)置。串口通信模塊完成與上位機通信過程中數(shù)據(jù)的判別和接收。SPI通信模塊完成對DAC7512的數(shù)據(jù)寫入。
系統(tǒng)復(fù)位后,單片機先進行各參數(shù)(如串口通信波特率)初始化設(shè)置及清空看門狗,繼而判斷是否有通信事件發(fā)生,沒有通信發(fā)生或通信命令錯誤則返回清空看門狗。如果有正確通信事件發(fā)生,則將通信命令中的電流控制字經(jīng)SPI通信模式寫入DAC7512,更新控制發(fā)生電流大小。單片機程序流程如圖7所示。本文引用地址:http://m.butianyuan.cn/article/179499.htm
由于采用的AT89S51單片機本身不帶有SPI總線接口,因此為了和DAC7512進行通信,本系統(tǒng)利用單片機普通I/O口和其SPI接口相連,采用軟件來實現(xiàn)SPI總線協(xié)議下的數(shù)據(jù)通信,這樣單片機就可以經(jīng)過SPI串行總線將電流控制字(12位的數(shù)字量)寫入DAC7512。根據(jù)DAC7512的SPI通信時序圖,用匯編語言編寫單片機系統(tǒng)模擬SPI通信程序如下:
4 實驗結(jié)果
在進行電流源性能測試時,用萬用表作為實際電流的測量儀器。通過上位機設(shè)定特定電流值,控制恒流源模塊產(chǎn)生設(shè)定電流。再通過萬用表串聯(lián)接入電路測得實際電流值,從而可以進行設(shè)定電流和實測電流的對比試驗。電流和實測電流的對比結(jié)果如表2所示。
經(jīng)表2分析可知恒流源模塊可以在-45~+45 mA連續(xù)變化,實際誤差小于0.5%。另外通過不同負載下的性能試驗。表明負載電阻在0~100 Ω變化輸出電流變化小于0.05%,分辨率僅為0.024 4 mA,滿足了磁放大器性能測試的需要。
5 結(jié)論
本系統(tǒng)產(chǎn)生的恒定電流可在-45~+45 mA連續(xù)變化,分辨率為0.024 4 mA,實際誤差小于0.5%,電路簡單,應(yīng)用靈活、精度高。系統(tǒng)各項技術(shù)指標(biāo)均達到設(shè)計要求,工作可靠,并已投入使用,有較高的使用價值。另外系統(tǒng)采用普通I/O口實現(xiàn)模擬SPI通信方式下的數(shù)據(jù)傳輸,該通信設(shè)計有助于直觀理解SPI通信過程,使不具備SPI接口的控制芯片同樣可以和外圍芯片進行SPI通信,對過程監(jiān)控、數(shù)據(jù)采集等系統(tǒng)的開發(fā)具有借鑒意義。
評論