版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 電子測(cè)量與儀器課程設(shè)計(jì)報(bào)告</p><p> 題 目: 直流數(shù)字電壓表 </p><p> 摘要:數(shù)字電壓表英文名稱為Digital Multi Meter,簡(jiǎn)稱為DMM,是具有測(cè)量直流電壓、直流電流、交流電壓、交流電流及電阻等多種功能的數(shù)字測(cè)量?jī)x器。數(shù)字多用表以測(cè)量直流電壓的直流數(shù)字電壓表為基礎(chǔ),并通過(guò)交流-直流(AC-DC)電壓轉(zhuǎn)換器、電流-
2、電壓(I-V)轉(zhuǎn)換器、電阻-電壓(R-V)轉(zhuǎn)換器,把交流電壓、電流和電阻轉(zhuǎn)換成直流電壓。其中直流數(shù)字電壓表是采用數(shù)字化測(cè)量技術(shù),把連續(xù)的模擬量通過(guò)抽樣保持電路,AD轉(zhuǎn)換電路轉(zhuǎn)換為離散的數(shù)字量的形式,并加以顯示出來(lái)的儀表,與傳統(tǒng)的模擬式電壓表相比,具有數(shù)據(jù)顯示直觀易讀,讀數(shù)準(zhǔn)確,測(cè)量范圍寬,擴(kuò)展功能強(qiáng)等優(yōu)點(diǎn)。本次設(shè)計(jì)首先構(gòu)建直流數(shù)字電壓表,然后圍繞直流數(shù)字電壓表設(shè)計(jì)個(gè)模塊。利用A/D轉(zhuǎn)換電路將被測(cè)的模擬量電壓進(jìn)行采樣,轉(zhuǎn)換成數(shù)字量,送到微
3、處理器進(jìn)行數(shù)據(jù)處理,然后將數(shù)據(jù)顯示器顯示出來(lái)。</p><p> 關(guān)鍵詞:A/D轉(zhuǎn)換,單片機(jī)數(shù)據(jù)處理,直流電壓表,LCD液晶顯示</p><p> Abstract: Digital Multi Meter, which measure DC voltage, DC current, AC voltage, AC current, resistance and other featur
4、es of digital measuring instruments.</p><p> Key Word: A/D converter MCU DVM LCD</p><p><b> 1系統(tǒng)設(shè)計(jì)</b></p><p><b> 設(shè)計(jì)要求</b></p><p> 1.1.1 設(shè)
5、計(jì)任務(wù)</p><p> 設(shè)計(jì)一個(gè)簡(jiǎn)易直流數(shù)字電壓表頭并以此為基礎(chǔ)設(shè)計(jì)數(shù)字多用表。能測(cè)直流電壓、直流電流、交流電壓、交流電流及電阻等多種功能的數(shù)字測(cè)量?jī)x表。設(shè)計(jì)DMM電路框圖如下圖1.1.1所示。</p><p><b> 圖1.1.1 1</b></p><p> 1.1.2 設(shè)計(jì)要求</p><p><b
6、> (1)基本要求</b></p><p> a、設(shè)計(jì)直流電壓表、AC-DC、I-U和R-U。</p><p> b、直流電壓測(cè)量檔位-200mv-200mv、-2v-2、-20v-20v。</p><p><b> c、測(cè)量誤差。</b></p><p><b> d、超量程報(bào)警。
7、</b></p><p><b> (2)擴(kuò)展功能</b></p><p> a、斷電保存數(shù)據(jù)和穩(wěn)定顯示數(shù)據(jù)。</p><p><b> b、其他。</b></p><p><b> 1.2 方案比較</b></p><p> 1.
8、2.1 直流電壓表設(shè)計(jì)方案</p><p> 方案(一): AD0809、STC單片機(jī)和數(shù)碼管顯示。AD0809數(shù)模轉(zhuǎn)換器是帶有8 位A/D 轉(zhuǎn)換器、8 路多路開(kāi)關(guān)以及微處理機(jī)兼容的控制邏輯的CMOS 組件。它是逐次逼近式A/D 轉(zhuǎn)換器,可以和單片機(jī)直接接口。ADC0809 對(duì)輸入模擬量要求:信號(hào)單極性,電壓范圍是0-5V,若信號(hào)太小,必須進(jìn)行放大;輸入的模擬量在轉(zhuǎn)換過(guò)程中應(yīng)該保持不變,如若模擬量變化太快,則需
9、在輸入前增加采樣保持電路。數(shù)碼管顯示電路分為共陽(yáng)和共陰,有段選和位選兩種引腳。</p><p> 方案(二): MC14433、STC單片機(jī)和1602液晶顯示。數(shù)模轉(zhuǎn)換器MC14433 MC14433是Motorola公司推出的單片3 1/2位A/D轉(zhuǎn)換器,其中集成了雙積分式A/D轉(zhuǎn)換器所有的CMOS模擬電路和數(shù)字電路。具有外接元件少,輸入阻抗高,功耗低,電源電壓范圍寬,精度高等特點(diǎn),并且具有自動(dòng)校零和自動(dòng)極
10、性轉(zhuǎn)換功能,只要外接少量的阻容件即可構(gòu)成一個(gè)完整的A/D轉(zhuǎn)換器,具有1.精度:讀數(shù)的±0.05%±1字,2.模擬電壓輸入量程:1.999V和199.9mV兩檔,3.轉(zhuǎn)換速率:2-25次/s。LCD1602液晶顯示界面清晰友好。</p><p> 比較以上兩種方案,方案二采用的MC14433積分式AD抗干擾能力強(qiáng),且操作簡(jiǎn)單,能夠自動(dòng)校零和自動(dòng)極性轉(zhuǎn)換。方案一數(shù)碼管顯示占用過(guò)多的微處理器的IO
11、口和處理時(shí)間,且操作叫麻煩,故選用方案二。</p><p> 1.2.2 AC-DC轉(zhuǎn)換器方案</p><p> 方案(一): 交流電峰值轉(zhuǎn)換器,又稱峰值檢波器是檢波輸出的直流電壓與輸入交流信號(hào)峰值成比例的檢波器。峰值檢波器工作原理:峰值檢波器,它是一個(gè)能記憶信號(hào)峰值的電路,其輸出電壓的大小,一直追隨輸入信號(hào)的峰值,而且保持在輸入信號(hào)的最大峰值。 </p><p&g
12、t;<b> 圖1.2.2</b></p><p> 下圖為輸出與輸入的充放電情形,其中輸出波形V。,一直保持在輸入波形Vi的最大峰值。充電時(shí)間和放電時(shí)間要滿足t1<<t2 , t2>>Tmax 所以電壓能保持在峰值基本不變。</p><p><b> 圖1.2. 2</b></p><p>
13、;<b> 且電阻滿足條件</b></p><p><b> Ri = Rl</b></p><p> 方案(二): DMM中,AC-DC的變換主要按真有效值的數(shù)學(xué)定義用的集成電路實(shí)現(xiàn)。因?yàn)?lt;/p><p><b> U = )</b></p><p> 直接用集成電
14、路的乘、除法器能進(jìn)行均方根運(yùn)算,從而構(gòu)成均方根的有效值。具體的原理參考電子測(cè)量RMS-DC。</p><p> 方案二中的按真有效值得方法測(cè)量的有效值精確度高,帶寬可以達(dá)到次方HZ。且能夠測(cè)量的信號(hào)波形比較多,波峰因數(shù)誤差小。應(yīng)用電路簡(jiǎn)單。方案一中應(yīng)用的峰值檢測(cè)對(duì)不同的信號(hào)波形帶來(lái)的誤差大,且應(yīng)用MCU程序控制復(fù)雜,所以在此選用方案二采用的芯片為真有效值A(chǔ)D637。</p><p>
15、I-U轉(zhuǎn)換器設(shè)計(jì)方案</p><p> 方案(一)讓被測(cè)量的電流Ix流過(guò)標(biāo)準(zhǔn)電阻Rs,則標(biāo)準(zhǔn)電阻兩端的電壓為</p><p><b> U </b></p><p> 測(cè)量出的這個(gè)電壓,便能測(cè)得到被測(cè)電流的大小。具體的電路如下圖所示。</p><p> 方案(二)該方案為方案一的改進(jìn)版,此方案運(yùn)放采用差動(dòng)恒流源流
16、過(guò)標(biāo)準(zhǔn)電阻后通過(guò)求差運(yùn)放衰減或放大到AD采集電壓的范圍內(nèi)。具體電路分析如下圖所示。</p><p> 該電路在選擇不同的標(biāo)準(zhǔn)電阻及精密運(yùn)放,從而決定所測(cè)電壓的精度。</p><p> 通過(guò)比較,方案二為方案已的改進(jìn)版從而能夠提高電路的抗干擾的能力。</p><p> R-U轉(zhuǎn)換器的設(shè)計(jì)方案</p><p><b> 方案(一
17、)恒流源法</b></p><p> 在被測(cè)的未知電阻Rx中流過(guò)的已知恒定的電流Is時(shí),在Rx上產(chǎn)生的電壓為U=RxIs故通過(guò)恒定電流可實(shí)現(xiàn)R-V轉(zhuǎn)換。</p><p><b> 方案圖如下所示</b></p><p><b> 圖1.2.4 1</b></p><p> 此電路
18、應(yīng)用運(yùn)算放大器的原理構(gòu)成基本的轉(zhuǎn)換電路,被測(cè)電阻Rx和標(biāo)準(zhǔn)電阻Rs分別置于反饋電路的兩支中,當(dāng)輸入一個(gè)基準(zhǔn)電壓Es時(shí),由E點(diǎn)為虛地點(diǎn),則流過(guò)運(yùn)算放大器的電流為</p><p><b> Is=</b></p><p> 即Is是由Er、Rs形成的恒流源。此電流流經(jīng)Rx產(chǎn)生的電壓為</p><p> 方案(二)電阻比例法</p>
19、<p> 電阻比例法測(cè)電阻如下圖所示</p><p> 圖1.2.4 2 比例法電路</p><p><b> 由圖可知</b></p><p><b> 故</b></p><p> 為了測(cè)出Rx上的電壓Ux,可讓雙積分式的AD轉(zhuǎn)換器先在固定時(shí)間T1內(nèi)對(duì)Ux進(jìn)行積分,然后再
20、對(duì)Us進(jìn)行反向積分。當(dāng)積分器的輸出電壓回到0時(shí),第二次積分結(jié)束,則第二次積分的時(shí)間為</p><p><b> T1</b></p><p><b> 故有</b></p><p> 比較兩個(gè)方案可知,恒流源測(cè)電阻法需要一個(gè)精密的恒流源,而電阻比例法測(cè)電阻則電路比較復(fù)雜,故在此采用第一種方案。</p>
21、<p><b> 1.3方案論證</b></p><p> 1.3.1 總體思路</p><p> (1)方案設(shè)計(jì)中首先設(shè)計(jì)一直流數(shù)字電壓表作為其他模塊測(cè)量的基礎(chǔ),采用單片機(jī)STC89C52、1602液晶和MC14433A/D轉(zhuǎn)換器作為基本的元器件。MC14433可構(gòu)成正負(fù)2V和正負(fù)20V直流電壓可測(cè)電壓表。</p><p>
22、?。?)在直流數(shù)字電壓表的基礎(chǔ)上將交流電壓、交流電流、電流、電阻等其他的電量通過(guò)各個(gè)模塊的轉(zhuǎn)換成呈線性的電壓,通過(guò)A/D后轉(zhuǎn)換成數(shù)字量單片機(jī)采集處理送液晶顯示。</p><p> 1.3.2 設(shè)計(jì)方案</p><p> 采用運(yùn)放OP-07將各代測(cè)量轉(zhuǎn)換成相對(duì)應(yīng)的直流電壓,通過(guò)AD轉(zhuǎn)換成數(shù)字量,單片機(jī)采集,液晶顯示。</p><p><b> 設(shè)計(jì)方
23、案圖示如下</b></p><p> 圖1.3.2 1設(shè)計(jì)方案</p><p> 2各模塊電路的設(shè)計(jì)及說(shuō)明</p><p> 2.1直流電壓表模塊</p><p> 數(shù)字直流電壓表的核心器件A/D采用MC14433,可組成三位半的電壓表直接將采集的數(shù)據(jù)轉(zhuǎn)換成BCD碼,單片機(jī)采集經(jīng)過(guò)相應(yīng)的處理后直接可送液晶顯示,MC1443
24、3擴(kuò)展很少的外圍電路電阻電容,用MC1403提供基準(zhǔn)源2V,通過(guò)外接470k歐的電阻即可構(gòu)成測(cè)量—正負(fù)2伏的電壓。MC14433資料可參考相關(guān)的批pdf文檔,MC14433芯片引腳圖如下所示</p><p> 圖2.1 1MC14433引腳圖</p><p> MC1403電路簡(jiǎn)單且提供的電壓源穩(wěn)定,精密度高等優(yōu)點(diǎn),輸出2.5V的電壓通過(guò)電位器調(diào)節(jié)電壓為2V為AD提供基準(zhǔn)源,電路如圖所
25、示。</p><p> 圖2.1 2 MC1403電路</p><p> 單片機(jī)小系統(tǒng)模塊簡(jiǎn)單、易理解,原理可參考有關(guān)資料圖示如下</p><p> 圖2.1 2單片機(jī)小系統(tǒng)</p><p> 2.2 AC-DC轉(zhuǎn)換器模塊電路</p><p> AC-DC電路采用的是真有效值轉(zhuǎn)換芯片AD637,該芯片能將交流
26、電壓轉(zhuǎn)換成有效值電壓,從而達(dá)到了轉(zhuǎn)換器的作用。AD637芯片原理為通過(guò)乘、除法運(yùn)算電路進(jìn)行均方根運(yùn)算,從而構(gòu)成均方根式的有效值。輸入電壓為7V,轉(zhuǎn)換精度,轉(zhuǎn)換精度高,穩(wěn)定度高。是一款設(shè)計(jì)者設(shè)計(jì)交流儀器儀表最佳的選擇。運(yùn)用AD637測(cè)量低頻交流電壓典型電路接法如下圖所示</p><p> 圖2.2 1 AD637電路圖</p><p> 2.3 I-U轉(zhuǎn)換器模塊電路</p>
27、<p> 該轉(zhuǎn)換電路采用運(yùn)放構(gòu)成的差分電路,將待測(cè)的電流流過(guò)一標(biāo)準(zhǔn)的電阻,通過(guò)運(yùn)放提供阻抗轉(zhuǎn)換和電壓放大,轉(zhuǎn)換成直流電壓。電路如下圖所示。</p><p> 圖2.3 1 I-U電路</p><p> 2.4 R-U轉(zhuǎn)換器模塊電路</p><p> 設(shè)計(jì)方案采用恒流源的方法測(cè)量電阻,通過(guò)運(yùn)放和MOSFET構(gòu)成的恒流源電路如下圖所示。</p&
28、gt;<p> 圖2.4.1恒流源測(cè)電阻電路</p><p> 此電路將運(yùn)放結(jié)成電壓跟隨器控制MOS管構(gòu)成恒流源電路,分析可知運(yùn)放同向端的電壓為1/2的WVCC,運(yùn)放為電壓跟隨器接法,從而可計(jì)算</p><p><b> 3軟件設(shè)計(jì)</b></p><p> 3.1開(kāi)發(fā)軟件及編程語(yǔ)言簡(jiǎn)介</p><p&
29、gt; 數(shù)字多用表程序設(shè)計(jì)編程環(huán)境為Kill4,程序語(yǔ)言采用C語(yǔ)言。</p><p> 3.2 程序設(shè)計(jì)與實(shí)現(xiàn)</p><p> 程序流程圖可分為直流電壓處理子程序、電阻處理子程序、電流處理子程序。</p><p><b> 具體流程如下所示.</b></p><p> 圖3.2 1 程序流程圖</p&g
30、t;<p> 液晶顯示程序,下圖為操作液晶的讀和寫(xiě)的時(shí)序圖。</p><p> 圖3.2 2 液晶讀時(shí)序圖</p><p> 圖3.2 3液晶寫(xiě)時(shí)序圖</p><p> 圖3.2 4液晶程序流程圖</p><p><b> 4 系統(tǒng)測(cè)試</b></p><p> 4.1
31、測(cè)試儀器與設(shè)備</p><p> 直流數(shù)字萬(wàn)用表,勝利的儀器。</p><p><b> 4.2 測(cè)試數(shù)據(jù)</b></p><p><b> 直流電壓測(cè)量</b></p><p><b> 交流電壓的測(cè)量</b></p><p><b>
32、; 電阻的測(cè)量</b></p><p><b> 電流的測(cè)量</b></p><p><b> 4.3誤差分析</b></p><p><b> 5 結(jié)論</b></p><p> 本次課程設(shè)計(jì)采用單片機(jī)處理數(shù)據(jù),AD轉(zhuǎn)換數(shù)據(jù),各種電量的轉(zhuǎn)換和程序的編寫(xiě)都
33、是一個(gè)人獨(dú)自完成。可謂是非常幸苦,但苦中有樂(lè),通過(guò)做實(shí)物檢驗(yàn)我半學(xué)期以來(lái)所學(xué)的知識(shí),通常只是考試完一個(gè)學(xué)期結(jié)束了,所學(xué)的知識(shí)也跟著忘了。感覺(jué)什么都沒(méi)學(xué)到。 </p><p><b> 參考文獻(xiàn)</b></p><p> 1. 陳尚松. 電子測(cè)量與儀器<第二版>. 電子工業(yè)出版社 2011</p><p> 2.黃智偉.全國(guó)大
34、學(xué)生電子設(shè)計(jì)競(jìng)賽訓(xùn)練教程[M].北京:電子工業(yè)出版社,2005年</p><p> 3.康花光。 電子技術(shù)基礎(chǔ)(模擬部分). 高等教育出版社. 2005</p><p><b> 附錄</b></p><p><b> 原理圖</b></p><p> 圖 附錄 1 系統(tǒng)的原理圖</p
35、><p> 圖 附錄 2 各轉(zhuǎn)換模塊PCB</p><p><b> 程序設(shè)計(jì)</b></p><p> /**********************************************</p><p> 文件: MAIN.c </p><p><b> 功能: 主程
36、序 </b></p><p> ***********************************************/</p><p> #include"DVM.h"</p><p> #include"config.h"</p><p> #include"D
37、VM.c"</p><p> #include"i2c.c"</p><p> #include<reg52.h></p><p> void main()</p><p><b> { </b></p><p><b> init()
38、;</b></p><p><b> initIC();</b></p><p><b> while(1)</b></p><p><b> { </b></p><p> void button();</p><p> dis
39、p[6]=' '; </p><p> ad_conver(); //啟動(dòng)A/D轉(zhuǎn)換</p><p> compute(); //轉(zhuǎn)換A/D轉(zhuǎn)換的數(shù)據(jù)</p><p> if((disp[1]==0x31)&&(disp[2]==0x39)&&(disp[3]==0x39)&&(disp[4]==
40、0x39))//過(guò)量程報(bào)錯(cuò)</p><p> { wr_lcd(0x80,error1,16);</p><p> wr_lcd(0x80+0x40,error2,16);</p><p><b> buzzer();</b></p><p><b> }</b></p>
41、<p><b> else </b></p><p> switch(P3)</p><p><b> {</b></p><p> case 0x77:{ </p><p> disp[6]='V'; </p><p> wr_l
42、cd(0x80,tab1,16);</p><p> wr_lcd(0x80+0x40,tab2,16);</p><p> wr_lcd(0x80+0x7,rag1,9);</p><p> disp[5]=disp[4];</p><p> disp[4]=disp[3];</p><p> disp[3
43、]=disp[2];</p><p> disp[2]='.';</p><p> wr_lcd(0x80+0x49,disp,7);</p><p><b> } break;</b></p><p> case 0x7f:{ </p><p> disp[6]=
44、9;V';</p><p> wr_lcd(0x80,tab1,16);</p><p> wr_lcd(0x80+0x40,tab2,16);</p><p> wr_lcd(0x80+0x07,rag2,9);</p><p> disp[5]=disp[4];</p><p> disp[4]=
45、disp[3];</p><p> disp[3]='.';</p><p> if(disp[1]==0x30)</p><p><b> {</b></p><p> disp[1]=disp[0];</p><p> disp[0]=' ';<
46、/p><p><b> }</b></p><p> wr_lcd(0x80+0x49,disp,7);</p><p><b> } break;</b></p><p> case 0xb7:{</p><p> disp[6]='V';</p
47、><p> wr_lcd(0x80,tab1,16);</p><p> wr_lcd(0x80+0x40,tab3,16);</p><p> wr_lcd(0x80+0x07,rag2,9);</p><p> disp[5]=disp[4];</p><p> disp[4]=disp[3];</p&
48、gt;<p> disp[3]=disp[2];</p><p> disp[2]='.';</p><p> wr_lcd(0x80+0x49,disp,7);</p><p><b> } break;</b></p><p> case 0xbf:{</p>&
49、lt;p> disp[6]='V'; </p><p> wr_lcd(0x80,tab1,16);</p><p> wr_lcd(0x80+0x40,tab3,16);</p><p> wr_lcd(0x80+0x07,rag2,9);</p><p> disp[5]=disp[4];</p>
50、;<p> disp[4]=disp[3];</p><p> disp[3]='.';</p><p> if(disp[1]==0x30)</p><p><b> {</b></p><p> disp[1]=disp[0];</p><p> di
51、sp[0]=' ';</p><p><b> }</b></p><p> wr_lcd(0x80+0x49,disp,7);</p><p><b> } break;</b></p><p> case 0xd7:{ </p><p> wr_
52、lcd(0x80,tab1,16);</p><p> wr_lcd(0x80+0x40,tab2,16);</p><p> wr_lcd(0x80+0x07,rag3,9);</p><p> disp[5]=disp[4];</p><p> disp[4]=disp[3];</p><p> disp
53、[3]=disp[2];</p><p> disp[2]='.';</p><p> wr_lcd(0x80+0x49,disp,7);</p><p><b> } break;</b></p><p> case 0xdf:{</p><p> wr_lcd(0x8
54、0,tab1,16);</p><p> wr_lcd(0x80+0x40,tab2,16);</p><p> wr_lcd(0x80+0x07,rag4,9);</p><p> disp[5]=disp[4];</p><p> disp[4]=disp[3];</p><p> disp[3]=
55、9;.';</p><p> if(disp[1]==0x30)</p><p><b> {</b></p><p> disp[1]=disp[0];</p><p> disp[0]=' ';</p><p><b> }</b><
56、;/p><p> wr_lcd(0x80+0x49,disp,7);</p><p><b> } break;</b></p><p> case 0xe7:{ </p><p> wr_lcd(0x80,tab1,16);</p><p> wr_lcd(0x80+0x40,tab2,1
57、6);</p><p> wr_lcd(0x80+0x07,rag5,9);</p><p> disp[5]=disp[4];</p><p> disp[4]=disp[3];</p><p> disp[3]=disp[2];</p><p> disp[2]='.';</p>
58、;<p> wr_lcd(0x80+0x49,disp,7);</p><p><b> } break;</b></p><p> case 0xef:{ </p><p> wr_lcd(0x80,tab1,16);</p><p> wr_lcd(0x80+0x40,tab2,16);<
59、;/p><p> wr_lcd(0x80+0x07,rag6,9);</p><p> disp[5]=disp[4];</p><p> disp[4]=disp[3];</p><p> disp[3]='.';</p><p> if(disp[1]==0x30)</p>&l
60、t;p><b> {</b></p><p> disp[1]=disp[0];</p><p> disp[0]=' ';</p><p><b> }</b></p><p> wr_lcd(0x80+0x49,disp,7);</p><p&
61、gt;<b> }break;</b></p><p> default :break;</p><p><b> }</b></p><p> delay2(1700);</p><p><b> }</b></p><p><b>
62、; }</b></p><p> /********************************************************</p><p><b> 文件名 DVM.c</b></p><p> ****************************************************
63、*****/</p><p> #include<config.h></p><p> #include<DVM.h></p><p> void ad_conver() //A/D轉(zhuǎn)換程序</p><p><b> { </b></p><p> while(!
64、ds1); //求出千位運(yùn)算;</p><p> disp[1]=P1;</p><p> while(!ds2); //求出百位運(yùn)算;</p><p> disp[2]=P1;</p><p> while(!ds3); //求出十位運(yùn)算;</p>&l
65、t;p> disp[3]=P1;</p><p> while(!ds4); //求出個(gè)位運(yùn)算;</p><p> disp[4]=P1;</p><p><b> }</b></p><p> void compute() //轉(zhuǎn)換A/D轉(zhuǎn)換數(shù)據(jù)子程序</p&g
66、t;<p> { uchar mk=disp[1],i,j,temp[4];</p><p> if(mk&0x01) </p><p> disp[1]=0; //Q3=1,千位為0.</p><p><b> else </b></p><p> disp[1]=1;<
67、/p><p> if(mk&0x02)</p><p> disp[0]=' ';</p><p><b> else </b></p><p> disp[0]='-';</p><p> if(mk&0x09==0x08)</
68、p><p> disp[1]=2;</p><p> mk=0x01; //提取百十個(gè)位數(shù)</p><p> for(j=2;j<5;j++)</p><p> { for(i=0;i<4;i++)</p><p> { temp[i]=disp[j]&mk;</p>
69、<p><b> mk<<=1;</b></p><p><b> }</b></p><p> temp[0]<<=3;</p><p> temp[1]<<=1;</p><p> temp[2]>>=1;</p>
70、<p> temp[3]>>=3;</p><p> disp[j]=temp[0]+temp[1]+temp[2]+temp[3];</p><p><b> mk=0x01;</b></p><p><b> }</b></p><p> for(i=1;i&l
71、t;5;i++) //把千百十個(gè)位轉(zhuǎn)換為ASCII碼</p><p> disp[i]+=0x30;</p><p><b> }</b></p><p> void delay(uint z) </p><p> { uint i;</p><p><b> ucha
72、r j; </b></p><p> for(i=z;i>0;i--)</p><p> for(j=10;j>0;j--);</p><p><b> }</b></p><p> void delay2(uint z) </p><p> { uint
73、i;</p><p><b> uchar j; </b></p><p> for(i=z;i>0;i--)</p><p> for(j=200;j>0;j--);</p><p><b> }</b></p><p> void write_com
74、(uchar m) //寫(xiě)指令函數(shù)</p><p> { rs=0;</p><p><b> rw=0;</b></p><p><b> P0=m;</b></p><p> delay(10);</p><p><b> e=1;<
75、;/b></p><p> delay(10);</p><p><b> e=0;</b></p><p> delay(10);</p><p><b> }</b></p><p> void write_data(uchar n) //寫(xiě)數(shù)據(jù)函數(shù)&l
76、t;/p><p> { rs=1;</p><p><b> rw=0;</b></p><p><b> P0=n;</b></p><p> delay(10);</p><p><b> e=1;</b></p><
77、p> delay(10);</p><p><b> e=0;</b></p><p> delay(10);</p><p><b> }</b></p><p> void init() //顯示初始化函數(shù)</p><p><b> {&l
78、t;/b></p><p><b> e=0;</b></p><p> write_com(0x38);//設(shè)置16*2顯示,5*7點(diǎn)陣,8位數(shù)據(jù)口</p><p> write_com(0x0c);//開(kāi)顯示,不顯示光標(biāo)</p><p> write_com(0x06);//寫(xiě)入數(shù)據(jù)后地址指針加1<
79、;/p><p> write_com(0x01);//顯示清屏</p><p> //write_com(0x80+0);//設(shè)置初始顯示地址</p><p><b> }</b></p><p> void wr_lcd(uchar addr,uchar *str,uchar length) </p>
80、<p> { uchar x;</p><p> write_com(addr);</p><p> for(x=0;x<length;x++)</p><p> write_data(str[x]);</p><p><b> }</b></p><p> voi
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 電子測(cè)量課程設(shè)計(jì)---虛擬數(shù)字電壓表的設(shè)計(jì)
- 數(shù)字電壓表課程設(shè)計(jì)--簡(jiǎn)易數(shù)字電壓表的設(shè)計(jì)
- 數(shù)字電壓表課程設(shè)計(jì)
- 數(shù)字電壓表課程設(shè)計(jì)
- 數(shù)字電壓表課程設(shè)計(jì)
- 數(shù)字電壓表課程設(shè)計(jì)
- 數(shù)字電壓表課程設(shè)計(jì)
- 數(shù)字電壓表課程設(shè)計(jì)
- 數(shù)字電壓表課程設(shè)計(jì)
- 數(shù)字電壓表課程設(shè)計(jì)
- 數(shù)字電壓表課程設(shè)計(jì)
- 數(shù)字電壓表設(shè)計(jì)-課程設(shè)計(jì)
- 課程設(shè)計(jì)---數(shù)字電壓表設(shè)計(jì)
- 數(shù)字電壓表設(shè)計(jì)課程設(shè)計(jì)
- 數(shù)字電壓表設(shè)計(jì)-課程設(shè)計(jì)
- 簡(jiǎn)易數(shù)字電壓表課程設(shè)計(jì)
- 數(shù)字電壓表課程設(shè)計(jì) (2)
- 數(shù)字電壓表課程設(shè)計(jì).doc
- 數(shù)字電壓表課程設(shè)計(jì)報(bào)告
- 數(shù)字電壓表的課程設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論