基于安卓的燈光和冰箱智能控制系統(tǒng)大學(xué)論文_第1頁
基于安卓的燈光和冰箱智能控制系統(tǒng)大學(xué)論文_第2頁
基于安卓的燈光和冰箱智能控制系統(tǒng)大學(xué)論文_第3頁
基于安卓的燈光和冰箱智能控制系統(tǒng)大學(xué)論文_第4頁
基于安卓的燈光和冰箱智能控制系統(tǒng)大學(xué)論文_第5頁
已閱讀5頁,還剩43頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

緒論從計算機到互聯(lián)網(wǎng)的變革,再從互聯(lián)網(wǎng)到移動通信的變革后,世界信息產(chǎn)業(yè)革命使人們對生活的安全、舒適、便捷等方面的要求也逐漸提升。比如你早上起床時,窗簾會按設(shè)定的時間自動打開[1],房間里會響起你喜歡的優(yōu)美音樂等;當(dāng)你洗臉時,你的智能設(shè)備(如手機)會告訴你牙膏、洗面奶的用量,并提醒你更換牙刷的日期;當(dāng)你做飯時,可以提醒你冰箱里剩余的食物量和快過期的食物等;當(dāng)你出門時,智能設(shè)備會根據(jù)天氣給你搭配衣服和鞋子,也會根據(jù)交通情況為你制定出行路線等,當(dāng)你……。由于人們對家庭住宅觀念發(fā)生了變化,“物聯(lián)網(wǎng)”這一新興產(chǎn)業(yè)被認(rèn)為是下一個億萬級產(chǎn)業(yè),而智能家居燈光及冰箱控制作為其研究的一部分。隨著電子技術(shù)的發(fā)展,聲控及光控?zé)粢褟V泛應(yīng)用到我們的日常生活中。但是這些照明系統(tǒng)不僅操作起來比較復(fù)雜,而且功耗高。對于冰箱的控制,人們的需求就比較簡單了,就是控制溫度,以前對冰箱溫度的控制是人們必須走到冰箱前通過扭動冰箱內(nèi)溫度控制的旋鈕,才能設(shè)置冰箱的溫度。之前有過這樣的幻想,不用走到電器的開關(guān)前就可以控制家里的電器,用遙控器控制家里的電器,這個已經(jīng)實現(xiàn)了?,F(xiàn)在我們又有了另一個愿望,當(dāng)我們很晚回家時能夠提前將家里的燈打開來消除自己的恐懼感,會想燈可以根據(jù)外界條件來調(diào)節(jié)亮度以及定時,也會想可以隨時調(diào)節(jié)家里冰箱的溫度。傳統(tǒng)的照明控制和冰箱的控制已經(jīng)不能滿足人們的需求。如今Android、計算機技術(shù)、通信技術(shù)和微電子技術(shù)等高新科技正高速發(fā)展,對于利用手機結(jié)合無線通信技術(shù)來控制家里的部分設(shè)備的需求呈不斷增長中?;诖颂岢鲆环N以安卓手機為平臺,藍牙無線技術(shù)為通信方式的燈光與冰箱的智能控制系統(tǒng)設(shè)計方案。1.1課題背景及研究意義在過去的幾千年,人們一直使用著簡單的照明方式,直至愛迪生發(fā)明燈泡,才進入了電燈照明時代,這是歷史上一大突破,然而人類并不滿足于此。隨著智能家居的發(fā)展,人們的家庭生活有了很大的變化,過去的電燈只能發(fā)出固定的亮度,如果想要關(guān)燈,還必須走到開關(guān)處手動關(guān)掉,有的開關(guān)是安裝在墻上,有的是用繩子拴著,這種開關(guān)模式對于老人很不方便。設(shè)計該系統(tǒng),給行動不便的人帶來了便利?;诎沧康臒艄馀c冰箱的智能控制系統(tǒng),可以實現(xiàn)對燈光亮度的不同要求,并且可以設(shè)置定時功能[2],也可以實現(xiàn)對冰箱溫度的控制,無論在家里的哪個地方都可以輕松控制電燈、冰箱,適用度很高。鑒于目前通信技術(shù)的發(fā)展,實現(xiàn)智能化的家居環(huán)境已經(jīng)不是一件困難的事情,但是在實現(xiàn)過程中,依然存在著不足之處,理論與實踐不能完美結(jié)合,不同的人群對智能化的需求也不同,比如在過去的產(chǎn)品中較多采用的是成本較高的GSM技術(shù),但在當(dāng)下社會很難普及,對于人們來說有點浪費資源,因此,有必要在這基礎(chǔ)上進一步改善,完善燈光與冰箱智能控制系統(tǒng)的設(shè)計與實現(xiàn)。于是,該系統(tǒng)將從理論方面進一步加深,使用目前比較先進的技術(shù),用現(xiàn)在應(yīng)用廣泛的手機安卓系統(tǒng)來操作。1.2課題的設(shè)計目的基于安卓的燈光與冰箱智能控制系統(tǒng),該系統(tǒng)的主要目的是為了行動不便和身體有缺陷的人,這些人不能很靈活的通過家里設(shè)備的開關(guān)來控制某些電器,如電燈和冰箱,燈的用處是最多的,對特殊人群造成了很大的困擾,所以有必要設(shè)計此系統(tǒng),為人們帶來便利,基于安卓的燈光與冰箱的智能控制系統(tǒng),主要是結(jié)合不同平臺的電器經(jīng)由繼電器來做開關(guān)切換,以達到方便性且功能化的設(shè)計。而Android為目前用戶最常使用的隨身裝置平臺,因此選擇使用Android做為開發(fā)基底,通過與APP應(yīng)用程序的整合,用手機控制家里部分設(shè)備,進而代替以前用的遙控器,更加方便智能的控制家里設(shè)備。設(shè)計該系統(tǒng)不僅為了方便人們,也是對自己所學(xué)內(nèi)容的提高:1.增強單片機方面知識,提高綜合及實際運用所學(xué)知識解決問題的能力。2.培養(yǎng)查閱有關(guān)手冊、圖表及文獻資料的能力,提高編程及動手能力。3.熟悉有關(guān)單片機的開發(fā),學(xué)習(xí)軟硬件相結(jié)合的設(shè)計方法。1.3課題的主要工作該系統(tǒng)采用STC89C52單片機為主控芯片,結(jié)合HC-06藍牙模塊,通過軟件編程結(jié)合硬件來完成電燈與冰箱的智能控制系統(tǒng)的設(shè)計與實現(xiàn)。此系統(tǒng)是通過藍牙控制家里部分設(shè)備,主要包括:單片機最小系統(tǒng)、HC-06藍牙模塊、液晶LCD1602顯示屏、電源系統(tǒng)電路、繼電器開關(guān)電路。系統(tǒng)所使用的主要元器件包括:STC89C52單片機、HC-06藍牙模塊、LCD1602液晶顯示屏。該系統(tǒng)是基于安卓的智能燈光與冰箱的控制系統(tǒng),利用下載在安卓手機藍牙串口助手APP實現(xiàn)與HC-06藍牙模塊通信是本次設(shè)計的核心難點;此設(shè)計的重點是控制HC-06藍牙模塊與單片機互通信息、LED燈的正常顯示及冰箱溫度的控制。課題要求如下:a.通過手機藍牙串口助手軟件實現(xiàn)對三個LED燈的開關(guān)進行控制。b.通過手機藍牙串口助手軟件實現(xiàn)對三個LED燈的亮度進行調(diào)節(jié)。c.通過手機藍牙串口助手軟件實現(xiàn)對三個LED燈進行定時設(shè)置。d.通過手機藍牙串口助手軟件設(shè)置冰箱的溫度。e.在LCD1602液晶顯示屏上顯示此時LED燈的光強、設(shè)定燈滅的時間和此時冰箱的溫度。2需求分析2.1可行性分析目前已經(jīng)有很多地方都使用了智能家居,使用安卓設(shè)備(手機)智能化的控制電燈和冰箱,不僅方便而且很節(jié)約時間,可以更好的為老人和身體有缺陷的人服務(wù)。在現(xiàn)代高速發(fā)展的社會中,人們更看中智能化,認(rèn)為這樣不僅可以緊跟時代的步伐,還可以節(jié)省人力,最重要的是可以更加便捷的控制家里的某些設(shè)備?;诎沧康碾姛襞c冰箱智能控制系統(tǒng),采用的是STC89C52單片機,HC-06藍牙模塊,LCD1602液晶顯示屏,干電池供電,有了這些硬件支持就可以遠程控制家里的某些設(shè)備,改善了以前必須要走到開關(guān)前才能控制家里設(shè)備的這種模式,實用性很高,所以本次設(shè)計的基于安卓的電燈與冰箱的智能控制系統(tǒng)具有可行性與實際價值的。該系統(tǒng)的可行性可以從以下幾個方面進行分析:技術(shù)可行性:目前藍牙技術(shù)發(fā)展比較成功,已經(jīng)應(yīng)用于很多產(chǎn)業(yè)。物聯(lián)網(wǎng)產(chǎn)業(yè)已經(jīng)逐步代替?zhèn)鹘y(tǒng)產(chǎn)業(yè)的工作方式。經(jīng)濟可行性:目前很多電燈與冰箱的控制都采用了物聯(lián)網(wǎng)技術(shù),使用計算機智能化的管理家里的設(shè)備,節(jié)省了大量的人力、物力,有很好的經(jīng)濟效益。操作可行性:該系統(tǒng)只需要手機就可以控制家里設(shè)備,通過手機藍牙串口助手上的按鈕就可以操作,操作簡單、易學(xué),便于普及,適應(yīng)各類人群使用。2.2功能需求根據(jù)系統(tǒng)功能需要分析軟件需要,基于安卓的電燈與冰箱智能控制系統(tǒng),可以分為如下幾個模塊:藍牙模塊,電燈控制模塊,冰箱溫度控制模塊,顯示模塊,電源模塊。藍牙模塊:藍牙模塊作為整個系統(tǒng)的通信模塊,藍牙串口助手必須成功連接藍牙,與設(shè)備的藍牙模塊成功配對后,才能與設(shè)備之間進行數(shù)據(jù)傳輸,該藍牙模塊可以進行通信的范圍為10米,在10米范圍內(nèi)都可以進行數(shù)據(jù)的傳輸。電燈控制模塊:電燈控制模塊主要是對電燈進行遠程操作,通過手機APP就可以控制家里的電燈設(shè)備,對電燈的具體操作有:控制電燈的開關(guān)、控制電燈的亮度、設(shè)置電燈照明的時長等。該系統(tǒng)改變了以前電燈的開關(guān)模式,如開關(guān)鑲嵌在墻上、用繩子控制電燈的亮滅,這種已經(jīng)很古老了,隨著社會的不斷發(fā)展,慢慢又出現(xiàn)了聲控電燈以及感應(yīng)電燈,但是這種只能控制電燈的開關(guān),該系統(tǒng)使對電燈的操作更加方便、而且更加智能,可以通過手機APP控制電燈的開關(guān),不用走到開關(guān)前就可以控制電燈,還可以根據(jù)自己的需要設(shè)置電燈的亮度以及定時,還可以控制家里其他地方的電燈設(shè)備。冰箱溫度控制模塊:冰箱控制模塊主要是對冰箱進行溫度控制,在普通冰箱中,分為兩部分,冷藏和冷凍,要想食用冷凍室里的食物,必須先拿出來解凍,解凍會消耗很多時間,用手機控制冰箱就可以很方便的控制冰箱里食物的食用狀態(tài)。如可以控制鮮肉的溫度,為了保證肉的鮮味可以將買回來的肉進行冷凍,在食用的前一個小時將冰箱的溫度適當(dāng)調(diào)高一點,進行解凍,這樣既可以食用到新鮮的肉,也可以節(jié)約人們的時間。顯示模塊:顯示模塊是把藍牙串口助手上設(shè)置的電燈的開關(guān)狀態(tài)、電燈的亮度、為電燈設(shè)置的照明時長、冰箱的開關(guān)狀態(tài)、冰箱的當(dāng)前溫度等信息顯示在設(shè)備上,便于人們更直觀的觀測數(shù)據(jù)。電源模塊:該模塊是對整個系統(tǒng)進行供電,采用的是干電池供電,便于攜帶,相對來說比較方便。2.3可靠性和可用性需求可靠性:基于安卓的電燈與冰箱智能控制系統(tǒng)的硬件經(jīng)過嚴(yán)謹(jǐn)?shù)臏y試、比較篩選和制作,質(zhì)量和性能較好;該系統(tǒng)能實現(xiàn)對電燈的開關(guān)、亮度以及定時操作,對冰箱進行溫度控制操作,該系統(tǒng)運用的是藍牙控制技術(shù),運用該技術(shù)后能成功運行。正確性:對于使用該系統(tǒng)的用戶,藍牙串口助手能敏捷的控制電燈與冰箱,在操作中不會出現(xiàn)操作延遲這種現(xiàn)象。易使用性:該系統(tǒng)操作簡單,只需要在一部安卓系統(tǒng)的手機上安裝手機藍牙串口助手,通過藍牙串口助手上的相關(guān)按鈕,就可以對電燈和冰箱進行控制??捎眯裕涸撓到y(tǒng)能為用戶提供可靠的服務(wù),使人們在需要時能更加方便快捷的控制家里的電燈以及冰箱,實用性比較高。3總體分析3.1系統(tǒng)設(shè)計原理該系統(tǒng)將Android智能手機與STC89C52單片機結(jié)合,做到以前要用多支遙控器才能做到的工作,可以通過APP應(yīng)用程序與藍牙模塊以及STC89C52單片機結(jié)合,達到控制電器的目的,在該系統(tǒng)中利用手機APP應(yīng)用程序來整合控制指令,再由藍牙模塊傳輸控制指令,最后由STC89C52接收控制指令,控制繼電器工作。該系統(tǒng)包括手機藍牙串口助手軟件、電源模塊、單片機控制模塊、LCD1602液晶顯示模塊、HC-06藍牙通信模塊五大部分。首先對智能燈光與冰箱的智能控制系統(tǒng)進行了需求分析,設(shè)計了一款安裝在安卓手機上的藍牙串口助手軟件,具體化實現(xiàn)的功能是對燈的開關(guān)、調(diào)光以及定時的控制,對冰箱進行溫度的設(shè)置。單片機控制模塊以單片機STC89C52為控制核心,通過HC-06藍牙通信模塊與上位機通信,處理上位機發(fā)送的命令。最后對整個系統(tǒng)進行了測試,運用一部Android系統(tǒng)手機通過軟件與HC-06藍牙模塊通信控制LED燈的開關(guān)、調(diào)光以及定時,控制冰箱的開關(guān)以及設(shè)置冰箱溫度,將燈光亮度、設(shè)置的定時時間、設(shè)置的冰箱溫度顯示在LCD1602液晶屏上,從而實現(xiàn)了對家庭部分電器的智能化控制。3.2方案選擇該系統(tǒng)分為信號部分、控制部分。每個部分都有不同設(shè)計方案,下面探討不同的設(shè)計方案,以便找出最好的設(shè)計方案。3.2.1系統(tǒng)設(shè)計方案系統(tǒng)設(shè)計方案比較與可行性論證:通過查閱相關(guān)資料,有三種方案可供選擇,通過對三種方案的論證比較以及可行性分析,最終為系統(tǒng)選擇一個可行性高的最優(yōu)方案來進行設(shè)計。方案一:采用NRF24L01無線射頻方式進行遙控控制,運用此方案進行設(shè)計的系統(tǒng)框圖如圖1所示。圖1方案一系統(tǒng)框圖此方案設(shè)計成本低廉,開發(fā)難度低,便于推廣和應(yīng)用;發(fā)射終端同樣需要單片機進行控制是此設(shè)計方案的不足之處,遠程控制也極其操作不便,必須無時無刻將控制設(shè)備攜帶,同時因為無密碼,易被同頻段的其他遙控設(shè)備所干擾。方案二:采用GSM移動通信網(wǎng)絡(luò)的方式進行遠程控制,系統(tǒng)通過手機遠程發(fā)送短信的方式實現(xiàn)家用電器的遠程開啟和關(guān)閉,運用此方案進行設(shè)計的硬件框圖如圖2所示。圖2方案二系統(tǒng)框圖設(shè)計方案二具有操作靈活,可遠程控制,此方案最大的優(yōu)點就是控制不受距離影響;開發(fā)難度大,設(shè)計成本較高,手機短信控制有額外費用等不足之處,因此在普通的住宅場合很難推廣起來。方案三:采用手機藍牙終端控制的方式,實現(xiàn)遠程控制燈和冰箱的開關(guān)和其他功能,運用此方案進行設(shè)計的硬件框圖如圖3所示。圖3方案三系統(tǒng)框圖此方案不僅控制方便,而且遠程對電燈和冰箱操作控制不需要額外攜帶控制設(shè)備,同時采用藍牙連接在操作上有著極強的安全性和穩(wěn)定性,同時也不需要繳納額外的短信費用,節(jié)約了成本。通過對以上三種方案的比較、分析論證,在當(dāng)今人們追求生活便利快捷的大環(huán)境下,方案一雖然成本相對低廉,但是由于安全性和操作的便利性太差,決定了以此方案為基礎(chǔ)的設(shè)計根本不能在市場上立足,因而在通過對三種方案的優(yōu)缺點進行對比分析后,首先排除了方案一。方案二和方案三是目前智能電燈與冰箱無線控制系統(tǒng)最好的兩種方案,兩種方案各有所長,方案三和方案二相比具有開發(fā)難度低,開發(fā)周期短,在市場上推廣較為容易。方案二由于需要借助于移動通信網(wǎng)絡(luò)進行遠程控制,因而會收取一定的通信費用,增加了成本,一旦手機停機,將會影響控制。通過以上三種方案的比較,因此該系統(tǒng)最終選擇方案三。3.2.2電源模塊設(shè)計方案采用直流電源的同時用LDO電源管理芯片對系統(tǒng)進行穩(wěn)壓,由于系統(tǒng)單片機需要5V的直流電壓、HC-06藍牙模塊需要3.3V直流電源供電,因此系統(tǒng)中單片機和藍牙模塊的電壓需求不能通過單一的電源來供電,因此需要增加5V和3.3V的電壓管理芯片來管理電源電路,采用直流9V供電,5V電壓輸出采用LM7805穩(wěn)壓芯片穩(wěn)壓后輸出給單片機及板上的5V電壓系統(tǒng)供電,3.3V的電壓采用RT9193-3.3V穩(wěn)壓輸出給系統(tǒng)的HC-06藍牙模塊供電。3.2.3顯示模塊設(shè)計方案方案一:12864液晶顯示。12864液晶顯示屏,即可以顯示數(shù)字又可以顯示漢字,但對于該系統(tǒng)而言,需要顯示的內(nèi)容比較少,且不涉及必須用文字表示的信息,如果使用12864液晶顯示的話,成本會變高,對資源的利用率較低。方案二:LCD1602液晶顯示。LCD1602液晶顯示屏,雖只可以顯示數(shù)字字符,卻也能清楚表達一定的意思,在該系統(tǒng)中,所有需要顯示的內(nèi)容都可以使用數(shù)符表示,且LCD1602液晶顯示屏較12864液晶顯示屏便宜很多,可充分利用。方案選擇:采用方案二,該方案電路簡單,性能穩(wěn)定,可以清楚顯示當(dāng)時的控制情況。3.2.4通信模塊設(shè)計方案方案一:紅外傳輸模塊。利用紅外線來發(fā)送和接收信息,這樣的話,需要用戶隨身攜帶紅外遙控器,不太方便,容易受到環(huán)境的影響。相對成本也高,不利于普及。方案二:HC-06藍牙模塊?,F(xiàn)在,人們都有手機,且手機的功能也很完善,在手機上安裝一個藍牙串口助手軟件,就可以通過手機發(fā)送信號,經(jīng)過HC-06藍牙模塊接收傳到單片機處理后,控制LED燈以及冰箱,操作簡單、方便。方案選擇:采用方案二,該性能穩(wěn)定,可以保證穩(wěn)定通信。3.3系統(tǒng)組成該系統(tǒng)由STC89C52單片機、電源模塊、LCD1602液晶顯示屏、HC-06藍牙模塊、一部安卓系統(tǒng)手機構(gòu)成和若干基本元器件構(gòu)成。系統(tǒng)組成框圖如圖4所示。圖4系統(tǒng)組成框圖4系統(tǒng)硬件設(shè)計4.1控制電路模塊4.1.1STC89C52單片機結(jié)構(gòu)和原理 STC89C52單片機引腳圖如圖5所示。圖5STC89C52單片機引腳圖在通信控制電路模塊中最重要的器件就是單片機,它是該系統(tǒng)的核心部分,也是智能燈光與冰箱控制系統(tǒng)穩(wěn)定運行的前提,該系統(tǒng)中用的是STC89C52單片機。STC89C52單片機是CMOS8位微控制器,功耗低的同時又有著較高的性能,擁有8K在系統(tǒng)可編程FLASH存儲器??蓸?gòu)成單片機最小應(yīng)用系統(tǒng),縮小系統(tǒng)體積,增加系統(tǒng)的可靠性,降低系統(tǒng)的成本。當(dāng)程序小于4K時,四個I/O口全部提供給用戶。STC89C52使用的是經(jīng)典MCS-51內(nèi)核,在指令系統(tǒng)和引腳上完全與51單片機兼容,完全代替?zhèn)鹘y(tǒng)51單片機的同時,還使系統(tǒng)的功能多樣化,打破了許多傳統(tǒng)51單片機的局限性。STC89C52具有以下標(biāo)準(zhǔn)功能:8K字節(jié)FLASH,512字節(jié)RAM,32位I/O口線,看門狗定時器,3個16位定時器/計數(shù)器,內(nèi)置4KBEEPROM,MAX810復(fù)位電路,4個外部中斷,一個7向量4級中斷結(jié)構(gòu)(兼容傳統(tǒng)51的5向量2級中斷結(jié)構(gòu)),全雙工串行口。另STC89C52可降至0HZ靜態(tài)邏輯操作,支持2種軟件,可選擇節(jié)電模式。空閑模式下,CPU停止工作,允許RAM、定時器/計數(shù)器、串口、中斷繼續(xù)工作。在掉電保護模式下,RAM內(nèi)容被保存,振蕩器被凍結(jié),單片機一切工作停止,直到下一個中斷或硬件復(fù)位為止[3]。最高運作頻率35MHz,6T/12T可選。STC89C52引腳介紹:(1)主電源引腳(2根)

VCC(Pin40):電源輸入,接入+5V電源。

GND(Pin20):接入地線。(2)接晶振引腳(2根)

XTAL1(Pin19):片內(nèi)振蕩電路的輸入端。XTAL2(Pin18):片內(nèi)振蕩電路的輸出端。

(3)控制引腳(4根)

RST/VPP(Pin9):復(fù)位引腳,引腳上出現(xiàn)2個機器周期的高電平將使單片機復(fù)位。

ALE/PROG(Pin30):地址鎖存允許信號。

PSEN(Pin29):外部存儲器讀選通信號。EA/VPP(Pin31):程序存儲器的內(nèi)外部選通,接低電平從外部程序存儲器讀指令,如果接高電平則從內(nèi)部程序存儲器讀指令。

(4)編程輸入/輸出引腳(32根)STC89C52單片機有4組8位的可編程I/O口,分別位P0、P1、P2、P3口,每個口有8位(8根引腳),共32根。

4.1.2時鐘電路STC89C52單片機內(nèi)部設(shè)有一個反向放大器所構(gòu)成的振蕩器,如果該模塊要正常工作就必須有一個外部的時鐘源,而這個時鐘源一般由外部晶振電路來提供,在電路中晶振和電容都需要靠近振蕩器的反相放大器的輸出端和引腳的驅(qū)動端[4]。振蕩電路如圖6所示。圖6振蕩電路4.1.3復(fù)位電路復(fù)位電路,換言之復(fù)位就是通過某種方式,使單片機內(nèi)各寄存器的值變?yōu)槌跏紶顟B(tài)的操作。STC89C52單片機的復(fù)位能夠通過外部復(fù)位電路來實現(xiàn),在時鐘電路工作以后,在RST端持續(xù)給出的24個振蕩周期的高電平就可完成復(fù)位操作[5]。復(fù)位電路如圖7所示。圖7復(fù)位電路4.2HC-06藍牙模塊4.2.1HC-06藍牙模塊工作原理藍牙模塊,又稱為藍牙內(nèi)嵌模塊、藍牙模組,從手機發(fā)送的信息首先傳送到藍牙模塊,藍牙模塊接通電源后,指示燈就會亮起來,接受到消息后會傳送到單片機處理。然后單片機處理指令,操作三個LED燈的照明以及冰箱的溫度情況。在藍牙串口通信助手模塊中的模塊分布,分別是燈的亮度的增強和減弱、設(shè)置定時和啟動。冰箱的溫度設(shè)置和啟動。這些功能均可在現(xiàn)實生活中體現(xiàn)出來,如看電視時不需要太強的光就可把燈的亮度調(diào)暗一點,這個功能就比普通的照明燈方便很多,再來討論一下定時和開關(guān)燈的功能,如嬰兒房,小孩怕黑,可以在他剛睡的時候設(shè)置燈的照明時間,當(dāng)?shù)竭_設(shè)定的時間后,燈就自動關(guān)閉,比較方便也比較人性化。而冰箱的智能化控制體現(xiàn)在不用走到冰箱跟前,就可以設(shè)置冰箱的溫度,可以減少人的工作量,這也是目前智能家居受歡迎的一大原因。藍牙模塊的具體操作步驟如下:(1)首先需要給設(shè)備的藍牙上電給HC-06上電之后,HC-06的指示燈會不停地閃爍,這個時候就標(biāo)志著準(zhǔn)備與設(shè)備進行連接。(2)手機藍牙串口助手與設(shè)備的藍牙進行配對一般HC-06模塊的默認(rèn)名稱就是HC-06,默認(rèn)配對密碼是1234(3)在使用藍牙模塊之前需要進行波特率的設(shè)置找到有線串口線對應(yīng)的端口,將波特率設(shè)置為與HC-06波特率一致(默認(rèn)為9600),8位數(shù)據(jù)位,1位結(jié)束位,無奇偶校驗,然后打開串口(4)將設(shè)備與手機藍牙串口助手進行連接這時,可以在手機藍牙串口助手中選擇附近已開啟藍牙的設(shè)備,根據(jù)設(shè)備的名稱進行連接。4.2.2HC-06藍牙模塊工作參數(shù)(1)輸入電壓:3.6V--6V,禁止超過7V。(2)引出4個腳:VCC/GND/RXD/TXD。(3)該模塊帶有狀態(tài)指示燈,藍牙未配對成功時,LED一直閃爍;配對成功后,LED常亮。(4)板載3.3V穩(wěn)壓芯片,輸入電壓直流3.6V-6V;未配對時,電流不超過40mA(因LED燈閃爍,電流處于變化狀態(tài));配對成功后,電流大約4mA。(5)接口電平3.3V,可以直接連接各種單片,5V單片機也可以直接連接。直接連接單片機串口,不能經(jīng)過MAX232芯片。(6)一般情況在空曠地帶有效傳輸距離為10米,正常空間下為8米,超過10米也有可能成功,但是不保證連接質(zhì)量。(7)該模塊為從機,可以和大多數(shù)帶藍牙功能的電腦和手機等智能終端完成智能配對。(8)帶透明熱縮管保護[6]。4.2.3HC-06藍牙模塊連接方式該系統(tǒng)中的HC-06藍牙模塊由四部分組成,具體各個部分的功能介紹如下:①VCC:接電源正極。②GND:接電源負(fù)極。③RXD:接收端,用于接收從其它設(shè)備發(fā)來的數(shù)據(jù);正常情況接其它設(shè)備的發(fā)送端TXD(單片機P30口)。④TXD:發(fā)送端,用于將數(shù)據(jù)發(fā)送給其它設(shè)備;正常情況接其它設(shè)備的接收端RXD(單片機P31口)。與單片機連接圖如圖8所示。圖8藍牙接口圖4.3LCD1602液晶顯示模塊4.3.1LCD1602液晶管腳管腳介紹:管腳1:GND為電源地。管腳2:VCC接5V電源正極。管腳3:V0為液晶顯示器對比度調(diào)整端,接正電源時對比度最弱,接地電源時對比度最高(對比度過高時會產(chǎn)生“鬼影”,使用時可以通過一個10K的電位器調(diào)整對比度)。管腳4:RS為寄存器選擇,高電平1時選擇數(shù)據(jù)寄存器、低電平0時選擇指令寄存器。管腳5:RW為讀寫信號線,高電平(1)時進行讀操作,低電平(0)時進行寫操作。管腳6:E(或EN)端為使能(enable)端,高電平(1)時讀取信息,負(fù)跳變時執(zhí)行指令。管腳7~14:D0~D7為8位雙向數(shù)據(jù)端。管腳15~16:空腳或背燈電源。15腳背光正極,16腳背光負(fù)極。4.3.2LCD1602液晶工作原理LCD1602液晶顯示屏顯示的內(nèi)容是兩行字符液晶模塊(顯示字符和數(shù)字),每行16個。它是點陣型液晶模塊,特意用來顯示字母、數(shù)字、符號等。它由些許5X7或者5X11等點陣字符位組成,每個點陣字符位都能顯示一個字符,每位之間有一個點距的距離,每行之間也有行間隔,起到了字符間距和行間距的作用。LCD1602液晶顯示屏是提供字母、數(shù)字、符號等顯示的點陣式LCD,現(xiàn)在常用的模塊為16×1,16×2,20×2和40×2行。LCD1602液晶顯示屏能夠進行2行16個字符的顯示,有D0-D7,8位數(shù)據(jù)總線及三個控制端口RS,R/W,EN,工作電壓為5V,對比度和背光調(diào)節(jié)兩個功能字符[13]。它還由很多個點陣字符位組成,例如5X7或5X11等,每個點陣字符位進行一個字符的顯示。每位之間有一個點距的間隔起到了字符間距的作用,每行之間也有間隔起到了行間距的作用,所以不能進行圖形的顯示??梢詫︼@式屏的亮暗程度進行調(diào)節(jié),用戶可以清楚的看到上面的16個字符。4.3.3LCD1602連接方式LCD1602液晶顯示屏通過排針和排阻與單片機相連,上電后,從單片機發(fā)出的控制指令傳到顯示器,讓LCD1602液晶顯示屏顯示當(dāng)前電燈的信息狀態(tài)。用STC89C52的P0口作為數(shù)據(jù)線,用P2.7、P2.6、P2.5分別作為LCD1602液晶顯示屏的E、R/W、RS。其中E是下降沿觸發(fā)的片選信號,R/W是讀寫信號,RS是寄存器選擇信號。顯示電路圖如圖9所示。圖9顯示電路4.4電源模塊該系統(tǒng)電源模塊電路主要包括5V穩(wěn)壓輸出電路,5V轉(zhuǎn)3.3V的穩(wěn)壓電路,電源濾波電路和電源輸出指示電路。電源模塊中9V轉(zhuǎn)直流5V電壓部分電路圖如圖10所示。圖10電源模塊電路圖10為該系統(tǒng)5V輸出電壓管理電路,其中J1為DC005電源輸入接口,SW是用于控制整個系統(tǒng)的電源的開啟與關(guān)閉的系統(tǒng)開關(guān),C0為電解電容,取值范圍為220uF到680uF,此電解電容用于濾除電源線上存在的高頻干擾,穩(wěn)定輸出直流5V電壓,輸出穩(wěn)定度在5V正負(fù)0.05mv的波動內(nèi)變化,電容C1和C2分別用于濾除輸出電壓上存下的低頻干擾和高頻干擾,LED為電源指示燈,當(dāng)系統(tǒng)電源輸出正常時,LED燈變亮,電阻R1為1K阻值的限流電阻,保證LED在的工作電流范圍下工作,防止指示燈因電流過高造成損壞。4.5燈光控制模塊此部分使用單片機定時器[7]0對LED燈進行調(diào)光,首先對定時器0進行初始化,將定時器0設(shè)置為工作模式1,設(shè)置定時器0的初始值(TH0、TL0賦值),啟動定時器工作,此時定時器0產(chǎn)生了周期為T的脈沖。再使用占空比控制變量cycle控制占空比,改變cycle就改變了高低電平的時間從而改變LED燈的亮度,當(dāng)占空比為51%-100%時為強光,當(dāng)占空比為2%-50%時為閱讀,其它為弱光。該系統(tǒng)共有三個LED燈,它們的亮滅情況分為4種,只有LED1亮、只有LED2亮、只有LED3亮、全亮、全滅。4.6冰箱溫度控制模塊此部分使用藍牙串口助手將安卓手機上設(shè)置的溫度傳輸?shù)絾纹瑱C的LCD1602液晶顯示屏上,數(shù)據(jù)的傳輸方式是通過藍牙,只有手機藍牙串口助手與設(shè)備之間保證正常連接,就可以將手機藍牙串口助手上設(shè)置的冰箱溫度傳到設(shè)備上。通過手機藍牙串口助手軟件可以控制冰箱的溫度以及開關(guān),可設(shè)置冰箱的溫度范圍為:最高溫度為5度,最低溫度為零下10度。將設(shè)置的冰箱溫度最終在LCD1602液晶顯示屏上顯示。5系統(tǒng)軟件設(shè)計5.1系統(tǒng)功能結(jié)構(gòu)該燈光與冰箱的智能控制系統(tǒng)的設(shè)計以STC89C52單片機為核心控制芯片[8],采用干電池供電,3個LED燈模擬不同場景,主板上裝有LCD1602液晶顯示屏,作為系統(tǒng)的顯示部分(顯示冰箱溫度及燈的強度、定時),方便隨時觀測數(shù)據(jù)情況。HC-06藍牙模塊通過排針與單片機相連,實現(xiàn)信號的采集與傳輸。此外,一部安卓系統(tǒng)的手機通過內(nèi)部藍牙串口助手軟件與HC-06藍牙模塊通信,可利用手機內(nèi)部藍牙串口助手軟件控制3個LED燈模擬不同的功能,也可以用手機內(nèi)部藍牙串口助手軟件控制冰箱的溫度,并在LCD1602液晶屏上顯示,進而實現(xiàn)燈光與冰箱控制系統(tǒng)的智能化。該系統(tǒng)主要分為兩個部分:燈光和冰箱的控制?;诎沧康碾姛襞c冰箱控制系統(tǒng)的實現(xiàn)主要通過藍牙串口助手,對燈光的控制包括:燈光的亮度調(diào)節(jié),定時功能以及顯示功能(顯示光強及定時)。對冰箱的控制包括設(shè)置冰箱的溫度以及將設(shè)置的溫度顯示出來,可以實現(xiàn)實時觀察溫度。系統(tǒng)結(jié)構(gòu)如圖11所示。圖11系統(tǒng)結(jié)構(gòu)圖5.2主程序設(shè)計根據(jù)設(shè)計要求,首先,需要對LCD1602液晶初始化,然后對定時器0、定時器1、定時器2進行初始化,接收數(shù)據(jù),原地等待數(shù)據(jù)是否接收完成,如果接收完成,接收標(biāo)志位RI清零,如果沒有接收完成,就返回到接收數(shù)據(jù),重新執(zhí)行程序。完成后,單片機開始處理數(shù)據(jù),控制LED燈亮滅,調(diào)節(jié)LED燈亮度,設(shè)置定時開關(guān),冰箱溫度控制,LCD1602液晶顯示屏顯示定時界面、設(shè)置定時時間、設(shè)置冰箱溫度等,最后啟動定時器,返回到控制LED燈亮滅的功能,重新執(zhí)行程序,來完成預(yù)先設(shè)置好的所有功能。系統(tǒng)主程序主要包括系統(tǒng)的初始化、藍牙串口通信[9]、開關(guān)狀態(tài)的顯示以及信號的輸出控制等,系統(tǒng)程序流程圖如圖12所示。圖12系統(tǒng)流程圖主程序函數(shù):#include"reg52.h"http://頭文件#include"LCD1602.H" #defineuintunsignedint//定義無符號整型數(shù)據(jù)類型#defineucharunsignedchar //定義字符型數(shù)據(jù)類型uchardataTemp[16]="W:00CD1:000"; //定義第一盞電燈的初始化值uchardataTest[16]="D2:000D3:000";//定義第二、三盞電燈的初始化值uchartmp;//定義溫度局部變量ucharwendu;//定義溫度全局變量ucharpwm1,pwm2,pwm3;uchardingshi1,dingshi2,dingshi3;//定義三盞燈的定時變量bitds1,ds2,ds3;//定義顯示三盞燈的表示變量inttt;bitkg1,kg2,kg3;ucharcc1,cc2,cc3;ucharzz1,zz2,zz3;//定義單片機工作引腳sbitled1=P1^0;sbitled2=P1^1;sbitled3=P1^2;ucharjieshou;//定義接收數(shù)據(jù)類型//LCD1602顯示函數(shù)voiddisplay(void){ if(kgkt==0) {//定義數(shù)組并賦初值 Temp[1]=''; Temp[2]=''; Temp[3]=''; Temp[4]=''; Temp[5]=''; Temp[6]=''; } else {//冰箱溫度轉(zhuǎn)換函數(shù) if(tmp<10&&tmp>=0) {//冰箱的最低溫度為零下10度,設(shè)置溫度減函數(shù) wendu=10-tmp; Temp[3]='-'; }//處理溫度增加函數(shù) elseif(tmp<=30&&tmp>=10) { wendu=tmp-10; Temp[3]=''; }//定義數(shù)組并為其賦初值 Temp[1]='W'; Temp[2]=':'; Temp[4]=wendu/10+'0'; Temp[5]=wendu%10+'0'; Temp[6]='C'; }//為定義的數(shù)組賦新值 Temp[11]=pwm1+'0'; Temp[13]=dingshi1/10+'0'; Temp[14]=dingshi1%10+'0'; Test[3]=pwm2+'0'; Test[5]=dingshi2/10+'0'; Test[6]=dingshi2%10+'0'; Test[11]=pwm3+'0'; Test[13]=dingshi3/10+'0'; Test[14]=dingshi3%10+'0';//顯示函數(shù) ShowString(0,Temp); ShowString(1,Test);}//初始化函數(shù)voidinit(void){ TMOD=0x21; TH0=0xee; TL0=0x19; SCON=0x50; TH1=0xFD; TL1=TH1; PCON=0x00; ES=1; TR1=1; TR0=1; ET0=1; EA=1;}//燈光定時函數(shù)voidtimer0(void)interrupt1//2ms{TH0=0xf8;TL0=0xd7; tt++;//判斷設(shè)置的定時時長 if(tt>=500) {//判斷時間值大于500,就將其值置為0 tt=0;//判斷第一盞燈的定時開關(guān)按鍵和定時按鍵是否被點擊 if(kg1==1&&ds1==1&&dingshi1>0)dingshi1--; elseif(kg1==1&&ds1==1&&dingshi1==0)kg1=0;//判斷第二盞燈的定時開關(guān)按鍵和定時按鍵是否被點擊 if(kg2==1&&ds2==1&&dingshi2>0)dingshi2--; elseif(kg2==1&&ds2==1&&dingshi2==0)kg2=0;//判斷第三盞燈的定時開關(guān)按鍵和定時按鍵是否被點擊 if(kg3==1&&ds3==1&&dingshi3>0)dingshi3--; elseif(kg3==1&&ds3==1&&dingshi3==0)kg3=0; }//判斷第一盞燈的亮度以及開關(guān)的按鍵是否被按下 if(tt%10<pwm1&&kg1==1)led1=0;elseled1=1;//若被按下,則led1亮//判斷第二盞燈的亮度以及開關(guān)的按鍵是否被按下 if(tt%10<pwm2&&kg2==1)led2=0; elseled2=1;//若被按下,則led2亮//判斷第三盞燈的亮度以及開關(guān)的按鍵是否被按下 if(tt%10<pwm3&&kg3==1)led3=0; elseled3=1;//若被按下,則led3亮}voidUARTInterrupt(void)interrupt4{if(RI){RI=0; jieshou=SBUF; if(jieshou=='a'&&tmp<30){tmp++;kgkt=1;}//溫度加 elseif(jieshou=='b'&&tmp>0){tmp--;kgkt=1;}//溫度減 elseif(jieshou=='c')kgkt=0; //關(guān)閉冰箱//增強第一盞電燈亮度 elseif(jieshou=='d'&&pwm1<9){pwm1++;kg1=1;ds1=0;} //減弱第一盞電燈亮度 elseif(jieshou=='e'&&pwm1>0){pwm1--;kg1=1;ds1=0;}//增長第一盞電燈定時時長 elseif(jieshou=='f'&&dingshi1<99)dingshi1++; //減短第一盞電燈定時時長 elseif(jieshou=='g'&&dingshi1>0)dingshi1--; elseif(jieshou=='h'){ds1=1;kg1=1;} //開啟第一盞電燈定時功能 elseif(jieshou=='i')kg1=0; //關(guān)閉第一盞燈//增強第二盞電燈亮度 elseif(jieshou=='j'&&pwm2<9){pwm2++;kg2=1;ds2=0;}//減弱第二盞電燈亮度 elseif(jieshou=='k'&&pwm2>0){pwm2--;kg2=1;ds2=0;}//增長第二盞電燈定時時長 elseif(jieshou=='l'&&dingshi2<99)dingshi2++; //減短第二盞電燈定時時長 elseif(jieshou=='m'&&dingshi2>0)dingshi2--;//開啟第二盞電燈定時功能 elseif(jieshou=='n'){ds2=1;kg2=1;}//關(guān)閉第二盞燈 elseif(jieshou=='o')kg2=0; elseif(jieshou=='p'&&pwm3<9){pwm3++;kg3=1;ds3=0;} elseif(jieshou=='q'&&pwm3>0){pwm3--;kg3=1;ds3=0;} elseif(jieshou=='r'&&dingshi3<99)dingshi3++; elseif(jieshou=='s'&&dingshi3>0)dingshi3--; elseif(jieshou=='t'){ds3=1;kg3=1;} elseif(jieshou=='u')kg3=0; }else{TI=0;}voidmain(){ init(); InitLCD1602();//液晶初始化//顯示函數(shù)ShowString(0,Temp); ShowString(1,Test);while(1){ display();//調(diào)用顯示函數(shù) }}5.3LED燈光控制函數(shù)對電燈的操作包括控制電燈的開關(guān)、控制電燈的亮度、為電燈設(shè)置定時,該部分主要介紹電燈的定時功能,以下是具體的代碼實現(xiàn)。設(shè)置時間函數(shù)如下:/***************定時子函數(shù)********************///定義無符號整型數(shù)據(jù)類型#defineuintunsignedint//定義無符號字符數(shù)據(jù)類型#defineucharunsignedchar//時鐘芯片之間的引腳連接定義sbitSCLK=P1^0;sbitIO=P1^1;sbitRST=P1^2;sbitACC0=ACC^0;sbitACC7=ACC^7;uchara;/*ACC累加器=AACC.0=E0HACC.0就是ACC的第0位。ACC可以位尋址。累加器ACC是一個8位的存儲單元,是用來放數(shù)據(jù)的。但是,這個存儲單元有其特殊的地位,是單片機中一個非常關(guān)鍵的單元,很多運算都要通過ACC來進行。以后在學(xué)習(xí)指令時,常用A來表示累加器。但有一些地方例外,比如在PUSH指令中,就必須用ACC這樣的名字。一般的說法,A代表了累加器中的內(nèi)容、而ACC代表的是累加器的地址。*/voidwrite_byte(uchardat)//寫一個字節(jié){//為累加器ACC賦初值 ACC=dat;//為復(fù)位鍵設(shè)置初值 RST=1; for(a=8;a>0;a--) { IO=ACC0; SCLK=0; SCLK=1; ACC=ACC>>1; }}ucharread_byte()//讀一個字節(jié){ RST=1; for(a=8;a>0;a--) { ACC7=IO; SCLK=1; SCLK=0; ACC=ACC>>1; } return(ACC);}5.4冰箱溫度控制函數(shù)該系統(tǒng)中設(shè)計了對冰箱溫度的操作,主要操作有對冰箱溫度的控制,以下內(nèi)容為具體對冰箱溫度控制的代碼實現(xiàn)。設(shè)置溫度函數(shù)如下:#defineucharunsignedchar//定義無符號字符型數(shù)據(jù)類型#defineuintunsignedint//定義無符號整型數(shù)據(jù)類型#defineData_0_time4//IO口定義區(qū)sbitP2_0=P2^0;//初始化引腳//u8是unsignedcharU8U8FLAG,k;//定義無符號字符型數(shù)據(jù)類型U8U8count,U8temp;U8U8T_data_H_temp,U8T_data_L_temp,U8checkdata_temp;U8U8comdata;//顯示函數(shù)voidDelay2(U16j){U8i; for(;j>0;j--) { for(i=0;i<27;i++); }}//延遲函數(shù)voidDelay_10us(void){U8i;i--;i--;i--;i--;i--;i--;}P2_0)&&U8FLAG++); Delay_10us(); Delay_10us(voidCOM(void)){U8i;for(i=0;i<8;i++) { U8FLAG=2; while((!P2); Delay_10us(); U8temp=0; if(P2_0)U8temp=1; U8FLAG=2; while((P2_0)&&U8FLAG++); //超時則跳出for循環(huán) if(U8FLAG==1)break; //判斷數(shù)據(jù)位是0還是1 //如果高電平高過預(yù)定0高電平值則數(shù)據(jù)位為1 U8comdata<<=1; U8comdata|=U8temp; } } //溫度讀取子程序 //溫度高8位==U8T_data_H //溫度低8位==U8T_data_L //校驗8位==U8checkdata voidRH(void) {//主機拉低18msP2_0=0; Delay2(180); P2_0=1; //總線由上拉電阻拉高主機延時20us Delay_10us(); Delay_10us(); Delay_10us(); Delay_10us(); //主機設(shè)為輸入判斷從機響應(yīng)信號 P2_0=1; //判斷從機是否有低電平響應(yīng)信號如不響應(yīng)則跳出,響應(yīng)則向下運行 if(!P2_0) {U8FLAG=2; //判斷從機是否發(fā)出80us的低電平響應(yīng)信號是否結(jié)束 while((!P2_0)&&U8FLAG++); U8FLAG=2; //判斷從機是否發(fā)出80us的高電平,如發(fā)出則進入數(shù)據(jù)接收狀態(tài) while((P2_0)&&U8FLAG++); //數(shù)據(jù)接收狀態(tài) COM(); U8T_data_H_temp=U8comdata; COM(); U8T_data_L_temp=U8comdata; COM(); U8checkdata_temp=U8comdata; P2_0=1; //數(shù)據(jù)校驗 U8temp=(U8T_data_H_temp+U8T_data_L_temp); if(U8temp==U8checkdata_temp) {U8T_data_H=U8T_data_H_temp; U8T_data_L=U8T_data_L_temp; U8checkdata=U8checkdata_temp; } } }5.5LCD1602顯示屏的顯示函數(shù)該部分主要是將通過藍牙串口助手傳過來的數(shù)據(jù)顯示出來,其中包括:燈光的亮度及定時顯示,還有冰箱溫度的顯示。具體代碼實現(xiàn)如下:#defineucharunsignedchar//定義無符號字符數(shù)據(jù)類型#defineuintunsignedint//定義無符號整型數(shù)據(jù)類型#include<stdio.h>//頭文件#include<intrins.h>//定義單片機控制引腳sbitRS=P2^5;//Pin4sbitRW=P2^6;//Pin5sbitE=P2^7;//Pin6#defineDataP0//定義數(shù)據(jù)端口/********函數(shù)聲明*********/voidDelayUs(unsignedcharus)//延遲函數(shù){unsignedcharuscnt;//定義字符型數(shù)據(jù)類型uscnt=us>>1;while(--uscnt);}voidDelayMs(uintms)//delayMs{while(--ms){DelayUs(250);DelayUs(250); DelayUs(250); DelayUs(250);}}//按照命令寫入數(shù)據(jù)voidWriteCommand(unsignedcharc){DelayMs(5);//在操作前調(diào)用延遲函數(shù)E=0;RS=0;RW=0;_nop_();E=1;Data=c;E=0;}//將數(shù)據(jù)寫入顯示屏上voidWriteData(unsignedcharc){DelayMs(5);//shortdelaybeforeoperationE=0;RS=1;RW=0;_nop_();E=1;Data=c;E=0;RS=0;}voidShowChar(unsignedcharpos,unsignedcharc){unsignedcharp;if(pos>=0x10){p=pos+0xb0;//是第二行則命令代碼高4位為0xc}else{p=pos+0x80;//是第二行則命令代碼高4位為0x8WriteCommand(p);//writecommandWriteData(c);//writedata}}//顯示字符串函數(shù)voidShowString(unsignedcharline,char*ptr){unsignedcharl,i;l=line<<4;for(i=0;i<16;i++)ShowChar(l++,*(ptr+i));//循環(huán)顯示16個字符}voidInitLCD1602(){DelayMs(15);WriteCommand(0x38);//displaymodeWriteCommand(0x38);//displaymodeWriteCommand(0x38);//displaymodeWriteCommand(0x06);//顯示光標(biāo)移動位置WriteCommand(0x0c);//顯示開及光標(biāo)設(shè)置WriteCommand(0x01);//顯示清屏}6系統(tǒng)安裝與測試6.1系統(tǒng)硬件測試系統(tǒng)硬件測試是保證系統(tǒng)穩(wěn)定運行和可靠性的關(guān)鍵步驟,是系統(tǒng)能否正常工作的前提。系統(tǒng)硬件測試并不僅僅是為了找出錯誤,而是分析錯誤產(chǎn)生的原因和錯誤的分布特征。要完成該系統(tǒng)硬件測試需準(zhǔn)備測試儀器:數(shù)字萬用表、電烙鐵、干電池(3節(jié))、吸錫器、錫絲及若干基本元器件。測試分為以下五點:①數(shù)字萬用表主要用于單獨的電路板上焊接試驗電阻元件的電壓降,泄漏電流、截止、導(dǎo)通狀態(tài)參數(shù)測量、HC-06藍牙模塊是可行的,是否正常供電和通訊。②若有損壞的元器件將用新的元器件替換。③電烙鐵主要用來焊接電路中沒有連接好的導(dǎo)線,或者在檢查中發(fā)現(xiàn)的斷線、虛焊等情況,此外,還可以用來焊接損壞的元器件。④干電池在測試期間為整個電路系統(tǒng)供電,主要包括單片機、LCD1602液晶顯示屏和HC-06藍牙模塊。⑤吸錫槍主要用來除去在焊接過程中焊接失誤時的遺留物,用吸錫槍吸掉后,就可以重新焊接,為了產(chǎn)品美觀,也可以吸掉不好看的焊點,重新焊接的。6.2系統(tǒng)軟件測試在測試部分中,不僅要對硬件進行測試,軟件部分也不能忽略,只有軟硬件相結(jié)合才能測試出是否達到預(yù)期的效果。該系統(tǒng)是用C語言編寫的,通過用KEIL軟件編譯,不斷地調(diào)試,不斷地修改,對每一句代碼仔細驗證,優(yōu)化程序語句與結(jié)構(gòu)。由于該設(shè)計的程序較為復(fù)雜,我采用的是分塊調(diào)試的方法。首先測試HC-06藍牙模塊是否能與藍牙手機串口助手正常連接[10],再測試HC-06藍牙模塊通信功能是否正常,再調(diào)試LCD1602液晶顯示功能是否能正常輸出想要的結(jié)果,然后再分別調(diào)試LED燈和冰箱的控制功能,再調(diào)試手機與藍牙通信功能,最后再進行整體調(diào)試。將寫好的C語言程序下載到單片機中,測試各個功能是否都能實現(xiàn)。若功能無法實現(xiàn)則返回源程序,在程序中繼續(xù)修改,編譯后再下載到單片機上繼續(xù)測試,一直重復(fù)這樣的操作,直至達到自己預(yù)期的效果。具體各模塊測試以及測試結(jié)果如下所示:藍牙串口助手的初始化界面,點擊搜索設(shè)備即可搜索出要連接的設(shè)備,選中想要連接的設(shè)備名,就可以直接連接,點擊斷開連接就與目前連接的設(shè)備斷開,斷開后就不能繼續(xù)通信。點擊退出就可以退出藍牙串口助手手機APP。手機APP初始化界面如圖13所示:圖13手機APP初始化界面當(dāng)點擊搜索設(shè)備后,就會在設(shè)備顯示區(qū)域中出現(xiàn)附近有打開藍牙的設(shè)備,選擇想要連接的設(shè)備名,可直接通過點擊連接,連接成功后就會顯示已連接的字樣后跟連接的設(shè)備名,手機藍牙串口助手成功連接設(shè)備如圖14所示。圖14成功連接設(shè)備該系統(tǒng)是通過藍牙模塊在藍牙串口助手與手機之間進行數(shù)據(jù)傳輸,只有成功連接藍牙模塊方可進行通信,在沒有成功連接藍牙的時候,設(shè)備中的紅色指示燈會一直閃爍,成功連接藍牙后指示燈將常亮,設(shè)備與手機藍牙串口助手連接成功效果圖如圖15所示。圖15藍牙連接成功圖成功連接設(shè)備后就可以對燈光和冰箱進行操作了,首先測試對燈光的控制,該系統(tǒng)中模擬的是對三盞燈進行操作,可以分別控制三盞燈的亮度,在手機藍牙串口助手上設(shè)置的燈光強度通過藍牙模塊通信,可以在LCD1602液晶顯示屏上顯示當(dāng)前設(shè)置的燈光強度。顯示燈光強度圖如圖16所示。圖16顯示燈光強度圖圖16是在LCD1602液晶顯示屏上顯示燈光強度,該系統(tǒng)中有三盞燈,可以分別為三盞燈設(shè)置燈光強度,設(shè)置的燈光強度值分別為1、3、5。對電燈還可以進行定時操作,三盞燈都有此功能,只測試了一盞燈的效果,設(shè)置定時后LCD1602顯示屏的顯示效果如圖17所示。當(dāng)?shù)竭_設(shè)置的時間后,電燈就會熄滅,設(shè)備效果圖如圖18所示。圖17電燈定時圖圖17是為第二盞燈設(shè)置定時,設(shè)置的時長是5秒,到達五秒后,電燈自動熄滅。圖18設(shè)備效果圖該部分是對冰箱溫度進行測試,冰箱的溫度設(shè)置是在藍牙串口助手上設(shè)置的,將設(shè)置好的冰箱溫度通過藍牙模塊傳給設(shè)備,設(shè)備會通過LCD1602液晶顯示屏將藍牙串口助手設(shè)置的冰箱溫度溫度顯示出來,為冰箱設(shè)置的溫度為零下6度,冰箱溫度顯示效果如圖19所示。圖19冰箱溫度顯示效果圖7總結(jié)在此次設(shè)計中,是對所學(xué)基礎(chǔ)知識的一個整體回顧、對專業(yè)知識的一種提升,基礎(chǔ)知識與專業(yè)知識的綜合應(yīng)用,是一種掌握與提升的過程,不但培養(yǎng)了我們學(xué)習(xí)能力、獨立思考及工作能力。也是對我們自學(xué)能力和自行解決問題能力的一次考驗。本次畢業(yè)設(shè)計,我研究的是智能燈光及冰箱控制系統(tǒng)的設(shè)計,通過這次設(shè)計,我清楚的看到了自己的不足,同時也學(xué)到了很多的知識。不足之處是:在做設(shè)計之前,我只重視理論知識,關(guān)于實踐方面很少嘗試,所以在設(shè)計之初不知如何入手。在指導(dǎo)老師幫助下我慢慢開始了我的設(shè)計。在做畢業(yè)設(shè)計的過程中,遇到了很多問題,而且大多數(shù)是以前沒遇到過的問題,也正是因為這些問題,讓我發(fā)現(xiàn)了自己在某方面知識的欠缺,對于我們來說,最重要的就是發(fā)現(xiàn)問題,解決問題。這使我意識到學(xué)習(xí)課外知識的重要性,特別是我們這個專業(yè),多擴展自己的眼界,這樣在以后的工作中才能充分發(fā)揮。在開始設(shè)計硬件系統(tǒng)時,對于硬件制作的過程不是很了解,重新作了很多次,不斷嘗試,不斷學(xué)習(xí),最后才做出了一個自己比較滿意的板子,走了很多彎路。在設(shè)計軟件的時候,對于該系統(tǒng)沒有一個整體的、完善的概貌,很多地方想得不周全,考慮得也不仔細,對程序語言也不是很熟練,所以,在最后的系統(tǒng)整合時,出現(xiàn)了很多問題,而且解決起來很麻煩,這無形中增加了該系統(tǒng)的設(shè)計難度。因此我深刻的知道我缺少許多軟件方面的知識,比如軟件語言。如何編寫軟件程序,軟硬件如何結(jié)合等。其次談?wù)勎覍W(xué)到的東西。在此過程中,我親自動手操作,熟悉了各種元器件的功能及使用方法,還有注意事項,讓我懂得了許多軟件方面的知識,編寫出了程序,但是在程序調(diào)試時,沒有特別順利,經(jīng)過多次嘗試后終于成功完成本次設(shè)計。通過這次畢業(yè)設(shè)計,我學(xué)到了很多以前不知道的東西,也對自己的專業(yè)有了一個更新的認(rèn)識,還需要不斷地學(xué)習(xí),去探索新的領(lǐng)域。在此,感謝我的指導(dǎo)老師和同學(xué)對我此次設(shè)計的幫助。參考文獻[1]劉麗軍.物聯(lián)網(wǎng)技術(shù)應(yīng)用[M].清華大學(xué)出版社,2012.07.[2]李宗.智能家居中燈光控制系統(tǒng)的研究[D].碩士論文.上海交通大學(xué),2008.[3]陳忠平.單片機C語言程序設(shè)計經(jīng)典實例.電子工業(yè)出版社出版.2012.05.[4]余錫存.單片機原理及接口技術(shù)[M].西安電子科技大學(xué)出版社,2007.12.[5]李朝青.單片機原理及接口技術(shù)[M].北京:北京航空航天大學(xué)出版社,2005[6]楊欣.電子設(shè)計從零開始.清華大學(xué)出版社.2010.10.[7]婁國煥.單片機控制系統(tǒng)應(yīng)用中軟件抗干擾問題.河北冶金,1997No.2.[8]何希才.新型實用電子電路400例[M].電子工業(yè)出版社,2000.[9]李朝青.單片機原理及接口技術(shù)[M].北京:北京航空航天大學(xué)出版社,2005[10]唐俊翟單片機原理與應(yīng)用.河北冶金,2003.9謝辭通過這段時間的努力,我的畢業(yè)設(shè)計論文《基于安卓的智能燈光與冰箱控制系統(tǒng)》終于完成了。在此期間我學(xué)到了很多,也在實踐中得到了很大的提升,得到這個結(jié)果,與各位老師和同學(xué)的幫助是分不開的。在我完成本次畢業(yè)設(shè)計的過程中,我的同學(xué)給我提供了許多幫助,并解決了我好多困惑,我很是感激。我的指導(dǎo)老師對我們非常負(fù)責(zé),給我很多幫助,在我不知道如何選題的時候,老師細心指導(dǎo)我,幫我確定題目,還要幫我確定寫作大綱,完稿之后在又要修改我的論文,一遍一遍的檢查并給出修改意見,在此對她表示最真摯的感謝。畢業(yè)論文的完結(jié)也意味著我們的大學(xué)生活即將告一段落,在這次論文的完成過程中,除了自身的努力外,與我的老師及同學(xué)的幫助與鼓勵是分不開的,在此過程中也提高了自己的查閱資料的能力,解決問題的能力,以前遇到問題就很慌,不知道如何下手,但是經(jīng)過這次鍛煉,我好像沒有以前那么害怕遇到問題,遇到問題不害怕,重點是知道怎么解決這個問題,經(jīng)過這次畢設(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

提交評論