<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 模數轉換DAC0832的應用實(shí)驗

模數轉換DAC0832的應用實(shí)驗

作者: 時(shí)間:2012-11-03 來(lái)源:網(wǎng)絡(luò ) 收藏

[實(shí)驗任務(wù)]
用兩個(gè)按鍵通過(guò)單片機控制的輸出,使OUT端可以輸出0—5V的幅值,頻率為1KHZ的鋸齒波和三角波兩種波形。通上電源后;按下INT1則輸出三角波,在按下INT0輸出鋸齒波。

[實(shí)驗原理]
ADC0804是8位全MOS 中速D/A,采用R—2RT形電阻解碼網(wǎng)絡(luò ),轉換結果為一對差動(dòng)電流輸出,轉換時(shí)間大約為1us。使用單電源+5V―+15V供電。參考電壓為-10V-+10V。在此我們直接選擇+5V作為參考電壓。有三種工作方式:直通方式,單緩沖方式,雙緩沖方式;在此我們選擇直通的工作方式,將XFER WR 1WR2 CS管腳全部接數字地。管腳8接參考電壓,在此我們接的參考電壓是+5V。那么經(jīng)過(guò)第一級運放后,輸出電壓將是-5V-0V,在經(jīng)過(guò)第二級運放反相放大1倍以后將可以輸出0V—5V了。我們在控制P1口輸出數據有規律的變化將可以產(chǎn)生三角波,鋸齒波,梯型波等波形了。

[C語(yǔ)言源程序]
#include AT89X51.H>
unsigned char keycnt=0;
unsigned char tcnt=0; //鍵值判斷
bit sjz=0; //產(chǎn)生三角波時(shí)用到的標志
void delayl() //延時(shí)子程序
{ unsigned char i,j;
for(i=20;i>0;i--)
for(j=248;j>0;j--); }
void KEY() //按鍵掃描程序
{
if(P3_2==0)
{
delayl(); //延時(shí)跳過(guò)按下時(shí)的抖動(dòng)
if(P3_2==0)
{
keycnt=0; //定時(shí)器產(chǎn)生鋸齒波標志
TR0=0; //暫時(shí)停止波形輸出
TH0=0x256-40; //對TH0 TL0賦值
TL0=0x256-40;
TR0=1; //開(kāi)始定時(shí),產(chǎn)生鋸齒波
while(P3_2==0); //如果一直按著(zhù)鍵,則等待松鍵開(kāi)
delayl(); //延時(shí)跳過(guò)松開(kāi)后的抖動(dòng)
} }
if(P3_3==0)
{
delayl(); //延時(shí)跳過(guò)按下時(shí)的抖動(dòng)
if(P3_3==0)
{
keycnt=1; //定時(shí)器產(chǎn)生三角波標志
TR0=0; //暫時(shí)停止波形輸出
TH0=0x256-40; //對TH0 TL0賦值
TL0=0x256-40;
TR0=1; //開(kāi)始定時(shí) 產(chǎn)生三角波
}
while(P3_2==0); //如果一直按著(zhù)鍵,則等待松鍵開(kāi)
delayl(); //延時(shí)跳過(guò)松開(kāi)后的抖動(dòng)
}
} //請注意寫(xiě)程序時(shí)的格式規范,此處是為了節省紙張
void t0(void) interrupt 1 using 0 //定時(shí)中斷服務(wù)函數
{
if(keycnt==0) //產(chǎn)生鋸齒波
{
P0=tcnt;
tcnt=+0x0a; //步進(jìn)0.2V/一次中斷
if(tcnt==0xfb)
{tcnt=0;}
}
if(keycnt==1) //產(chǎn)生三角波
{ if(sjz==0)
{P0=tcnt;
tcnt=+0x0a;//步進(jìn)0.2V/一次中斷
if(tcnt==0xfa)
{sjz=1;}
}
if(sjz==1)
{
P0=tcnt;
tcnt=-0x0a;
if(tcnt==0)
{sjz=0;}
}
}
}
void main(void)
{
TMOD=0x02; //定時(shí)器工作在方式2
ET0=1;
EA=1;
while(1)
{ KEY(); }
}

[硬件電路圖]
模數轉換DAC0832的應用實(shí)驗


c語(yǔ)言相關(guān)文章:c語(yǔ)言教程




關(guān)鍵詞: 模數轉換 DAC0832 轉換器

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>