單片機課程設(shè)計—葉真良[共19頁]
《單片機課程設(shè)計—葉真良[共19頁]》由會員分享,可在線閱讀,更多相關(guān)《單片機課程設(shè)計—葉真良[共19頁](19頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、 嘉 應(yīng) 學 院 電子信息工程學院 <單片機原理課程設(shè)計報告> 8通道精密模擬量數(shù)據(jù)采集器 指導(dǎo)老師 吳華波 專 業(yè) 自 動 化 班 級 0 8 2 班 姓 名 葉 真 良 同組人 賴 柳 明 同組人 溫 偉 江 座 號 1 7 號 學號 2081022117 摘 要 數(shù)據(jù)采集,又稱數(shù)據(jù)獲取,是利用一種裝置,從系統(tǒng)外部采集數(shù)據(jù)并輸入到系統(tǒng)內(nèi)部的一個接口。數(shù)據(jù)采 集技術(shù)廣泛引用在各個領(lǐng)域。它是
2、指從傳感器和其它待測設(shè)備等模擬和數(shù)字被測單元中自動采集信息的過程。本數(shù)據(jù)采集設(shè)計是一種基于單片機的數(shù)據(jù)采集系統(tǒng),采用MAX308多路選擇開關(guān),可以采集八通道的模擬量,A/D轉(zhuǎn)換器ICL7109的數(shù)據(jù)輸出形式為12為二進制碼,且與微處理器有良好的兼容特性,所以可以與89C51單片機直接相連。ICL7109所需的基準電壓由ICL7660供給,采集的數(shù)據(jù)經(jīng)過單片機的簡單處理,通過與計算機的連接在串口調(diào)試助手中直接顯示。本設(shè)計稱為8通道精密模擬量數(shù)據(jù)采集器,可以采集8路模擬量,并且采用杜邦線接線模式,方便加在其他設(shè)備中使用,8路模擬信號輸入也留有接線端子,可以任意選擇一路或多路進行采集、監(jiān)控。本設(shè)計制
3、作簡單,體積小,攜帶方便,并可以直接附加在其他設(shè)備上,用途廣泛。 目 錄 摘要................................................................2 1 設(shè)計目的...........................................................4 2 設(shè)計任務(wù)...........................................................4 3.設(shè)計方案...........................................
4、................4 4.數(shù)據(jù)采集器的電路設(shè)計..............................................5 4.1 電源電路的設(shè)計..................................................5 4.2數(shù)據(jù)輸入電路設(shè)計..................................................5 4.3 ICL7109與89C51單片機的硬件接口設(shè)計............................6 4.3.1 ICL7109的內(nèi)部結(jié)構(gòu)與芯片引腳功能........
5、........................7 4.4單片機轉(zhuǎn)串口與計算機通信設(shè)計....................................10 4.6整體電路........................................................11 4.6.1 整體電路原理圖..............................................12 4.6整體電路PCB圖...................................................13 5. 軟件調(diào)試...........
6、...............................................16 5.1 程序流程圖.......................................................16 5.2 程序清單.........................................................16 6. 電路的裝配與調(diào)試過程..............................................17 6.1電路焊接..........................................
7、................17 6.2調(diào)試過程..........................................................17 7收獲、體會和建議....................................................18 致謝..................................................................18 參考文獻..............................................................18 附錄 元
8、件清單.........................................................19 1設(shè)計目的 1.使學生在學完了《單片機原理與接口技術(shù)》課程的基本理論,基本知識后,能夠綜合運用所學理論知識、拓寬知識面,系統(tǒng)地進行電子電路的工程實踐訓練,鍛煉動手能力,培養(yǎng)工程師的基本技能,提高分析問題和解決問題的能力。 2.熟悉集成電路的引腳安排, 掌握各芯片的邏輯功能及使用方法了解面包板結(jié)構(gòu)及其接線方法,了解數(shù)據(jù)采集器的組成及工作原理。學會檢查電路的故障與排除故障的一般方法 3.學會檢查電路的故障與排除故障的一般方法,掌握虛擬設(shè)計,熟悉p
9、roteus仿真軟件的使用,熟悉protel設(shè)計軟件的使用,掌握在計算機上進行電路設(shè)計與分析的方法。 2.設(shè)計任務(wù) 設(shè)計一能采集8個通道的模擬量的精密數(shù)據(jù)采集系統(tǒng)。 主要技術(shù)指標: (1)模擬量通道數(shù):8; (2)AD轉(zhuǎn)換分辨率:14位(數(shù)據(jù)實質(zhì)是12位,加符號位和過量程指示位,總共14位); (3)模擬量輸入范圍:0-4.8V; (3)數(shù)據(jù)通信與顯示方式:采集到的數(shù)據(jù)通過串口發(fā)送到上位計算機,由計算機顯示數(shù)據(jù); (4)上位計算機與數(shù)據(jù)采集系統(tǒng)(下位機)通信方式:串口通信,主從通信方式,上位機為主機,下位機為從機。由上位機發(fā)起通信,下位機響應(yīng),將采集到的8路數(shù)據(jù)一并發(fā)送到計算機
10、中。 3.設(shè)計方案 按要求,設(shè)計數(shù)據(jù)采集器方案如下所示: 數(shù)據(jù)采集器采用STC51系列單片機作為微控制器,模擬開關(guān)MAX308的地址A0、A1、A2分別與P1.0~P1.2連接,通過控制P1口輸出來選擇輸入信號,將信號依次輸入送入雙積分AD轉(zhuǎn)換器ICL7109的模擬信號輸入端,在使用模擬開關(guān)時,將模擬開關(guān)的輸出端連接到ICL7109的輸入通道即可。ICL7109的轉(zhuǎn)換結(jié)果通過P0口傳給單片機,單片機將采集結(jié)果通過串行通信RS232接口上傳給上位PC機,實現(xiàn)數(shù)據(jù)的采集。 圖1 數(shù)據(jù)采集器方案示意圖 4.數(shù)據(jù)采集器的電路設(shè)計 下面將介紹設(shè)計電路具體方案。其中包括電源電路的設(shè)計
11、、數(shù)據(jù)輸入設(shè)計、ICL7109與單片機連接設(shè)計、模數(shù)轉(zhuǎn)換設(shè)計、單片機轉(zhuǎn)串口與計算機通信設(shè)計。 4.1 電源電路的設(shè)計 利用ICL7660將+5V電源變換成-5V電源的電路如下圖所示。C1、C2 采用漏電小、介質(zhì)損耗低的10uF旦電容,以提高電源轉(zhuǎn)換效率。當UDD﹤+6.5V時,5腳可直接作為輸出(將5腳沿虛線接輸出端Uo);當UDD﹥6.5V時,為避免損壞芯片,輸出電路需串入二極管D。該電路的輸出電流不宜超過10mA 圖2電源電路 4.2 數(shù)據(jù)輸入電路設(shè)計 數(shù)據(jù)輸入部分由模擬開關(guān)MA
12、X308實現(xiàn)多路信號的切換。MAX308是單8路(單刀16位)模擬開關(guān),各開關(guān)由外部輸入二進制的地址碼A0、A1、A2來切換。其中腳1、14和16是地址碼A0、A1、A2的輸入端;輸入腳A0、A1、A2分別與單片機P1.0~P1.2相連,改變P1輸出即可切換輸入通道,控制腳接高。帶串行接口的14位模數(shù)轉(zhuǎn)換集成電路(ADC),它包含有跟蹤/保持電路 的一個底飄溢、底噪聲、掩埋式齊納電壓基準電源。它的轉(zhuǎn)換速度快、功率消耗底、采樣速率高達308 ks/s點,滿量程輸入電壓范圍為±5V,功耗為210 mW??膳c大多數(shù)流行的數(shù)字信號處理器的串行接口直接接口,該輸入可以接收TTL或CMOS的信號
13、電平,時鐘頻率為0.1-5.5MHz。模擬多路復(fù)用 精密,8-Channel/Dual 4通道,高性能,CMOS模擬多路復(fù)用器 圖3 MAX308 功能引腳圖 圖4 數(shù)據(jù)輸入電路 4.3 ICL7109與89C51單片機的硬件接口設(shè)計 A/D轉(zhuǎn)換器ICL7109的數(shù)據(jù)輸出形式為12為二進制碼,且與微處理器有良好的兼容 特性,所以可以與8031單片機直接相連。硬件接口電路如圖6示: 圖中將ICL7109的MODE引腳接地。使其工作于直接輸出工作方式。將RUN/HOLD 接+5V,這樣ICL710
14、9可進行連續(xù)轉(zhuǎn)換。將STATUS線與8031的INT0相連,這樣每完成一次轉(zhuǎn)換便向889C51發(fā)一次中斷請求。由于采用了3.85MHZ的晶振,故ICL7109完成一次轉(zhuǎn)換所需的時間為T=8192(脈沖周期)x58/3.85MHZ=132.72ms,即轉(zhuǎn)換速率為7.5次/秒。其中ICL7660是+5V輸入—5V輸出的電源極性變換器。 圖中是利用STATUS的下降沿發(fā)中斷請求信號,在中斷服務(wù)程序中12位數(shù)據(jù)要分兩次讀出,分別用HBEN,LBEN控制,并能同時得到極性和是否溢出的標志。下面介紹ICL7109連續(xù)轉(zhuǎn)換時的轉(zhuǎn)換程序: ICL7109是美國Intersil公司生產(chǎn)的一種高精度、低噪聲、
15、低漂移、價格低廉的雙積分式12位A/D轉(zhuǎn)換器。由于目前逐次比較式的高速12位A/D轉(zhuǎn)換器一般價格都很高,在要求速度不太高的場合,如用于稱重,測壓力等各種高精度測量系統(tǒng)時,可以采用廉價的雙積分式高精度A/D轉(zhuǎn)換器ICL7109。ICL7109最大的特點是其數(shù)據(jù)輸出為12位二進制數(shù), 并配有較強的接口功能,能方便的與各種微處理器相連。 4.3.1 ICL7109的內(nèi)部結(jié)構(gòu)與芯片引腳功能 1、ICL7109的內(nèi)部電路結(jié)構(gòu) ICL7109的內(nèi)部電路有模擬電路和數(shù)字電路部分組成。模擬電路部分由模擬信號輸入 振蕩電路、積分、比較電路以及基準電壓源電路組成。
16、 圖5 ICL7109與8031單片機的硬件接口 下圖為數(shù)字電路部分的結(jié)構(gòu)。他由時鐘振蕩器、異步通訊握手邏輯、轉(zhuǎn)換控制邏輯以及計數(shù)器、鎖存器、三態(tài)門組成。 高位字節(jié)輸出引腳 低位字節(jié)輸出引腳 17 3 4 5 6 7 8 9 10 11 12 13 14 15 16 16位三態(tài)輸出 ICL7109
17、 18 16 20 14位鎖存器 模擬電路部分 12位計數(shù)器 電壓比較 振蕩器及時鐘
18、電路 轉(zhuǎn)換控制邏輯 握手 邏輯 器輸出 2 26 22 23 24 25 21 27 圖6 ICL7109數(shù)字電路部分內(nèi)部結(jié)構(gòu) 1、模擬信號輸入 模擬信號可差分輸入,分別接入差分輸入高端INHI(35腳)和差分輸入低端INLO(34腳)。模擬信號公共端為COMMON(33腳)。 2、時鐘電路 ICL7109片內(nèi)有振動器及時鐘電路。片內(nèi)提供的多功
19、能時鐘振動器既可用作RC振蕩器,也可作為晶體振蕩器。OSCSEL(24端)為振蕩器選擇。OSCSEL(24端)為高電平或開路時片內(nèi)為RC振蕩器,此時OSCOUT(23端)和BUFOSCOUT(25端)外接電阻、電容到OSCIN(22端),如圖4所示;OSCSEL為低電平時,外接振蕩晶體,片內(nèi)為晶體振蕩器如圖5所示。 接成RC振蕩器時,振蕩器頻率為0﹒45/RC(電容不能小于50PF)。接成晶體振蕩器時,內(nèi)部時鐘為58分頻后的振蕩器頻率。 為了使電路具有抗50串模干擾能力。A/D轉(zhuǎn)換時應(yīng)選擇積分時間(2048個時鐘數(shù))等于50HZ的整數(shù)倍。例如取積分時間為50HZ的1倍,即20MS,則晶體頻
20、率F=(2048個時鐘周期)x(58/20MS)=5﹒939MHZ;對于RC振蕩器,則F=(2048個時鐘數(shù))/20ms=102﹒4KHZ。 3、接口方式 ICL7109內(nèi)部有一個14位(12位數(shù)據(jù)和一個極性,一位溢出)的鎖存器和一個14位的三態(tài)輸出寄存器,可以很方便地與各種微處理器直接連接,而無須外部加額外的鎖存器。ICL7109有兩種接口方式,一種是直接接口方式,另一種是掛鉤接口方式。在直接接口方式中,ICL7109轉(zhuǎn)換結(jié)束時,由STATUS發(fā)出轉(zhuǎn)換結(jié)束信號到單片機,單片機對轉(zhuǎn)換后數(shù)據(jù)分高位字節(jié)和低位字節(jié)進行讀數(shù)。在掛鉤接口方式時,ICL7109提供工業(yè)標準的(通用異步接收發(fā)送器)數(shù)據(jù)
21、交換模式,適用于遠距離的數(shù)據(jù)采集系統(tǒng)。 4、ICL7109外部電路的參數(shù)選擇 ICL7109外部電路的連接及元件參數(shù)值如圖。 A﹒積分電阻RINT的選擇 緩沖放大器和積分器能夠提供20UA的推動電流,積分電阻要選得足夠大,以保證在輸入電壓范圍的線性。 積分電阻RINT=滿度電壓/20UA 當輸入滿度電壓=4﹒096V時,RINT=200KΩ,此時基準電壓REFIN-和REFIN+之間為+2V,由電阻R2和電位器R1分壓取得。如滿度電壓為方便用戶4﹒096MV,則RINT=20KΩ,基準電壓=0.2V。RINT接入緩沖放大器輸出端BUF(30腳)
22、。 B.積分電容CINT的選擇 積分電容根據(jù)積分器給出的最大輸出擺幅電壓選擇。此電壓應(yīng)使 積分器不飽和(大約低于電源0.3V)。對ICL7109的±5V電源。模擬公共點接地,積分器輸出擺幅一般為±3.5V至±4V。對不同的時鐘頻率,電容值也要改變,以保證積分器輸出電壓的擺幅。 CINT=2048*時鐘周期*20UA/積分器輸出擺幅 為了使積分器不飽和,積分器輸出的擺幅最大為±4V,所以積分器的最小電容為1UF。積分器電容越大,積分器輸出擺幅越小,所以,CINT也不應(yīng)選的過大,如果電路設(shè)計時選用不同的時鐘頻率,則積分電容應(yīng)根據(jù)上面的公式計算,
23、以便選擇合適的CINT的值。積分電容CINT接入積分電容連接端INT(32腳)。 C.自動調(diào)零電容CAZ的選擇 積分電容CINT選定以后,自動調(diào)零電容CAZ的選擇是非常容易的。在模擬輸入信號較小時,如0—409.6MV,這時抑制噪聲是主要的。而這時積分電阻又較小,所以,自動調(diào)零電容CAZ可選為比積分電容CAZ大一倍,以減少噪聲。CAZ的值越小,噪聲越小。對于大部分實際應(yīng)用系統(tǒng),由傳感器來的微小信號都要經(jīng)過放大器放大成較大的信號,如0—+4﹒096mV。這時噪聲的影響不是主要的,可把積分電容Cint選大一些以減少復(fù)零誤差,使Cint=2Caz。 D﹒基準電容Cref的選擇 一般情況下Cr
24、ef取值1uf較好。但如果存在一個大的共模電壓(即基準電壓低端不是模擬公共點),對于模擬輸入為0—+409﹒6MV的情況下,要求電容值較大,以防止?jié)L動誤差,在這種情況下,如選Cref=10uf可以使?jié)L動誤差在0﹒5以內(nèi)。 4.4單片機轉(zhuǎn)串口與計算機通信設(shè)計 圖8 單片機轉(zhuǎn)串口與計算機通信設(shè)計 圖9 單片機轉(zhuǎn)串口與計算機通信設(shè)計 4.6整體電路 4.6.1. 整體電路原理圖 圖10 數(shù)據(jù)采集整體電路 4.6.2. 整體電路PCB圖 圖11 整體
25、電路PCB圖 5.軟件調(diào)試: 5.1程序設(shè)計主流程圖 圖12 程序主流程圖 圖13 中斷流程圖 5.2程序清單 19 #include<reg52.h> #include <intrins.h> #define uchar unsigned char #define uint unsigned int sbit LBEN=P2^0; sbit HBEN=P2^1; sbit CE=P2^2; sbit RUN=P2^3; bit flag,fla
26、g1; uint data num[9]; uchar data a,con[2],i,t=0 ,b,f; void init() { EX0=1;//開放外部中斷0 IT0=1;//選擇外部中斷0的中斷方式為下降沿觸發(fā)方式 TMOD = 0x20;//采用T1定時器,工作方式2(8位自動再裝入方式) SCON = 0x50;//串行口控制寄存器采取工作方式1 TH1 = 0xFD; TL1 = TH1; PCON = 0x00; ES = 1;//開放串行口中斷 TR1=1;//啟動定時器1 EA = 1;//開總
27、中斷 LBEN=1; HBEN=1; P0=0xff; } void send(uint c) { uchar dat1,dat2; dat1=c/256; SBUF=dat1; while(!TI); TI=0; dat2=c%256; SBUF = dat2; while(!TI); TI=0; } void main() { init(); while(1) { switch(f) { case 1: P1=0x00;break; case 2: P1=0x01;
28、break; case 3: P1=0x02;break; case 4: P1=0x03;break; case 5: P1=0x04;break; case 6: P1=0x05;break; case 7: P1=0x06;break; case 8: P1=0x07;break; default:break; } CE=0; RUN=1; while(!flag); flag=0; num[f]=num[0]; RUN=0; CE=1; if(f!=0&&!flag1
29、) send(num[f]); if(flag1!=1) f=0; if(con[0]=='a'&&con[1]=='l') { con[0]=0; con[1]=0; flag1=1; f=0; } if(flag1==1) { f++; if(f>=9) { flag1=0; for(i=1;i<8;i++) { send(num[i]); }
30、 } } if(con[0]=='H') { switch(con[1]) { case '1':f=1;break; case '2':f=2;break; case '3':f=3;break; case '4':f=4;break; case '5':f=5;break; case '6':f=6;break; case '
31、7':f=7;break; case '8':f=8;break; default:break; } con[0]=0; con[1]=0; } t=0; } } void read() interrupt 0 { LBEN=1; HBEN=0; num[0]=P0; num[0]=num[0]*256; LBEN=0; HBEN=1; num[0]=P0|num[0]; LBEN=1; HBEN=1; flag =1; }
32、 void UARTInterrupt(void) interrupt 4 { if(RI) { RI = 0; con[t]=SBUF; t++; if(t==2) t=0; } else TI = 0; } 6. 電路的裝配與調(diào)試過程 6.1電路焊接 焊接時要主要布線和焊點的合理分布,采用手工布線,盡量做到美觀。實際焊接過程中,要保證焊筆不要碰到已經(jīng)焊好的線,否則焊好的線很容易脫落。每焊接完一部分電路,就立即進行調(diào)試,測試無誤后方可進心下一階段的焊接
33、。插拔集成芯片時用力要均勻,避免芯片管腳在插拔中變彎、折斷 6.2調(diào)試過程 實際調(diào)試中出現(xiàn)了不少問題,如通訊不正常,采集不穩(wěn)定等等。仔細檢測后發(fā)現(xiàn)主要是電路的一些接線有錯以及虛焊。下面是我們的通電源逐級調(diào)試,逐級排除故障錯誤的調(diào)試調(diào)試過程。 7收獲、體會和建議 收獲與體會: 1、加強了團隊合作精神,磨練了我們的意志力。我們各人之間好好的配合,分工合作,設(shè)計過程沒有一團亂麻。更為可貴的是,我們彼此鼓勵,同舟共濟地處理每個問題。這種團隊精神將是我們美好的回憶。我們花了很多心血來做這個課程設(shè)計,凡事不是一帆風順的,我們遇到了許多困難。有些困難甚至看起來難于解決,確實也是打擊了我們的信心。但
34、我們毫不氣餒,認真地檢查電路,檢查焊接的好壞,用堅強的意志解決問題,最終功夫不負有心人,我們終于把這個單片機課程設(shè)計—8通道精密數(shù)據(jù)采集器設(shè)計完成了! 2、加強我們對電子器件的了解。一直以來,我們都對電子器件都很感興趣,對電子應(yīng)用感到好奇。這次我們親自制作一個電子器件,雖然原理并不太復(fù)雜,但我們在這一個過程,了解電子應(yīng)用的奇妙之處。 3、提高了我們使用電腦對電路進行仿真的能力。我們要進一步熟悉軟件 proteus來畫電路圖,并用它進行仿真;并用protel進行合理規(guī)劃、布線。這又讓我們的知識增多了。 4、做到理論聯(lián)系實際。剛剛學過了單片機原理與接口技術(shù)這門課程,還沒完全弄懂某些元器件的原
35、理和用途,而此次課程設(shè)計恰恰提供了一個好機會,讓我們從實踐中加深了對所學知識的理解。 5、以前我們在電路實習中學習了焊接電路板,但只是學了很短的時間,此次設(shè)計給我們上再多一次機會,提高了我們的動手能力,焊接技術(shù)也有了很大提高。 6、通過撰寫說明書,掌握了畢業(yè)論文的寫作規(guī)范,我們以后撰寫畢業(yè)設(shè)計論文打下了堅定的基礎(chǔ)。 致 謝 指導(dǎo)老師:吳華波 參 考 文 獻 1、牛昱光.2008年. 單片機原理與接口技術(shù) 電子工業(yè)出版社 1、康華光.2006年. 電子技術(shù)基礎(chǔ) 數(shù)字部分(第五版). 北京:高等教育出版社. 2、模擬電子技術(shù) 第五版 康華光主編 高等教育出版社 2006 附錄 元件清單 元件清單 元件名稱 元件 單片機AT89S52 1 ICL7109 1 MAX232 1 MAX308 1 ICL7660 1 TL431 1 10UF 5 0.1UF 3 1UF 6 0.022UF 1 0.33UF 1 CBB電容105j 1 CBB電容154j CBB電容334j 0.15UF 1 3.3NF 1 22PF 2 1M 1 10K 2 2.2K 1 2K 1 20K可調(diào)電阻 1 200K 1
- 溫馨提示:
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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。