版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、岳陽(yáng)職業(yè)技術(shù)學(xué)院畢 業(yè) 設(shè) 計(jì)(2011屆)題 目 數(shù)字電壓表設(shè)計(jì) 系(院) 機(jī)電工程系 專 業(yè) 機(jī)電一體化技術(shù) 班 級(jí) 機(jī)電高職(3)08-2 學(xué) 號(hào) 6 學(xué)生姓名 王少杰 指導(dǎo)教師 余碧瓊 上交日期 2010年6月 岳陽(yáng)職業(yè)技術(shù)學(xué)院畢業(yè)作品、畢業(yè)設(shè)計(jì)(論文)29畢業(yè)設(shè)計(jì)摘要:本文介紹的是數(shù)字電壓表的發(fā)展背景和利用單片機(jī),A/D轉(zhuǎn)換芯片結(jié)合的方法設(shè)計(jì)一個(gè)直流數(shù)字電壓表。它的具體功能是:最高量程為200V,分三個(gè)檔位量程,即2V,20V,200V,可以通過調(diào)檔開關(guān)來實(shí)現(xiàn)各個(gè)檔位。當(dāng)測(cè)得電壓的數(shù)值小于1V時(shí),系統(tǒng)會(huì)自動(dòng)的將電壓數(shù)值轉(zhuǎn)換為以mV為電壓?jiǎn)挝坏碾妷褐?。并且通過按鍵的方法能夠測(cè)得后五秒的
2、平均電壓值。目錄一數(shù)字電壓表簡(jiǎn)介:3二數(shù)字電壓設(shè)計(jì)兩種方案簡(jiǎn)介:41由數(shù)字電路及芯片構(gòu)建。42由單片機(jī)系統(tǒng)及A/D轉(zhuǎn)換芯片構(gòu)建。5三單片機(jī)簡(jiǎn)介及本設(shè)計(jì)單片機(jī)的選擇51常用單片機(jī)的特點(diǎn)比較及本設(shè)計(jì)單片機(jī)的選擇52本設(shè)計(jì)使用的單片機(jī)的簡(jiǎn)介6四各種顯示器件的介紹和選擇71常用顯示器件簡(jiǎn)介721602液晶的參數(shù)資料8五模數(shù)(A/D)轉(zhuǎn)換芯片的選擇101常用的A/D芯片簡(jiǎn)介102模數(shù)(A/D)芯片TLC2543的資料11六總體設(shè)計(jì)13七硬件電路系統(tǒng)模塊的設(shè)計(jì)14八系統(tǒng)軟件的設(shè)計(jì)181匯編語(yǔ)言和C語(yǔ)言的特點(diǎn)及選擇182主程序設(shè)計(jì)18九系統(tǒng)的調(diào)試291硬件調(diào)試292軟件調(diào)試30十總結(jié)30參考文獻(xiàn)31一數(shù)字電
3、壓表簡(jiǎn)介: 數(shù)字電壓表出現(xiàn)在50年代初,60年代末發(fā)起來的電壓測(cè)量?jī)x表,簡(jiǎn)稱DVM,它采用的是數(shù)字化測(cè)量技術(shù),把連續(xù)的模擬量,也就是連續(xù)的電壓值轉(zhuǎn)變?yōu)椴贿B續(xù)的數(shù)字量,加以數(shù)字處理然后再通過顯示器件顯示。這種電子測(cè)量的儀表之所以出現(xiàn),一方面是由于電子計(jì)算機(jī)的應(yīng)用逐漸推廣到系統(tǒng)的自動(dòng)控制信實(shí)驗(yàn)研究的領(lǐng)域,提出了將各種被觀察量或被控制量轉(zhuǎn)換成數(shù)碼的要求,即為了實(shí)時(shí)控制及數(shù)據(jù)處理的需要;另一方面,也是電子計(jì)算機(jī)的發(fā)展,帶動(dòng)了脈沖數(shù)字電路技術(shù)的進(jìn)步,為數(shù)字化儀表的出現(xiàn)提供了條件。所以,數(shù)字化測(cè)理儀表的產(chǎn)生與發(fā)展與電子計(jì)算機(jī)的發(fā)展是密切相關(guān)的;同時(shí),為革新電子測(cè)量中的煩鎖和陳舊方式也催促了它的飛速發(fā)展,如
4、今,它又成為向智能化儀表發(fā)展的必要橋梁。如今,數(shù)字電壓表已絕大部分已取代了傳統(tǒng)的模擬指針式電壓表。因?yàn)閭鹘y(tǒng)的模擬指針式電壓表功能單一,精度低,讀數(shù)的時(shí)候也非常不方便,很容易出錯(cuò)。而采用單片機(jī)的數(shù)字電壓表由于測(cè)量精度高,速度快,讀數(shù)時(shí)也非常的方便,抗干擾能力強(qiáng),可擴(kuò)展性強(qiáng)等優(yōu)點(diǎn)已被廣泛的應(yīng)用于電子及電工的測(cè)量,工業(yè)自動(dòng)化儀表,自動(dòng)測(cè)試系統(tǒng)等智能化測(cè)量領(lǐng)域。顯示出強(qiáng)大的生命力。數(shù)字電壓表最初是伺服步進(jìn)電子管比較式,其優(yōu)點(diǎn)是準(zhǔn)確度比較高,但是采樣速度慢,重量達(dá)幾十公斤,體積大。繼之出現(xiàn)了斜波式電壓表,它的速度方面稍有提高,但是準(zhǔn)確度低,穩(wěn)定性差,再后來出現(xiàn)了比較式儀表改進(jìn)逐次漸近式結(jié)構(gòu),它不僅保持了
5、比較式準(zhǔn)確度高的優(yōu)點(diǎn),而且速度也有了很大的提高,但它有一缺點(diǎn)是抗干擾能力差,很容易受到外界各種因素的影響。隨后,在斜波式的基礎(chǔ)上雙引伸出階梯波式,它的唯一的進(jìn)步是成本降低了,可是準(zhǔn)確寬,速以及抗干擾能力都未能提高。而現(xiàn)在,數(shù)字電壓表的發(fā)展已經(jīng)是非常的成熟,就原理來講,它從原來的一,二種已發(fā)展到多種,在功能上講,則從測(cè)單一參數(shù)發(fā)展到能測(cè)多種參數(shù);從制作元件來看,發(fā)展到了集成電路,準(zhǔn)確度已經(jīng)有了很大的提高,精度高達(dá)1NV;讀數(shù)每秒幾萬(wàn)次,而相對(duì)以前,它的價(jià)格也有了降低了很多。目前實(shí)現(xiàn)電壓數(shù)字化測(cè)量的方法仍然模-數(shù)(A/D)轉(zhuǎn)換的方法。而數(shù)字電壓表種類繁多,型號(hào)新異,目前國(guó)際仍未有統(tǒng)一的分類方法。而
6、常用的分類方法有如下幾種:1 按用途來分:有直流數(shù)字電壓表,交、直流數(shù)字電壓表,交直流萬(wàn)用表等。2 按顯示位數(shù)來分:有4位,5位,6位,7位,8位等。3 按測(cè)量速度來分:有低準(zhǔn)確度,中準(zhǔn)確度,高準(zhǔn)確度等。4 按測(cè)量速度來分:有低速,中速,高速,超高速等。但在日常生活中,數(shù)字電壓表一般是按照原理不同進(jìn)行分類的,目前大致分為以下幾類:比較式,電壓時(shí)間變換式,積分式等。在電量的測(cè)量中,電壓、電流和頻率是最基本的三個(gè)被測(cè)量。其中,電壓量的測(cè)量最為經(jīng)常。而且隨著電子技術(shù)的發(fā)展,更是經(jīng)常需要測(cè)量高精度的電壓,所以數(shù)字電壓表就成為一種必不可少的測(cè)量?jī)x器。另外,由于數(shù)字式儀器具有讀數(shù)準(zhǔn)確方便、精度高、誤差小、
7、靈敏度高和分辨率高、測(cè)量速度快等特點(diǎn)而倍受用戶青睞,數(shù)字式電壓表就是基于這種需求而發(fā)展起來的,是一種必不可少的電子測(cè)量?jī)x表。二數(shù)字電壓表設(shè)計(jì)方案選擇:設(shè)計(jì)數(shù)字電壓表有多種的設(shè)計(jì)方法,方案是多種多樣的,由于大規(guī)模集成電路數(shù)字芯片的高速發(fā)展,各種數(shù)字芯片品種多樣,導(dǎo)致對(duì)模擬數(shù)據(jù)的采集部分的不一致性,進(jìn)而又使對(duì)數(shù)據(jù)的處理及顯示的方式的多樣性。又由于在現(xiàn)實(shí)的工作生活中,電壓表的測(cè)量測(cè)程范圍是比較大的,所以必須要對(duì)輸入電壓作分壓處理,而各個(gè)數(shù)據(jù)處理芯片的處理電壓范圍不同,則各種方案的分段也不同。由此結(jié)合設(shè)計(jì)要求選擇由單片機(jī)系統(tǒng)及數(shù)字芯片構(gòu)建。這種方案是利用單片機(jī)系統(tǒng)與模數(shù)轉(zhuǎn)換芯片、顯示模塊等的結(jié)合構(gòu)建數(shù)
8、字電壓表。由于單片機(jī)的發(fā)展已經(jīng)成熟,利用單片機(jī)系統(tǒng)的軟硬件結(jié)合,可以組裝出許多的應(yīng)用電路來。此方案的原理是模數(shù)(A/D)轉(zhuǎn)換芯片的基準(zhǔn)電壓端,被測(cè)量電壓輸入端分別輸入基準(zhǔn)電壓和被測(cè)電壓。模數(shù)(A/D)轉(zhuǎn)換芯片將被測(cè)量電壓輸入端所采集到的模擬電壓信號(hào)轉(zhuǎn)換成相應(yīng)的數(shù)字信號(hào),然后通過對(duì)單片機(jī)系統(tǒng)進(jìn)行軟件編程,使單片機(jī)系統(tǒng)能按規(guī)定的時(shí)序來采集這些數(shù)字信號(hào),通過一定的算法計(jì)算出被測(cè)量電壓的值。最后單片機(jī)系統(tǒng)將計(jì)算好了的被測(cè)電壓值按一定的時(shí)序送入顯示電路模塊加以顯示。三單片機(jī)的選擇在這一設(shè)計(jì)中,我們涉及到了一個(gè)關(guān)鍵系統(tǒng)模塊單片機(jī)系統(tǒng)模塊,而目前單片機(jī)的種類是很繁多的,主要有主流的8位單片機(jī)和高性能的32位
9、單片機(jī),結(jié)合本設(shè)計(jì)各方面因素,8位單片機(jī)對(duì)于本設(shè)計(jì)已經(jīng)是綽綽有余了,但將用哪一種類8的單片機(jī)呢。在這里,不得不先簡(jiǎn)單的介紹一下幾種常用的8單片機(jī)。 單片機(jī)是指一個(gè)集成在一塊芯片上的完整計(jì)算機(jī)系統(tǒng),具有一個(gè)完整計(jì)算機(jī)所需要的大部分部件:CPU,內(nèi)存,總線系統(tǒng)等。而目前常用的單片機(jī)的8位有51系列單片機(jī),AVR單片機(jī),PIC單片機(jī)。應(yīng)用最廣的8位單片機(jī)還是intel的51系列單片機(jī)。51系列單片機(jī)的特點(diǎn)是:硬件結(jié)構(gòu)合理,指令系統(tǒng)規(guī)范,加之生產(chǎn)歷史悠久,世界有許多芯片公司都買了51的芯片核心專利技術(shù),并在其基礎(chǔ)上擴(kuò)充其性能,使得芯片的運(yùn)行速度變得更快,性價(jià)比更高。本設(shè)計(jì)中選用51系列的AT89C52
10、,它是低電壓、低功耗、高性能的CMOS8位單片機(jī),片內(nèi)含8KB的可反復(fù)擦寫的只讀程序存儲(chǔ)器和256B的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器,32個(gè)I/O口線,3個(gè)16位定時(shí)/計(jì)數(shù)器,片內(nèi)振蕩器及時(shí)鐘電路,并與MCS-51系列單片機(jī)兼容。在設(shè)計(jì)中,單片機(jī)起著連接硬件電路與程序運(yùn)行及存儲(chǔ)數(shù)據(jù)的任務(wù),一方面,它將A/D轉(zhuǎn)換器、顯示器和語(yǔ)音芯片等通過I/O口地址線和數(shù)據(jù)線連接起來;另一方面,它將用戶下載的程序通過控制總線控制數(shù)據(jù)的輸入輸出,從而實(shí)現(xiàn)冊(cè)電壓的功能。四顯示器件的選擇本次設(shè)計(jì)中有顯示模塊,設(shè)計(jì)要求顯示最后電壓的數(shù)字值和電壓的單位。1602液晶是工業(yè)字符型液晶,能夠同時(shí)顯示16*2即32個(gè)字符。1602液晶模塊
11、內(nèi)部的字符發(fā)生存儲(chǔ)器已經(jīng)存儲(chǔ)了160個(gè)不同的點(diǎn)陣字符圖形,這些字這些字符有:阿拉伯?dāng)?shù)字、英文字母的大小寫、常用的符號(hào)、和日文假名等,每一個(gè)字符都有一個(gè)固定的代碼。使用時(shí)直接編寫軟件程序按一定的時(shí)序驅(qū)動(dòng)即可。它的特點(diǎn)是顯示字跡清楚,價(jià)格相對(duì)便宜。1602液晶滿足本設(shè)計(jì)的需要。因此,在本設(shè)計(jì)實(shí)驗(yàn)我們選擇1602液晶顯示器件。21602液晶的參數(shù)資料我們選擇了1602液晶做為本設(shè)計(jì)的顯示模塊的顯示器件。以下是1602液晶的各方面參數(shù):1接口信號(hào)說明:編號(hào)符號(hào)引腳說明1VSS電源地2VDD電源正極3VL液晶顯示偏壓信號(hào)4RS數(shù)據(jù)/命令選擇端5R/W讀/寫選擇端6E使能信號(hào)8-14D0-D7Data I
12、/O15BLA背光源正極16BLK背光源負(fù)極2基本操作時(shí)序:1. 讀狀態(tài):輸入:RS=0,RW=1,E=1。輸出:D0-D7為狀態(tài)字2. 寫狀態(tài):輸入:RS=0,RW=0,D0-D7為指令碼,E為高脈沖。輸出:無3. 讀數(shù)據(jù):輸入:RS=1,RW=1,E=1。輸出:D0-D7為數(shù)據(jù)。4. 寫數(shù)據(jù):輸入:RS=1,RW=0,D0-D7為數(shù)據(jù),E為高脈沖。輸出:無3狀態(tài)字說明STA7STA6STA5STA4STA3STA2STA1STA0STA0-6當(dāng)前數(shù)據(jù)地址指針的數(shù)值STA7讀寫操作使能1:禁止 0:允許 4指令的說明。 顯示模式設(shè)置 指令碼 功能00111000設(shè)置16*2顯示,5*7點(diǎn)陣,
13、8位數(shù)據(jù)口 顯示開/關(guān)及光標(biāo)設(shè)置 指令碼 功能00001DCBD=1開顯示;D=0關(guān)顯示C=1顯示光標(biāo);C=0不顯示關(guān)標(biāo)B=1光標(biāo)閃爍;B=0光標(biāo)不顯閃爍000001NSN=1當(dāng)讀寫一個(gè)字條款后地址指針加一,且光標(biāo)加一。N=0當(dāng)讀或?qū)懸粋€(gè)字符后地址指針減一,且光標(biāo)減一。S=1當(dāng)寫一個(gè)安條款,整屏顯示左移(N=1)或右移(N=0),以得到光標(biāo)不移動(dòng)而屏幕移動(dòng)的效果。S=0當(dāng)寫一個(gè)字符,整屏顯示不移動(dòng)。數(shù)據(jù)控制: 指令碼 功能80H+地址碼(0-27H,40H-67H)設(shè)置數(shù)據(jù)地址指針01H顯示清屏:1,數(shù)據(jù)指針清0 2,所有顯示清002H顯示回車:數(shù)據(jù)指針清0五模數(shù)(A/D)轉(zhuǎn)換芯片的選擇在本設(shè)
14、計(jì)中,模數(shù)(A/D)轉(zhuǎn)換模塊是一個(gè)重要的模塊,它關(guān)系到最后數(shù)電壓表電壓值的精確度。所以,A/D芯片的選擇是設(shè)計(jì)過程中一個(gè)很重要的環(huán)節(jié)。1常用的A/D芯片簡(jiǎn)介常用的A/D芯片有AD0809,AD0832,TLC2543C等幾種。下面簡(jiǎn)單介紹一下這三種芯片。AD0809是8位逐次逼近型A/D轉(zhuǎn)換器,它是由一個(gè)8路的模擬開關(guān)、一個(gè)地址鎖存譯碼器、一個(gè)A/D 轉(zhuǎn)換器和一個(gè)三態(tài)輸出鎖存器組成。多路開關(guān)可選通8個(gè)模擬通道,允許8 路模擬量分時(shí)輸入,共用A/D 轉(zhuǎn)換器進(jìn)行轉(zhuǎn)換。些A/D轉(zhuǎn)換器是的特點(diǎn)是8位精度,屬于并行口,如果輸入的模擬量變化大快,必須在輸入之前增加采樣電路。AD0832也是8位逐次逼近型A
15、/D轉(zhuǎn)換器,可支持致命傷個(gè)單端輸入通道和一個(gè)差分輸入通道。它易于和微處理器接口或獨(dú)立使用;可滿量程工作;可用地址邏輯多路器選通各輸入通道。TLC2543C是12位開關(guān)電容逐次逼近A/D轉(zhuǎn)換,每個(gè)器件有三個(gè)控制輸入端,片選,輸入/輸出時(shí)鐘以及地址輸入端。它可以從主機(jī)高速傳輸轉(zhuǎn)換數(shù)據(jù)。它有高速的轉(zhuǎn)換,通用的控制能力,具有簡(jiǎn)化比率轉(zhuǎn)換,刻度以及模擬電路與邏輯電路和電源噪聲隔離,耐高溫等特點(diǎn)。綜合上述幾種A/D轉(zhuǎn)換芯片的特點(diǎn),前兩種芯片的性能和精度都不如第三種芯片。在本設(shè)計(jì)中,我們的目標(biāo)是設(shè)計(jì)高精度的電壓表,因此在此,我們選擇精度為12位的TLC2543芯片。2模數(shù)(A/D)芯片TLC2543的資料綜
16、合本設(shè)計(jì)的各方面考慮,我們選了TLC2543模數(shù)轉(zhuǎn)換芯片。下面就介紹此芯片的各方面資料。TLC2543芯片的封裝引腳圖和引腳說明如下: 引腳說明:引腳號(hào)名稱I/O說明1-9,11,12AIN0-AIN10I模擬輸入端。15CSI片選端。17Data inputI串行數(shù)據(jù)輸入端。16Data outO用于A/D轉(zhuǎn)換結(jié)果輸也的3態(tài)串行輸出端19EOCO轉(zhuǎn)換結(jié)束端10GND接地端18I/O clkI輸入/輸出時(shí)鐘端14REF+I正基準(zhǔn)電壓端13REF-I負(fù)基準(zhǔn)電壓端20VCC正電壓端。各引腳的使用詳細(xì)介紹。1 AIN0-AIN10這11個(gè)模擬信號(hào)輸入由內(nèi)部多路選器選擇。對(duì)4.1MHZ的I/O clk
17、,驅(qū)動(dòng)源阻抗必須小于或等于50歐并且能夠?qū)⒛M電壓由60PF的電容來限制其斜率。2 在CS端的一個(gè)由高低低變化將復(fù)位內(nèi)部計(jì)數(shù)器并控制使能data out,data input和I/O clk。一個(gè)由低至高的變化將在一個(gè)設(shè)置時(shí)間內(nèi)禁止data input和I/O clk.3 串行數(shù)據(jù)輸入端data input是一個(gè)4位的串行地址選擇下一個(gè)即將被轉(zhuǎn)換的所需的模擬輸入或測(cè)試電壓。串行數(shù)據(jù)以MSB為前導(dǎo)并在I/O clk的前4個(gè)上升沿被移入。在4個(gè)地址位被讀入地址寄存器后,I/O clk 將剩下的幾位依次輸入。4 Data out在CS為高時(shí)處于高阻抗?fàn)顟B(tài),而當(dāng)CS為低時(shí)處于激活狀態(tài)。CS一旦有效,按
18、照前一次轉(zhuǎn)換結(jié)果的MSB/LSB值將data out從高阻抗?fàn)顟B(tài)轉(zhuǎn)變成相應(yīng)的邏輯電平,I/O clk 的下一個(gè)下降沿將根據(jù)下一個(gè)MSB/LSB將data out驅(qū)動(dòng)成相應(yīng)的邏輯電平,剩下的各位依次移出。5 EOC在最后的I/O clk 下降沿之后,從高電平變?yōu)榈碗娖讲⒈3值椭钡睫D(zhuǎn)換完成及數(shù)據(jù)準(zhǔn)備傳輸。6 GND端是內(nèi)部電路的地回路端,除加有說明外,所有電壓測(cè)量都相對(duì)于GND7 I/O clk端串行輸入并完成以下四個(gè)功能:第一,在I/O clk的前8個(gè)上升沿,它將8個(gè)輸入數(shù)據(jù)信鍵入輸入數(shù)據(jù)寄存器。在第4個(gè)上升沿之后為多路器的地址。第二,在I/O clk的第4個(gè)下降沿,在選定的多路器的輸入端上的模
19、擬輸入電壓開始和電容器充電并繼續(xù)到I/O clk的最后一個(gè)下降沿。第三,它將前一次轉(zhuǎn)換的數(shù)據(jù)的其余11位移出data out端。在I/O clk的下降沿時(shí)數(shù)據(jù)變化。第四,在I/O clk的最后一個(gè)下降沿它將轉(zhuǎn)換的控制信號(hào)傳送到內(nèi)部的狀態(tài)控制位。8 REF+端通常接VCC,最大輸入電壓范圍取決于加于本端與加于REF-端的電壓差。9 REF-端通常接地。六總體設(shè)計(jì)1技術(shù)要求:1) 最高量程為:200V。2) 分為三檔量程:2V,20V,200V??梢酝ㄟ^調(diào)檔開關(guān)實(shí)現(xiàn)各檔位。最高精度為0.01mv。3) 被測(cè)電壓的電壓值小于1V時(shí),有自動(dòng)換以MV為單位顯示。4) 通過按鍵可以顯示5秒的平均電壓的電壓
20、值。2設(shè)計(jì)方案:根據(jù)上述,我們選擇單片機(jī)與A/D轉(zhuǎn)換芯片結(jié)合的方法實(shí)現(xiàn)本設(shè)計(jì)。使用的基本元器件是:AT89C51單片機(jī),TLC2543模數(shù)轉(zhuǎn)換芯片,1602液晶顯示器,開關(guān),按鍵,電容,電阻,晶振,標(biāo)準(zhǔn)電源等等。設(shè)計(jì)的基本框圖如下:?jiǎn)纹瑱C(jī)系統(tǒng)模塊1602液晶顯示模塊A/D轉(zhuǎn)換模塊輸入電路模塊按鍵模塊七硬件電路系統(tǒng)模塊的設(shè)計(jì)根據(jù)上述選擇的各元器件,各電路模塊的電路圖如下描述。1單片機(jī)系統(tǒng)單片機(jī)最小系統(tǒng)包括晶振電路,復(fù)位電路,電源。其原理圖如下: 此模塊中,單片機(jī)的晶振是12MHZ,C1和C2的電容是10UF,C3可選1-10UF。R1電阻為1K。2輸入電路由于輸入電路的電壓比基準(zhǔn)電壓(2V)高很
21、多,因此在輸入電路必須加電壓衰減器。衰減電路可由開關(guān)來選擇不同的衰減率,從而切換檔位。則完整輸入電路如下: 通過計(jì)算,可知設(shè)計(jì)衰減器用的電阻R2,R3和R4分別為:9M,900K,100K控制檔位的開關(guān)是雙開關(guān)的,目地是能夠使單片機(jī)CPU自動(dòng)識(shí)別檔位,即可用相應(yīng)的檔位的數(shù)據(jù)轉(zhuǎn)換的算法計(jì)算出正確的電壓值。被測(cè)電壓輸入端、整理過的模擬電壓輸入端,開關(guān)與單片機(jī)的連接如圖所示。3A/D轉(zhuǎn)換芯片與單片機(jī)的連接此設(shè)計(jì)中選擇的是A/D轉(zhuǎn)換芯片的通道0,A/D芯片的數(shù)據(jù)輸入口連接單片機(jī)的P1.3口,數(shù)據(jù)輸出口連接單片機(jī)的P1.4口,芯片使能端連接單片機(jī)的P1.5口,脈沖端連接單片機(jī)的P1.6口。模塊連接如下圖
22、所示。41602液晶與單片機(jī)連接此模塊液晶的RS,RW和E端分別連接單片機(jī)的P1.2,P1.1和P1.0口;液晶的數(shù)據(jù)各端口連接單片機(jī)的P0口。具體如下圖所示。5 鍵盤與單片機(jī)的連接如下。此鍵盤的一端與單片機(jī)的P2.0口連接,另一端接地。原理圖如下所示。 該鍵盤的功能:當(dāng)鍵盤被按下時(shí),即可計(jì)算后5秒的平均電壓值。八系統(tǒng)軟件的設(shè)計(jì)1匯編語(yǔ)言和C語(yǔ)言的特點(diǎn)及選擇本設(shè)計(jì)是硬件電路和軟件編程相結(jié)合的設(shè)計(jì)方案,選擇合適的編程語(yǔ)言是一個(gè)重要的環(huán)節(jié)。在單片機(jī)的應(yīng)用系統(tǒng)程序設(shè)計(jì)時(shí),常用的是匯編語(yǔ)言和C語(yǔ)言。匯編語(yǔ)言的特點(diǎn)是占用內(nèi)存單元少,執(zhí)行效率高。執(zhí)行速度快。但它依賴于計(jì)算機(jī)硬件,程序可讀性和可移植性比較差
23、。而C語(yǔ)言雖然執(zhí)行效率沒有匯編語(yǔ)言高,但語(yǔ)言簡(jiǎn)潔,使用方便,靈活,運(yùn)算豐富,表達(dá)化類型多樣化,數(shù)據(jù)結(jié)構(gòu)類型豐富,具有結(jié)構(gòu)化的控制語(yǔ)句,程序設(shè)計(jì)自由度大,有很好的可重用性,可移植性等特點(diǎn)。由于現(xiàn)在單片機(jī)的發(fā)展已經(jīng)達(dá)到了很高的水平,內(nèi)部的各種資源相當(dāng)?shù)呢S富,CPU的處理速度非常的快。用C語(yǔ)言來控制單片機(jī)無疑是一個(gè)理想的選擇。所以在本設(shè)計(jì)中采用C語(yǔ)言編寫軟件程序。2主程序設(shè)計(jì)主程序設(shè)計(jì)包括以下方面:按照硬件電路對(duì)單片機(jī)位定義。編寫延時(shí)模塊程序。編寫驅(qū)動(dòng)1602液晶顯示模塊程序。編寫驅(qū)動(dòng)A/D轉(zhuǎn)換模塊程序。編寫鍵盤掃描模塊程序。主程序的總體流程如下圖: 開始對(duì)液晶,定時(shí)器初始化A/D轉(zhuǎn)換數(shù)據(jù)轉(zhuǎn)換顯示瞬
24、時(shí)電壓值鍵盤判斷顯示5秒的平均電壓值3秒后清屏全部軟件程序如下:#include#define uchar unsigned char#define uint unsigned int#define key_state0 0 /鍵盤掃描的各個(gè)狀態(tài)#define key_state1 1#define key_state2 2#define key_state3 3sbit rs=P12;/1602液晶寫命令/數(shù)據(jù)標(biāo)志,0時(shí)寫命令sbit rw=P11;/1602液晶寫入/讀出標(biāo)志,0時(shí)寫入數(shù)據(jù)sbit ep=P10;sbit input=P14;sbit output=P13;sbit cs=
25、P15;sbit clk=P16;sbit key=P20;sbit flag_1=P21;/定義電壓表檔位相關(guān)標(biāo)志sbit flag_2=P22;sbit flag_3=P23;sbit flag_4=P24;uchar code tab0=V ; /顯示的單位及有關(guān)的字符uchar code tab1=MV;uchar code tab2=Power:;uchar code tab3=Aver_V:;/平均電壓值標(biāo)志符uchar t;void delay(int z)/延時(shí)函數(shù)int x,y;for(x=z;x0;x-)for(y=10;y0;y-);void write_com(ucha
26、r com)/往1602液晶寫命令函數(shù)rs=0;P0=com;delay(5);ep=1;delay(5);ep=0;void write_dat(uchar dat)/往1602液晶寫數(shù)據(jù)函數(shù)rs=1;P0=dat;delay(5);ep=1;delay(5);ep=0;void init_1602()/對(duì)1602液晶的初始化函數(shù)rs=0;rw=0;write_com(0x38);delay(1);write_com(0x0c);delay(1);write_com(0x06);delay(1);write_com(0x01);delay(1);void init_timer0()/定時(shí)計(jì)數(shù)
27、器0初值化函數(shù),TMOD=0x01;/方式一TH0=(65536-50000)/256;/每50ms中斷一次TL0=(65536-50000)%256;IE=0x82;/打開中斷TR0=0;/定時(shí)器首先不可工作void display(uchar x,uchar y,uint dat)/顯示電壓值的函數(shù),x行y列開始顯示uint add;uchar i,a5;switch(x)case 0:add=0x80;break;case 1:add=0x80+0x40;break; add=add+y; write_com(add); for(i=0;i5;i+)ai=dat%10;dat=dat/1
28、0; write_dat(a4+0x30); write_dat(a3+0x30); write_dat(a2+0x30); write_dat(.); write_dat(a1+0x30); write_dat(a0+0x30);void display_zifu(uchar x,uchar y,uchar *str)/顯示字符函數(shù),x行y列開始顯示uint add;switch(x)case 0:add=0x80;break;case 1:add=0x80+0x40;break; add=add+y;write_com(add);while(*str!=0)write_dat(*str);
29、str+;uint read_AD(uchar con_way)/讀取AD轉(zhuǎn)換值操作函數(shù)uint dat=0;uchar i;cs=0;clk=0;con_way=4;for(i=0;i12;i+)con_way=1;/*選擇0通道,在輸入該控制數(shù)據(jù)的同時(shí)輸出前一次AD轉(zhuǎn)結(jié)果*/ input=CY;dat=100)/當(dāng)電壓值大于1V時(shí),用V顯示,否則用mV顯示display_zifu(0,1,tab2);display(0,7,dat);display_zifu(0,13,tab0);elsedisplay_zifu(0,1,tab2);display(0,7,dat*1000);displa
30、y_zifu(0,13,tab1); read_key(); /當(dāng)鍵盤按下時(shí),計(jì)算后五秒的平均電壓值if(t=20)t=0;flag+;if(flag=1)dat1=dat;if(flag=2)dat2=dat;if(flag=3)dat3=dat;if(flag=4)dat4=dat;if(flag=5)dat5=dat;dat_aver=(dat1+dat2+dat3+dat4+dat5)/5;display(1,7,dat_aver);display_zifu(1,13,tab0);dat_aver=0; if(flag=8)flag=0;write_com(0x01);TR0=0; v
31、oid timer0() interrupt 1/定時(shí)器中斷函數(shù)TH0=(65536-50000)/256;/重新放入初始值TL0=(65536-50000)%256;t+;九系統(tǒng)的調(diào)試完成了系統(tǒng)的硬件設(shè)計(jì),制作和軟件編程之后,要使系統(tǒng)能夠按設(shè)計(jì)意圖正常運(yùn)行,必須進(jìn)行系統(tǒng)調(diào)試。調(diào)試分了硬件和軟件調(diào)試。1 硬件調(diào)試 硬件調(diào)試的主要任務(wù)是排除硬件故障,其中包括設(shè)計(jì)的錯(cuò)誤和工藝性故障等。1) 檢查所設(shè)計(jì)的硬件電路板所有的器件和引腳是否正確,尤其是電源的連接是否正確;檢查各總線是否有短路的故障。檢查開關(guān)/按鍵是否正常,是否連接正確,為了保護(hù)芯片,應(yīng)先對(duì)各IC座電位進(jìn)行檢查,確認(rèn)無誤后再插入芯片。2) 將40芯片的仿真插頭插入單片機(jī)插座進(jìn)行調(diào)試,檢查各接口是否滿足設(shè)計(jì)的要求,有正常的程序測(cè)試硬件電路的好壞。2 軟件調(diào)試軟件調(diào)試的任務(wù)是利用開發(fā)工具進(jìn)行在線仿真調(diào)試,發(fā)現(xiàn)和糾正程序的錯(cuò)誤,同時(shí)也能發(fā)現(xiàn)硬件的故障。軟件調(diào)試是一個(gè)模塊一個(gè)模塊進(jìn)行的。首先單獨(dú)調(diào)試各子程序是否能夠按照預(yù)期的功能,接口電路的控制是否正常。最后調(diào)試整個(gè)程序。尤其注意的是各模塊間能否正確的傳遞參數(shù)。1) 檢查液晶顯示模塊程序。在主程序中調(diào)用display()和dislay_zifu()函數(shù),觀察在1602液晶上是否能夠顯示相應(yīng)的字符。如果不能,則在相關(guān)的子程序中設(shè)計(jì)斷點(diǎn),反復(fù)調(diào)試直到能
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年度和田地區(qū)地直機(jī)關(guān)公開遴選公務(wù)員、事業(yè)單位公開選聘工作人員(114人)筆試參考題庫(kù)及答案解析
- 2026甘肅蘭州蘭石中科納米科技有限公司招聘筆試模擬試題及答案解析
- 2026浙江金華市創(chuàng)新投資發(fā)展有限公司招聘4人筆試備考題庫(kù)及答案解析
- 2026年貴陽(yáng)職業(yè)技術(shù)學(xué)院?jiǎn)握芯C合素質(zhì)筆試參考題庫(kù)帶答案解析
- 2026年成都工業(yè)職業(yè)技術(shù)學(xué)院?jiǎn)握芯C合素質(zhì)考試模擬試題帶答案解析
- 2026年南昌大學(xué)建筑與設(shè)計(jì)學(xué)院科研助理招聘3人筆試備考題庫(kù)及答案解析
- 2026年1月江蘇南京市溧水區(qū)教育局所屬事業(yè)單位招聘教師71人筆試備考題庫(kù)及答案解析
- 2026年鄞州區(qū)錢湖醫(yī)院公開招聘編外人員備考題庫(kù)及參考答案詳解一套
- 2026西安碑林區(qū)柏樹林社區(qū)衛(wèi)生服務(wù)中心招聘筆試模擬試題及答案解析
- 2026江蘇蘇州太倉(cāng)農(nóng)商行大學(xué)生寒假實(shí)習(xí)生招聘34人筆試模擬試題及答案解析
- 肺部感染中醫(yī)護(hù)理
- 租地合同協(xié)議書合同
- 《肺炎的CT表現(xiàn)》課件
- 糧食倉(cāng)儲(chǔ)設(shè)施建設(shè)維修資金申請(qǐng)報(bào)告
- 腦器質(zhì)性精神障礙護(hù)理查房
- 中考英語(yǔ)聽力命題研究與解題策略省公開課金獎(jiǎng)全國(guó)賽課一等獎(jiǎng)微課獲獎(jiǎng)?wù)n件
- 物聯(lián)網(wǎng)智能家居設(shè)備智能控制手冊(cè)
- 2023-2024學(xué)年湖北省武漢市東西湖區(qū)五年級(jí)(上)期末數(shù)學(xué)試卷(含答案)
- 懷化市2024-2025學(xué)年高一上學(xué)期期末地理試題(含答案解析)
- 全國(guó)班主任比賽一等獎(jiǎng)《班主任經(jīng)驗(yàn)交流》課件
- 偽裝防護(hù)基礎(chǔ)知識(shí)
評(píng)論
0/150
提交評(píng)論