通信工程畢業(yè)設(shè)計(jì)基于單片機(jī)數(shù)字電壓表設(shè)計(jì)_第1頁
通信工程畢業(yè)設(shè)計(jì)基于單片機(jī)數(shù)字電壓表設(shè)計(jì)_第2頁
通信工程畢業(yè)設(shè)計(jì)基于單片機(jī)數(shù)字電壓表設(shè)計(jì)_第3頁
通信工程畢業(yè)設(shè)計(jì)基于單片機(jī)數(shù)字電壓表設(shè)計(jì)_第4頁
通信工程畢業(yè)設(shè)計(jì)基于單片機(jī)數(shù)字電壓表設(shè)計(jì)_第5頁
已閱讀5頁,還剩28頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、青島農(nóng)業(yè)大學(xué)第五屆電子設(shè)計(jì)大賽設(shè)計(jì)方案項(xiàng) 目 名 稱:基于單片機(jī)數(shù)字電壓表設(shè)計(jì)參賽成員:陳昌棟通信09級(jí)2班丁勝朋通信09級(jí)2班張艷敏通信09級(jí)2班基于單片機(jī)的數(shù)字電壓表摘要:本文介紹一種基于STC89C52單片機(jī)的一種電壓測(cè)量電路,該電路采用運(yùn)放OP07高精度、逐步逼近A/D轉(zhuǎn)換電路,測(cè)量范圍直流0-±2000伏,使用LCD液晶模塊顯示,可以與PC機(jī)進(jìn)行串行通信。正文著重給出了軟硬件系統(tǒng)的各部分電路,介紹了逐步逼近電路的原理,STC89C52的特點(diǎn),AD0804的功能和應(yīng)用。該電路設(shè)計(jì)新穎、功能強(qiáng)大、可擴(kuò)展性強(qiáng)。關(guān)鍵詞:電壓測(cè)量,運(yùn)放OP07,逐步逼近式 A/D轉(zhuǎn)換器,12864液

2、晶模塊1前言數(shù)字電壓表(Digital Voltmeter)簡(jiǎn)稱DVM,它是采用數(shù)字化測(cè)量技術(shù),把連續(xù)的模擬量(直流輸入電壓)轉(zhuǎn)換成不連續(xù)、離散的數(shù)字形式并加以顯示的儀表。傳統(tǒng)的指針式電壓表功能單一、精度低,不能滿足數(shù)字化時(shí)代的需求,采用單片機(jī)的數(shù)字電壓表,由精度高、抗干擾能力強(qiáng),可擴(kuò)展性強(qiáng)、集成方便,還可與PC進(jìn)行實(shí)時(shí)通信。目前,由各種單片A/D 轉(zhuǎn)換器構(gòu)成的數(shù)字電壓表,已被廣泛用于電子及電工測(cè)量、工業(yè)自動(dòng)化儀表、自動(dòng)測(cè)試系統(tǒng)等智能化測(cè)量領(lǐng)域,示出強(qiáng)大的生命力。與此同時(shí),由DVM擴(kuò)展而成的各種通用及專用數(shù)字儀器儀表,也把電量及非電量測(cè)量技術(shù)提高到嶄新水平。本章重點(diǎn)介紹單片A/D 轉(zhuǎn)換器以及由

3、它們構(gòu)成的基于單片機(jī)的數(shù)字電壓表的工作原理。2系統(tǒng)原理及基本框圖 2.1 單片機(jī)部分由于單片機(jī)在整個(gè)設(shè)計(jì)中占據(jù)著重要的地方,首先介紹一下單片機(jī)的相關(guān)知識(shí)。單片機(jī)STC89C52具有低電壓供電和體積小等特點(diǎn),四個(gè)端口只需要兩個(gè)口就能滿足電路系統(tǒng)的設(shè)計(jì)需要。8051是MCS-51系列單片機(jī)的典型產(chǎn)品,我們以這一代表性的機(jī)型進(jìn)行系統(tǒng)的講解。8051單片機(jī)包含中央處理器、程序存儲(chǔ)器(ROM)、數(shù)據(jù)存儲(chǔ)器(RAM)、定時(shí)/計(jì)數(shù)器、并行接口、串行接口和中斷系統(tǒng)等幾大單元及數(shù)據(jù)總線、地址總線和控制總線等三大總線,現(xiàn)在我們分別加以說明:·中央處理器: 中央處理器(CPU)是整個(gè)單片機(jī)的核心

4、部件,是8位數(shù)據(jù)寬度的處理器,能處理8位二進(jìn)制數(shù)據(jù)或代碼,CPU負(fù)責(zé)控制、指揮和調(diào)度整個(gè)單元系統(tǒng)協(xié)調(diào)的工作,完成運(yùn)算和控制輸入輸出功能等操作。·數(shù)據(jù)存儲(chǔ)器(RAM) 8051內(nèi)部有128個(gè)8位用戶數(shù)據(jù)存儲(chǔ)單元和128個(gè)專用寄存器單元,它們是統(tǒng)一編址的,專用寄存器只能用于存放控制指令數(shù)據(jù),用戶只能訪問,而不能用于存放用戶數(shù)據(jù),所以,用戶能使用的RAM只有128個(gè),可存放讀寫的數(shù)據(jù),運(yùn)算的中間結(jié)果或用戶定義的字型表。8051內(nèi)部結(jié)構(gòu)如圖1所示:圖1 8051 內(nèi)部結(jié)構(gòu)·程序存儲(chǔ)器(ROM):8051共有4096個(gè)8位掩膜ROM,用于存放用戶程序,原始數(shù)據(jù)或表格。

5、83;定時(shí)/計(jì)數(shù)器(ROM):8051有兩個(gè)16位的可編程定時(shí)/計(jì)數(shù)器,以實(shí)現(xiàn)定時(shí)或計(jì)數(shù)產(chǎn)生中斷用于控制程序轉(zhuǎn)向。·并行輸入輸出(I/O)口:8051共有4組8位I/O口(P0、 P1、P2或P3),用于對(duì)外部數(shù)據(jù)的傳輸。·全雙工串行口:8051內(nèi)置一個(gè)全雙工串行通信口,用于與其它設(shè)備間的串行數(shù)據(jù)傳送,該串行口既可以用作異步通信收發(fā)器,也可以當(dāng)同步移位器使用。·中斷系統(tǒng):8051具備較完善的中斷功能,有兩個(gè)外中斷、兩個(gè)定時(shí)/計(jì)數(shù)器中斷和一個(gè)串行中斷,可滿足不同的控制要求,并具有2級(jí)的優(yōu)先級(jí)別選擇。·時(shí)鐘電路:8051內(nèi)置最高頻率達(dá)12MHz的時(shí)鐘電路,用

6、于產(chǎn)生整個(gè)單片機(jī)運(yùn)行的脈沖時(shí)序,但8051單片機(jī)需外置振蕩電容。單片機(jī)的結(jié)構(gòu)有兩種類型,一種是程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器分開的形式,即哈佛(Harvard)結(jié)構(gòu),另一種是采用通用計(jì)算機(jī)廣泛使用的程序存儲(chǔ)器與數(shù)據(jù)存儲(chǔ)器合二為一的結(jié)構(gòu),即普林斯頓(Princeton)結(jié)構(gòu)。INTEL的MCS-51系列單片機(jī)采用的是哈佛結(jié)構(gòu)的形式,而后續(xù)產(chǎn)品16位的MCS-96系列單片機(jī)則采用普林斯頓結(jié)構(gòu)。下圖是MCS-51系列單片機(jī)的內(nèi)部結(jié)構(gòu)示意圖2所示:圖2 MCS-51結(jié)構(gòu)框圖MCS-51的引腳說明:MCS-51系列單片機(jī)中的8031、8051及8751均采用40Pin封裝的雙列直接DIP結(jié)構(gòu),右圖是它們的引腳配

7、置,40個(gè)引腳中,正電源和地線兩根,外置石英振蕩器的時(shí)鐘線兩根,4組8位共32個(gè)I/O口,中斷口線與P3口線復(fù)用。現(xiàn)在我們對(duì)這些引腳的功能加以說明:MCS-51的引腳說明:MCS-51系列單片機(jī)中的8031、8051及8751均采用40Pin封裝的雙列直接DIP結(jié)構(gòu),圖3是它們的引腳配置,40個(gè)引腳中,正電源和地線兩根,外置石英振蕩器的時(shí)鐘線兩根,4組8位共32個(gè)I/O口,中斷口線與P3口線復(fù)用?,F(xiàn)在我們對(duì)這些引腳的功能加以說明:圖3 51單片機(jī)引腳圖Pin9:RESET/Vpd復(fù)位信號(hào)復(fù)用腳,當(dāng)8051通電,時(shí)鐘電路開始工作,在RESET引腳上出現(xiàn)24個(gè)時(shí)鐘周期以上的高電平,系統(tǒng)即初始復(fù)位。

8、初始化后,程序計(jì)數(shù)器PC指向0000H,P0-P3輸出口全部為高電平,堆棧指針寫入07H,其它專用寄存器被清“0”。RESET由高電平下降為低電平后,系統(tǒng)即從0000H地址開始執(zhí)行程序。然而,初始復(fù)位不改變RAM(包括工作寄存器R0-R7)的狀態(tài),8051的初始態(tài)。8051的復(fù)位方式可以是自動(dòng)復(fù)位,也可以是手動(dòng)復(fù)位,見下圖。此外,RESET/Vpd還是一復(fù)用腳,Vcc掉電其間,此腳可接上備用電源,以保證單片機(jī)內(nèi)部RAM的數(shù)據(jù)不丟失。其復(fù)位電路如圖4所示:圖4 復(fù)位電路圖·Pin30:ALE/當(dāng)訪問外部程序器時(shí),ALE(地址鎖存)的輸出用于鎖存地址的低位字節(jié)。而訪問內(nèi)部程序存儲(chǔ)器時(shí),A

9、LE端將有一個(gè)1/6時(shí)鐘頻率的正脈沖信號(hào),這個(gè)信號(hào)可以用于識(shí)別單片機(jī)是否工作,也可以當(dāng)作一個(gè)時(shí)鐘向外輸出。更有一個(gè)特點(diǎn),當(dāng)訪問外部程序存儲(chǔ)器,ALE會(huì)跳過一個(gè)脈沖。如果單片機(jī)是EPROM,在編程其間,將用于輸入編程脈沖。·Pin29:當(dāng)訪問外部程序存儲(chǔ)器時(shí),此腳輸出負(fù)脈沖選通信號(hào),PC的16位地址數(shù)據(jù)將出現(xiàn)在P0和P2口上,外部程序存儲(chǔ)器則把指令數(shù)據(jù)放到P0口上,由CPU讀入并執(zhí)行。·Pin31:EA/Vpp程序存儲(chǔ)器的內(nèi)外部選通線,8051和8751單片機(jī),內(nèi)置有4kB的程序存儲(chǔ)器,當(dāng)EA為高電平并且程序地址小于4kB時(shí),讀取內(nèi)部程序存儲(chǔ)器指令數(shù)據(jù),而超過4kB地址則讀取

10、外部指令數(shù)據(jù)。如EA為低電平,則不管地址大小,一律讀取外部程序存儲(chǔ)器指令。顯然,對(duì)內(nèi)部無程序存儲(chǔ)器的8031,EA端必須接地。2.2電平測(cè)量的電路設(shè)計(jì)該方案要求的測(cè)量信號(hào)電平的動(dòng)態(tài)范圍大(0.0014.99Vrms),頻帶寬(20Hz0.2MHz),電壓測(cè)量誤差為土(3%讀數(shù)+2個(gè)字)。由上對(duì)AD637性能分析,系統(tǒng)應(yīng)采用電壓輸出方式,不宜采用直接dB輸出方式,并應(yīng)具備輸如信號(hào)增益調(diào)節(jié)環(huán)節(jié),以保證信號(hào)電平的動(dòng)態(tài)范圍及精度。電平測(cè)量的原理框圖如圖5所示:可變?cè)鲆娣糯笃鰽D637模/數(shù)轉(zhuǎn)換MPU信號(hào)輸入圖5 電平(電壓)測(cè)量原理框圖下面是對(duì)各框圖的解說:(1)可變?cè)鲆娣糯箅娐返脑O(shè)計(jì)由于最小輸入信號(hào)

11、為毫伏級(jí),系統(tǒng)要求具有輸入阻抗變換功能,可變?cè)鲆娣糯箅娐房刹捎蒙潆S器加可變?cè)鲆娣糯笃鞯慕Y(jié)構(gòu)形式。由于大多數(shù)AD變換器的滿刻度輸出為5V,增益變換檔位應(yīng)為5V、1V、100mV和10mV4個(gè)檔位。經(jīng)實(shí)際測(cè)量,AD637在輸入信號(hào)為2MHz以下,信號(hào)有效值為0.77Vrms范圍內(nèi)能保證無誤,當(dāng)輸入電壓為200mVrms時(shí),頻率上限高達(dá)600kHz,考慮到芯片供電與輸入電壓的關(guān)系,AD673輸入信號(hào)幅度范圍選取0.22V。所以該可變?cè)鲆娣糯箅娐房刹捎秒娮杈W(wǎng)絡(luò)衰減器和固定增益放大器相串聯(lián)形式,放大器增益不小于200,上述檔位對(duì)應(yīng)的衰減器衰減量分別為0.001倍、0.01倍、0.1倍和1倍。射隨器應(yīng)選擇

12、單位增益帶寬大于0.6MHz,輸入失調(diào)電壓、失調(diào)電流小的運(yùn)放芯片,可選擇OP07單運(yùn)放芯片。其在土15V供電時(shí),輸入失調(diào)電壓的典型值和最大值分別為20UF和75UF;輸入偏置電流的典型值和最大值分別為6NA和12NA;增益帶寬積大于0.6MHZ,完全滿足設(shè)計(jì)精度要求。由于放大器增益至少應(yīng)大于200,放大器芯片的選擇主要考慮輸入失調(diào)電壓、電流和增益帶寬參數(shù),選擇OP07芯片。其開環(huán)在1MHZ時(shí)可達(dá)50DB,輸入失調(diào)電壓典型值為35UV,失調(diào)電流典型值50NA,滿足設(shè)計(jì)要求。可變?cè)鲆娣牌麟娐返碾娐穲D如圖6所示。待測(cè)電信號(hào)由J1輸入電路,從TESTV輸出。放大電路輸入阻抗變換采用撥碼開關(guān)S2完成。檔

13、位選擇采用模擬開關(guān)芯片CD4052。,MPU根據(jù)采樣獲得的測(cè)量值大小,自動(dòng)完成檔位轉(zhuǎn)換。檔位在10V時(shí),輸入信號(hào)首先經(jīng)R14、R15衰減0.1倍,經(jīng)射隨器后在衰減0.01倍,由CD4052BE切換至200倍放大器U4。由電路圖可知,流經(jīng)所有芯片的信號(hào)峰值均小于2V,使整個(gè)電路可采用土5V電源供電,既簡(jiǎn)化了整個(gè)系統(tǒng)的電源設(shè)計(jì),又兼容了后繼處理電路的要求。圖6 可變?cè)鲆娣糯箅娐?.3有效測(cè)量電路的設(shè)計(jì)有效測(cè)量電路由有效測(cè)量芯片AD637和A/D轉(zhuǎn)換芯片ADC0804組成。有效值測(cè)量芯片采用后置二階濾波連接方式,其中的CAV(C1)取值為1UF時(shí)滿足信號(hào)在20H1MHZ頻帶范圍內(nèi)的測(cè)量精度要求,此時(shí)

14、測(cè)量時(shí)間為365MS,此時(shí)間參數(shù)可作為采樣周期的參考值。在該電路中,由于AD637輸出的最小電壓幅度為200MV,A/D轉(zhuǎn)換精度應(yīng)大于8BITS方能在A/D轉(zhuǎn)換的參考電壓為5V時(shí)滿足系統(tǒng)測(cè)量誤差小于3%的要求。因本系統(tǒng)對(duì)A/D轉(zhuǎn)化的采樣頻率要求高,A/D轉(zhuǎn)換芯片可采用并行輸出方式,本電路采用具有8BITS換精度的ADC0804芯片。由于AD637輸出的最大電壓幅度為2V,A/D轉(zhuǎn)換器的參考電壓至少應(yīng)為5V,選用+5V電源作為參考電壓,完全滿足系統(tǒng)精度及AD7920供電要求。電平測(cè)量的完整電路圖如圖7所示。圖7 有效值測(cè)量電路2.4A/D 轉(zhuǎn)換電路的設(shè)計(jì)A/D 轉(zhuǎn)換器的轉(zhuǎn)換精度對(duì)測(cè)量電路極其重要

15、,它的參數(shù)關(guān)系到測(cè)量電路性能。本設(shè)計(jì)采用逐步逼近式A/D 轉(zhuǎn)換器,它的性能比較穩(wěn)定,轉(zhuǎn)換精度高,具有很高的抗干擾能力,電路結(jié)構(gòu)簡(jiǎn)單,其缺點(diǎn)是工作速度較低。在對(duì)轉(zhuǎn)換精度要求較高,而對(duì)轉(zhuǎn)換速度要求不高的場(chǎng)合如電壓測(cè)量有廣泛的應(yīng)用。2.4.1逐步逼近式A/D轉(zhuǎn)換器的工作原理逐步逼近式A/D轉(zhuǎn)換器的工作原理圖,如圖8所示:圖8 A/D工作原理圖2.4.2 AD0804的應(yīng)用ADC0804的規(guī)格及引腳圖8 位COMS 依次逼近型的A/D 轉(zhuǎn)換器.三態(tài)鎖定輸出存取時(shí)間:135US分辨率:8位轉(zhuǎn)換時(shí)間:100US總誤差:正負(fù)1LSB工作溫度:ADC0804LCN-070度引腳圖及說明,如圖9所示:圖9 AD

16、C0804/CS 芯片選擇信號(hào)。/RD 外部讀取轉(zhuǎn)換結(jié)果的控制輸出信號(hào)。/RD 為HI 時(shí),DB0DB7 處理高阻抗:/RD 為L(zhǎng)O 時(shí),數(shù)字?jǐn)?shù)據(jù)才會(huì)輸出。/WR:用來啟動(dòng)轉(zhuǎn)換的控制輸入,相當(dāng)于ADC 的轉(zhuǎn)換開始(/CS=0 時(shí)),當(dāng)/WR 由HI變?yōu)長(zhǎng)O時(shí),轉(zhuǎn)換器被清除:當(dāng)/WR 回到HI 時(shí),轉(zhuǎn)換正式開始。CLK IN,CLK R:時(shí)鐘輸入或接振蕩無件(R,C)頻率約限制在100KHZ1460KHZ,如果使用RC 電路則其振蕩頻率為1/(1.1RC)/INTR:中斷請(qǐng)求信號(hào)輸出,低地平動(dòng)作.VIN(+) VIN(-) :差動(dòng)模擬電壓輸入.輸入單端正電壓時(shí), VIN(-)接地:而差動(dòng)輸入時(shí),

17、直接加入VIN(+) VIN(-).AGND,DGND:模擬信號(hào)以及數(shù)字信號(hào)的接地.VREF:輔助參考電壓.DB0DB7:8 位的數(shù)字輸出.VCC: 電源供應(yīng)以及作為電路的參考電壓.其設(shè)計(jì)電路如圖10所示:圖10 AD設(shè)計(jì)電路2.5 液晶顯示部分一元器件介紹12864M是一種圖形液晶顯示器,它主要由行驅(qū)動(dòng)/列驅(qū)動(dòng)和128*64全點(diǎn)陣液晶顯示器組成??赏瓿蓤D形顯示,也可顯示8*4個(gè)(16*16點(diǎn)陣)漢字。1、電源:VDD+5V,模塊內(nèi)自帶-10V負(fù)壓,用于LCD的驅(qū)動(dòng)。2、顯示內(nèi)容:128(列)*64(行)點(diǎn)。3、七種指令。4、與CPU接口采用8位數(shù)據(jù)總線并行輸入輸出和8條控制線。5、工作溫度:

18、0-60。二模塊主要硬件構(gòu)成說明12864液晶顯示結(jié)構(gòu)框圖,如圖11所示: 圖11 12864結(jié)構(gòu)框圖三顯示界面設(shè)置(1)開機(jī)顯示界面采用12864圖像顯示處理,通過圖像處理得到128*64大小的圖像,獲取代碼顯示,圖像如下(2)電壓測(cè)試界面,主顯示界面采用的是軟件控制,主要代碼uchar code dis1="量A 10MV C 100MV"uchar code dis2="程B 1V D 10V"uchar code dis3="所選量程:"uchar code dis4="測(cè)值:"uchar code dis

19、5="當(dāng)前室溫:"uchar code dis6="MV"uchar code dis7=" V"uchar code dis8="量程錯(cuò)誤!"void disphoto(uchar *photo) /圖片顯示unsigned char i,j;writecmd(0x34); /關(guān)閉繪圖for(i=0;i<32;i+) writecmd(0x80+i); /垂直坐標(biāo) writecmd(0x80); /水平坐標(biāo)for(j=0;j<16;j+) /一行可顯示16個(gè)字符writedat(*photo+);de

20、lay2(1); for(i=0;i<32;i+) writecmd(0x80+i); writecmd(0x88);for(j=0;j<16;j+)writedat(*photo+);delay2(1);writecmd(0x36);顯示如圖量 A 10mV B 1V 程 C 100mV D 5V所選量程:測(cè)值為:(3)溫度顯示界面通過判斷當(dāng)前溫度,顯示提示語言:1室溫偏高注意防暑2室溫適宜注意休息3根據(jù)溫差謹(jǐn)防感冒室內(nèi)溫度T:xxxx*顯示提示語言*四 系統(tǒng)軟件設(shè)計(jì)4.1主程序設(shè)計(jì)主程序主顯示界面測(cè)壓界面溫度T<2020<T<31T>31提示語言提示語言

21、提示語言If u>10mvIf u>100mvIf u>1vIf u>5v提示量程選擇錯(cuò)誤4.2程序清單主程序代碼:#include<reg52.h>#include<intrins.h>#include<stdlib.h>#include<ds18b20.h>#define uchar unsigned char#define uint unsigned intsbit rs=P30; sbit rw=P31;sbit en=P34;sbit psb=P35;sbit int1=P33;/定義管腳功能sbit cs=P3

22、2;/定義ADcs端sbit a1=P26;/定義CD4052的A端口sbit b1=P27 ;/定義CD4052的B端口sbit wr=P36; sbit rd=P37; unsigned int dianya,count,aaa,aaa_h;unsigned int dianyah,dianyal; /用于存儲(chǔ)讀出數(shù)據(jù)的高字節(jié)和低字節(jié)unsigned char addata,i;unsigned int dianya=0;const uchar table=0x30,0x31,0x32,0x33, 0x34,0x35,0x36,0x37, 0x38,0x39,0x41,0x42, 0x43

23、,0x44,0x45,0x46;uchar code dis1="量A 10mV B 1V "uchar code dis2="程C 100mV D 5V"uchar code dis3="所選量程:"uchar code dis4="測(cè)值:"uchar code dis5="當(dāng)前室溫:"uchar code dis6="mV"uchar code dis7=" V"uchar code dis8="量程錯(cuò)誤!"uchar code d

24、is9="室溫偏高注意防暑"uchar code dis10="室溫適宜注意休息"uchar code dis11="根據(jù)溫差謹(jǐn)防感冒"uchar code dis12="請(qǐng)選擇量程"unsigned char code photo1=0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x

25、00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x

26、00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0xC1,0xE0,0x00,0xF0,0x00,0x0F,0x00,0x00,0x00,0x00,0x03,0xE0,0x00,0x00,0x00,0x1F,0xD9,0xE0,0x

27、01,0xF0,0x00,0x0F,0x00,0x1F,0xFF,0xFC,0x01,0xC0,0x00,0x00,0x00,0x1D,0xFD,0xC1,0xFF,0xFF,0xF0,0x0F,0x00,0x1F,0xFF,0xFD,0xFF,0xFF,0xC0,0x00,0x00,0x1F,0xFB,0xC1,0xFF,0xFF,0xF7,0xFF,0xFE,0x1F,0xFF,0xFD,0xFF,0xFF,0xC0,0x00,0x00,0x0D,0xDB,0xFE,0xFF,0xFF,0xF7,0xFF,0xFE,0x1E,0x00,0x00,0x01,0xC0,0x00,0x00,0x

28、00,0x3F,0xFF,0xFE,0xE0,0x00,0xF7,0xFF,0xFE,0x1E,0x1E,0x00,0x01,0xC0,0x00,0x00,0x00,0x3F,0xFF,0xFF,0xFF,0xFF,0xF7,0x8F,0x1E,0x1E,0x1E,0x01,0xFF,0xFF,0x80,0x00,0x00,0x07,0xC7,0x9C,0x1F,0xFF,0x07,0x8F,0x1E,0x1E,0x1E,0x01,0xFF,0xFF,0x80,0x00,0x00,0x1F,0xFF,0x9C,0x1F,0xFF,0x07,0xFF,0xFE,0x1E,0x1E,0x00,0x

29、01,0xC0,0x00,0x00,0x00,0x3D,0xFF,0x9C,0x00,0x3E,0x07,0xFF,0xFE,0x1F,0xFF,0xF8,0x01,0xC0,0x00,0x00,0x00,0x3F,0xDF,0xBC,0x00,0xF8,0x07,0x8F,0x1E,0x1F,0xFF,0xFB,0xFF,0xFF,0xC0,0x00,0x00,0x17,0x87,0xFD,0xFF,0xFF,0xF7,0x8F,0x1E,0x1D,0xFF,0xFB,0xFF,0xFF,0xC0,0x00,0x00,0x3F,0xF9,0xF9,0xFF,0xFF,0xF7,0xFF,0x

30、FE,0x1E,0x1E,0x00,0x0F,0xE3,0x80,0x00,0x00,0x3F,0xF9,0xF9,0xFF,0xFF,0xF7,0xFF,0xFE,0x3C,0x1E,0x60,0x3E,0xFF,0xC0,0x00,0x00,0x0E,0x78,0xF0,0x00,0xF0,0x07,0xFF,0xFF,0x3C,0x1F,0xF8,0x7E,0xFF,0x40,0x00,0x00,0x1F,0xF0,0xF0,0x00,0xF0,0x07,0x8E,0x07,0xBC,0x1E,0x71,0xFE,0x7C,0x00,0x00,0x00,0x2F,0xE3,0xF8,0x

31、00,0xF0,0x07,0x8F,0x07,0xBC,0x1E,0x03,0xFE,0x7F,0x00,0x00,0x00,0x07,0xFF,0xFC,0x0F,0xF0,0x00,0x0F,0xFF,0xFF,0xFF,0xFF,0xDF,0xFF,0xC0,0x00,0x00,0x3F,0xFF,0xFE,0x0F,0xF0,0x00,0x0F,0xFF,0x7F,0xFF,0xFF,0x9F,0xE7,0xC0,0x00,0x00,0x3F,0x3F,0x9C,0x0F,0xE0,0x00,0x07,0xFE,0x3F,0xFF,0xFC,0x1F,0xC1,0xC0,0x00,0x

32、00,0x18,0x06,0x0C,0x00,0x00,0x00,0x00,0x00,0x30,0x00,0x00,0x1C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x

33、00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3C,0x00,0x00,0x00,0x

34、38,0x78,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3C,0x07,0x0E,0x00,0x78,0x78,0x1F,0xFF,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0xF8,0x0F,0xFF,0xFE,0x7F,0xFF,0xDF,0xFF,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0xFF,0xF7,0xFF,0xFE,0x7F,0xFF,0xDE,0x3C,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0x

35、FF,0xF7,0xFB,0xDE,0xF0,0x78,0x1E,0x3C,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x37,0xF0,0xF3,0xFB,0xDE,0xF0,0x78,0x1E,0x3C,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0xF0,0xF0,0x7B,0xDE,0xFF,0xFF,0x9F,0xFF,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0xFF,0xFF,0xFB,0xDF,0xFF,0xFF,0x9F,0xFF,0xF0,0x00,0x00,0x00,0x

36、00,0x00,0x00,0x3F,0x6F,0xEF,0xFB,0xDF,0xFF,0x7B,0x9E,0x3C,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0x1E,0x07,0xFF,0xDF,0xFF,0x7B,0x9E,0x3C,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0x1F,0x07,0xFF,0xDF,0xFF,0xFF,0x9E,0x3C,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0x1F,0x07,0xFF,0xFF,0xFF,0xFF,0x9F,0xFF,0x

37、F0,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0xBF,0x87,0xFF,0xFC,0x77,0x7B,0x9F,0xFF,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0xFF,0x87,0xB3,0xC0,0x77,0xF8,0x1E,0x3C,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0x7F,0xC7,0x83,0xC0,0x73,0xF0,0x1E,0x3C,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x79,0xF9,0xE7,0xC0,0x00,0x

38、73,0xFC,0x1E,0x3C,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x73,0xF1,0xFF,0xFF,0xFE,0x7F,0xFF,0xFE,0x3C,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x70,0xC0,0x6E,0xFF,0xFE,0x7F,0x0F,0xBC,0x3F,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0E,0x00,0x00,0x00,0x00,0x1C,0x3F,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x

39、00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x

40、00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x

41、00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00;unsigned char num,temp;/定義鍵盤返回值,中間變量unsigned char getkey();/鍵盤掃描函數(shù)unsigned char adc0804(void); /讀AD0804子程序 /讀AD0804子程序unsi

42、gned int datpro(void);/ADC0804讀出的數(shù)據(jù)處理void delay1(unsigned int z);/定義讀書延時(shí)函數(shù)void delay2(unsigned int t);void delayNOP();void lcdpos(uchar X,uchar Y);void writecmd(unsigned char cmd); /寫命令void writedat(unsigned char dat); /寫數(shù)據(jù)void init(); /初始化bit busy();void displayA();void displayB();void displayC();v

43、oid displayD();void disphoto(unsigned char *photo); /圖片顯示void display_jiemian();void clear(); /清屏void display1();void display();void main() delay2(100);init();disphoto(photo1);delay1(2000); clear(); delay2(5);display_jiemian();num=6; while(1) if(num=1)getkey();/獲得鍵盤輸入值if(num=2|num=3|num=5|num=6)num=

44、1;switch(num)case 2:a1=0;b1=0;break;case 5:a1=1;b1=0;break;case 3:a1=0;b1=1;break;default:a1=1;b1=1; ;display1();if(num=4)getkey();/獲得鍵盤輸入值switch(num)case 2:a1=0;b1=0;break;case 5:a1=1;b1=0;break;case 3:a1=0;b1=1;break;default:a1=1;b1=1; ;lcdpos(3,3);for(i=0;i<10;i+) writedat(dis12i); delay1(1);d

45、isplay_jiemian();delay1(5);if(num=2)/(條件選擇語句)不同的檔位不同的顯示形式getkey();/獲得鍵盤輸入值switch(num)case 2:a1=0;b1=0;break;case 5:a1=1;b1=0;break;case 3:a1=0;b1=1;break;default:a1=1;b1=1; ;lcdpos(2,6);writedat('A');delay1(2);lcdpos(3,7);for(i=0;i<2;i+) writedat(dis6i); delay1(1);adc0804();/讀取模數(shù)轉(zhuǎn)換數(shù)據(jù)aaa=d

46、atpro();/讀電壓if(aaa>=40000) display();delay1(1);elsedisplayA();delay1(2); if(num=3)getkey();/獲得鍵盤輸入值switch(num)case 2:a1=0;b1=0;break;case 5:a1=1;b1=0;break;case 3:a1=0;b1=1;break;default:a1=1;b1=1; ; lcdpos(2,6);writedat('B');delay1(2);lcdpos(3,7);for(i=0;i<2;i+) writedat(dis7i); delay

47、1(1);delay1(2);adc0804();/讀取模數(shù)轉(zhuǎn)換數(shù)aaa=datpro();/讀電壓據(jù)if(aaa>=40000) display();delay1(1);elsedisplayB();delay1(2);if(num=5)getkey();/獲得鍵盤輸入值switch(num)case 2:a1=0;b1=0;break;case 5:a1=1;b1=0;break;case 3:a1=0;b1=1;break;default:a1=1;b1=1; ; lcdpos(2,6);writedat('C');delay1(2);lcdpos(3,7);for

48、(i=0;i<2;i+) writedat(dis6i); delay1(1);delay1(2); adc0804();/讀取模數(shù)轉(zhuǎn)換數(shù)據(jù) aaa=datpro();/讀電壓if(aaa>=40000) display();delay1(1);elsedisplayC();delay1(2); if(num=6)getkey();/獲得鍵盤輸入值switch(num)case 2:a1=0;b1=0;break;case 5:a1=1;b1=0;break;case 3:a1=0;b1=1;break;default:a1=1;b1=1; ;lcdpos(2,6);writeda

49、t('D');delay1(2);lcdpos(3,7);for(i=0;i<2;i+) writedat(dis7i); delay1(1);delay1(2);adc0804();/讀取模數(shù)轉(zhuǎn)換數(shù)據(jù)aaa=datpro();/讀電壓if(aaa>=40000) display();delay1(1);elsedisplayD();delay1(2); unsigned char getkey(void) P2=0xf7;temp=P2;temp=temp&0xe7;while(temp!=0xe7)delay1(5);temp=P2;temp=temp&0xe7;while(tem

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論