資源描述:
《adc0809電壓表設(shè)計(jì)》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、基于單片機(jī)數(shù)字電壓表班級(jí):xxxxx班xxxx號(hào)日期:2012年11月8日9ADC0809數(shù)字電壓表摘要:本文介紹了基于AT89S52單片機(jī)數(shù)字電壓表,描述利用ADC0809進(jìn)行電壓采樣轉(zhuǎn)換,同時(shí)用四位數(shù)碼管顯示的過程,電壓表量程為5V,精度0.02V。關(guān)鍵詞:ADC0809,AT89S52。一、前言隨著時(shí)代的進(jìn)步和發(fā)展,單片機(jī)技術(shù)已經(jīng)普及到我們生活、工作、科研、各個(gè)領(lǐng)域,已經(jīng)成為一種比較成熟的技術(shù),同時(shí)各種電子器件技術(shù)的發(fā)展,為我們的生產(chǎn)生活帶來了許許多多的便利,從最初的數(shù)碼管到如今的液晶,人們的視覺體驗(yàn)得
2、到了極大的提高。同時(shí)AD轉(zhuǎn)換技術(shù)發(fā)展,將人類從模擬時(shí)代帶入了數(shù)字時(shí)代,極大地簡化了人類的工作量,對生產(chǎn)力的發(fā)展起到了巨大的推動(dòng)作用。二、硬件電路單片機(jī)是一種集成在電路芯片,是采用超大規(guī)模集成電路技術(shù)把具有數(shù)據(jù)處理能力的中央處理器CPU隨機(jī)存儲(chǔ)器RAM、只讀存儲(chǔ)器ROM、多種I/O口和中斷系統(tǒng)、定時(shí)器/計(jì)時(shí)器等功能集成到一塊硅片上構(gòu)成的一個(gè)小而完善的計(jì)算機(jī)系統(tǒng)。ADC0809是美國國家半導(dǎo)體公司生產(chǎn)的CMOS工藝8通道,8位逐次逼近式A/D模數(shù)轉(zhuǎn)換器。其內(nèi)部有一個(gè)8通道多路開關(guān),它可以根據(jù)地址碼鎖存譯碼后的信號(hào)
3、,只選通8路模擬輸入信號(hào)中的一個(gè)進(jìn)行A/D轉(zhuǎn)換。是目前國內(nèi)應(yīng)用最廣泛的8位通用A/D芯片,引腳如圖1.1。2.1主要特性:1)8路輸入通道,8位A/D轉(zhuǎn)換器,即分辨率為8位。2)具有轉(zhuǎn)換起??刂贫?。3)轉(zhuǎn)換時(shí)間為100μs(時(shí)鐘為640kHz時(shí)),130μs(時(shí)鐘為500kHz時(shí)) 4)單個(gè)+5V電源供電5)模擬輸入電壓范圍0~+5V,不需零點(diǎn)和滿刻度校準(zhǔn)。6)工作溫度范圍為-40~+85攝氏度7)低功耗,約15mW。2.2ADC0809應(yīng)用說明:1)ADC0809內(nèi)部帶有鎖存器,可以與單片機(jī)直接相連。91)
4、初始化時(shí),是ST和OE信號(hào)全部為低電平。2)送藥轉(zhuǎn)換的那一通道的地址到A,B,C端口上。3)在ST端給出一個(gè)至少有100ns寬的脈沖信號(hào)。4)是否轉(zhuǎn)換完畢,根據(jù)EOC信號(hào)判斷。5)當(dāng)EOC變?yōu)楦唠娖綍r(shí),這是給OE高電平,轉(zhuǎn)換的數(shù)據(jù)就輸出給單片機(jī)了圖1.12.3系統(tǒng)框圖電壓采樣AD轉(zhuǎn)換模塊單片機(jī)數(shù)碼管顯示電源92.4電路模塊分析1)時(shí)鐘電路如圖2.4.1圖2.4.12)復(fù)位電路如圖2.4.2圖2.4.23)顯示電路:數(shù)碼管采用的四位共陽數(shù)碼管,顯示采用動(dòng)態(tài)掃描方式,用PNP三極管控制位選,三極管集電極接數(shù)碼管共
5、陽端,當(dāng)單片機(jī)送給三極管基極低電平時(shí),集電極導(dǎo)通,從而實(shí)現(xiàn)位選如圖2.4.3,段選接入單片機(jī)P1口。91)ADC0809外圍電路圖如如圖2.4.4,轉(zhuǎn)化的數(shù)據(jù)送入P0口,clk引腳接P3.3口由定時(shí)器和中斷產(chǎn)生一個(gè)25kHZ的時(shí)鐘。圖2.4.495)總電路圖如圖2.4.5圖2.4.51)實(shí)測干電池圖2.4.69一、程序框圖及程序開始3.1主程序初始化AD轉(zhuǎn)換數(shù)據(jù)處理顯示3.2程序#include#defineuintunsignedint#defineucharunsignedcharsbi
6、tst=P3^0;sbiteoc=P3^2;sbitclk=P3^3;sbita=P3^4;sbitb=P3^5;sbitc=P3^6;sbitOE=P3^1;sbitdian=P1^7;ucharcodedt[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};uintdata1,disi,disan,dier,diyi;/*********延時(shí)函數(shù)************/voiddelay
7、(uintms)9{uinti,j;for(i=ms;i>0;i--)for(j=110;j>0;j--);}/*********初始化函數(shù)************/voidinit(){EA=1;//開總中斷ET0=1;//開定時(shí)器中斷TMOD=0x01;//定時(shí)器工作方式2TH0=(65536-20)/256;TL0=(65536-20)%256;//設(shè)定時(shí)器初值TR0=1;//啟動(dòng)定時(shí)器}/*********AD轉(zhuǎn)化函數(shù)************/voidAD(){st=0;OE=0;a=0;//選擇通道
8、0b=0;c=0;st=1;st=0;delay(10);while(eoc==0);//等待轉(zhuǎn)換完畢OE=1;//打開傳送數(shù)據(jù)data1=P0;//數(shù)據(jù)送入P0口OE=0;}/*********計(jì)算除法************/voidchufa(){data1=data1*19.6078;disi=data1/1000;disan=data1%1000/100;dier=data1%1000%1