光照強(qiáng)度檢測(cè)裝置_第1頁(yè)
光照強(qiáng)度檢測(cè)裝置_第2頁(yè)
光照強(qiáng)度檢測(cè)裝置_第3頁(yè)
光照強(qiáng)度檢測(cè)裝置_第4頁(yè)
光照強(qiáng)度檢測(cè)裝置_第5頁(yè)
已閱讀5頁(yè),還剩15頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、課程設(shè)計(jì)IV題 目光照強(qiáng)度檢測(cè)裝置學(xué)生姓名 學(xué)號(hào)所在學(xué)院 專業(yè)班級(jí)指導(dǎo)教師完成地點(diǎn)合作者2014年1月5日目錄1 .課題的意義、目的31.1 課題的意義31.2 課程設(shè)計(jì)目的32 .光照檢測(cè)裝置硬件電路設(shè)計(jì)52.1 總體方案設(shè)計(jì)52.2 單片機(jī)的選擇52.3 單元電路的設(shè)計(jì)62.3.1 光敏電阻電路62.3.2 晶振電路和復(fù)位電路72.3.3 數(shù)模轉(zhuǎn)換電路72.3.4 報(bào)警電路82.3.5 顯示電路83 .光照檢測(cè)裝置軟件設(shè)計(jì)93.1 軟件主程序03.2 顯示程序103.3 報(bào)警程序114 .電路仿真調(diào)試125 .總結(jié)與心得13附錄13源程序14該數(shù)字式光照強(qiáng)度檢測(cè)儀以STC89C5常片機(jī)和模

2、數(shù)轉(zhuǎn)換為技術(shù)核心,具體由單片 機(jī)最小系統(tǒng)、A/D模數(shù)轉(zhuǎn)換模塊、光照強(qiáng)度檢測(cè)模塊、輸出模塊和數(shù)碼管顯示模塊組成。 在本系統(tǒng)的設(shè)計(jì)中,利用光敏電阻阻值隨光強(qiáng)的變化特性來(lái)檢測(cè)光強(qiáng),采用單片機(jī)控制 輸出模塊和數(shù)模轉(zhuǎn)換芯片依次測(cè)量不同的光照強(qiáng)度,并通過(guò)編程處理數(shù)據(jù)進(jìn)行光強(qiáng)的 比較,最后通過(guò)數(shù)碼管顯示檢測(cè)結(jié)果,過(guò)低或者過(guò)高將會(huì)使報(bào)警電路蜂鳴??傊?,通過(guò)對(duì)電路的設(shè)計(jì)和實(shí)際裝調(diào),最終基本實(shí)現(xiàn)了基于單片機(jī)的數(shù)字式光照強(qiáng)度檢測(cè)儀的整 體功能,可顯示最大光照強(qiáng)度。關(guān)鍵字:STC89C5笄片機(jī):模數(shù)轉(zhuǎn)換;光敏電阻;報(bào)警1 .課題的意義、目的1.1 課題的意義本系統(tǒng)是一個(gè)基于單片機(jī)的數(shù)字式光照檢測(cè)儀,通過(guò)數(shù)碼管顯示光

3、度。以89C52單片機(jī)為核心,控制A/D芯片采集數(shù)據(jù),輔以數(shù)碼管、數(shù)據(jù) 選擇器等器件,實(shí)現(xiàn)功能。本系統(tǒng)采用光敏電阻采集光照強(qiáng)度信息。光照強(qiáng)度直接反映在光敏電 電阻阻值上,進(jìn)而反映在光敏電阻兩端的電壓值上。然后通過(guò)單片機(jī)控制 A/D模數(shù)轉(zhuǎn)換對(duì)電壓信號(hào)進(jìn)行采集,經(jīng)換算后通過(guò)數(shù)碼管顯示光強(qiáng)強(qiáng)度。 本設(shè)計(jì)適當(dāng)?shù)乩昧斯饷綦娮璧奶匦砸约皢纹瑱C(jī)的強(qiáng)大的運(yùn)算控制功能, 實(shí)現(xiàn)了光照強(qiáng)度的檢測(cè),并在數(shù)碼管上顯示。本系統(tǒng)充分利用了現(xiàn)有資源, 結(jié)構(gòu)合理,性能穩(wěn)定,成本低,滿足題目要求。加強(qiáng)對(duì)單片機(jī)的學(xué)習(xí)和認(rèn)識(shí),正確運(yùn)用所學(xué)單片機(jī)的理論知識(shí),將理 論與實(shí)際相結(jié)合,單片機(jī)在我們的生活中得到越來(lái)越廣泛的應(yīng)用,單片機(jī) 注定

4、影響一個(gè)時(shí)代,只要存在計(jì)算機(jī)的地方就會(huì)有他的存在,學(xué)好單片機(jī) 對(duì)今后的學(xué)習(xí)與工作有很多益處。1.2 課程設(shè)計(jì)目的采用光敏電阻為光傳感器,利用光敏電阻的光照特性完成光強(qiáng)的檢測(cè)。 設(shè)計(jì)目的如下:1 .對(duì)于光照強(qiáng)度的檢測(cè)結(jié)果能夠處理后在液晶屏上顯示(光照過(guò)強(qiáng)、光 照強(qiáng)、光照一般、光照弱);2 .當(dāng)光強(qiáng)太弱或者太強(qiáng)的時(shí)候,系統(tǒng)報(bào)警。操控簡(jiǎn)易實(shí)用2 .光照檢測(cè)裝置硬件電路設(shè)計(jì)2.1 總體方案設(shè)計(jì)總體設(shè)計(jì)方框圖設(shè)計(jì)原理光敏電阻在不同光照下的不同阻值通過(guò)數(shù)模轉(zhuǎn)換和單片機(jī)處理用數(shù)字表示出光照 強(qiáng)弱的區(qū)別,當(dāng)光照過(guò)強(qiáng)或者過(guò)弱時(shí)會(huì)觸發(fā)警報(bào)。總體上來(lái)說(shuō),本方案電路結(jié)構(gòu)簡(jiǎn)單、所用元器件供給充足、成本造價(jià)低、性能穩(wěn)定

5、且誤差范圍也在設(shè)計(jì)選題的要求之內(nèi),能在簡(jiǎn)單低成本的基礎(chǔ)上很好的完成設(shè)計(jì)選題 的任務(wù),故實(shí)驗(yàn)中米用本方案。2.2 單片機(jī)的選擇本次課設(shè)選用的是STC89C52I片機(jī),它是STC公司生產(chǎn)的一種低功耗、高性能 CMOS位微控制器,具有8K在系統(tǒng)可編程Flash存儲(chǔ)器。STC89C5較用經(jīng)典的MCS-51內(nèi)核,但做了很多的改進(jìn)使得芯片具有傳統(tǒng) 51單片機(jī)不具備的功能。在單芯片上,擁 有靈巧的8位CPU和在系統(tǒng)可編程Flash,使得STC89C5為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、超有效的解決方案72 Pi.CC 1T2EX:Pt.tC 2P12C 3PT1C 4PMC 5AKSDP1JC 9 iMSO

6、PT.eC 7:Cb PV'CRS1C 凡9-:c (TXD)P3.1C TT r -:; 而EP33匚 rrp丐.4匚標(biāo)?3eC 比P3.7匚XTM2CT4 C3tCC M f: mm ziFn; F2 3 -i Fl 2.A1C FL 1 AS F2 ChA9J j nSTC89C5現(xiàn)有以下標(biāo)準(zhǔn)功能:8k字節(jié)Flash , 512 字節(jié) RAM,32 位 I/O 口線,http:內(nèi) 置 4 KBEEPROMMAX81至位電路,3個(gè)16位定時(shí)器/計(jì)數(shù) 器,4個(gè)外部中斷,一個(gè)7向量4級(jí)中斷結(jié)構(gòu)(兼 容傳統(tǒng)51的5向量2級(jí)中斷結(jié)構(gòu)),全雙工用行口。 另外STC89C52可降至0Hz靜態(tài)邏

7、輯操作,支持2 種軟件可選擇節(jié)電模式??臻e模式下,CPU停止工作,允許RAM定時(shí)器/計(jì)數(shù)器、串口、中斷繼續(xù)工 作。掉電保護(hù)方式下,RAM內(nèi)容被保存,振蕩器被 凍結(jié),單片機(jī)一切工作停止,直到下一個(gè)中斷或硬 件復(fù)位為止。最高運(yùn)作頻率 35MHz 6T/12T可選。STC89C52I片機(jī)弓唧圖2.3 單元電路的設(shè)計(jì)2.3.1 光敏電阻電路I-1=1'I0K1K光敏電阻模塊光敏電阻又稱光導(dǎo)管,常用的制作材料 為硫化鎘,另外還有硒、硫化鋁、硫化鉛和硫 化鈿等材料。這些制作材料具有在特定波長(zhǎng) 的光照射下,其阻值迅速減小的特性。這是由 于光照產(chǎn)生的載流子都參與導(dǎo)電 ,在外加電 場(chǎng)的作用下作漂移運(yùn)動(dòng),

8、電子奔向電源的正 極,空穴奔向電源的負(fù)極,從而使光敏電阻器 的阻值迅速下降。光敏電阻的工作原理是基 于內(nèi)光電效應(yīng)。在半導(dǎo)體光敏材料兩端裝上 電極引線,將其封裝在帶有透明窗的管殼里 就構(gòu)成光敏電阻,為了增加靈敏度,兩電極常 做成梳狀。在光敏電阻兩端的金屬電極之間加上電壓 ,其中便有電流通過(guò),受到適當(dāng)波長(zhǎng)的光 線照射時(shí),電流就會(huì)隨光強(qiáng)的增加而變大,從而實(shí)現(xiàn)光電轉(zhuǎn)換。光敏電阻的入射光強(qiáng),電 阻減??;入射光弱,電阻增大。2.3.2 晶振電路和復(fù)位電路單片機(jī)需要一個(gè)時(shí)間基準(zhǔn)來(lái)為各種操作提供秩序,此電路叫時(shí)鐘電路,采用不同 的接線方式可以獲得不同時(shí)鐘電路,有內(nèi)部時(shí)鐘電路和外部時(shí)鐘電路,外部時(shí)鐘電路 會(huì)使電

9、路復(fù)雜,故采用的是內(nèi)部時(shí)鐘電路。時(shí)鐘電路在單片機(jī)的外部通過(guò)兩個(gè)引腳跨 接晶體振蕩器和微調(diào)電容,構(gòu)成穩(wěn)定的自激振蕩器。復(fù)位電路和晶振電路AINO 1叵AINf FT吊 摸數(shù)轉(zhuǎn)換模塊 PCF«?lM(M22.3.3 數(shù)模轉(zhuǎn)換電路A/D轉(zhuǎn)換器就是模擬/數(shù)字轉(zhuǎn)換器是將輸入的模擬信號(hào)轉(zhuǎn)換成為數(shù)字信號(hào)。本實(shí)驗(yàn)中利用模數(shù)轉(zhuǎn)換將模擬電壓值轉(zhuǎn)換為離散的數(shù)字量再送入單片機(jī)進(jìn)行數(shù)據(jù)處理。制作 中選用芯片PCF8591為8位CMO隧次比較型模數(shù)轉(zhuǎn)換器。模數(shù)轉(zhuǎn)換包括采樣、保持、 量化和編碼四個(gè)過(guò)程。在某些特定的時(shí)刻對(duì)這種模擬信號(hào)進(jìn)行測(cè)量叫做采樣 ,量化噪聲 及接收機(jī)噪聲等因素的影響,采樣速率一般取。通常采樣脈

10、沖的寬度是很短的,故采樣輸出是斷續(xù)的窄脈沖。要把一個(gè)采樣輸出信號(hào)數(shù)字化,需要將采樣輸出所得的瞬時(shí)模擬信號(hào)保持一段時(shí)間,這就是保持過(guò)程。 量化 是將連續(xù)幅度的抽樣信號(hào)轉(zhuǎn)換成離散時(shí)間、離散幅度的數(shù)字信號(hào),量化的主要問(wèn)題就是 量化誤差。假設(shè)噪聲信號(hào)在量化電平中是均勻分布的 ,則量化噪聲均方值與量化間隔 和模數(shù)轉(zhuǎn)換器的輸入阻抗值有關(guān)。編碼是將量化后的信號(hào)編碼成二進(jìn)制代碼輸出。這 些過(guò)程有些是合并進(jìn)行的,例如,采樣和保持就利用一個(gè)電路連續(xù)完成,量化和編碼也 是在轉(zhuǎn)換過(guò)程中同時(shí)實(shí)現(xiàn)的,回M 同 AOLTT 四gEF 回人口村口 回£XT回OSG 同SCLT SOA且所用時(shí)間又是保持時(shí)間的一部分2

11、.3.4 報(bào)警電路蛭鳴器模塊一般所指的蜂鳴器是以壓電陶瓷為主要元件 的。壓電陶瓷是一類有將壓力與電流相互轉(zhuǎn)換能力 的特殊陶瓷。這種能力緣于其特殊的晶體結(jié)構(gòu)。當(dāng) 壓電陶瓷在一定方向上受到一個(gè)壓力使其晶體結(jié) 構(gòu)發(fā)生形變時(shí),它就會(huì)在內(nèi)部產(chǎn)生一個(gè)電流,并且 電流的變化與壓力的變化密切相關(guān)。反之亦然。所 以利用這一特性,在壓電陶瓷上通過(guò)一定頻率的電 流,就會(huì)引起壓電陶瓷微小形變,這一形變帶動(dòng)空 氣發(fā)生振動(dòng),如果頻率適當(dāng),就可以被人耳所聽見(jiàn),也就是產(chǎn)生了蜂鳴聲。由于蜂鳴器的工作電流一般比較大,以致于單片機(jī)的I/O 口是無(wú)法直接驅(qū)動(dòng)的,所以要利用放大電路來(lái)驅(qū)動(dòng),一般使用三極管來(lái)放大電流就可以了。當(dāng)光照強(qiáng)度過(guò)

12、高或過(guò)弱時(shí),蜂鳴器會(huì)開始報(bào)警。2.3.5 顯示電路顯示電路采用的是1602液晶1602液晶也叫1602字符型液晶,它是一種專門用來(lái)顯示字母、數(shù)字、符號(hào)等的點(diǎn) 陣型液晶模塊。它由若干個(gè)5X7或者5X11等點(diǎn)陣字符位組成,每個(gè)點(diǎn)陣字符位都可以 顯示一個(gè)字符,每位之間有一個(gè)點(diǎn)距的間隔,每行之間也有間隔,起到了字符間距和 行間距的作用。1602LC皿指顯示白內(nèi)容為16X2,即可以顯示兩行,每行16個(gè)字符液晶模塊(顯 示字符和數(shù)字)。市面上字符液晶大多數(shù)是基于 HD447801晶芯片的,控制原理是完全相同的,因 此基于HD44780W的控制程序可以很方便地應(yīng)用于市面上大部分的字符型液晶。1 602顯示才

13、算塊LCOi0年4 三三一 ISS'IML 里之 胃K1rc0 W|GND'll液晶顯示內(nèi)容有光照的強(qiáng)度:“Light Text : xxx";亮度等級(jí):“No Light! ”(無(wú) 光)、“LowLight ”(低光照)”、“Middle Light ”(中等光照)、“High Light ”(高亮度)、 “So High! ”(太高)四個(gè)等級(jí)。由于本系統(tǒng)采用的是8位AD芯片。所以顯示亮度白數(shù)值范圍是0256,即最低亮度檢 測(cè)顯示為0,最高亮度檢測(cè)顯示為256。測(cè)試圖如上可以看出當(dāng)數(shù)字顯示過(guò)小時(shí)表明光照過(guò)低,系統(tǒng)發(fā)出警報(bào)3 .光照檢測(cè)裝置軟件設(shè)計(jì)3.1軟件主程序主程

14、序流程圖模數(shù)轉(zhuǎn)換單片機(jī)處理報(bào)警器報(bào)警3.1 顯示程序while (1)(LCD_Write_String(0, 0,"Light Test:");num=255-ReadADC(0);值取差值,用于顯示光強(qiáng)越小,數(shù)值越小aaa=(num/100);bbb=(num%100)/10;ccc=(num%100)%10;LCD_Write_Char ( 12,0, 0x30+aaa);LCD_Write_Char ( 13,0, 0x30+bbb);LCD_Write_Char ( 14,0, 0x30+ccc);DelayMs(500);if (num<30)LCD_Wr

15、ite_String(1, 1,"No Light!");warn();else if (num>=30&&num<80)LCD_Write_String(1, 1,"Low Light ");else if (num>=80&&num<130)LCD_Write_String(1, 1,"Middle Light ");else if (num>=130&&num<180)LCD_Write_String(1, 1,"High Light

16、");else(LCD_Write_String(1, 1,HSo High!"); warn();)3.2 報(bào)警程序#include<reg52.h>#include"spk.h"void DelayUs2x(unsigned char t);/函數(shù)聲明void DelayMs(unsigned char t);void warn(void)( unsigned int i;/ while(1)/for(i=0;i<200;i+)DelayUs2x(200);spk=!spk;)spk=0;/防止一直給喇叭通電造成損壞for(i=0;

17、i<200;i+)DelayMs(1);)/ )4 .電路仿真調(diào)試Jj&OZ顯小鞅球-.I ,W.T 鼻IT口.|卜-I- «.LCD1LUD16L 4T&mUolt= O.2LU§LG I LOME VQUPQgp 口 ra.ifiw 1FOLW/W1 POiPS PEU9AD6 FO.TiD?NDTAB FZ.KABATffiMZF:1U 詠 D Flim<D P33HTQ PJa'TFTT .HTQ F3£<riP3SWKP3.7iWW pB5 .總結(jié)與心得本設(shè)計(jì)主要完成了以下內(nèi)容:數(shù)字式光照強(qiáng)度檢測(cè)系統(tǒng)的工作原理及

18、應(yīng)用、基本 方案的選擇、單片機(jī)系統(tǒng)的硬件設(shè)計(jì)、單片機(jī)系統(tǒng)的軟件設(shè)計(jì)、系統(tǒng)各個(gè)模塊的設(shè)計(jì) 以及系統(tǒng)的仿真調(diào)試。設(shè)計(jì)的要求是檢測(cè)光照強(qiáng)度,光敏電阻在光照下電阻兩端電壓 改變電壓式模擬量需要轉(zhuǎn)換成數(shù)字量這樣單片機(jī)才能采集到信號(hào)因而選擇A/D模數(shù)轉(zhuǎn)換。在設(shè)計(jì)過(guò)程中設(shè)計(jì)的前一部分也就是系統(tǒng)的硬件設(shè)計(jì)比較順利,但到了系統(tǒng)仿真 調(diào)試的時(shí)候出現(xiàn)了一定困難,包括軟件繪圖方面以及軟件編程方面。經(jīng)過(guò)不懈努力還 是完成了老師要求的內(nèi)容,通過(guò)這次課程設(shè)計(jì)認(rèn)識(shí)到了自己的不足,我會(huì)努力完善自 己的知識(shí)基礎(chǔ)和實(shí)踐能力,相信以后會(huì)更好。感謝我的隊(duì)友王軼超,感謝老師對(duì)我們 課程設(shè)計(jì)中的指導(dǎo),我會(huì)更加努力,在專業(yè)上取得更大進(jìn)步!附

19、錄參考文獻(xiàn)1閻石.數(shù)字電子技術(shù)基石(第四版)M.高等教育出版社.1998.112張毅剛等.MCS-51單片機(jī)應(yīng)用設(shè)計(jì).哈爾濱工業(yè)電子出版社,19963何立民.單片機(jī)應(yīng)用技術(shù)選編.北京航空航天大學(xué)出版社,20004張友德等.單片微型機(jī)原理應(yīng)用與實(shí)驗(yàn),復(fù)旦大學(xué)出版社,1996源程序#include<reg52.h>/包含單片機(jī)寄存器的頭文件#include<intrins.h> /包含_nop_()函數(shù)定義的頭文件sbit CS=P3A4;/ 將CS位定義%P3.4引腳sbit CLK=P1A0; / 將 CLK位定義為 P1.0 引腳sbit DIO=P1A1; / 將

20、DIO位定義為 P1.1 引腳unsigned char code digit10="0123456789" /定義字符數(shù)組顯示數(shù)字unsigned char code Str1="Volt= . V"/說(shuō)明顯示的是電壓unsigned char code Str2="SLG I LOVE YOU"/*以下是對(duì)液晶模塊的操作程序*/定義端口使能信號(hào)位,將E位定義為P2.2引腳 忙碌標(biāo)志位,將BF位定義為P0.7引腳sbit RS = P2A0; / sbit RW = P2A1;sbit E= P2A2;/sbit BF=P0A7;

21、/ /*函數(shù)功能:延時(shí)1ms (3j+2)*i=(3 x 33+2) x 10=1010(微秒),可以認(rèn)為是1毫秒*/ void delay1ms()unsigned char i,j;for(i=0;i<10;i+)for(j=0;j<33;j+);/*函數(shù)功能:延時(shí)若干毫秒入口參數(shù):n*/void delaynms(unsigned char n)unsigned char i;for(i=0;i<n;i+)delay1ms();/*函數(shù)功能:判斷液晶模塊的忙碌狀態(tài)返回值:result oresult=1,忙碌;result=0 ,不忙*/bit BusyTest(voi

22、d) ( bit result;RS=0; /根據(jù)規(guī)定,RS為低電平,RW的高電平時(shí),可以讀狀態(tài) RW=1;E=1; /E=1,才允許讀寫_nop_(); / 空操作_nop_();_nop_();_nop_(); /空操作四個(gè)機(jī)器周期,給硬件反應(yīng)時(shí)間result=BF; /將忙碌標(biāo)志電平賦給resultE=0; / 將E恢復(fù)低電平 return 0;/*函數(shù)功能:將模式設(shè)置指令或顯示地址寫入液晶模塊入口參數(shù):dictate*/void WriteInstruction (unsigned char dictate) (while(BusyTest()=1); / 如果忙就等待RS=0; /根

23、據(jù)規(guī)定,RS和R/W同時(shí)為低電平時(shí),可以寫入指令 RW=0;E=0; /E置低電平(根據(jù)表8-6,寫指令時(shí),E為高脈沖,/就是讓E從0到1發(fā)生正跳變,所以應(yīng)先置"0"_nop_();_nop_(); /空操作兩個(gè)機(jī)器周期,給硬件反應(yīng)時(shí)間P0=dictate; / 將數(shù)據(jù)送入P0 口,即寫入指令或地址_nop_();_nop_();_nop_(); /空操作四個(gè)機(jī)器周期,給硬件反應(yīng)時(shí)間E=1; /E置高電平_nop_();_nop_();_nop_();_nop_(); /空操作四個(gè)機(jī)器周期,給硬件反應(yīng)時(shí)間E=0; /當(dāng)E由高電平跳變成低電平時(shí),液晶模塊開始執(zhí)行命令/* 函數(shù)

24、功能:指定字符顯示的實(shí)際地址 入口參數(shù):x*顯示位置的確定方法規(guī)定為"80H+地址碼x"void WriteAddress(unsigned char x) (WriteInstruction(x|0x80); / /*函數(shù)功能:將數(shù)據(jù)(字符的標(biāo)準(zhǔn)ASCII碼)寫入液晶模塊 入口參數(shù):y(為字符常量)*/ void WriteData(unsigned char y) (while(BusyTest()=1);RS=1; /RS 為高電平,RW勺低電平時(shí),可以寫入數(shù)據(jù)RW=0;E=0;/E置低電平(根據(jù)表8-6,寫指令時(shí),E為高脈沖,/就是讓E從0到1發(fā)生正跳變,所以應(yīng)先置

25、"0"P0=y; /將數(shù)據(jù)送入P0 口,即將數(shù)據(jù)寫入液晶模塊_nop_();_nop_();_nop_();_nop_(); /空操作四個(gè)機(jī)器周期,給硬件反應(yīng)時(shí)間E=1; /E 置高電平_nop_();_nop_();_nop_();_nop_(); /空操作四個(gè)機(jī)器周期,給硬件反應(yīng)時(shí)間E=0; /當(dāng)E由高電平跳變成低電平時(shí),液晶模塊開始執(zhí)行命令/*函數(shù)功能:對(duì)LCD的顯示模式進(jìn)行初始化設(shè)置*/void LcdInitiate(void) (delaynms(15); 延時(shí)15ms首次寫指令時(shí)應(yīng)給LCr段較長(zhǎng)的反應(yīng)時(shí)間WriteInstruction(0x38); / 顯示

26、模式設(shè)置:16X 2顯示,5X7點(diǎn)陣,8位數(shù)據(jù)接口 delaynms(5); / 延時(shí)5ms,給硬件一點(diǎn)反應(yīng)時(shí)間WriteInstruction(0x38);delaynms(5); / 延時(shí)5ms,給硬件一點(diǎn)反應(yīng)時(shí)間WriteInstruction(0x38); /連續(xù)三次,確保初始化成功delaynms(5); / 延時(shí)5ms,給硬件一點(diǎn)反應(yīng)時(shí)間WriteInstruction(0x0c); /顯示模式設(shè)置:顯示開,無(wú)光標(biāo),光標(biāo)不閃爍delaynms(5); / 延時(shí)5ms,給硬件一點(diǎn)反應(yīng)時(shí)間WriteInstruction(0x06); /顯示模式設(shè)置:光標(biāo)右移,字符不移delaynms

27、(5); / 延時(shí)5ms,給硬件一點(diǎn)反應(yīng)時(shí)間WriteInstruction(0x01); / 清屏幕指令,將以前的顯示內(nèi)容清除delaynms(5); / 延時(shí)5m§給硬件一點(diǎn)反應(yīng)時(shí)間 ) /*以下是電壓顯示的說(shuō)明*/*函數(shù)功能:顯示電壓符號(hào)*/void display_volt(void)unsigned char i;WriteAddress(0x01); /i = 0;/while(Str1i != '0') / WriteData(Str1i); / i+; / 指向下一個(gè)字符 ) )void display3(void)unsigned char i;Wr

28、iteAddress(0x80+0x41);寫顯示地址,將在第2行第1列開始顯示 從第一個(gè)字符開始顯示只要沒(méi)有寫到結(jié)束標(biāo)志,就繼續(xù)寫將字符常量寫入LCD/ 寫顯示地址,將在第2行第1列開始顯示i = 0; /從第一個(gè)子符開始顯小while(Str2i != '0') / WriteData(Str2i); / i+; /指向下一個(gè)字符 )只要沒(méi)有寫到結(jié)束標(biāo)志,就繼續(xù)寫將字符常量寫入LCD/*函數(shù)功能:顯示電壓的小數(shù)點(diǎn)*/void display_dot(void)WriteAddress(0x0d); / 寫顯示地址,將在第1行第10列開始顯示W(wǎng)riteData('.&

29、#39;); / )將小數(shù)點(diǎn)的字符常量寫入LCD/* 函數(shù)功能:顯示電壓的單位(V)*/ void display_V(void) WriteAddress(0x0e); / 寫顯示地址,將在第 2行第13列開始顯示 WriteData('V'); / 將字符常量寫入 LCD ) /*函數(shù)功能:顯示電壓的整數(shù)部分入口參數(shù):x*/ void display1(unsigned char x) WriteAddress(0x08); /寫顯示地址,將在第2行第7列開始顯示W(wǎng)riteData(digitx); /將百位數(shù)字的字符常量寫入LCD) /* 函數(shù)功能:顯示電壓的小數(shù)數(shù)部分 入口參數(shù):x */ void display2(unsigned char x)unsigned char i,j;i=x/10; / 取十位(小數(shù)點(diǎn)后第一位)j=x%10; / 取個(gè)位(小數(shù)點(diǎn)后第二位)寫顯示地址將在第1行第11列開始顯示將小數(shù)部分的第一位數(shù)字字符常量寫入 LCD將小數(shù)部分的第一位數(shù)字字符

溫馨提示

  • 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ù)網(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)論