基于8051單片機的數(shù)控電源設(shè)計方案
本文介紹了以8051單片機為控制單元,以數(shù)模轉(zhuǎn)換器DAC0832輸出參考電壓,以該參考電壓控制電壓轉(zhuǎn)換模塊LM350的輸出電壓大小。該電路設(shè)計簡單,應(yīng)用廣泛,精度較高等特點.LM350系列三端可調(diào)式集成穩(wěn)壓器的方法。
關(guān)鍵詞:單片機(MCU),數(shù)模轉(zhuǎn)換器(DA),掉電存儲器(EEPROM)。
引言
目前所使用的直流可調(diào)電源中,幾乎都為旋紐開關(guān)調(diào)節(jié)電壓,調(diào)節(jié)精度不高,而且經(jīng)常跳變,使用麻煩。利用數(shù)控電源,可以達到每步0.1V的精度,輸出電壓范圍0~15V,電流可以達到2A。
系統(tǒng)結(jié)構(gòu)
圖1:硬件系統(tǒng)結(jié)構(gòu)圖
對選用芯片說明
DAC0832是一款常用的數(shù)摸轉(zhuǎn)換器,它有兩種連接模式,一種是電壓輸出模式,另外一種是電流輸出模式,為了設(shè)計的方便,選用電壓輸出模式,如電路圖所示,Iout1和Iout2之間接一參考電壓, VREF輸出可控制電壓信號。它有三種工作方式:不帶緩沖工作方式,單緩沖工作方式,雙緩沖工作方式。該電路采用單緩沖模式,由電路圖可知,由于/WR2 =/XFER=0,DAC寄存處于直通狀態(tài)。又由于ILE=1,故只要在選中該片(/CS=0)的地址時,寫入(/WR=0)數(shù)字量,則該數(shù)字信號立即傳送到輸入寄存器,并直通至DAC寄存器,經(jīng)過短暫的建立時間,即可以獲得相應(yīng)的模擬電壓,一旦寫入操作結(jié)束,/WR1和/CS立即變?yōu)楦唠娖?,則寫入的數(shù)據(jù)被輸入寄存器鎖存,直到再次寫入刷新。
AT24C02是一款常用的可掉電保存數(shù)據(jù)的ROM,2K比特容量,采用I2C總線操作,關(guān)于它的具體操作方法參考相關(guān)資料。
圖2:主硬件電路圖
圖3:參考電壓電路圖
硬件電路設(shè)計
采用常用的51芯片作為控制器,P0口和 DAC0832的數(shù)據(jù)口直接相連,DA的/CS和/WR1連接后接P2.0,/WR2和/XEFR接地,讓DA工作在單緩沖方式下。DA的11腳接參考電壓,參考電壓電路如圖2所示,通過調(diào)節(jié)可調(diào)電阻調(diào)節(jié)LM336的輸出電壓為5.12V,所以在DAC的8腳輸出電壓的分辨率為5.12V/256= 0.02V,也就是說DA輸入數(shù)據(jù)端每增加1,電壓增加0.02V。
DA的電壓輸出端接放大器OP07的輸入端,放大器的放大倍數(shù)為 R8/(R8+R9)=1K/(1K+4K)=5,輸出到電壓模塊LM350的電壓分辨率=0.02V×5=0.1V。所以,當MCU輸出數(shù)據(jù)增加1的時候,最終輸出電壓增加0.1V,當調(diào)節(jié)電壓的時候,可以以每次0.1V的梯度增加或者降低電壓。
本電路設(shè)計三個按鍵,KEY1為翻頁按鍵,最近設(shè)置的電壓大小保存在EEROM里面,比如10個電壓,按一下KEY1,電壓變?yōu)橄乱粋€,省去了反復(fù)設(shè)置電壓的麻煩,KEY2為電壓+,KEY3為電壓+,按一下KEY2,當前電壓增加0.1V,按一下KEY3,當前電壓減小0.1V。
限于篇幅原因,未畫出數(shù)碼管顯示電路,該系統(tǒng)使用3個數(shù)碼管,可以顯示三位數(shù),一個小數(shù)位,比如可以顯示12.5V,采用動態(tài)掃描驅(qū)動方式。本主電路的原理是通過MCU控制DA的輸出電壓大小,通過放大器放大,給電壓模塊作為最終輸出的參考電壓,真正的電壓,電流還是由電壓模塊LM350輸出。
為了達到2A的輸出電流,LM350必須選用金屬外殼封裝,并且?guī)源竺娣e的散熱片。
軟件流程
軟件系統(tǒng)
軟件的設(shè)計主要完成三方面的功能:
1.設(shè)置電壓并且保存,主要是對EEROM的操作。
2.把設(shè)置的電壓送到DA,主要是對DA的操作。
3.中斷顯示,把設(shè)置的電壓顯示到LED數(shù)碼管上。
該數(shù)控電壓源實現(xiàn)保存最近10電壓功能,當打開電源的時候,它顯示和輸出的必須是上次使用電壓大小,所以在EEROM中使用11個地址保存數(shù)據(jù),第一個地址保存當前電壓編號,大小為1~10。第2個地址~第 11個地址連續(xù)保存10個電壓大小數(shù)據(jù)。電壓編號的大小分別對應(yīng)到相應(yīng)地址電壓大小。
對軟件流程做一下說明:當電源打開的時候,MCU進行復(fù)位,寄存器清零。接著電源應(yīng)該顯示和輸出上次關(guān)機前的電壓大小,這時候MCU先讀取EEPROM中保存的電壓編號,根據(jù)電壓編號讀出對應(yīng)電壓,把該數(shù)據(jù)送到DA,在轉(zhuǎn)換成BCD碼送到顯示部分。這時候程序循環(huán)檢測是否有按鍵信號,如果KEY1按下,電壓編號指向下一個,保存該電壓編號,讀對應(yīng)電壓,把他送到DA并且顯示。如果KEY2按下,當前電壓數(shù)據(jù)加1,相對應(yīng)輸出電壓(POWER—OUT引腳)增加0.1V,保存設(shè)置電壓數(shù)據(jù)。如果KEY3按下,電壓數(shù)據(jù)減1,輸出電壓
減少0.1V,保存設(shè)置電壓數(shù)據(jù)。
結(jié)語
該數(shù)控電壓源經(jīng)過時間實際使用說明,具有精度高,使用方便,硬件電路簡單等特點。如果要作成產(chǎn)品,還需要增加電流測量和顯示部分,對這部分電路請參考相關(guān)資料。本文主要對如何控制功率輸出電壓大小做出個例子,該電路對測量領(lǐng)域,以及馬達調(diào)速方面都可以擴展使用。
評論