標(biāo)題: DAC0832實(shí)現(xiàn)51單片機(jī)輸出方波鋸齒波三角波等 [打印本頁]
作者: 蘇呵呵 時(shí)間: 2018-5-14 21:11
標(biāo)題: DAC0832實(shí)現(xiàn)51單片機(jī)輸出方波鋸齒波三角波等
D/A轉(zhuǎn)換一、實(shí)驗(yàn)?zāi)康?/strong>
1. 掌握DAC0832直通方式、單緩沖器方式、雙緩沖器方式的編程方法
2. 掌握D/A轉(zhuǎn)換程序的編程方式和調(diào)試方法
二、原理
DAC0832是8位D/A轉(zhuǎn)換器,它采用CMOS工藝制作,具有雙緩沖器輸入結(jié)構(gòu),其引
腳排列如圖所示,DAC0832各引腳功能說明:
DI0~DI7:轉(zhuǎn)換數(shù)據(jù)輸入端。
CS:片選信號(hào)輸入端,低電平有效。
ILE:數(shù)據(jù)鎖存允許信號(hào)輸入端,高電平有效。
WR1:第一寫信號(hào)輸入端,低電平有效,
Xfer:數(shù)據(jù)傳送控制信號(hào)輸入端,低電平有效。
WR2:第二寫信號(hào)輸入端,低電平有效。
Iout1:電流輸出1端,當(dāng)數(shù)據(jù)全為1時(shí),輸出電流最大;當(dāng)數(shù)據(jù)全為0時(shí),輸出電流最小。
Iout2:電流輸出2端。DAC0832具有:Iout1+Iout2=常數(shù)的特性。 Rfb:反饋電阻端。
Vref:基準(zhǔn)電壓端,是外加的高精度電壓源,它與芯片內(nèi)的電阻網(wǎng)絡(luò)相連接,該電壓范圍為:-10V~+10V。
VCC和GND:芯片的電源端和地端。
DAC0832內(nèi)部有兩個(gè)寄存器,而這兩個(gè)寄存器的控制信號(hào)有五個(gè),輸入寄存器由ILE、CS、WR1控制,DAC寄存器由WR2、Xref控制,用軟件指令控制這五個(gè)控制端可實(shí)現(xiàn)三種工作方式:直通方式、單緩沖方式、雙緩沖方式。
直通方式是將兩個(gè)寄存器的五個(gè)控制端預(yù)先置為有效,兩個(gè)寄存器都開通只要有數(shù)字信號(hào)輸入就立即進(jìn)入D/A轉(zhuǎn)換。
單緩沖方式使DAC0832的兩個(gè)輸入寄存器中有一個(gè)處于直通方式,另一個(gè)處于受控方式,可以將WR2和Xfer相連在接到地上,并把WR1接到80C51的WR上,ILE接高電平,CS接高位地址或地址譯碼的輸出端上。
雙緩沖方式把DAC0832的輸入寄存器和DAC寄存器都接成受控方式,這種方式可用于多路模擬量要求同時(shí)輸出的情況下。
三種工作方式區(qū)別是:直通方式不需要選通,直接D/A轉(zhuǎn)換;單緩沖方式一次選通;雙緩沖方式二次選通
三、實(shí)驗(yàn)內(nèi)容
1、利用數(shù)/模轉(zhuǎn)換器DAC0832分別構(gòu)造2種波形:方波、鋸齒波,并通過示波器來觀察波形情況。
2、軟件編程提示:
方波:實(shí)驗(yàn)要求在DOUT端輸出方波信號(hào),方波信號(hào)的周期由延時(shí)時(shí)間常數(shù)確定。 根據(jù)Vout =-〔VREF×(輸入數(shù)字量的十進(jìn)制數(shù))〕/256,當(dāng)數(shù)字量的十進(jìn)制數(shù)為256(FFH)時(shí),由于VREF =-5V,Vout = +5V。當(dāng)數(shù)字量的十進(jìn)制數(shù)為0(00H) 時(shí), 由于VREF = - 5V,Vout = 0V。因此,只要將上述數(shù)字量寫入DAC0832端口地址時(shí),模擬電壓就從DOUT 端輸出 。
鋸齒波:本實(shí)驗(yàn)在DAOUT端輸出鋸齒波。根據(jù)Vout = -〔VRFE×(輸入數(shù)字量的十進(jìn)制數(shù))〕/256即可知道,只要將數(shù)字量0~256(00H~FFH)從0開始逐漸加1遞增直至256為止,不斷循環(huán),在DOUT端就會(huì)輸出連續(xù)不斷的鋸齒波
-
QQ圖片20180514210853.png
(26.71 KB, 下載次數(shù): 150)
下載附件
2018-5-14 21:09 上傳
-
-
3.rar
2018-5-14 21:10 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
67.8 KB, 下載次數(shù): 284, 下載積分: 黑幣 -5
仿真和代碼
作者: 我愛單片機(jī)xyx 時(shí)間: 2018-11-24 17:27
最后功能實(shí)現(xiàn)了嗎,
作者: 單片機(jī)老司機(jī) 時(shí)間: 2019-11-24 17:32
可以這樣寫嗎?鋸齒波:int main (void)
{
uchar i;
while(1)
{
for(i=0;i<255;i++)
{
delay(10);
XBYTE[0X7fff]=i;
}
}
}
作者: linaa 時(shí)間: 2020-3-16 23:08
感謝樓主分享
作者: 跟隨自己 時(shí)間: 2020-3-24 09:31
仿真軟件用的什么
作者: 胡小七 時(shí)間: 2020-3-25 01:02
proteus
作者: 電子1311班 時(shí)間: 2020-4-12 14:20
感謝分享
作者: 吹動(dòng)的火 時(shí)間: 2020-4-30 00:06
謝謝樓主
作者: sunnywe 時(shí)間: 2020-7-4 15:09
請(qǐng)問怎么改變電壓范圍和頻率呢
作者: 范小爺 時(shí)間: 2021-11-4 23:31
您好,我是新手,想問有int main這個(gè)嗎
作者: 范小爺 時(shí)間: 2021-11-4 23:32
proteus
作者: 范小爺 時(shí)間: 2021-11-4 23:34
哈羅 可以分享一下樓主的代碼和仿真嗎?DAC0832和AT89C51波形輸出
歡迎光臨 (http://www.torrancerestoration.com/bbs/) |
Powered by Discuz! X3.1 |