火焰檢測報警器 課程設(shè)計_第1頁
火焰檢測報警器 課程設(shè)計_第2頁
火焰檢測報警器 課程設(shè)計_第3頁
火焰檢測報警器 課程設(shè)計_第4頁
火焰檢測報警器 課程設(shè)計_第5頁
已閱讀5頁,還剩24頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、 廣州學(xué)院嵌入式技術(shù)應(yīng)用項目說明書 (火焰檢測報警器) 院(系) 機械工程學(xué)院 專 業(yè) 機械電子工程 班 級 12機電2班 學(xué)生姓名 利齊帥 徐杰龍 林輝 梁慶堂 指導(dǎo)老師 王蕊 成 績 2015年 10 月 10 日課 程 設(shè) 計 任 務(wù) 書茲發(fā)給 12機電2 班學(xué)生利齊帥、徐杰龍、林輝、梁慶堂 課程設(shè)計任務(wù)書,內(nèi)容如下:1 設(shè)計題目: 火焰檢測報警器 2 應(yīng)完成的項目:(1) 設(shè)計說明書計算準(zhǔn)確、書寫工整,字?jǐn)?shù)不少于3000字;圖紙正確清晰,符合制圖標(biāo)準(zhǔn)及有關(guān)規(guī)定。 (2)分組實現(xiàn)原理圖設(shè)計及相關(guān)元器件的設(shè)計,按要求完成總體電路。 (3)基于相關(guān)電路完成電路設(shè)計、程序設(shè)計與實物。 (4)完

2、成總體內(nèi)容,實現(xiàn)具體功能。 3 參考資料以及說明:(1)電子線路CAD與實訓(xùn)(電子工藝出版社) (2)電子工藝技術(shù)與實踐(機械工程出版社) (3)單片機原理及應(yīng)用(清華大學(xué)出版社) (4)集成電路數(shù)據(jù)手冊查詢網(wǎng): (5)新概念51單片機C語言教程:入門、提高、開發(fā)、拓展全攻略(電子工業(yè)出版社) 4 本設(shè)計任務(wù)書于2015年 11月16日發(fā)出,應(yīng)于2015年11月27日前完成,然后進行答辯。指導(dǎo)教師 簽發(fā) 2015 年 11 月 16 日評語:總評成績:指導(dǎo)教師簽字:年 月 日目 錄摘 要4第一章 緒論5第二章 總體內(nèi)容及設(shè)計62.1 總體內(nèi)容設(shè)計及目標(biāo)62.2 組員及任務(wù)6第三章 電路設(shè)計及元

3、器件選型73.1 AT89C52單片機控制模塊電路原理圖設(shè)計73.2晶振起振模塊電路與功能83.3 1602液晶屏顯示模塊電路原理圖設(shè)計93.4聲音報警模塊電路原理圖設(shè)計113.5紅外火焰?zhèn)鞲衅鞴δ芗半娐?1第四章 程序設(shè)計134.1輸入部分程序134.2輸出部分程序144.3定時應(yīng)用與功能16第五章 電路設(shè)計及結(jié)果17第六章 總結(jié)19參考文獻20摘 要本論文以紅外火焰檢測傳感器和單片機技術(shù)為核心并與其它電子技術(shù)相結(jié)合,設(shè)計出一種技術(shù)水平較好的紅外火焰檢測報警器, 用于火焰檢測, 可檢測 760 納米1100 納米范圍內(nèi)的熱源,火焰探測角度為 60°范圍。以STC89C52單片機和R

4、ealplay火焰檢測傳感器為核心設(shè)計的火焰檢測報警器可實現(xiàn)聲光報警、1602液晶屏顯示報警等功能。是一種結(jié)構(gòu)簡單、性能穩(wěn)定、使用方便、價格低廉、智能化的火焰檢測報警器。其中選用紅外火焰檢測傳感器實現(xiàn)各種火焰的檢測,具有靈敏度高、響應(yīng)快、抗干擾能力強等優(yōu)點,而且價格低廉,使用壽命長。選用的STC89C52單片機,具有高速、低功耗、超強抗干擾等優(yōu)點,是目前同類技術(shù)中性價比較高的產(chǎn)品。本報警裝置具有一定的實用價值。 關(guān)鍵詞:火焰?zhèn)鞲衅?;聲光報警器;液晶屏;STC89C52 第一章 緒論隨著經(jīng)濟的發(fā)展,高層建筑、地下建筑以及大型綜合性建筑日益增多火災(zāi)隱患也隨之增加,火災(zāi)發(fā)生的數(shù)量及其造成的損失都呈逐

5、年上升趨勢,因此,火災(zāi)報警系統(tǒng)成為保障人生命財產(chǎn)安全的重要因素。 火災(zāi)報警系統(tǒng)在國內(nèi)的發(fā)展情況是我國火災(zāi)報警系統(tǒng)起步較發(fā)達國家晚幾十年,從上世紀(jì)70年代我國才開始研制生產(chǎn)火災(zāi)報警系統(tǒng)產(chǎn)品。進入80年代后,國內(nèi)廠家也多是模仿國外產(chǎn)品,或是引進國外技術(shù)進行生產(chǎn),沒有真正意義上的核心技術(shù),并且市場也剛剛開始發(fā)育。火災(zāi)報警產(chǎn)品真正開始發(fā)展是在90年代以后,隨著政府逐漸開放國門,國外企業(yè)開始大量進入中國消防市場,帶來先進技術(shù)的同時也促進了市場的成熟。這時期,我國生產(chǎn)火災(zāi)報警產(chǎn)品的企業(yè)也得到了快速發(fā)展,部分企業(yè)進行了合資生產(chǎn)、技術(shù)合作,取得了不菲的成績,也造就現(xiàn)今市場上許多有實力的商家,部分技術(shù)已接近趕上

6、了國際水平。 本設(shè)計采用紅外火焰檢測傳感器、AT89C52單片機以及1062LED液晶屏顯示模塊設(shè)計的一種智能火災(zāi)報警器,可以實現(xiàn)聲光報警、液晶屏顯示有無火源等功能。是一種結(jié)構(gòu)簡單、性能穩(wěn)定、使用方便、價格低廉、智能化的火災(zāi)報警器,具有一定的實用價值。第二章 總體內(nèi)容及設(shè)計2.1 總體內(nèi)容設(shè)計及目標(biāo)報警系統(tǒng)主要由數(shù)據(jù)采集模塊、單片機控制模塊、晶振起振模塊、聲光報警模塊、液晶屏顯示模塊、電源模塊組成。圖2-1為火焰檢測報警器的系統(tǒng)結(jié)構(gòu)框圖?;鹧?zhèn)鞲衅餍盘柗糯箅娐稟/D轉(zhuǎn)換電路電源模塊STC89C52單片機聲光報警液晶屏顯示報警 圖2-1 系統(tǒng)結(jié)構(gòu)框圖AT89C52單片機控制模塊用于實時監(jiān)測外部中

7、斷的電平變化,當(dāng)紅外火焰?zhèn)鞲衅鳈z測到有火焰時,火焰?zhèn)鞲衅鲿敵龅碗娖綌?shù)字信號,單片機將數(shù)據(jù)轉(zhuǎn)換為相應(yīng)的數(shù)字顯示在液晶屏上或聲光報警;晶振起振模塊為系統(tǒng)提供基本的時鐘信號; USB下載/電源模塊為單片機的電源接口,為單片機提供電源及程序燒錄。2.2 組員及任務(wù)組員:徐杰龍、利齊帥、林輝、梁慶堂任務(wù)分配:徐杰龍:負(fù)責(zé)總體電路的原理圖完善,程序流程圖設(shè)計和編寫程序。利齊帥:負(fù)責(zé)AT89C52單片機控制模塊、電源模塊原理圖繪制,AT89C52原理圖元件。林輝:查找集成電路數(shù)據(jù)手冊、查找資料。梁慶堂:負(fù)責(zé)晶振起振模塊、1602液晶屏顯示模塊原理圖繪制第三章 電路設(shè)計及元器件選型3.1 AT89C52單片

8、機控制模塊電路原理圖設(shè)計單片機控制模塊采用AT89C51芯片作為主控芯片,所謂的單片機是將計算機的基本部件微型化并集成到一塊芯片上,具備獨特功能的微型計算機,通常片內(nèi)都含有CPU、ROM、RAM、并行I/O、串行I/O、定時器/計數(shù)器、中斷控制、系統(tǒng)時鐘及系統(tǒng)總線等。單片機全稱為單片微型計算機,又稱微控制器或嵌入式控制器,是一種可通過編程控制的處理器。如圖3-1所示,單片機的VCC引腳需要接入+5V電源電壓正極,GND引腳需要接入電源電壓的負(fù)極。圖3-1 AT89C52單片機芯片EA引腳(外部程序存儲器訪問控制端)是單片機的外部程序存儲器訪問控制端,如果它接高電平VCC,則單片機執(zhí)行片內(nèi)部程序

9、存儲器中的程序,從000H開始終止于0FFFH,并在讀取完單片機內(nèi)部程序存儲器的0FFFH后自動轉(zhuǎn)向讀取外部的程序存儲器,一般只用單片機的內(nèi)部程序存儲器,故接高電平;如果接低電平,則單片機訪問的全部是外部程序存儲器,從0000H開始終止于0000FH。AT89C51單片機共有P0、P1、P2、P3這4組I/O口,每組有8個I/O口,單片機復(fù)位時,這4組I/O口都默認(rèn)作為輸出端口使用。51單片機上電后,如果沒有人為地控制其I/O口的狀態(tài),它所有未控制的I/O口都默認(rèn)為高電平。 P0口是一個開漏型雙向I/O口,其內(nèi)部沒有上拉電阻,為高阻狀態(tài),所以不能正常地輸出高/低電平,使用該I/O口要接100的

10、上拉電阻。P0口具有除一般I/O口外的第二重功能作為低8位地址線。 P1口是一組準(zhǔn)雙向8位I/O口,每個口可獨立控制,內(nèi)帶上拉電阻,這種接口輸出沒有高阻狀態(tài),輸入也不能鎖存,故不是真正的雙向I/O口,之所以稱它為“準(zhǔn)雙向”是因為該口在作為輸入使用前,要先向該口進行寫1操作,然后單片機內(nèi)部才能正確讀出外部信號。也就是要使其有個“準(zhǔn)備過程”,故稱其為準(zhǔn)雙向口。 P2口是一組準(zhǔn)雙向8位I/O口,每個口可獨立控制,內(nèi)帶上拉電阻,與P1口相似。P2口具有除一般I/O口外的第二重功能作為高8位地址線。3.2晶振起振模塊電路與功能晶振的作用是為系統(tǒng)提供基本的時鐘信號。通常一個系統(tǒng)共用一個晶振,便于各部分保持

11、同步。如圖3-2所示,XTAL1、XTAL2為時鐘信號端,XTAL1為片內(nèi)振蕩電路的輸入端,XTAL2為片內(nèi)振蕩電路的輸出端。8051有兩種工作方式,一是片內(nèi)時鐘振蕩方式,另一種是外部時鐘方式。片內(nèi)時鐘振蕩電路需在XTAL1、XTAL2這兩個引腳外接石英晶體和振蕩電容,典型的晶振取11.0592MHz(因為可以準(zhǔn)確地得到9600波特率和19200波特率,用于有串口通訊的場合)/12MHz(產(chǎn)生精確的us級時間,方便定時操作),振蕩電容的值一般取10pF30pF的瓷片電容。圖3-2 晶振起振模塊電路原理圖3.3 1602液晶屏顯示模塊電路原理圖設(shè)計液晶顯示的原理是利用液晶的物理特性,通過電壓對其

12、顯示區(qū)域進行控制,有電就有顯示,這樣即可以顯示出圖形。液晶顯示的分類方法有很多種,通??砂雌滹@示方式分為段式、字符式、點陣式等。本設(shè)計字符式顯示。用LCD顯示一個字符時比較復(fù)雜,因為一個字符由6×8或8×8點陣組成,既要找到和顯示屏幕上某幾個位置對應(yīng)的顯示RAM區(qū)的8字節(jié),還要使每字節(jié)的不同位為“1”,其它的為“0”,為“1”的點亮,為“0”的不亮。這樣一來就組成某個字符。但由于內(nèi)帶字符發(fā)生器的控制器來說,顯示字符就比較簡單了,可以讓控制器工作在文本方式,根據(jù)在LCD上開始顯示的行列號及每行的列數(shù)找出顯示RAM對應(yīng)的地址,設(shè)立光標(biāo),在此送上該字符對應(yīng)的代碼即可。其電路原理圖

13、如圖3-3。圖3-3 1602液晶屏顯示模塊電路原理圖1602采用標(biāo)準(zhǔn)的16腳接口,其中: 第1腳:VSS為地電源 第2腳:VDD接5V正電源 第3腳:V0為液晶顯示器對比度調(diào)整端,接正電源時對比度最弱,接地電源時對比度最高,對比度過高時會產(chǎn)生“鬼影”,使用時可以通過一個10K的電位器調(diào)整對比度 第4腳:RS為寄存器選擇,高電平時選擇數(shù)據(jù)寄存器、低電平時選擇指令寄存器。第5腳:RW為讀寫信號線,高電平時進行讀操作,低電平時進行寫操作。當(dāng)RS和RW共同為低電平時可以寫入指令或者顯示地址,當(dāng)RS為低電平RW為高電平時可以讀忙信號,當(dāng)RS為高電平RW為低電平時可以寫入數(shù)據(jù)。 第6腳:E端為使能端,當(dāng)

14、E端由高電平跳變成低電平時,液晶模塊執(zhí)行命令。 第714腳:D0D7為8位雙向數(shù)據(jù)線。 第1516腳:空腳1602液晶模塊內(nèi)部的控制器共有11條控制指令,如表3-1所示:表3-1 控制命令表1602液晶模塊的讀寫操作、屏幕和光標(biāo)的操作都是通過指令編程來實現(xiàn)的。(說明:1為高電平、0為低電平) 指令1:清顯示,指令碼01H,光標(biāo)復(fù)位到地址00H位置。 指令2:光標(biāo)復(fù)位,光標(biāo)返回到地址00H。 指令3:光標(biāo)和顯示模式設(shè)置 I/D:光標(biāo)移動方向,高電平右移,低電平左移 S:屏幕上所有文字是否左移或者右移。高電平表示有效,低電平則無效。 指令4:顯示開關(guān)控制。 D:控制整體顯示的開與關(guān),高電平表示開顯

15、示,低電平表示關(guān)顯示 C:控制光標(biāo)的開與關(guān),高電平表示有光標(biāo),低電平表示無光標(biāo) B:控制光標(biāo)是否閃爍,高電平閃爍,低電平不閃爍。 指令5:光標(biāo)或顯示移位 S/C:高電平時移動顯示的文字,低電平時移動光標(biāo)。 指令6:功能設(shè)置命令 DL:高電平時為4位總線,低電平時為8位總線 N:低電平時為單行顯示,高電平時雙行顯示 F: 低電平時顯示5x7的點陣字符,高電平時顯示5x10的點陣字符。指令7:字符發(fā)生器RAM地址設(shè)置。 指令8:DDRAM地址設(shè)置。 指令9:讀忙信號和光標(biāo)地址 BF:為忙標(biāo)志位,高電平表示忙,此時模塊不能接收命令或者數(shù)據(jù),如果為低電平表示不忙。 指令10:寫數(shù)據(jù)。 指令11:讀數(shù)據(jù)

16、。3.4聲音報警模塊電路原理圖設(shè)計該設(shè)計使用的是無源蜂鳴器,如圖3-4所示。由于蜂鳴器的工作電流一般比較大,以致于單片機的I/O 口是無法直接驅(qū)動的,所以要利用放大電路來驅(qū)動,一般使用三極管來放大電流就可以了。聲報警電路由單片機的P3.4引腳進行控制,當(dāng)P3.4輸出的電平為高電平時,三極管導(dǎo)通,蜂鳴器的電流形成回路,發(fā)出聲音報警;否則,三極管截止,蜂鳴器不發(fā)出聲音。圖3-4 聲音報警電路3.5紅外火焰?zhèn)鞲衅鞴δ芗半娐坊鹧鎮(zhèn)鞲衅魇菣C器人專門用來搜尋火源的傳感器,當(dāng)然火焰?zhèn)鞲衅饕部梢杂脕頇z測光線的亮度,只是本傳感器對火焰特別靈敏?;鹧?zhèn)鞲衅骼眉t外線對對火焰非常敏感的特點,使用特制的紅外線接受管來

17、檢測火焰,然后把火焰的亮度轉(zhuǎn)化為高低變化的電平信號,輸入到中央處理器中,中央處理器根據(jù)信號的變化做出相應(yīng)的程序處理。如圖3-5所示。圖3-5 火焰?zhèn)鞲衅麟娐吩韴D用途: 各種火焰,火源探測 模塊特色: 1、 可以檢測火焰或者波長在760納米1100納米范圍內(nèi)的光源,打火機測試火焰距離為80cm,對火焰越大,測試距離越遠 2、 探測角度60度左右,對火焰光譜特別靈敏 3 、靈敏度可調(diào)(圖中藍色數(shù)字電位器調(diào)節(jié)) 4、比較器輸出,信號干凈,波形好,驅(qū)動能力強,超過15mA 5、配可調(diào)精密電位器調(diào)節(jié)靈敏度 6、工作電壓3.3V-5V 7、輸出形式 :DO數(shù)字開關(guān)量輸出(0和1)和AO模擬電壓輸出 8、

18、設(shè)有固定螺栓孔,方便安裝 9、小板PCB尺寸:3.2cm x 1.4cm 10、使用寬電壓LM393比較器 模塊使用說明: 1 、火焰?zhèn)鞲衅鲗鹧孀蠲舾校瑢ζ胀ü庖彩怯蟹磻?yīng)的,一般用做火焰報警等用途。 2、 小板輸出接口可以與單片機IO口直接相連 3、傳感器與火焰要保持一定距離,以免高溫?fù)p壞傳感器,對打火機測試火焰距離為80cm,對火焰越大,測試距離越遠 4、小板模擬量輸出方式和AD轉(zhuǎn)換處理,可以獲得更高的精度第四章 程序設(shè)計4.1輸入部分程序程序流程圖如圖4-1所示,通電時寄存器初始化、單片機I/O口初始化,液晶屏初始化完成后停留在一個設(shè)定狀態(tài),等待信號驅(qū)動。開始寄存器初始化單片機I/O口初

19、始化主函數(shù)循環(huán)檢測是否有火焰等待處理、顯示 N Y 圖4-1 輸入程序流程圖以下為系統(tǒng)初始化過程后顯示子程序。void lcd_pos(BYTE pos) /設(shè)定顯示位置lcd_wcmd(pos | 0x80);void lcd_wdat(BYTE dat) /寫入字符顯示數(shù)據(jù)到 LCDwhile(lcd_bz();LCD_RS = 1;LCD_RW = 0;LCD_EP = 0;P0 = dat;_nop_();_nop_();_nop_();_nop_();LCD_EP = 1;_nop_();_nop_();_nop_();_nop_();LCD_EP = 0;void lcd_init

20、() /LCD 初始化設(shè)定lcd_wcmd(0x38); /16*2 顯示,5*7 點陣,8 位數(shù)據(jù)delay(1);lcd_wcmd(0x0c); /顯示開,關(guān)光標(biāo)delay(1);lcd_wcmd(0x06); /移動光標(biāo)delay(1);lcd_wcmd(0x01); /清除 LCD 的顯示內(nèi)容delay(1);4.2輸出部分程序程序流程圖如圖4-2所示,程序開始運行時,定義液晶屏顯示的數(shù)組,程序進入主函數(shù),執(zhí)行顯示指令,當(dāng)有火焰時,火焰?zhèn)鞲衅鬏敵龅碗娖叫盘?,單片機根據(jù)數(shù)據(jù)信號傳送到液晶屏的相應(yīng)I/O口,顯示相應(yīng)的數(shù)組。開始初始化液晶屏,電源燈亮從火焰?zhèn)鞲衅鞑杉盘柺欠駲z測到火焰蜂鳴器

21、不響,液晶顯示“TEST.Safe”,LED燈不亮蜂鳴器報警,液晶顯示“TEST.Fire”,LED燈亮。 圖4-2 輸出程序流程圖以下為液晶屏顯示函數(shù)內(nèi)容。if(warning = 0) /有光照時傳感器輸出低電平 /delay(300); if(warning = 0) i=0; while(Fire i != '0') lcd_pos(0x43+i); lcd_wdat(Firei); i+; delay(30); for(i=0;i<3;i+) beep = 0; delay(200); beep = 1; delay(200); / if(warning = 1

22、) / delay(300); if(warning = 1) i=0; while(Safe i != '0') lcd_pos(0x43+i); lcd_wdat(Safei); i+; delay(30); beep = 1; / delay(300); break;4.3定時應(yīng)用與功能此次設(shè)計主要使用了_nop_延時來實現(xiàn)定時功能,它的作用為:對于延時很短的,要求在us級的,采用“_nop_”函數(shù),這個函數(shù)相當(dāng)匯編NOP指令,延時幾微秒。NOP指令為單周期指令,可由晶振頻率算出延時時間,對于12M晶振,延時1uS。對于延時比較長的,要求在大于10us,采用C51中的循環(huán)

23、語句來實現(xiàn)。第五章 電路設(shè)計及結(jié)果如圖5-1為本設(shè)計的總體電路原理圖,該圖是采用Altium Designer電子線路繪圖軟件完成的,圖中的各種元器件都是根據(jù)設(shè)計電路嚴(yán)格選定的,并且其參數(shù)大小跟設(shè)計電路完全一致。圖5-2為無火焰時的實物顯示,圖5-3為有火焰時的實物顯示。圖5-1 總體電路原理圖圖5-2 無火焰時的實物顯示圖5-3 有火焰時的實物顯示現(xiàn)象:當(dāng)給板子供板子的時候,蜂鳴器不響,液晶顯示“TEST.Safe”,LED燈不亮。當(dāng)出現(xiàn)火焰時蜂鳴器響進行報警,液晶顯示“TEST.Fire”,LED紅燈亮。第六章 總結(jié)本次課程設(shè)計對于我們有很大的幫助,大學(xué)已經(jīng)度過了三年,但是我們還只是停留在

24、理論的學(xué)習(xí)上。但通過本次課程設(shè)計,使我對模擬電子技術(shù)這門課程有了更深入的理解。模擬電子技術(shù)是一門實踐性較強的課程,為了學(xué)好這門課程,必須在掌握理論知識的同時,加強軟件實踐。一個人的力量是有限的,要想把課程設(shè)計做的更好,就要學(xué)會參考一定的資料,小組共同努力,讓思想有機的結(jié)合起來,得出實驗結(jié)果。 在這個過程中,我們也曾經(jīng)因為仿真失敗而糾結(jié)。但結(jié)果還是很給力的,雖然這只是一次的極簡單的課程制作,可是平心而論,也耗費了我不少的心血,這就讓我不得不佩服開發(fā)技術(shù)的前輩,才意識到老一輩對我們社會的付出,為了人們的生活更美好,他們?yōu)槲覀兩鐣冻龆嗌傩难。?知識上的收獲重要,精神上的豐收更加可喜。讓我知道了

25、學(xué)無止境的道理。我們每一個人永遠不能滿足于現(xiàn)有的成就,人生就像在爬山,一座山峰的后面還有更高的山峰在等著你。挫折是一份財富,經(jīng)歷是一份擁有。這次課程設(shè)計必將成為我人生旅途上一個非常美好的回憶! 通過這次的課程設(shè)計我們對于專業(yè)課的學(xué)習(xí)有了更加深刻的認(rèn)識,以為現(xiàn)在學(xué)的知識用不上就加以怠慢,等到想用的時候卻發(fā)現(xiàn)自己的學(xué)習(xí)原來是那么的不扎實。以后努力學(xué)好每門專業(yè)課,讓自己擁有更多的知識,才能解決更多的問題!參考文獻1 王國玉,管莉.電子線路CAD與實訓(xùn)M.北京:電子工業(yè)出版社,20112 林海汀.電子工藝技術(shù)與實踐M.北京:機械工業(yè)出版社,20113 郭天祥.新概念51單片機C語言教程:入門、提高、開

26、發(fā)、拓展全攻略M.北京:電子工業(yè)出版社,20094 黃勤.單片機原理及應(yīng)用M.北京:清華大學(xué)出版社,20105 集成電路數(shù)據(jù)手冊查詢網(wǎng):附 件完整程序#include <reg51.h>#include <intrins.h>typedef unsigned char BYTE;typedef bit BOOL;int i,j,display=0,t02s;sbit LCD_RS = P25;sbit LCD_RW = P26;sbit LCD_EP = P27;sbit warning = P32;sbit beep = P34;/顯示數(shù)組BYTE code dis1

27、 = " WELCOME TO "BYTE code dis2 = "3W.auto-ctrl.COM"BYTE code dis3 = " TEST. "BYTE code dis5 = "WWW.auto-ctrl.COM"BYTE code Fire = "Fire "BYTE code Safe = "Safe "void flash();void delay(int ms) / 延時子程序while(ms-) for(i = 0; i< 250; i+) _n

28、op_(); BOOL lcd_bz() / 測試 LCD 忙碌狀態(tài)BOOL result;LCD_RS = 0;LCD_RW = 1;LCD_EP = 1;_nop_();result = (BOOL)(P0 & 0x80);LCD_EP = 0;return result;void lcd_wcmd(BYTE cmd) / 寫入指令數(shù)據(jù)到 LCDwhile(lcd_bz();LCD_RS = 0;LCD_RW = 0;LCD_EP = 0;_nop_();P0 = cmd;_nop_();LCD_EP = 1;_nop_();LCD_EP = 0;void lcd_pos(BYTE

29、 pos) /設(shè)定顯示位置lcd_wcmd(pos | 0x80);void lcd_wdat(BYTE dat) /寫入字符顯示數(shù)據(jù)到 LCDwhile(lcd_bz();LCD_RS = 1;LCD_RW = 0;LCD_EP = 0;P0 = dat;_nop_();_nop_();LCD_EP = 1;_nop_();_nop_();LCD_EP = 0;void lcd_init() /LCD 初始化設(shè)定lcd_wcmd(0x38); /16*2 顯示,5*7 點陣,8 位數(shù)據(jù)delay(1);lcd_wcmd(0x0c); /顯示開,關(guān)光標(biāo)delay(1);lcd_wcmd(0x0

30、6); /移動光標(biāo)delay(1);lcd_wcmd(0x01); /清除 LCD 的顯示內(nèi)容delay(1);main()BYTE i;int j=0;lcd_init(); / 初始化 LCDdelay(10);lcd_wcmd(0x06); /向右移動光標(biāo)while(1) switch(display) case 0: i=0;while(dis2 i != '0')lcd_pos(0x80+i);lcd_wdat(dis2i);i+;delay(300); flash();lcd_wcmd(0x01); /清除 LCD 的顯示內(nèi)容delay(20); /控制兩屏轉(zhuǎn)換時間display = 1; lcd_wcmd(0x06); /向右移動光標(biāo)break; case 1: delay(300); i = 0; while(dis1i != '0') /顯示字符" " lcd_pos(0x8A+i); /設(shè)置顯示位置為第一行第 17 列 lcd_wdat(dis1i); i+; delay(300); i = 0; while(dis5i != '0') lcd_pos(0x4f+i); /設(shè)置顯示位置為

溫馨提示

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

評論

0/150

提交評論