




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
單片機(jī)課程設(shè)計姓名:學(xué)號:專 業(yè): 電子科學(xué)與技術(shù) 題 目: 單片機(jī)電壓采集裝置 專 題: AD轉(zhuǎn)換及編程實(shí)現(xiàn) 指導(dǎo)教師: 設(shè)計地點(diǎn):實(shí)驗(yàn)樓時間:201212202012年12月
單片機(jī)課程設(shè)計任務(wù)書專業(yè)年級電科學(xué)號學(xué)生姓名任務(wù)下達(dá)日期:2012年12月20日設(shè)計日期:2012年12月1日至2012年12月20日設(shè)計題目:單片機(jī)電壓采集裝置設(shè)計專題題目:AD轉(zhuǎn)換及編程實(shí)現(xiàn)設(shè)計主要內(nèi)容和要求:制作單片機(jī)電壓采集裝置基本要求1、 模擬通道0電壓采集功能在ADC0809的輸入0?5V電壓,數(shù)碼管實(shí)時顯示被測電壓值(顯示精度0.001V,即顯示1位整數(shù),3位小數(shù))。2、 指定通道電壓采集功能通過模式選擇按鍵切換到“指定通道電壓采集功能”,利用+/-按鍵改變通道值,顯示同上。3、 8通道自動循環(huán)電壓采集功能制作單片機(jī)電壓采集裝置通過模式選擇按鍵切換到“8通道自動循環(huán)電壓采集功能”,默認(rèn)通道切換時間為2秒。擴(kuò)展要求1、 超限報警功能當(dāng)Vi超出程序預(yù)設(shè)報警限值時,報警燈以1Hz速度閃爍顯示,并顯示提示符以區(qū)別上限或下限報警。2、 可修改上限和下限報警值的超限報警撥弄能可隨意設(shè)置上、下限報警值(步長0.1V,默認(rèn)下限為0V,上限為5V)。設(shè)置時,當(dāng)下限N上限(或上限W下限)時予以提示,并拒絕接受數(shù)據(jù)。指導(dǎo)教師簽字:摘要:此單片機(jī)電壓采集裝置使用AT89S52芯片和ADC0809芯片進(jìn)行電壓采集,實(shí)現(xiàn)AD轉(zhuǎn)換的基本功能。,鍵盤電路和8個LED數(shù)碼顯示電路。擴(kuò)展電路中包含了A/D轉(zhuǎn)換電路,AD轉(zhuǎn)換五種工作模式下對應(yīng)要實(shí)現(xiàn)的功能:即模式0下完成通道0的模擬信號采集;模式1時完成指定模擬通道電壓采集,按加、減(K2,K3)按鍵手動實(shí)現(xiàn)模擬通道的切換,此外,通過內(nèi)部定時器T1實(shí)現(xiàn)報警功能,即超過上限電壓4.999V時報警,同時點(diǎn)亮P1.1即L2發(fā)光LED小燈,低于下限電壓0.000V時也實(shí)現(xiàn)報警功能,只是報警的頻率改變,同時點(diǎn)亮P1.0即L1發(fā)光LED小燈;而模式2完成8通道模擬信號自動循環(huán)采集功能,通過加入內(nèi)部定時器T0中斷,從而實(shí)現(xiàn)每隔1秒通道值自動加1的功能;進(jìn)入模式3的時候,需要人為設(shè)置報警上限,此程序設(shè)定報警上限為4V,而報警上限默認(rèn)值為3.999V,通過按加、減(K2/K3)按鍵實(shí)現(xiàn)上限加減0.1V;模式4的時候設(shè)置報警下限電壓,默認(rèn)報警下限電壓為1.999V,本程序中設(shè)置的報警下限電壓為2V,通過加減(K2/K3)按鍵實(shí)現(xiàn)電壓加減0.1V的功能,最終實(shí)現(xiàn)電壓采集和擴(kuò)展功能。關(guān)鍵詞:AT89S52芯片、ADC0809芯片目錄TOC\o"1-5"\h\z\o"CurrentDocument"1緒論 1\o"CurrentDocument"1.1系統(tǒng)設(shè)計方案 11.1.1系統(tǒng)設(shè)計原理框圖 1\o"CurrentDocument"2硬件電路設(shè)計 ?3\o"CurrentDocument"2.1單片機(jī)電路 ?2\o"CurrentDocument"2.1.1單片機(jī)最小系統(tǒng) ?2\o"CurrentDocument"2.1.2顯示譯碼電路 ?2\o"CurrentDocument"A/D轉(zhuǎn)換 -5\o"CurrentDocument"ADC0809轉(zhuǎn)換原理 -5\o"CurrentDocument"AD轉(zhuǎn)換電路 6\o"CurrentDocument"2.2.3電路設(shè)計 7\o"CurrentDocument"3軟件設(shè)計 €\o"CurrentDocument"3.1設(shè)計任務(wù) -83.1.1基本任務(wù) -8\o"CurrentDocument"3.2程序設(shè)計 -83.3.1主程序框圖 8AD信號采集 9\o"CurrentDocument"4系統(tǒng)調(diào)試 175總結(jié) 18參考文獻(xiàn): 19附錄一電源印刷電路板布線圖 -20\o"CurrentDocument"附錄二單片機(jī)板電路原理圖 -21\o"CurrentDocument"附錄三單片機(jī)印刷電路板布線圖 -22\o"CurrentDocument"附錄四元件清單 -241緒論1.1系統(tǒng)設(shè)計方案本次實(shí)驗(yàn)要求設(shè)計電壓采集裝置,課程設(shè)計分設(shè)計、制作和調(diào)試三個部分。設(shè)計選題以單片機(jī)為核心,基本內(nèi)容應(yīng)包括單片機(jī)最小系統(tǒng)、鍵盤和LED顯示電路,以及設(shè)計系統(tǒng)涉及的其他電路。系統(tǒng)硬件電路由標(biāo)準(zhǔn)電路和自制電路兩部分組成。標(biāo)準(zhǔn)電路包括單片機(jī)最小系統(tǒng)、8個LED數(shù)碼管電路和鍵盤電路,可根據(jù)設(shè)計需要進(jìn)行配置選用。自制電路需自行設(shè)計焊接,包含標(biāo)準(zhǔn)電路不具備的其他電路。設(shè)計中采用了模數(shù)轉(zhuǎn)換器,利用ADC0809型8位MOS型A/D轉(zhuǎn)換器。可實(shí)現(xiàn)8路模擬信號的分時采集,片內(nèi)有8路模擬選通開關(guān),以及相應(yīng)的通道地址鎖存用譯碼電路,實(shí)現(xiàn)模擬信號到數(shù)字信號的轉(zhuǎn)換。控制部分采用單片機(jī)89C52來完成。顯示部分利用LED數(shù)碼管顯示模塊,來顯示采集到的電壓分量。1.2.1系統(tǒng)設(shè)計原理框圖電源2硬件電路設(shè)計系統(tǒng)硬件電路由標(biāo)準(zhǔn)電路和自制電路兩部分組成。標(biāo)準(zhǔn)電路包括單片機(jī)最小系統(tǒng)、6個LED數(shù)碼管電路和鍵盤電路,可根據(jù)設(shè)計需要進(jìn)行配置選用。自制電路需自行設(shè)計焊接,包含標(biāo)準(zhǔn)電路不具備的其他電路。2.1單片機(jī)電路2.1.1單片機(jī)最小系統(tǒng)U.fJUiALEij.i/r^jj1j/TST'QU.fJUiALEij.i/r^jj1j/TST'Q13.jiXsFi3J.心由aj-j.fri1'ji,E-Z中奇EZV-vlfvccmiw」■皿33:1二■p.w.p:"■unAprINS.7C\J:i7■■mm?pa.i/rm『一■『INK."rFI'FFI1CPU原理圖該原理圖包含單片機(jī)以及外部連接譯碼,鎖存電路端口 ,其中的ALE,REST為高電平時用來啟動ADC0809.P0、P2口控制數(shù)碼輸出顯示,P3口的P3.3、P3.4、P3.5控制按鍵,P1.1~P1.3控制通道選擇。晶振采用12MHZ,該頻率有利于提高串口的通信可靠性,同時又保證單片機(jī)有較高的運(yùn)行速度。2.1.2顯示譯碼電路LED顯示電路可提供8位LED顯示;可顯示P1(P3)口狀態(tài);也可顯示輸入按鍵狀態(tài)LED顯示電路顯示電路采用6位共陽極LED動態(tài)掃描顯示,CD4511輸出所需字形,74LS138選擇字位。在動態(tài)方式中,逐個地循環(huán)地點(diǎn)亮各位顯示器。
巳日.日日.日曰日.日■■'1 11'1 1111[/OI2J數(shù)碼管顯示電路顯示譯碼電路部分由P0口或P2口輸出顯示。顯示譯碼器采用CD4511芯片:輸入:BCD輸出:七段碼74LS138芯片是用來控制顯示時候的字位的,由于單片機(jī)的管腳是有限的通過使用138芯片可以避免少使用些單片機(jī)的管腳,當(dāng)輸入001時,譯碼可得10111111:輸入:0?7輸出:低電平2.2A/D轉(zhuǎn)換2.2.1ADC0809轉(zhuǎn)換原理當(dāng)單片機(jī)端的P3.3接低電平時,可以使兩個非門打開(1) 當(dāng)模擬量送至某一輸入通道后,CPU將標(biāo)識該通道編碼的三位地址信號經(jīng)數(shù)據(jù)線或地址線輸入到ADDC、ADDB、ADDA引腳上。(2) 地址鎖存允許ALE鎖存地址信號,啟動命令START啟動A/D轉(zhuǎn)換。(3) 轉(zhuǎn)換開始,EOC變低電平,轉(zhuǎn)換結(jié)束,EOC變?yōu)楦唠娖健OC可作為中斷請求信號。(4) 轉(zhuǎn)換結(jié)束后,可通過執(zhí)行IN指令,設(shè)法在輸出允許OE腳上形成一個正脈沖,打開三態(tài)緩沖器把轉(zhuǎn)換的結(jié)果輸入到DB一次A/D轉(zhuǎn)換便完成2.2.2AD轉(zhuǎn)換電路vcc1WR?5.1KCADP0.1UIN0,通道0ADCH0—1-'^6|27J11234567—8CH21 1CH3CH42CH5CH63CH72.2.2AD轉(zhuǎn)換電路vcc1WR?5.1KCADP0.1UIN0,通道0ADCH0—1-'^6|27J11234567—8CH21 1CH3CH42CH5CH63CH7GND4CH15"^8CON8IC12IN-0msb2-12-2IN-12-32-4IN-22-52-6IN-32-7lsb2-8IN-4EOCIN-5ADD-AIN-6ADD-BADD-CIN-7ALEref(-)ENABLESTART,Uef+ CLOCK1621D020D119D218~D3~8~D4~15~D5~14~D6~17D7725~A0~?24~A1~23A2k9■6p10ADCCLK轉(zhuǎn)換時鐘:—接單片機(jī)ALE輸出經(jīng)分頻J言得到啟動和地址鎖存信號參考電壓:5V-7VCCADC08092.2.3電路設(shè)計硬件資源分配T轉(zhuǎn)換結(jié)束:EOC=1137404OT2F通道地址信號74L74LS02B-/INT0輸出使能信號片選信號:P3.3=0ADCSDCCS—/PD7/WR輸出數(shù)據(jù)數(shù)碼管顯示電路:用P2口:bcd碼輸出 P2.3?P2.0;字位選擇 cba=P2.6?P2.4;小數(shù)點(diǎn)一一P2.7鍵盤電路:P3口低四位1號按鍵P3.0---模式切換2號按鍵P3.1---通道、報警限加3號按鍵P3.2--通道、報警限減4號按鍵P3.3--查詢法,接收ad轉(zhuǎn)換狀態(tài)(不作為按鍵使用) 中斷法,收ad結(jié)束中斷信號ADC0809電壓轉(zhuǎn)換電路控制信號:/wr==p3.6 /rd==p3.7eoc==p3.3 Cs==p3.5轉(zhuǎn)換通道選擇地址線:CBA==P1(6-4)
3軟件設(shè)計3.1設(shè)計任務(wù)3.1.1基本任務(wù)1、進(jìn)行電壓采集并顯示3.1.2擴(kuò)展任務(wù)1、指定通道采集2、 循環(huán)采集顯示,默認(rèn)每通道顯示1秒鐘。3、報警設(shè)置報警上限為4V報警下限為2V3.2程序設(shè)計3.2.1主程序框圖主程序框圖主程序框圖〃字型碼地址,通過〃字型碼地址,通過P0口送字型碼//字位碼地址,通過P2口送字位碼〃下限報警LED〃上限報警LED//ad0809地址端A,低位//ad0809地址端B,中位//ad0809地址端C,高位//按鍵1//按鍵2//按鍵33.3.2AD信號采集程序#include<reg52.h>#defineucharunsignedchar#defineuintunsignedint#definezxmaP0#definezwmaP2sbitlowflag=P1A0;sbithighflag=P1A1;sbitad_adda=P1A4;sbitad_addb=P1A5;sbitad_addc=P1A6;sbitkey1=P3A0;sbitkey2=P3A1;sbitkey3=P3A2;第6頁sbitad_eos=P3A3;sbitspeeker=P3A4;sbitad_cs=P3A5;sbitad_wr=P3A6;sbitad_rd=P3A7;ucharad_data;ucharpdataad_start,ad_over;ucharad_td;ucharad_mode;ucharkey;uintad_high=4000;uint ad_low=2000;uchartt0=100;sbit ad_clk=P1A7;//ad0809轉(zhuǎn)換結(jié)束標(biāo)志,1轉(zhuǎn)換完,0正在轉(zhuǎn)換//蜂鳴器報警//ad0809片選,低電平有效//ad0809寫入信號,鎖存地址和啟動ad//ad0809讀出信號,通過P0口讀回ad轉(zhuǎn)換結(jié)果//ad采集數(shù)據(jù)〃兩個片外地址,用于產(chǎn)生讀寫信號//ad采集通道//ad采集模式//ad報警上限,設(shè)置為4V//ad報警下限,設(shè)置為2V〃定時1s(10ms,需要100次)//本程序利用P1.7產(chǎn)生方波來給ad0808提供脈沖,/*共陰極數(shù)碼管字形碼,共陽極數(shù)碼管取反即可*/ucharcodezixing[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x77,0x7C,0x39,0x5E,0x79,0x71};/*共陽極數(shù)碼管字位碼,共陰極數(shù)碼管取反即可*/ucharcodeziwei[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};voidtimer2int();voiddelay(uinti);voiddisp(void);voidad_change(void);voidkeyscan(void);voidkeyanswer(void);voidalarm();voidtimer0int(void);voidtimer0chengxu(void);voidtimer1int(void);voidtimer1chengxu(void);voidmain(void){timer0int();timer1int();while(1){keyscan();keyanswer();ad_change();alarm();disp();}}voidkeyscan(void){if(!key1){while(!key1)disp();key=1;F0=1;}if(!key2){while(!key2)disp();key=2;F0=1;}if(!key3){while(!key3)disp();key=3;F0=1;}}voidkeyanswer(void){if(key==1&F0==1){ad_mode++;if(ad_mode==5)ad_mode=0;}if(ad_mode==0){ad_td=0;}if(ad_mode==1){if(key==2&F0==1){ad_td++;if(ad_td==8)ad_td=0;}if(key==3&F0==1)ad_td--;if(ad_td==255)ad_td=7;}}if(ad_mode==2)TR0=1;elseTR0=0;if(ad_mode==3){if(key==2&F0==1){ad_high=ad_high+100;}if(key==3&F0==1){ad_high=ad_high-100;}}if(ad_mode==4){if(key==2&F0==1){ad_low=ad_low+100;}if(key==3&F0==1){ad_low=ad_low-100;}}F0=0;}voidtimer0int(void){TMOD=0x11;TH0=(65536-10000/1)/256;TL0=(65536-10000/1)%256;ET0=1;EA=1;TR0=0;}voidtimer0chengxu(void)interrupt1{TH0=(65536-10000/1)/256;TL0=(65536-10000/1)%256;tt0--;if(tt0==0){tt0=100;ad_td++;if(ad_td==8)ad_td=0;}}voidtimer1int(){TMOD=0x11;TH1=(65536-500/1)/256;TL1=(65536-500/1)%256;ET1=1;EA=1;TR1=0;}voidtimer1chengxu()interrupt3{uintad_dianya;if(ad_dianya<ad_low){lowflag=0;TH1=(65536-100/1)/256;TL1=(65536-100/1)%256;speeker=~speeker;}else{lowflag=~lowflag;highflag=0;TH1=(65536-5000/1)/256;TL1=(65536-5000/1)%256;speeker=~speeker;}lowflag=1;highflag=1;}voidalarm(){uintad_dianya;//uintspeaker;if(ad_dianya>ad_high|ad_dianya<ad_low){TR1=1;〃開放T1中斷}elseTR1=0;〃關(guān)閉T1中斷}voidad_change(void){ad_adda=0;ad_addb=0;ad_addc=0;P1=P1|(ad_td<<4);ad_cs=0;
ad_start=0x00;while(ad_eos==1)disp();ad_data=ad_over;}voiddisp(void)(uintad_dianya;ucharj,k,l,m;if(ad_mode==0lad_mode==1lad_mode==2){ad_dianya=ad_data*19.60784;}if(ad_mode==3){ad_dianya=ad_high;}if(ad_mode==4){ad_dianya=ad_low;}j=ad_dianya/1000;k=ad_dianya%1000/100;l=ad_dianya%100/10;m=ad_dianya%10;delay(1);zxma=0xFF;delay(1);zxma=0xFF;delay(1);zxma=0xFF;delay(1);zxma=0xFF;zwma=~ziwei[2];zxma=~zixing[ad_td];zwma=~ziwei[4];zwma=?zwma=~ziwei[4];zwma=?ziwei[5];zwma=~ziwei[6];zwma=?ziwei[7];}voiddelay(uinti){unsignedintj,k;for(j=0;j<i;j++)for(k=0;k<121;k++);zxma=~zixing[j]&0x7f;zxma=?zixing[k];zxma=?zixing[l];zxma=?zixing[m];delay(1);zxma=0xFF;delay(1);zxma=0xFF;delay(1);zxma=0xFF;delay(1);zxma=0xFF;voidtimer2int(){C_T2=0;RCAP2H=(65536-100)/256;RCAP2L=(65536-100)%256;EA=1;ET2=1;TR2=1;}voidtimer2pro(void)interrupt5using0 {TF2=0;ad_clk=~ad_clk;}4系統(tǒng)調(diào)試硬件焊接分為單片機(jī)板和擴(kuò)展版兩部分。在焊接單片機(jī)板的時候出現(xiàn)過虛焊和漏焊的現(xiàn)象,再其次就是在焊接擴(kuò)展板的時候,自己將排陣竟然全部焊接反了,由于自己的疏忽,導(dǎo)致杜邦線無法連接。然后自己又逐一將排陣全部焊接了一遍,再者就是電路板的布局問題,由于自己是第一次走線,導(dǎo)致板子背面的走線很不光滑而且混亂,沒有秩序,但最終在自己的努力下實(shí)現(xiàn)了功能。由于自己曾經(jīng)掌握一些簡單的匯編語言,例如VB,C,C++等匯編語言,所以開始的時候總想將匯編語言寫成C語言的格式,導(dǎo)致程序頻頻出現(xiàn)問題。而且由于自己起初對KEILC軟件不是非常了解,所以很多時候出現(xiàn)問題自己不會改寫。但最終在老師和同
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 修理廠和供貨商合同范本
- 公寓開荒保潔合同范本
- 加裝電梯加盟合同范本
- canying勞動合同范本
- 剝離工程合同范本
- 保理 保證合同范本
- 養(yǎng)鵝訂單合同范本
- 中介居間服務(wù)合同范本
- 催收咨詢服務(wù)合同范例
- 加工制作維修合同范例
- 氧化還原反應(yīng)配平專項(xiàng)訓(xùn)練
- 2024年江蘇省中等職業(yè)學(xué)校學(xué)生學(xué)業(yè)水平考試機(jī)械CAD繪圖試卷(含5張圖)
- 2024年7天雙方無責(zé)任試崗期協(xié)議書模板
- 期末測試模擬卷(試題)-2023-2024學(xué)年五年級下冊數(shù)學(xué)人教版
- 全國教育科學(xué)規(guī)劃課題申報書:02.《鑄牢中華民族共同體意識的學(xué)校教育研究》
- 《船舶精通急救》全套教學(xué)課件
- 用藥安全課件教學(xué)課件
- 2024智能家居行業(yè)創(chuàng)新發(fā)展與前景展望研究報告
- (人教PEP2024版)英語一年級上冊Unit 5 教學(xué)課件(新教材)
- 腰椎術(shù)后失敗綜合征
評論
0/150
提交評論