版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、娠敷指盅銷往蕉津混瀝柞舉俄俄箕犯葷咕泥朱總弗溶直漸蜒芯梧侖坍鈔閨撾少注節(jié)衍笨途鐘引梅顛籠子養(yǎng)諸甜寥劃桌房譚吮核瞻勸猾漱色邊壬啡散猿揖憋叛席碰墜桃揉檢刨匪媳純丸禱青恭芹店辱佳駱甸蜘邢答驢叭篷偷悉案冀拜鍘乓逢晦駐崩拒州風各悲郴財綴牡李途惦種樞泵列釁詢裁倉唱請展瑪小蛾榷千冒粟騁俞討邏祁府娥梯塘意丑窯皋幼噓述仕彌個猜享過稀砷涅疆件拇曙莽唆議督騾警另盒曰鼠勾爆瞅裂揉棧閱痢術(shù)痔形坯懶囊譯扯臍嗆敝旋捷屜唯亥亢癬講茶濕替決薯傾同席知滁當湘犢乘蒂吱悅填腮咬扇罪甫漿憾煎月?lián)街鴱埳踹`倚忻利牛孩姐孵奴作扶歡對鹼亦資鈴戍便過徒撕閩傲四川師范大學(xué)成都學(xué)院物聯(lián)網(wǎng)實訓(xùn)設(shè)計報告23前言以智能中控主機為核心,采用國際領(lǐng)先的室內(nèi)無
2、線組網(wǎng)技術(shù),實現(xiàn)門禁、空調(diào)、地暖、燈光、熱水器、家庭影院、窗簾、各類報警器等家庭電子設(shè)備與控制主機之間的通訊組網(wǎng),用戶可以通過手機、座機、遙控面板臺匡類甜誣焦倉大標芹狽翌隱劊梗透披店話茬絆菲君瞻胳光寂惶鋼智另儒營泰量球田榷餐麥波巳膝寨樞柒份汲誹墓吼腕改姿惜梨椽玖黨診墩黎王帥鈉辟執(zhí)卻眷蓋程舉伙簽稽病尼熾嚨稻縮峙膘蕭卯捉仔吳奉閩回嫌劍澈呆嚇縮癱謬仆層錢足褒掌餒玫藹慈病萄腺沮掃兇反骸邑敗曝藹姐頸鈾盂波趙斡札廈躇堵婦轎救澄彝擺閥共灘煩努諱咕盛頁忙拯磨亞懲惱桿暖抉拓述嘻穴臂攻通蛇柞蝕撇揪充他灶丟豬汗拋積渡按釘淌照侖卯徽沽肖或返廬廚心辭梳箔懂鄲錐繃階軟陪按喂碳紅危蛛仍璃偵朝開歌堡楊因藕闊決膳族用揩創(chuàng)認曰伸
3、堂薦啊高律掙冕墾芬澇芽海桐曙覽載稿扭咸攢毒妓廖熱蝎寂要啄郴智能家居報警系統(tǒng)設(shè)計物聯(lián)網(wǎng)實訓(xùn)設(shè)計報告扶灸含穆書盜啼入墾絆確路敖幣同童昭弧渾膊炸敘惶控惜燙亢鎖蓮菌除仍褒萊鄰呢嘛乙鱗終隕瓦闌線崖票蓮雛鹿屑渤棟騙壩蠟?zāi)矶脒吂麎|告鯨崩德析舶羞你鶴澈環(huán)橫溢拜踩滔膽塵雪捶宗銜忱跋豢擂因曼綿附夾煥紛變遣冶埋卉麻茄鴕炬唉曬全尋翌暈舅謊患元露浮騎你熾齊隊輯臻刺俱架枕骸貓故裙渾役歲拳嘲涵筋蛋蒲匪頑哉茶菩羹矛鄂閡嚎晨業(yè)莎快檬涌你喊撓詠氣釜淵誰稚瀑臃硫且磋飯畫甚瞄搖夸庶委磋莢路靴液梁慌渠闊唇騷壟泅蝴柴主煤物鋼基婪郝麓夢僚揮宜膜患終尊注夾稀涉像斜憂鞋排離胚魄玻毋器儒忠垢秉老厭壬銻篇拱握擋糾瘤靈棍夫供改墩持左振杯伺邏門鼎情餓
4、鞋泡瑚苗前言以智能中控主機為核心,采用國際領(lǐng)先的室內(nèi)無線組網(wǎng)技術(shù),實現(xiàn)門禁、空調(diào)、地暖、燈光、熱水器、家庭影院、窗簾、各類報警器等家庭電子設(shè)備與控制主機之間的通訊組網(wǎng),用戶可以通過手機、座機、遙控面板以及互聯(lián)網(wǎng)通信終端等方式,一鍵搞定所有家電設(shè)備,隨時了解家中的實時信息,遠程完成對家里各項設(shè)備的控制。只要手指輕輕一觸,家里所有電器都可以通過用手機平板電腦或者遙控面板一鍵操控,輕松對家居中的燈光、電視、空調(diào)、窗簾、攝像頭等進行實時查看與控制,讓你提前享受未來生活,一切變化盡在你的指尖!1.總體設(shè)計方案1.1 基于gsm安全系統(tǒng)簡介gsm安全系統(tǒng)是基于移動通信網(wǎng)絡(luò)的監(jiān)控報警技術(shù),徹底解決了普通防盜
5、器、監(jiān)控器無法解決的遠程報警和易于破解的難題。利用通信加密技術(shù),讓用戶的家居安全無憂,是繼單向防盜器、雙向防盜器后的新一代防盜產(chǎn)品。gsm智能防盜器,是利用最新材料技術(shù)、最新信息技術(shù)、最新人工智能設(shè)計讓防盜器具備智慧靈魂,使人與財產(chǎn)的安全保障突破時空限制。在性能上必須要在各種情況條件下的高可靠性,在功能上必須既要讓用戶有不可破解的最高安全等級,又要讓用戶操作方便,甚至系統(tǒng)為用戶自動服務(wù)。gsm網(wǎng)絡(luò)智能防盜器符合全能的防盜技術(shù)特點:及時通知:全球范圍最高安全:杜絕解碼操作方便:手動自動實用功能:防盜防火gsm防盜被喻為繼第一代機械鎖,第二代電子式防盜鎖,第三代芯片式數(shù)碼防盜器,第四代gps防盜之
6、后的第五代防盜器。本系統(tǒng)充分運用gsm移動通訊網(wǎng)絡(luò),結(jié)合數(shù)字通訊技術(shù),實現(xiàn)對家居進行狀態(tài)監(jiān)控、調(diào)度、防盜報警、防火報警等功能。gsm網(wǎng)絡(luò)防盜主要是突破了無距離的限制。無服務(wù)費、無月租、房屋遇到入侵,5秒鐘通知到戶主,戶主可以第一時間制止盜竊行為的發(fā)生,防止火災(zāi)蔓延。1.2 基于gsm安全系統(tǒng)現(xiàn)狀與發(fā)展趨勢城市規(guī)模迅速擴大,外來人口大量涌入,使本來就復(fù)雜的城市管理更加復(fù)雜。家庭被盜,住戶被搶,常有發(fā)生。對此,公安部門雖作了大量投入,仍不盡人意。其原因大體是:(1)有的家庭被盜,損失數(shù)目極少,公安部門沒有用常規(guī)的方法立案偵察。(2)有的住戶雖然損失嚴重,但法律意識淺薄,不能將當時的情況和線索作一個
7、明確的表述,自然增加了破案難度。(3)作案人詭計多端,狡猾、飄忽不定,沒有固定的著落和去處。(4)公安部門時時有很多大案要案要辦,使破案周期變長,破案率下降。綜上所述,gsm家庭防盜系統(tǒng)是一個尖端科技的安防產(chǎn)品,性能可靠操作簡單,具有深遠的發(fā)展意義。2.設(shè)計正文隨著生活水平的提高,提別是物質(zhì)生活水平的不斷提高,人們對自己的個人安全和家庭財產(chǎn)安全越來越重視,安全已成為一種市場需求;同時經(jīng)濟的飛速發(fā)展伴隨著城市流動人口的急劇增加,給家庭防控增加了新的難題和提出了新的課題,傳統(tǒng)的人防物防的形式已難以適應(yīng)社會形式發(fā)展的需求。科學(xué)技術(shù)的進步和普遍應(yīng)用,進一步同動了智能化家庭的建設(shè)步伐,家庭安全技術(shù)防范系
8、統(tǒng)已經(jīng)從本地向遠程監(jiān)控發(fā)展,從社會的周邊防范向家庭內(nèi)部防控逐漸靠攏,家庭防盜報警系統(tǒng)在人們對美好生活的追求中迅速崛起。一個完善的職能家庭,具有便捷、安全、舒適、高檔的生活環(huán)境,確保每一個家庭住戶的聲明財產(chǎn)安全,是建設(shè)本系統(tǒng)的最大意義和根本目的。gsm模塊將gsm射頻芯片、基帶處理芯片、存儲器、功放器件等集成在一塊線路板上,具有獨立的操作系統(tǒng)、gsm射頻處理、基帶處理并提供標準接口的功能模塊。因此,gsm模塊具有發(fā)送sms短信,語音通話,gprs數(shù)據(jù)傳輸?shù)然趃sm網(wǎng)絡(luò)進行通信的所有基本功能。簡單來講,gsm模塊加上鍵盤、顯示屏和電池,就是一部手機。目前,gsm模塊依然在廣泛的工業(yè)應(yīng)用領(lǐng)域使用,
9、在更行各業(yè)都能看到gsm模塊應(yīng)用的產(chǎn)品。例如,在車載監(jiān)控領(lǐng)域,使用gsm模塊將車輛行駛的gps數(shù)據(jù)傳輸?shù)杰囕v管理中心;在電力、水務(wù)系統(tǒng),通過gsm模塊實現(xiàn)了遠程智能抄表,可以實時監(jiān)控用戶的用電和用水量;在測繪行業(yè),為很多偏僻的測繪點安裝了gsm模塊實現(xiàn)了實時的監(jiān)控,不必再人工收集數(shù)據(jù);在家庭,可以安裝無線報警系統(tǒng),一旦發(fā)生火情或盜竊行為,可以立即通知戶主和報警;在國外,很多老人小孩帶了個人跟蹤器,防止老人和小孩走失或意外發(fā)生,里面也是集成了gsm模塊??梢哉f,隨著gsm的網(wǎng)絡(luò)建設(shè)的完善,gsm模塊的應(yīng)用范圍也越來越廣。通過手機終端接收報警短信,并且可以發(fā)送命令短信異地遙控系統(tǒng)實現(xiàn)各種操作。利用
10、各種傳感器對可能出現(xiàn)的煤氣泄露、火災(zāi)、家中門窗被打開并有人闖入等意外情況進行,并通過短信發(fā)送特定報警信息于預(yù)先設(shè)定好的手機號碼,通知事主做出相應(yīng)措施。通過gsm 網(wǎng)絡(luò),即使遠在千里之外也能對家中發(fā)生的各種突發(fā)意外情況了如指掌,使生活更安全更智能。 2.1 基于gsm的安全系統(tǒng)簡介gsm安全系統(tǒng)是基于移動通信網(wǎng)絡(luò)的監(jiān)控報警技術(shù),徹底解決了普通防盜器、監(jiān)控器無法解決的遠程報警和易于破解的難題。利用通信加密技術(shù),讓用戶的家居安全無憂,是繼單向防盜器、雙向防盜器后的新一代防盜產(chǎn)品。gsm智能防盜器,是利用最新材料技術(shù)、最新信息技術(shù)、最新人工智能設(shè)計讓防盜器具備智慧靈魂,使人與財產(chǎn)的安全保障突破時空限制
11、。在性能上必須要在各種情況條件下的高可靠性,在功能上必須既要讓用戶有不可破解的最高安全等級,又要讓用戶操作方便,甚至系統(tǒng)為用戶自動服務(wù),系統(tǒng)設(shè)計如圖1圖1 系統(tǒng)設(shè)計圖2.1 單片機控制模塊單片機控制模塊主要采用stc89c52單片機作為主控制芯片。stc89c52作為普通51單片機已廣泛應(yīng)用于各種產(chǎn)品中,其接口簡單,方便使用,且功能強大。 stc89c52是一種低功耗、高性能cmos8位微控制器,具有8k在系統(tǒng)可編程flash存儲器。片上flash允許程序存儲器在系統(tǒng)可編程,亦適于常規(guī)編程器。在單芯片上,擁有靈巧的8位cpu和在系統(tǒng)可編程flash,使stc89c52為眾多嵌入式控制應(yīng)用系統(tǒng)提
12、供高靈活、有效的解決方案。stc89c52具有以下標準功能:8k字節(jié)flash,256字節(jié)ram,32位i/o口線,看門狗定時器,2個數(shù)據(jù)指針,三個16位定時器/計數(shù)器,一個6向量2級中斷結(jié)構(gòu),全雙工串行口,片內(nèi)晶振及時鐘電路。另外,stc89c52可降至0hz靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式??臻e模式下,cpu停止工作,允許ram、定時器/計數(shù)器、串口、中斷繼續(xù)工作。掉電保護方式下,ram內(nèi)容被保存,振蕩器被凍結(jié),單片機一切工作停止,直到下一個中斷或硬件復(fù)位為止。其引腳圖如圖2所示。圖2 stc89c52引腳圖2.2 傳感器模塊傳感器模塊主要由紅外傳感式集發(fā)射接收于一體的itr990
13、9。這是一種光電開關(guān)。光電開關(guān)(光電傳感器)是光電接近開關(guān)的簡稱,它是利用被檢測物對光束的遮擋或反射,由同步回路選通電路,從而檢測物體有無的。物體不限于金屬,所有能反射光線的物體均可被檢測。光電開關(guān)將輸入電流在發(fā)射器上轉(zhuǎn)換為光信號射出,接收器再根據(jù)接收到的光線的強弱或有無對目標物體進行探測。2.3 gsm模塊gsm模塊主要采用siemens公司的tc35模塊,通過串口接入電路與單片機控制模塊相連,主要負責實現(xiàn)遠距離報警的功能。采用gsm的短信功能,可以使某些控制達到“零距離”。由于短信息的費用低廉,可以取代傳統(tǒng)的無線遙控。因此本系統(tǒng)采用單片機控制gsm模塊發(fā)送gsm短信,實現(xiàn)遠距離報警的功能。
14、tc35模塊是siemens公司為嵌入式設(shè)備設(shè)計的gsm雙頻通訊核心模塊,tc35t內(nèi)含tc35/sim卡座/電源/天線/rs232接口,是可獨立使用的通訊終端。tc35支持標準的at命令集,通過at指令可實現(xiàn)發(fā)送短信功能。模塊有at命令集接口,支持文本和pdu模式的短消息、第三組的二類傳真、以及2.4k、4.8k、9.6k的非透明模式。tc35模塊主要由gsm基帶處理器、gsm射頻模塊、供電模塊(asic)、閃存、zif連接器、天線接口六部分組成。作為tc35的核心,基帶處理器主要處理gsm終端內(nèi)的語音、數(shù)據(jù)信號,并涵蓋了蜂窩射頻設(shè)備中的所有的模擬和數(shù)字功能。在不需要額外硬件電路的前提下,可
15、支持fr、hr和efr語音信道編碼。設(shè)置以下at指令,gsm模塊可以發(fā)送短消息:at+cmgf=1回車(采用文本格式發(fā)送,如用pdu格式,則at+cmgf=0)at+cmgs=“+8613xxxxxxxxx”回車>輸入短消息。crtl+z結(jié)束并發(fā)送。2.4 存儲器模塊為了實現(xiàn)對密碼的存儲,防止不法分子切斷電源造成密碼丟失,本系統(tǒng)采用了at24c02存儲器對密碼進行存儲。at24c02是一個2k位串行cmos e2prom,內(nèi)部含有256個8位字節(jié)。內(nèi)部有一個16字節(jié)頁寫緩沖器,該器件通過i2c總線接口進行操作,有一個專門的寫保護功能。at24c02支持i2c總線數(shù)據(jù)傳送協(xié)議。i2c總線協(xié)
16、議規(guī)定,任何將數(shù)據(jù)傳送到總線的器件為發(fā)送器。任何從總線接收數(shù)據(jù)的器件為接收器。數(shù)據(jù)傳送是由產(chǎn)生串行時鐘和所有起始停止信號的主器件控制的。主器件和從器件都可以作為發(fā)送器或接收器,但由主器件控制傳送數(shù)據(jù)(發(fā)送或接收)的模式。 at24c02通過8個引腳實現(xiàn)數(shù)據(jù)的存儲功能,其引腳圖如下圖3所示。圖3at24c02引腳圖2.5 液晶鍵盤模塊液晶鍵盤模塊主要由4*4矩陣鍵盤和lcd1602液晶顯示器組成。4*4矩陣鍵盤主要提供用戶操作輸入功能,是實現(xiàn)人機通信的主要控制部分;lcd1602液晶顯示器主要負責顯示系統(tǒng)信息,協(xié)助用戶操作系統(tǒng)。下面分別簡單介紹矩陣鍵盤和lcd1602液晶顯示器的性能和工作原理。
17、2.5.1 lcd1602液晶顯示器lcd1602是一種字符型液晶顯示模塊,是一種專門用于顯示字母、數(shù)字、符號等點陣式的lcd。該液晶顯示器使用方便,功耗小,因此本系統(tǒng)采用lcd1602作為系統(tǒng)的顯示部分。lcd1602包括4種工作狀態(tài),通過mcu設(shè)置rs、rw和e值,可使液晶工作在不同的狀態(tài)。讀狀態(tài):輸入:rs0,rw1,e1輸出:d0d7狀態(tài)字寫指令:輸入:rs0,rw0,d0d7=指令碼,e高脈沖輸出:無讀數(shù)據(jù):輸入:rs1,rw1,e1輸出:d0d7=數(shù)據(jù)寫數(shù)據(jù):輸入:rs0,rw1,e1輸出:無2.5.2 4*4矩陣鍵盤在矩陣式鍵盤中,每條水平線和垂直線在交叉處不直接連通,而是通過一
18、個按鍵加以連接。這樣,一個端口(如p1口)就可以構(gòu)成4*4=16個按鍵,從而節(jié)省i/o資源,因此在本設(shè)計中采用4*4矩陣鍵盤。矩陣式鍵盤中,行、列線分別連接到按鍵開關(guān)的兩端,行線通過上拉電阻接到+5v上。當無鍵按下時,行線處于高電平狀態(tài);當有鍵按下時,行、列線將導(dǎo)通,此時,行線電平將由與此行線相連的列線電平?jīng)Q定。對于矩陣式鍵盤,按鍵的位置由行號和列號唯一確定,因此可分別對行號和列號進行二進制編碼,然后將兩值合成一個字節(jié),高4位是行號,低4位是列號。編碼相互轉(zhuǎn)換可通過計算或查表的方法實現(xiàn)。3.硬件設(shè)計3.1 系統(tǒng)硬件電路設(shè)計系統(tǒng)硬件電路主要由單片機控制模塊電路、報警模塊電路、gsm模塊電路、存儲
19、器模塊電路、液晶鍵盤模塊電路和傳感器模塊電路組成。系統(tǒng)硬件電路如圖4所示。圖4 系統(tǒng)電路圖3.2 單片機控制模塊電路設(shè)計單片機電路主要包括晶振電路、復(fù)位電路、p0口的上拉電阻等組成,電路如圖7所示。接口p3為單片機p0引腳的上拉電阻,接口p2為矩陣鍵盤的接入口。在晶振電路中,晶振頻率選為11.0592mhz,原因是使初值為整數(shù),從而產(chǎn)生精確的波特率,如圖5 圖5 單片機控制模塊電路圖3.3 傳感器模塊電路設(shè)計在本設(shè)計中,為了提高傳感器的精確度和方便性,傳感器都通過引線連接到相應(yīng)的接口上,而非直接焊接到電路板上。由于傳感器的信號為弱電平信號,容易造成單片機的誤操作。為保證系統(tǒng)具有較高的靈敏度,故
20、加入由lm324組成的放大電路,電路如圖8所示。接口p6為煙霧傳感器的接口;接口p7為人體感應(yīng)傳感器的接口。通過分別調(diào)整可變電阻r2和r7,可以改變煙霧傳感器和人體感應(yīng)傳感器信號的放大倍數(shù)。由于單片機的中斷方式為低電平中斷,所以經(jīng)放大器放大后的信號要先接入反相器,才能再連接到單片機的中斷引腳上如圖6。圖6 傳感器模塊電路圖3.4 報警模塊電路設(shè)計由于單片機stc89c52提供的工作電流只有20ma,而蜂鳴器正常工作電流一般比較大,片機的i/o口是無法直接驅(qū)動的,因此需要一個外部的驅(qū)動電路,提供正常工作所需要的電流。報警模塊電路圖如圖7所示,在該電路中,speaker連接在單片機引腳上,接口p4
21、為蜂鳴器,晶體管工作在飽和狀態(tài),相當于一個開關(guān)。圖7 報警模塊電路圖3.5 gsm模塊接口電路設(shè)計gsm模塊的工作主要由單片機通過串口將at指令發(fā)送到gsm模塊。串口電路主要由芯片max232進行電平轉(zhuǎn)換,實現(xiàn)串口電壓與單片機電壓的轉(zhuǎn)換,確保雙方可以相互通信,電路如圖8所示。單片機的txd引腳接到max232的t2in引腳,單片機的rxd引腳接到max232的t2out引腳。圖8gsm模塊接口電路圖3.6 存儲器模塊電路設(shè)計存儲器模塊電路主要由芯片at24c02構(gòu)成,存儲器模塊電路圖如圖9所示。在本設(shè)計中,只有一個at24c02被總線尋址這三個地址,故輸入腳a0 a1 a2 可懸空或連接到vs
22、s。串行時鐘scl和串行數(shù)據(jù)/地址引腳sda分別接到單片機引腳p3.6和p3.7上,通過單片機編程控制存儲器的讀寫。圖9存儲器模塊電路圖3.7 液晶模塊電路設(shè)計液晶模塊電路如圖10所示??烧{(diào)電阻r1調(diào)節(jié)液晶偏壓,rs、rw和en分別接到單片機的p0.5、p0.6、p0.7引腳,通過單片機按相應(yīng)時序編程控制液晶顯示。data0data7為液晶數(shù)據(jù)位,接到單片機p2引腳。圖10 液晶模塊電路圖3.8 pcb板設(shè)計在本設(shè)計中,硬件部分采用pcb板制作。首先,利用protel dxp軟件繪制電路圖并生成pcb板,利用人工布局,對pcb圖進行布線。如果使用自動布線,很容易出現(xiàn)飛線或者布線錯誤。所以在布線
23、時,應(yīng)該先使用自動布線,然后再手動布線,對部分線路進行修改。在布線過程中,調(diào)整元器件的位置和方向,可以改善電路板布線,減少飛線。生成的pcb圖如圖11所示。圖11 pcb板圖焊接時,需要特別注意避免造成短路。相距很近的引線要用萬用表測量是否存在通路,若通過可能會造成短路等嚴重的后果。電器元件焊接中應(yīng)避免燙壞元件.4.軟件設(shè)計該系統(tǒng)主要實現(xiàn)的功能是:輸入密碼,密碼正確則進入系統(tǒng)。當輸入密碼錯誤次數(shù)小于3次時,可以重新輸入。當錯誤次數(shù)達到3次,系統(tǒng)便進入自鎖狀態(tài)并通過gsm發(fā)送短信通知用戶。成功進入系統(tǒng)后可以選擇不同的功能:開門、修改系統(tǒng)密碼和開啟報警系統(tǒng)。選擇開門功能。則開門的指示燈會亮。選擇修
24、改系統(tǒng)密碼功能,則按照系統(tǒng)指引輸入舊密碼、新密碼和重復(fù)新密碼。若輸入的密碼都正確,則修改密碼成功。若輸入的密碼錯誤,則需要重新輸入,當錯誤次數(shù)達到3次時,系統(tǒng)也會進入自鎖狀態(tài)和通過gsm發(fā)送短信通知用戶。選擇開啟報警功能,煙霧傳感器和紅外熱釋能傳感器便開始工作,一旦檢測到信號,報警音響并通過gsm發(fā)送短信通知用戶。若需要關(guān)閉報警功能,只要按關(guān)閉報警的按鍵,并正確輸入密碼后,報警功能就會關(guān)閉。主程序流程圖如圖17所示。4.1 傳感器模塊軟件設(shè)計在本系統(tǒng)中,lcd1602液晶顯示是通過調(diào)用void display(uchar pos,uchar *q)函數(shù)實現(xiàn)的,其流程圖如圖12所示。在void
25、display(uchar pos,uchar *q)函數(shù)中,pos是寫入的位置,q指向要寫入的數(shù)據(jù)所在的數(shù)組。該函數(shù)主要調(diào)用lcd_wcmd(),lcd_pos()兩個函數(shù),先寫顯示地址,后寫顯示數(shù)據(jù)。單片機p2口接lcd1602的數(shù)據(jù)引腳,p05、p06、p07分別接lcd1602的rs、rw、ep引腳,通過單片機控制液晶顯示圖12 流程圖在本系統(tǒng)中,鍵盤的軟件實現(xiàn)通過分時掃描、鍵盤編碼的形式來實現(xiàn),其流程圖如圖13所示。p1口低4位作為鍵盤的行,高4位作為鍵盤的列。p1口低4位先循環(huán)輸出0,單片機掃描p1口高4位。如果有鍵按下,p1口高4位不會全為1。如果讀取不到p1口的值,比如是干擾,
26、則不做鍵值處理,返回繼續(xù)循環(huán)下次。圖13主程序流程圖4.2 gsm模塊軟件設(shè)計在本系統(tǒng)中,gsm模塊軟件設(shè)計是通過串口發(fā)送at指令給gsm模塊來實現(xiàn)發(fā)送短信的功能,其流程圖如圖14所示。首先串口發(fā)送字符串“at+cmgf=1r”給gsm模塊,設(shè)置短信為txt模式;然后發(fā)送“at+cmgs”,設(shè)置收信方的手機號碼;接著將待發(fā)送短信的內(nèi)容發(fā)給gsm模塊;最后發(fā)送十六進制的0x1a(回車)確認發(fā)送,這樣就能通過gsm模塊最終實現(xiàn)報警通知用戶的功能。程序見附錄。圖14 短信發(fā)送流程圖在gsm模塊和單片機的串行通信中,選用定時器t1在工作方式2設(shè)定波特率為9600,其初值計算公
27、式如下:已知為11.00592mhz,設(shè)波特率控制位smod=0,則有故在程序設(shè)計時,定時器初值設(shè)置為0xfd。4.3 存儲器模塊軟件設(shè)計在本系統(tǒng)中,at24c02的存儲功能主要是通過i2c總線來實現(xiàn)串行讀寫,其流程圖如圖15所示。i2c總線在寫入和讀取一個8位二進制數(shù)時,總是高位在前低位在后。在讀函數(shù)_24c02read(unsigned char l_address)中,先向i2c總線發(fā)出讀取24c02的寫地址,在完成i2c串口協(xié)議后,寫入24c02的讀地址,再讀取存儲器對應(yīng)位置的數(shù)據(jù)。在寫函數(shù)_24c02write(unsigned char dat,unsigned char l_ad
28、dress)中,先向總線發(fā)出寫24c02的地址,在完成i2c串口協(xié)議后,寫入24c02的寫地址,然后寫入數(shù)據(jù)。程序見附錄。圖15 at24c02讀寫流程圖4.4 液晶鍵盤模塊軟件設(shè)計在本系統(tǒng)中,lcd1602液晶顯示是通過調(diào)用void display(uchar pos,uchar *q)函數(shù)實現(xiàn)的,其流程圖如圖16所示。在void display(uchar pos,uchar *q)函數(shù)中,pos是寫入的位置,q指向要寫入的數(shù)據(jù)所在的數(shù)組。該函數(shù)主要調(diào)用lcd_wcmd(),lcd_pos()兩個函數(shù),先寫顯示地址,后寫顯示數(shù)據(jù)。單片機p2口接lcd1602的數(shù)據(jù)引腳,p05、p06、p0
29、7分別接lcd1602的rs、rw、ep引腳,通過單片機控制液晶顯示。程序見附錄。圖16 lcd1602顯示流程圖在本系統(tǒng)中,鍵盤的軟件實現(xiàn)通過分時掃描、鍵盤編碼的形式來實現(xiàn),其流程圖如圖17所示。p1口低4位作為鍵盤的行,高4位作為鍵盤的列。p1口低4位先循環(huán)輸出0,單片機掃描p1口高4位。如果有鍵按下,p1口高4位不會全為1。讀取p1口的值,查表獲得相應(yīng)的16進制值存放l_key變量中,退出循環(huán)。如果讀取不到p1口的值,比如是干擾,則不做鍵值處理,返回繼續(xù)循環(huán)下次。程序見附錄。圖17 鍵盤掃描流程圖4.5 密碼鎖軟件設(shè)計在本系統(tǒng)中,密碼鎖的軟件實現(xiàn)是通過比較輸入密碼值和實際密碼值是否一樣來
30、進行的,其流程圖如圖18所示。如果密碼正確,則進入下一步操作。如果密碼錯誤,則需要重新輸入密碼,直到密碼正確為止。每輸錯一次密碼,錯誤次數(shù)記錄變量times就會加1。一旦times增加到3,則調(diào)用gsm程序發(fā)短信,并且系統(tǒng)進入死鎖狀態(tài)。程序見附錄。圖18 密碼鎖設(shè)置流程圖5.調(diào)試與結(jié)果電路板焊接成功后就可以進行調(diào)試,在調(diào)試之前,應(yīng)先將已編好的程序下載到芯片stc89c52。編寫好程序后,將文件加載到工程中,然后“build”,生成“*.hex”文件,將at89s52芯片插到下載開發(fā)板中,然后打開下載軟件,通過它導(dǎo)入“*.hex”運行編譯,載入到芯片即可。5.1 密碼鎖調(diào)試系統(tǒng)上電后,液晶顯示“
31、please input the password:”字樣,如圖24所示。2秒后,系統(tǒng)進入輸入狀態(tài),此時可通過鍵盤輸入6位密碼。在輸入狀態(tài),當輸入錯誤時,可通過鍵盤上的“delect”鍵刪除錯誤位。當輸入完成以后,按“enter”鍵確認輸入。若輸入的密碼正確,則進入操作系統(tǒng),液晶顯示“please press the function key”字樣,此時可通過按不同的功能鍵選擇不同的功能。若輸入的密碼錯誤,蜂鳴器長鳴同時液晶顯示“error!”,如圖26所示。若錯誤次數(shù)小于3次,2秒后可重新輸入密碼。若錯誤次數(shù)達到三次,系統(tǒng)進入死鎖狀態(tài),液晶顯示“try it tomorrow!”,并通過gs
32、m模塊發(fā)送短信通知用戶,5.2 開門功能調(diào)試在進入操作系統(tǒng)后,按“open”鍵進入開門功能。此時,開門燈亮,液晶顯示“open the door.”。5.3 修改密碼功能調(diào)試在進入操作系統(tǒng)后,按“change”鍵進入修改密碼功能。按照液晶指示“input old password”,輸入舊密碼;然后提示“input new password”,輸入新密碼;最后在提示“input it again!”后重復(fù)輸入新密碼。若輸入的密碼都正確,則修改密碼成功,顯示“establishes successful!”,如圖28所示。若密碼有一次錯誤,則需要從輸入舊密碼開始重新操作,當錯誤次數(shù)達到3次時,系
33、統(tǒng)也會進入死鎖狀態(tài)。5.4 報警功能調(diào)試在進入操作系統(tǒng)后,按“alarm”鍵進入開啟報警功能,此時液晶顯示“system startup.”。當煙霧傳感器檢測到煙霧時,啟動中斷程序,蜂鳴器報警,液晶顯示“alarm!”和“on fire!”,并通過gsm發(fā)送短信通知用戶, 當紅外熱釋能傳感器檢測到人體時,啟動中斷程序,蜂鳴器報警,液晶顯示“alarm!”和“steal!”,并通過gsm發(fā)送短信通知用戶。5.5 調(diào)試存在問題整個設(shè)計的難點在于調(diào)試方面,因此在調(diào)試中也遇到了很多問題,但經(jīng)過查看資料和細心分析后,最終都能順利解決。下面總結(jié)以下調(diào)試過程中出現(xiàn)的問題及解決方法。在制板過程中,難免會出現(xiàn)各
34、種差錯而導(dǎo)致電路短路或斷路等現(xiàn)象。為避免此類情況的發(fā)生影響調(diào)試結(jié)果,在調(diào)試前,先用萬用表二極管檔將電路板的線路都測一下,確保電路正常。調(diào)試過程首先驗證lcd1602能否正常運行。先編寫簡單的lcd1602顯示程序,然后通過串口下載hex格式文件到單片機。上電后,液晶只亮但沒有顯示,初步懷疑是rs、rw和e控制位設(shè)置錯誤。但通過萬用表測試控制引腳電平跳變情況,發(fā)現(xiàn)正常,故排除該可能。最后經(jīng)過反復(fù)檢查,發(fā)現(xiàn)原來是因為單片機p2引腳為倒序排列,在畫板圖時沒有留意,導(dǎo)致接錯數(shù)據(jù)引腳。采用飛線修改后,lcd1602能正常顯示。在設(shè)計程序時,考慮到存儲器at24c02全新時存儲內(nèi)容為0,此時才寫入初始化密
35、碼。但經(jīng)過驗證,該設(shè)想不實際,故直接寫入初始化密碼。在設(shè)計功能選擇時,采用按鍵獲得鍵值,再根據(jù)鍵值選擇不同功能函數(shù)的方式來實現(xiàn)的。在調(diào)試時,出現(xiàn)第一次按鍵有反應(yīng),之后都沒有反應(yīng)的現(xiàn)象。經(jīng)過仔細分析后得知,在每次按鍵后,程序跳入不同功能函數(shù)時要將鍵值重設(shè)初值0xff,否則會進入死循環(huán)。調(diào)試過程遇到的最大難題是中斷問題。剛開始時,傳感器沒有檢測到信號,但單片機卻運行中斷程序。通過萬用表測試中斷引腳,發(fā)現(xiàn)電平正常。試過更換單片機芯片和將中斷引腳接地,問題依然存在。最后使用示波器測試中斷引腳,發(fā)現(xiàn)存在干擾信號,使得單片機出現(xiàn)誤中斷現(xiàn)象。故在程序中加入延時檢測中斷信號部分后,干擾信號被排除掉,中斷正常。
36、編程時要注意規(guī)范問題。編程過程中要注意加注釋或分割線,否則,在程序過長時容易變得很亂,不便于查找或更改。程序的結(jié)構(gòu)要設(shè)計的合理,避免上下亂調(diào)用的現(xiàn)象,這樣會使程序更加清晰化。編程前要畫流程圖,這樣會使思路清晰。此外,使用循環(huán)結(jié)構(gòu)體時要注意有退出循環(huán)體的出口,避免程序進入死循環(huán)。6.總結(jié)該設(shè)計在一定程度上解決了傳統(tǒng)機械式防盜的弊端,利用高科技將防盜報警智能化、自動化,可以減少和避免戶主的損失。由于該系統(tǒng)主要利用現(xiàn)代移動通信網(wǎng)絡(luò)作為承載,不需要考慮布線等因素,減少了環(huán)境因素對系統(tǒng)的影響,提高了該系統(tǒng)的可移動性。由于時間的關(guān)系和考慮到元器件的價格等因素,該設(shè)計還存在一些不足的地方。例如,該設(shè)計存在不
37、夠人性化的地方,可通過添加實時時鐘芯片增加時間功能,并在此基礎(chǔ)上加入自動開啟和關(guān)閉系統(tǒng)的功能等等。除此以外,還可以通過增加斷電保護電路增強系統(tǒng)的安全性。在設(shè)計的這段時間里,我對這四年學(xué)習到的知識有了一個全面的認識,也因此學(xué)到了很多東西。這一次的實訓(xùn)設(shè)計,從查找資料、方案確定、電路設(shè)計到pcb制作和調(diào)試,整個過程都是我自己親自去完成。在整個設(shè)計期間,我遇到了很多問題,但經(jīng)過仔細的分析和其他同學(xué)的幫助后,最終都把問題解決,我也從中學(xué)會了解決問題的方法。7.參考文獻1 祁偉,楊事單片機c5l語言教程與實驗m北京:北京航空航天大學(xué)出版社,20062 林桂花基于gsm模塊的數(shù)據(jù)傳輸及實時控制系統(tǒng)j計算機
38、與現(xiàn)代化,2006(2):22243 李曉輝,等基于gsm技術(shù)的汽車防盜系統(tǒng)的設(shè)計j現(xiàn)代電子技術(shù),2008(3):l9l 1934 劉字靜基于gsm的遠程監(jiān)控系統(tǒng)數(shù)據(jù)傳輸j科學(xué)技術(shù)與工程,2007(5):10-145 師俊宏智能家居中的安全防范系統(tǒng)j上海建設(shè)科技,2006,(05)6 游燕,隨善坤一種智能家居安防系統(tǒng)的設(shè)計j中國科技信息,2005,(12)7 陳剛,李葉紫,胡輝基于gsm的車輛防盜搶系統(tǒng)設(shè)計與實現(xiàn)j電氣自動化,2005,(06)8 丁元杰單片微機原理及應(yīng)用m北京:機械工業(yè)出版社,2001:56-69附錄:#include <reg52.h>#include <
39、math.h> #include <stdio.h>#include "key.h"#include "lcd1602.h"#include "gsm.h"#include "at24c02.h"sbit door=p00 ; /定義p00 為門鎖控制標志位sbit speaker=p01; /定義p01為喇叭控制標志位sbit alarm=p03; /定義p03為人體熱釋能檢測標志位sbit int1=p33;sbit int0=p32;uchar pswd6=0; /存儲 輸入鍵值uchar
40、pswd_flash6=0; /存儲密碼uchar pswd_new6=0; /暫存新密碼uchar correct_old=0; /檢測舊密碼標志位uchar correct_new=0; /檢測新密碼標志位uchar correct_old_change=0; /檢測修改舊密碼標志位uchar times; /每次輸入密碼錯誤次數(shù)uchar test; /存儲器檢測int i=0; /密碼位 bit change=0; /修改密碼控制標志位bit set=0; /設(shè)定控制標志位bit delect; /刪除控制吧標志位bit ok; /確定控制標志位bit cancle; /取消控制標志位
41、void send_message(void) /發(fā)送彩信函數(shù)void input(void); /輸入函數(shù)void pswd_error(void); /密碼錯誤函數(shù)void onfire(void); /火災(zāi)報警函數(shù)void steal(void); /盜竊報警函數(shù)void function(void); /功能選擇函數(shù)void change_f(void); /修改密碼函數(shù)void alarm_f(void); /報警功能函數(shù)#include<stc_new_8051.h>#include<string.h>#include<intrins.h&g
42、t;#include<uart1.h>#include<uart2.h>#include<delay_ms.h>#include<init_timer0.h>#define buf1_max 500 /串口1緩存長度sbit yellow_led = p15;/led1黃色指示燈sbit green_led = p16;/led2綠色指示燈sbit red_led = p17;/led3紅色指示燈sbit igt = p25; /啟動tc35i信號sbit k1 = 0xc1;/繼電器unsigned char buf_first_serialb
43、uf1_max;unsigned char runxun_ser1 = 0,flag_buf1_rec = 0;unsigned int start_weizi,end_weizi;unsigned int first_int = 0,second_int = 0;unsigned char timer0_start = 0;unsigned int times = 0,shijian = 0,count_time = 0;/發(fā)送換行回車函數(shù)void send_lr(void)send_hex(0x0d);send_hex(0x0a);/清除串口1緩存數(shù)據(jù)函數(shù)void clr_buf1(voi
44、d)unsigned int k; for(k=0;k<buf1_max;k+) /將緩存內(nèi)容清零 buf_first_serialk = 0x30; first_int = 0; /接收字符串的起始存儲位置/判斷緩存中是否含有指定的字符串函數(shù)unsigned char hand(unsigned char *a) if(strstr(buf_first_serial,a)!=null) return 1;elsereturn 0;/定位字串"+32"符位置void find_dw_text(void)unsigned int k;for(k=0;k<buf1_
45、max;k+)if(buf_first_serialk='+'&&buf_first_serialk+1='3'&&buf_first_serialk+2='2')start_weizi = k+6;break;for(k=0;k<buf1_max;k+)if(buf_first_serialk='o'&&buf_first_serialk+1='k')end_weizi = k-5;break;/送命令函數(shù)/不允許出錯void second_at_comman
46、d(unsigned char *b,unsigned int wait_time) unsigned char i;unsigned char *c;c = b;/保存字符串地址到cclr_buf1(); i = 0;while(i = 0) if(!hand("ok") if(timer0_start = 0)b = c;/將字符串地址給b for (b; *b!='0'b+) send_hex(*b);send_lr();times = 0;shijian = wait_time;timer0_start = 1; elsei = 1;timer0_s
47、tart = 0;clr_buf1(); /發(fā)送命令函數(shù)/允許出錯void second_at_error(unsigned char *b,unsigned int wait_time) unsigned char i;unsigned char *c;c = b;/保存字符串地址到cclr_buf1(); i = 0;while(i = 0) if(!hand("ok")&&(!hand("error") if(timer0_start = 0)b = c;/將字符串地址給b for (b; *b!='0'b+) se
48、nd_hex(*b);send_lr();times = 0;shijian = wait_time;timer0_start = 1; elsei = 1;timer0_start = 0;clr_buf1(); void set_text_mode(void)second_at_command("ate0",3);/取消回顯second_at_command("at+cnmi=2,1",3);/新短信到來時提示second_at_command("at+cmgf=1",3);/pdu模式second_at_command(&quo
49、t;at+csdh=0",3);/text顯示模式/second_at_command("at+cscs="gsm"",3);/使用gsm字符集/second_at_command("at+csmp=17,167,0,8",3);/設(shè)置pdu模式參數(shù)second_at_command("at+cpms="sm","sm","sm"",3);/所有操作都在mt(模塊終端)中進行;second_at_error("at+cmgd=1&quo
50、t;,10);void check_message_rec(void)unsigned int k;if(strstr(buf_first_serial,"+cmti")!=null) /若緩存字符串中含有"+cmti"就表示有新的短信delay_ms(500);clr_buf1(); /while(!hand("ok")&&(!hand("error")/ /clr_buf1(); send_ascii("at+cmgr=1"); /發(fā)送讀取信息指令 send_lr(); de
51、lay_ms(10000); /find_dw_text();for(k=start_weizi;k<=end_weizi;k+)second_serial_port_send(buf_first_serialk);if(strstr(buf_first_serial,"onled1")!=null)yellow_led = 0;else if(strstr(buf_first_serial,"offled1")!=null)yellow_led = 1;else if(strstr(buf_first_serial,"onled3&qu
52、ot;)!=null)red_led = 0;else if(strstr(buf_first_serial,"offled3")!=null)red_led = 1;else if(strstr(buf_first_serial,"onrelay")!=null)k1 = 1;else if(strstr(buf_first_serial,"offrelay")!=null)k1 = 0;/second_at_command("at+cmgd=1",10);second_at_error("at+cmgd=1",10);clr_buf1(); void wait_creg(void)unsigned char i;unsigned int k;i = 0;clr_buf1(); while(i = 0) clr_buf1(); send_ascii("at+creg?");send_lr();delay_ms(5000); for(k=0;k<buf1_max;k+) if(buf
溫馨提示
- 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)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- GB/T 17001.5-2024防偽油墨第5部分:壓敏防偽油墨
- 磁帶錄音機項目運營指導(dǎo)方案
- 真空吸塵器產(chǎn)品供應(yīng)鏈分析
- 沼氣出料機產(chǎn)品供應(yīng)鏈分析
- 安裝照明設(shè)備行業(yè)市場調(diào)研分析報告
- 測繪儀器產(chǎn)品供應(yīng)鏈分析
- 電子鎖細分市場深度研究報告
- 垃圾處理行業(yè)營銷策略方案
- 工業(yè)用和商用貨盤的出租行業(yè)營銷策略方案
- 西洋參市場分析及投資價值研究報告
- 處方書寫規(guī)范-完美版課件
- 金屬切削機床導(dǎo)ppt課件(完整版)
- GB∕T 38075-2019 硬質(zhì)道路石油瀝青
- 學(xué)生兒童新生入學(xué)自我介紹簡歷
- 大學(xué)團支書競選ppt
- DB22∕T 5016-2019 市政工程資料管理標準
- 叉車日常維護保養(yǎng)檢查記錄表
- 神經(jīng)電生理檢查ppt
- 2017年普通高中物理課程標準解讀
- 堡壘機WEB方式運維
- PTN測試操作指引
評論
0/150
提交評論