單緩沖方式的接口與應(yīng)用
1.單緩沖方式連接
所謂單緩沖方式就是使DAC0832的兩個輸入寄存器中有一個(多位DAC寄存器)處于直通方式,而另一個處于受控鎖存方式。
單緩沖方式連接 如圖9.3所示。
為使DAC寄存器處于直通方式,應(yīng)使WR2 =0和XFER=0。為此可把這兩個信號固定接地,或如電路中把WR2與WR1相連,把XFER與CS相連。
為使輸入寄存器處于受控鎖存方式,應(yīng)把WR1接80C51的WR,ILE接高電平。此外還應(yīng)把CS接高位地址線或地址譯碼輸出,以便于對輸入寄存器進行選擇。
圖9.3 DAC0832單緩沖方式接口
2.單緩沖方式應(yīng)用舉例
【例9.1】鋸齒波電壓發(fā)生器
在一些控制應(yīng)用中,需要有一個線性增長的電壓(鋸齒波)來控制檢測過程、移動記錄筆或移動電子束等。對此可通過在DAC0832的輸出端接運算放大器,由運算放大器產(chǎn)生鋸齒波來實現(xiàn),其電路連接圖如圖9.4所示。
圖9.4 用DAC0832產(chǎn)生鋸齒波電路
圖中的DAC0832工作于單緩沖方式,其中輸入寄存器受控,而DAC寄存器直通。假定輸入寄存器地址為7FFFH,產(chǎn)生鋸齒波的程序清單如下:
MOV A, #00H ;取下限值
MOV DPTR,#7FFFH;指向0832口地址
MM: MOVX @DPTR,A;輸出
INC A;延時
NOP
NOP
NOP
SJMP MM;反復(fù)
執(zhí)行上述程序就可得到如圖9.5所示的鋸齒波。
圖9.5 D/A 轉(zhuǎn)換產(chǎn)生的鋸齒波
幾點說明:
(1)程序每循環(huán)一次,A加1,因此實際上鋸齒波的上升邊是由256個小階梯構(gòu)成的,但由于階梯很小,所以宏觀上看就如圖中所畫的先行增長鋸齒波。
(2)可通過循環(huán)程序段的機器周期數(shù),計算出鋸齒波的周期。并可根據(jù)需要,通過延時的方法來改變波形周期。若要改變鋸齒波的頻率,可在AJMP MM指令前加入延遲程序即可。延時較短時可用NOP指令實現(xiàn)(本程序就是如此),需要延時較長時,可以使用一個延長子程序。延遲時間不同,波形周期不同,鋸齒波的斜率就不同。
(3)通過A加1,可得到正向的鋸齒波,反之A減1可得到負向的鋸齒波。
(4) 程序中A的變化范圍是0~255,因此得到的鋸齒波是滿幅度的。如要求得到非滿幅鋸齒波,可通過計算求的數(shù)字量的處置和終值,然后在程序中通過置初值和終值的方法實現(xiàn)。
評論