光照強(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ì)題 目 光照強(qiáng)度檢測(cè)裝置 學(xué)生姓名 學(xué)號(hào) 所在學(xué)院 專業(yè)班級(jí) 指導(dǎo)教師 _ 完成地點(diǎn) 合作者 2014年 1 月 5 日目錄1.課題的意義、目的41.1課題的意義41.2課程設(shè)計(jì)目的42.光照檢測(cè)裝置硬件電路設(shè)計(jì)62.1總體方案設(shè)計(jì)62.2 單片機(jī)的選擇62.3單元電路的設(shè)計(jì)72.3.1光敏電阻電路 72.3.2晶振電路和復(fù)位電路 82.3.3數(shù)模轉(zhuǎn)換電路 82.3.4報(bào)警電路 92.3.5顯示電路 93.光照檢測(cè)裝置軟件設(shè)計(jì)103.1軟件主程序13.2 顯示程序113.3 報(bào)警程序114.電路仿真調(diào)試125.總結(jié)與心得13附錄14源程序14摘 要該數(shù)字式光照強(qiáng)度檢測(cè)儀以STC89C5

2、2單片機(jī)和模數(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)鍵字:STC89C52單片機(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ī)注定影響一個(gè)時(shí)

4、代,只要存在計(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ì) 5 2 單片機(jī)光敏電阻晶振電路復(fù)位電路數(shù)模轉(zhuǎn)換器蜂鳴器顯示屏 總體設(shè)計(jì)方框圖設(shè)計(jì)原理光敏電阻在不同光照下的不同阻值通過(guò)數(shù)模轉(zhuǎn)換和單片機(jī)處理用數(shù)字表示出光照強(qiáng)弱的區(qū)別,當(dāng)光照過(guò)強(qiáng)或者過(guò)弱時(shí)會(huì)觸發(fā)警報(bào)??傮w上來(lái)說(shuō),本方案電路結(jié)構(gòu)簡(jiǎn)單、所用元

5、器件供給充足、成本造價(jià)低、性能穩(wěn)定且誤差范圍也在設(shè)計(jì)選題的要求之內(nèi),能在簡(jiǎn)單低成本的基礎(chǔ)上很好的完成設(shè)計(jì)選題的任務(wù),故實(shí)驗(yàn)中采用本方案。2.2 單片機(jī)的選擇本次課設(shè)選用的是STC89C52單片機(jī),它是STC公司生產(chǎn)的一種低功耗、高性能CMOS8位微控制器,具有 8K 在系統(tǒng)可編程Flash存儲(chǔ)器。STC89C52使用經(jīng)典的MCS-51內(nèi)核,但做了很多的改進(jìn)使得芯片具有傳統(tǒng)51單片機(jī)不具備的功能。在單芯片上,擁有靈巧的8 位CPU 和在系統(tǒng)可編程Flash,使得STC89C52為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、超有效的解決方案。STC89C52具有以下標(biāo)準(zhǔn)功能: 8k字節(jié)Flash,512字節(jié)

6、RAM, 32 位I/O 口線, EEPROM,MAX810復(fù)位電路,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)邏輯操作,支持2種軟件可選擇節(jié)電模式??臻e模式下,CPU 停止工作,允許RAM、定時(shí)器/計(jì)數(shù)器、串口、中斷繼續(xù)工作。掉電保護(hù)方式下,RAM內(nèi)容被保存,振蕩器被凍結(jié),單片機(jī)一切工作停止,直到下一個(gè)中斷或硬件復(fù)位為止。最高運(yùn)作頻率35MHz,6T/12T可選。STC89C52單片機(jī)引腳圖2.3單元電路的設(shè)計(jì)2.3.1光敏電阻電路光敏電阻又稱光導(dǎo)管,常用的制作材料為硫化鎘,另

7、外還有硒、硫化鋁、硫化鉛和硫化鉍等材料。這些制作材料具有在特定波長(zhǎng)的光照射下,其阻值迅速減小的特性。這是由于光照產(chǎn)生的載流子都參與導(dǎo)電,在外加電場(chǎng)的作用下作漂移運(yùn)動(dòng),電子奔向電源的正極,空穴奔向電源的負(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ī)需

8、要一個(gè)時(shí)間基準(zhǔn)來(lái)為各種操作提供秩序,此電路叫時(shí)鐘電路,采用不同的接線方式可以獲得不同時(shí)鐘電路,有內(nèi)部時(shí)鐘電路和外部時(shí)鐘電路,外部時(shí)鐘電路會(huì)使電路復(fù)雜,故采用的是內(nèi)部時(shí)鐘電路。時(shí)鐘電路在單片機(jī)的外部通過(guò)兩個(gè)引腳跨接晶體振蕩器和微調(diào)電容,構(gòu)成穩(wěn)定的自激振蕩器。 復(fù)位電路和晶振電路2.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位CMOS逐次比較型模數(shù)轉(zhuǎn)換器。模數(shù)轉(zhuǎn)換包括采樣、保持、量化和編碼四個(gè)過(guò)程。在某些特定的時(shí)刻對(duì)這種模擬信號(hào)進(jìn)行測(cè)量叫做采樣,

9、量化噪聲及接收機(jī)噪聲等因素的影響,采樣速率一般取。通常采樣脈沖的寬度是很短的,故采樣輸出是斷續(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)的, 且所用時(shí)間又是保持時(shí)間的一部分。2.3.4報(bào)警電路一般所指的蜂鳴器是以

10、壓電陶瓷為主要元件的。壓電陶瓷是一類有將壓力與電流相互轉(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),就可以被人耳所聽見,也就是產(chǎn)生了蜂鳴聲。由于蜂鳴器的工作電流一般比較大,以致于單片機(jī)的I/O 口是無(wú)法直接驅(qū)動(dòng)的,所以要利用放大電路來(lái)驅(qū)動(dòng),一般使用三極管來(lái)放大電流就可以了。當(dāng)光照強(qiáng)度過(guò)高或過(guò)弱時(shí),蜂鳴器會(huì)開始報(bào)警。2.3.5顯示電路 顯示電路采用的

11、是1602液晶1602液晶也叫1602字符型液晶,它是一種專門用來(lái)顯示字母、數(shù)字、符號(hào)等的點(diǎn)陣型液晶模塊。它由若干個(gè)5X7或者5X11等點(diǎn)陣字符位組成,每個(gè)點(diǎn)陣字符位都可以顯示一個(gè)字符,每位之間有一個(gè)點(diǎn)距的間隔,每行之間也有間隔,起到了字符間距和行間距的作用。1602LCD是指顯示的內(nèi)容為16X2,即可以顯示兩行,每行16個(gè)字符液晶模塊(顯示字符和數(shù)字)。市面上字符液晶大多數(shù)是基于HD44780液晶芯片的,控制原理是完全相同的,因此基于HD44780寫的控制程序可以很方便地應(yīng)用于市面上大部分的字符型液晶。液晶顯示內(nèi)容有光照的強(qiáng)度:“Light Text:xxx”;亮度等級(jí):“No Light!

12、”(無(wú)光)、“Low Light”(低光照)”、“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軟件主程序裝置開始運(yùn)行主程序流程圖是否觸發(fā)報(bào)警顯示成像數(shù)字單片機(jī)處理模數(shù)轉(zhuǎn)換光敏電阻產(chǎn)生變化進(jìn)行光照 否報(bào)警器報(bào)警 是 3.2 顯示程序while (1) LCD_Write_String(0, 0,"Light

13、 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_Write_String(1, 1,"No Light! "); warn();else if (num>=30

14、&&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 ");elseLCD_Write_String(1, 1,"So High! "); warn();

15、 3.3 報(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;i<200;i+) DelayMs(1); /4.電路仿真調(diào)試5.總結(jié)與心得本設(shè)計(jì)主要完成了以下內(nèi)容:數(shù)字

16、式光照強(qiáng)度檢測(cè)系統(tǒng)的工作原理及應(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è)上

17、取得更大進(jìn)步!附錄參考文獻(xiàn)1 閻石.數(shù)字電子技術(shù)基礎(chǔ)(第四版)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=P34; /將CS位定義為P3.4引腳sbit CLK=P10; /將CLK位定義為P1.0引腳sbit DIO=P11

18、; /將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ì)液晶模塊的操作程序*/ sbit RS = P20; /定義端口sbit RW = P21; sbit E= P22; /使能信號(hào)位,將E位定義為P2.2引腳sbit BF=P07; /忙碌標(biāo)志位,將BF位定義為P0.7

19、引腳/* 函數(shù)功能:延時(shí)1ms (3j+2)*i=(3×33+2)×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。result=1,忙碌;result=0,不忙*

20、/ bit BusyTest(void) 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)志電平賦給result E=0; /將E恢復(fù)低電平return 0; /* 函數(shù)功能:將模式設(shè)置指令或顯示地址寫入液晶模塊入口參數(shù):dictate*/ void WriteInstruction (unsigned char dictate) while(BusyTest()=1

21、); /如果忙就等待RS=0; /根據(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由高電平

22、跳變成低電平時(shí),液晶模塊開始執(zhí)行命令/* 函數(shù)功能:指定字符顯示的實(shí)際地址入口參數(shù):x */ void WriteAddress(unsigned char x) WriteInstruction(x|0x80); /顯示位置的確定方法規(guī)定為"80H+地址碼x" /* 函數(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í),

23、E為高脈沖,/ 就是讓E從0到1發(fā)生正跳變,所以應(yīng)先置"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)給LCD

24、一段較長(zhǎng)的反應(yīng)時(shí)間WriteInstruction(0x38); /顯示模式設(shè)置:16×2顯示,5×7點(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í)間WriteIns

25、truction(0x06); /顯示模式設(shè)置:光標(biāo)右移,字符不移delaynms(5); /延時(shí)5ms,給硬件一點(diǎn)反應(yīng)時(shí)間WriteInstruction(0x01); /清屏幕指令,將以前的顯示內(nèi)容清除delaynms(5); /延時(shí)5ms,給硬件一點(diǎn)反應(yīng)時(shí)間 /*以下是電壓顯示的說(shuō)明*/* 函數(shù)功能:顯示電壓符號(hào)*/ void display_volt(void) unsigned char i; WriteAddress(0x01); /寫顯示地址,將在第2行第1列開始顯示i = 0; /從第一個(gè)字符開始顯示while(Str1i != '0') /只要沒(méi)有寫到結(jié)束標(biāo)志

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

27、顯示地址,將在第1行第10列開始顯示W(wǎng)riteData('.'); /將小數(shù)點(diǎn)的字符常量寫入LCD /* 函數(shù)功能:顯示電壓的單位(V) */ void display_V(void) WriteAddress(0x0e); /寫顯示地址,將在第2行第13列開始顯示W(wǎng)riteData('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)后第二位)WriteAddress(0x0a); /寫顯示地址將在第1行第11列開始顯示W(wǎng)riteData(digiti); /將小數(shù)部分的第一位數(shù)字字符常量寫入LCD WriteData(digitj)

溫馨提示

  • 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)論