畢業(yè)設計(論文)-基于單片機的智能窗簾控制系統(tǒng)的設計_第1頁
畢業(yè)設計(論文)-基于單片機的智能窗簾控制系統(tǒng)的設計_第2頁
畢業(yè)設計(論文)-基于單片機的智能窗簾控制系統(tǒng)的設計_第3頁
畢業(yè)設計(論文)-基于單片機的智能窗簾控制系統(tǒng)的設計_第4頁
畢業(yè)設計(論文)-基于單片機的智能窗簾控制系統(tǒng)的設計_第5頁
已閱讀5頁,還剩138頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

I基于單片機的智能窗簾控制系統(tǒng)的設計目前,家庭居住環(huán)境的采光及避光問題主要采用的是手動開閉窗簾,手動開閉不僅費力而且很多方面不夠人性化,會對用戶造成一定的困擾,本文設計的智能窗簾控制系統(tǒng)可以解決這些問題。本文主要闡述了智能窗簾控制器的設計過程。本設計采用STC89C52單片機為控制核心,介紹了基于單片機的智能窗簾控制系統(tǒng),主要從硬件結(jié)構(gòu)原理及軟件編程方面進行講解。硬件采用分塊的模式,對整個系統(tǒng)的電路設計進行分析,分別給出了系統(tǒng)整體結(jié)構(gòu)框圖、光照傳感電路、溫度檢測電路、系統(tǒng)主控模塊電路、電源轉(zhuǎn)換電路、步進電機控制電路、鍵盤顯示電路以及時鐘模塊電路等相關(guān)電路;隨后講述了軟件的編寫過程,也是采用了分塊的模式,主要包括軟件主程序設計,步進電機程序設計,顯示程序設計,鍵盤程序設計以及定時程序設計,每一模塊都畫出了相應的流程圖。本設計重點討論了窗簾自動控制系統(tǒng)的設計過程、硬件選用和軟件調(diào)試等問題。通過本系統(tǒng)最終實現(xiàn)了利用光照強度以及設置時間來控制窗簾自動開閉的仿真。此外本設計還實現(xiàn)了室內(nèi)溫度檢測的功能。關(guān)鍵詞:單片機,智能窗簾,定時控制Atpresent,thefamilylivingenvironmentoflightingandlightavoidanceproblemmainlyadoptsismanuallyopenandclosethecurtains,manualopeningandclosingisnotonlylaboriousandmanynothumaforusers.Inthispaper,thedesignoftheintelligentcurtaincontrolsystemcansolvetheseproblems.Thispapermainlyexpoundsthedesignprocessoftheintelligentcurtaincontroller.ThisdesignusesSTC89C52microcontrollerstructureandsoftwareprogrammingaspectsoftheexplanation.Hardwareublockmodel,carriesontheanalysistothecircuitdesignofthewaregiven,thesystemovertemperaturedetectioncircuit,systemmaincontrolmodulecircuit,powerconversioncircuit,steppermotorcontrolcircuit,keyboardanddisplaycircuitandclockcircuitmodulecircuit.Subsequentlyintroducesthesowritingprocess,butalsousesablockmode,includingsoftware,themaiprogramdesign,programdesignofsteppingmotor,showingdesignprogram,keyboardprogramdesignandprogramtimingchart.Thisdesignfocusesonthedesignprocess,hardwareselectionandsoftwaredebuggingofthecurtainautomaticcontrolsystem.Throughthesystem,thesimulationoftheautomaticblindopeningandclosingofthecurtainisrealiztime.Inaddition,thedesignofindoortemperaturedetectionfunction.Keywords:MCU,intelligentcurtain,timingcontrol IABSTRACT Ⅱ第一章緒論 1.1研究的目的及意義 1.2智能窗簾的國內(nèi)外研究現(xiàn)狀 21.2.1國外研究現(xiàn)狀 21.2.2國內(nèi)研究現(xiàn)狀 21.3主要研究內(nèi)容及章節(jié)安排 21.3.1主要研究內(nèi)容 21.3.2章節(jié)安排 3第二章總體設計方案 42.1方案選取 42.2系統(tǒng)總體設計與工作原理 5第三章硬件設計 63.1STC89C52單片機及相關(guān)電路 63.1.1STC89C52單片機概述 63.1.2晶振電路 73.1.3復位電路 93.1.4電源電路設計 93.2時鐘模塊電路 3.2.1DS1302性能簡介 3.2.2DS1302接口電路設計 3.3鍵盤顯示電路 3.3.1鍵盤電路 3.3.2顯示電路 3.4光敏傳感器電路 3.5步進電機控制電路 3.6溫度檢測電路 20第四章軟件設計 224.1軟件主程序設計 224.2軟件子程序設計 234.2.1步進電機程序設計 234.2.2顯示程序設計 244.2.3鍵盤程序設計 254.2.4定時程序設計 25第五章系統(tǒng)仿真與總結(jié) 27 27V5.2仿真過程與結(jié)果 第六章總結(jié) 參考文獻 36致謝 38附錄A:系統(tǒng)設計原理圖 附錄B:系統(tǒng)設計仿真圖 附錄C:程序清單 1第一章緒論1.1研究的目的及意義21世紀是科技飛速發(fā)展的時代,隨著國民經(jīng)濟的發(fā)展和科學技術(shù)水平的提高,特別是計算機技術(shù),通信技術(shù),網(wǎng)絡技術(shù),控制技術(shù)的迅猛發(fā)展,生活現(xiàn)代化得以實現(xiàn),居住環(huán)境向舒適化,安全化發(fā)展,智能家居也隨之應運而生。由于我國的科技剛剛發(fā)展起來,各種科技產(chǎn)品還明顯的落后于發(fā)達國家,人民的生活也剛剛開始富裕起來,許多智能系統(tǒng)也剛剛在我國興起。但是,發(fā)展前景卻廣闊。這種系統(tǒng)可以為我們營造出高效、舒適、便捷的居住環(huán)境。并且它可以牽動一大批產(chǎn)業(yè)1。如此廣泛的應用,他的前景也必將非常廣闊。隨著科學技術(shù)的飛速發(fā)展,人們的生活觀念也在漸漸的發(fā)生轉(zhuǎn)變。各種家電也在發(fā)生著變化。由于單片機技術(shù)和計算機技術(shù)的的不斷成熟,家電越來越智能化。窗簾也不例外,在歐美等發(fā)達國家,智能窗簾系統(tǒng)已廣泛應用。智能窗簾在國內(nèi)算是高端前沿產(chǎn)業(yè),市場廣闊,有推廣和應用的意義,在發(fā)達的歐美市場智能窗簾已經(jīng)并不新鮮,已經(jīng)廣泛運用于平常百姓家中,所以有必要在國內(nèi)推廣。隨著現(xiàn)代社會的高速發(fā)展,人們對室內(nèi)設計智能化的要求也越來越高,相對于傳統(tǒng)的窗簾,智能窗簾更能滿足人們對于生活品質(zhì)的追求2。在一年四季中,隨著不同的季節(jié)、氣候,人們對于窗簾打開與閉合的需求是不同的;在每一天中,隨著天氣的變化及時間段的不同,人們對于窗簾打開與閉合的需求也是不一致的。這也就為智能窗簾系統(tǒng)的研發(fā)提供了市場價值3]。隨著信息、自動化和通信等技術(shù)的不斷進步,智能窗簾控制系統(tǒng)在家居、大型會議室等領域得到了廣泛的使用,最大限度地滿足人們對窗簾開度的各種需求。尤其在智能家居領域克服傳統(tǒng)的窗簾的許多缺點,為人們提供了更方便、快捷、舒適安全的生活環(huán)境,提供了人類的生活質(zhì)量。智能窗簾控制系統(tǒng)的控制方式大體上有三種:光控,時控,遙控。遙控屬于半自動類;而光控屬于全自動式,但因光敏器件的靈敏度,以及不同季節(jié)的光照度的不同,以及人們對于窗簾開閉在時間上的要求不同,而難以實施和普及。因此,設計一款價格低廉,結(jié)構(gòu)簡單,靈敏度高,抗干擾能力強5],實現(xiàn)時間控制、手動控制功能為一體的智能窗簾,具有十分重要的意義。21.2智能窗簾的國內(nèi)外研究現(xiàn)狀1.2.1國外研究現(xiàn)狀在歐美等發(fā)達國家,電動窗簾已廣泛應用。在十多年前,電動窗簾就已經(jīng)進入我國,可一直沒有大的推廣,這兩年,隨著電控技術(shù)的不斷提高及價格的不斷下降,電動窗簾熱才又卷土重來。在此后短短幾年時間里,生產(chǎn)商由最初的幾家增加到如今的百余家,發(fā)展十分迅速。據(jù)查我國目前共有170多種電動窗簾獲得國家專利,其技術(shù)大同小異,但售價在五百到數(shù)千元居多,共同缺點是價格高、靈活性不強,而且自動化程度不高。盡管遙控自動窗簾系統(tǒng)在國內(nèi)是一個新興的行業(yè),但是,它正以不可抵擋之勢迅速崛起。遙控自動窗簾系統(tǒng)走進中國以來,在短短四年時間里,自動窗簾系統(tǒng)生產(chǎn)商由最初的幾家公司增加到如今的百余家,其行業(yè)發(fā)展迅速是目前國內(nèi)任何其他行業(yè)所無法比擬的。1.2.2國內(nèi)研究現(xiàn)狀目前,我國遙控自動窗簾系統(tǒng)生產(chǎn)廠商、分銷商、集成商已形成相當規(guī)模,不少國內(nèi)知名企業(yè)紛紛涉足遙控自動窗簾系統(tǒng)行業(yè),如青島海爾、清華同方、TCL等,并涌現(xiàn)出一些較具影響力的智能家居專業(yè)廠商,如上海索博智能電子有限公司、北京九州易居科技有限公司、天津瑞朗智能家居電子科技有限公司、深圳市正星特科技有限公司等。在應用范圍拓展方面,除了寫字樓、酒店、演播廳、教學樓等大型公共場所外,自動窗簾產(chǎn)品還走進了普通家庭,展示了巨大的應用潛力。隨著自動窗簾熱潮在世界范圍內(nèi)興起、電子技術(shù)的飛速發(fā)展以及人們生活水平的不斷提高,電動窗簾的自動化程度不斷提高,從目前的發(fā)展趨勢來看,在未來的20年時間里,自動窗簾行業(yè)將成為中國的主流行業(yè)之一,其市場的發(fā)展前景是非常廣闊的。1.3主要研究內(nèi)容及章節(jié)安排1.3.1主要研究內(nèi)容根據(jù)自動窗簾的發(fā)展現(xiàn)狀來規(guī)劃其智能功能,從而對窗簾進行智能控制,設計的電動窗簾控制系統(tǒng)主要實現(xiàn)以下幾大功能:1)手動控制:該功能使電動窗簾具有手動正轉(zhuǎn)、手動反轉(zhuǎn)和手動停止的功能,該功能是根據(jù)用戶的需求通過按鍵進行窗簾的開關(guān),此功能可以使窗簾的開閉處于任何一種狀態(tài)。2)半自動手動控制:半自動手動控制是3在需要關(guān)閉和打開窗簾的時候,只需要人工按一下“正轉(zhuǎn)”或“反轉(zhuǎn)”按鍵后,窗簾到位自動停止。窗簾的正轉(zhuǎn)、反轉(zhuǎn)和停止功能可由單片機輸出電平來控制步進電機的運轉(zhuǎn)以實現(xiàn)。此功能可以使窗簾通過按鍵一次性開閉窗簾。3)光照控制:系統(tǒng)可以根據(jù)用戶設定的光照強度值通過感光器采集光照自動開光窗簾。4)時間控制:此功能是根據(jù)用戶設定的時間一次性開關(guān)窗簾,并顯示當前溫度。其中采用步進電機為執(zhí)行原件,通過單片機對驅(qū)動芯片輸出不同的高、低電平來控制電機的正、反轉(zhuǎn),完成窗簾的開、關(guān)動作;以光敏電阻,溫度傳感器作為傳感原件,光敏電阻是利用半導體的光電效應制成的一種電阻值隨入射光的強弱而改變的電阻器,入射光強,電阻減小,入射光弱,電阻增大。窗簾在光照控制模式下,當光強高于所設定的標準值時,窗簾會自動關(guān)閉,反之,當光強低于該標準值時,窗簾將自動打開。溫度傳感器用來檢測當前溫度,并顯示當前溫度值。89C52單片機作為控制芯片,輔助鍵盤和顯示,實現(xiàn)自動窗簾的多項智能功能。1.3.2章節(jié)安排智能窗簾控制系統(tǒng)設計過程主要分為以下幾個章節(jié):(1)緒論:介紹選題意義,目前國內(nèi)外研究現(xiàn)狀,主要研究內(nèi)容及章節(jié)安排。(2)總體設計方案:介紹智能窗簾控制系統(tǒng)的總體設計方案的選取以及硬件設計的總體概況。(3)硬件設計:智能窗簾控制系統(tǒng)以89C51單片機為核心,系統(tǒng)的硬件部分包括:89C52,晶振電路,復位電路,時鐘電路,鍵盤電路,顯示電路,A\D轉(zhuǎn)換電路,光敏傳感器,步進電機,溫度模塊等。(4)軟件設計:介紹各個功能模塊的設計流程以及設計思路。智能窗簾控制系統(tǒng)的程序分析與設計:包括主程序設計,鍵盤程序設計,定時程序設計,步進電機程序設計,顯示程序設計等。(5)系統(tǒng)仿真與總結(jié):對智能窗簾控制系統(tǒng)進行結(jié)果仿真,分析總結(jié)設計過程。4第二章總體設計方案智能窗簾控制系統(tǒng)總體設計方案是確定能夠滿足設計要求的總體方案的環(huán)節(jié)。本章從系統(tǒng)功能需求出發(fā),規(guī)劃并確定了系統(tǒng)的總體結(jié)構(gòu),并在此基礎上考慮了系統(tǒng)的可擴展性及可實現(xiàn)性。單片機在各種電子產(chǎn)品中的應用已經(jīng)越來越廣泛,很多的電子產(chǎn)品利用單片機所取得的便利性得到了人們的好評,針對單片機控制的自動窗簾控制系統(tǒng)的智能化要求,實現(xiàn)其自動控制的方案有兩種:方案(一)基于溫度檢測以及聲控檢測器件的自動控制。方案(二)基于光照強度器件以及時鐘模塊的自動控制。這二個方案都是基于單片機控制的,采用步進電機控制以及液晶顯示,不同的設計部分在于檢測器件的選取上。方案(一)的系統(tǒng)框圖如圖2.1:聲控模塊電源模塊鍵盤模塊顯示模塊溫度模塊圖2.1方案(一)系統(tǒng)框圖方案(一)與方案(二)的區(qū)別主要在于檢測器件的應用,方案(一)采用溫度采集和聲音檢測元件,通過設定的溫度來控制窗簾的開閉,以減少光照對室內(nèi)的溫度影響,利用聲音控制雖然方便性有所提高,但是其誤差較大。方案(二)采用的時鐘模塊以及光照采集元件,通過設定光照值來控制窗簾的開閉,以實現(xiàn)白天開窗簾,晚上關(guān)窗簾的5鍵盤模塊鍵盤模塊功能,利用設定的時間來控制窗簾的開閉,實用性更強。綜合考慮以上因素,系統(tǒng)設計采用方案(二)。方案(二)的系統(tǒng)框圖如圖2.2:電源模塊鍵盤模塊光照檢測圖2.2方案(二)系統(tǒng)框圖2.2系統(tǒng)總體設計與工作原理智能窗簾控制系統(tǒng)的總體結(jié)構(gòu)框圖如圖2.3所示光敏電阻A/D轉(zhuǎn)換電路溫度模塊單片機步進電機顯示模塊窗簾圖2.3智能窗簾控制系統(tǒng)的總體結(jié)構(gòu)框圖由光敏傳感器來探測外界的光強,從傳感器出來的信號輸入到A/D轉(zhuǎn)換器。轉(zhuǎn)換后的信號由單片機控制電機,來實現(xiàn)電機的運行與停止。溫度模塊用來采集溫度,并且將采集到的溫度通過顯示模塊顯示。顯示部件用來顯示電動窗簾控制器的各種狀態(tài)信息。鍵盤是主要的輸入設備,控制單片機的各種參量。[9電源模塊用來提供單片機所需電壓。6第三章硬件設計3.1STC89C52單片機及相關(guān)電路在總體硬件包括單片機外圍電路,電源模塊、按鍵模塊、LCD1602液晶顯示模塊、步進電機驅(qū)動模塊、DS1302時鐘模塊、AD模數(shù)轉(zhuǎn)換模塊、光照檢測模塊和溫度檢測模塊組成。單片機外圍電路提供各模塊所需的5V電源。信號檢測后的是模擬信號,經(jīng)過A/D轉(zhuǎn)換后輸出數(shù)字信號給單片機。單片機的P2口控制步進電機的運行從而控制窗簾的升降。顯示和鍵盤讓人機交換變得更容易。單片機是將中央處理器(CPU)、隨機存儲器(RAM)、只讀存儲器(ROM或EPROM)、定時器芯片和一些輸入/輸出接口電路集成在一個芯片上的微控制器。89C52是INTEL公司MCS-51系列單片機中基本的產(chǎn)品,它采用ATMEL公司CMOS工藝技術(shù)制造的高性能8位單片機,屬于標準的MCS-51的HCMOS產(chǎn)品。[10]它結(jié)合了CMOS的高速和高密度技術(shù)及CMOS的低功耗特征,它基于標準的MCS-51單片機體系結(jié)構(gòu)和指令系統(tǒng)。狗定時器,內(nèi)置4KBEEPROM,MAX810復位電路,3個16位定時器/計數(shù)器,4個外部中斷,一個7向量4級中斷結(jié)構(gòu)(兼容傳統(tǒng)51的5向量2級中斷結(jié)構(gòu)),全雙工串行口。另外STC89C52可降至0Hz靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式??臻e模式下,CPU停止工作,允許RAM、定時器/計數(shù)器、串口、中斷繼續(xù)工作。掉電保護方式下,RAM內(nèi)容被保存,振蕩器被凍結(jié),單片機一切工作停止,直到下一個中斷或硬件復位為止。最高運作頻率35MHz,6T/12T可選。89C52是INTEL公司MCS-51系列單片機中基本的產(chǎn)品,它采用ATMEL公司CMOS工藝技術(shù)制造的高性能8位單片機,屬于標準的MCS-51的HCMOS產(chǎn)品。51系列優(yōu)點之一是它從內(nèi)部的硬件到軟件有一套完整的按位操作系統(tǒng),稱作位處理器,或布爾處理器。它的處理對象不是字或字節(jié)而是位。它不光能對片內(nèi)某些特殊功能寄存器的某位進行處理,如傳送、置位、清零、測試等,還能進行位的邏輯運算,其功能十分7完備,使用起來得心應手。雖然其他種類的單片機也具有位處理功能,但能進行位邏輯運算的實屬少見。51系列在片內(nèi)RAM區(qū)間還特別開辟了一個雙重功能的地址區(qū)間,十六個字節(jié),單元地址20H~2FH,它既可作字節(jié)處理,也可作位處理(作位處理時,合128個位,相應位地址為OOH~7FH),使用極為靈活。這一功能無疑給使用者提供了極大的方便,因為一個較復雜的程序在運行過程中會遇到很多分支,因而需建立很多標志位,在運行過程中,需要對有關(guān)的標志位進行置位、清零或檢測,以確定程序的運行方向。而實施這一處理(包括前面所有的位功能),只需用一條位操作指令即可。51系列的另一個優(yōu)點是乘法和除法指令,這給編程也帶來了便利。八位除以八位的除法指令,商為八位,精度嫌不夠,用得不多。而八位乘八位的乘法指令,其積為十六位,精度還是能滿足要求的,用的較多。作乘法時,只需一條指令就行了,即MULAB(兩個乘數(shù)分別在累加器A和寄存器B中。積的低位字節(jié)在累加器A中,高位字節(jié)在寄存器B中)。很多的八位單片機都不具備乘法功能,作乘法時還得編上一段子程序調(diào)用,十分不便。在51系列中,還有一條二進制一十進制調(diào)整指令DA,能將二進制變?yōu)锽CD碼,這對于十進制的計量十分方便。而在其他的單片機中,則也需調(diào)用專用的子程序才行。STC89C52單片機的引腳排列如圖3.1所示。電路中的晶振即石英晶體震蕩器。由于石英晶體震蕩器具有非常好的頻率穩(wěn)定性和抗外界干擾的能力,所以,石英晶體震蕩器是用來產(chǎn)生基準頻率的。通過基準頻率來控制電路中的頻率的準確性。同時,它還可以產(chǎn)生振蕩電流,向單片機發(fā)出時鐘信號。晶振電路中的電容C1和C2的典型值通常選擇為30μF左右,該電容的大小會影響振蕩電路頻率的高低、振蕩器的穩(wěn)定性和起振的快速性。[10晶體振蕩頻率的范圍通常在1.2~12MHz。晶體的頻率越高,系統(tǒng)的時鐘頻率越快,單片機的運行速度越快。但反過來,運行速度對于存儲器的速度要求就越高,對印刷電路板的工藝要求也就越高,即要求線間的寄生電容要小。晶體和電容應該盡可能安裝得與單片機芯片靠近,以減少寄生電容,更好地保證振蕩器穩(wěn)定、可靠地工作。89C52常選擇振蕩頻率12MHz的石英晶體。8346789346789 P3.0/RxDP3.1/TxDP3.2/INT0P3.3/TNT1P3.6/WRP3.7/RDXTAL1圖3.1STC89C52單片機引腳排列圖接外部晶體的一個引腳,XTAL2接外晶體的另一端。在單片機內(nèi)部,接至上述振蕩器的反相放大器的輸出端。采用外部振蕩器時,對HMOS單片機,該引腳接外部振。在石英晶體的兩個管腳加交變電場時,它將會產(chǎn)生一定頻率的機械變形,而這種機械振動又會產(chǎn)生交變電場,上述物理現(xiàn)象稱為壓電效應。一般情況下,無論是機械振動的振幅,還是交變電場的振幅都非常小。但是,當交變電場的頻率為某一特定值時,振幅驟然增大,產(chǎn)生共振,稱之為壓電振蕩。這一特定頻率就是石英晶體的固有頻率,也稱諧振頻率。石英晶振起振后要能在XTAL2線上輸出一個3V左右的正弦波,以便使MCS-51片內(nèi)的OSC電路按石英晶振相同頻率自激振蕩。電容C1和C2可以幫助起振,調(diào)節(jié)它們可以達到微調(diào)fOSC的目的。9CCXTAL2XTAL圖3.2晶振電路3.1.3復位電路復位是單片機的初始化操作,只需要給89C52的復位引腳RST加上大于2個機器周期(即24個時鐘震蕩周期)的高電壓就可以使89C52復位。復位時,單片機初始化為0000H,從0000H單元開始執(zhí)行程序。除了進入系統(tǒng)的正常初始化之外,當程序運行錯誤(如程序跑飛)或者操作錯誤使系統(tǒng)處于鎖死狀態(tài)時,也需要復位鍵使RST腳為高電平,使89C52擺脫“跑飛”或者“死鎖”狀態(tài)而重新啟動。復位電路圖如圖3.3所示。3.1.4電源電路設計單片機工作需要使用5V電壓,因此需要給單片機設計電源電路。圖3.4是單片機的電源電路。它采用LM7805三端集成穩(wěn)壓器,可輸出+5V的直流電壓供電。三端集成穩(wěn)壓器LM7805,總共有三條引腳,分別是輸入端、接地端和輸出端。用LM78\LM79系列三端穩(wěn)壓器來組成穩(wěn)壓電源所需的外圍元件極少,電路內(nèi)部還有過流、過熱及調(diào)整管的保護電路,使用起來可靠、方便。其內(nèi)部結(jié)構(gòu)圖如圖3.5所示。123456789P1.1P1.2P1.3P1.4P1.5P1.6RSTP3.5/T1STC89C52圖3.3復位電路56VOUT321c470uFU5VGND1TT調(diào)整管恒流源調(diào)整管安全工作區(qū)保護RscRARB誤差放大基準電壓啟動電路過熱保護地3.2時鐘模塊電路本設計需要窗簾在給定的時間自動開和關(guān),所以需要用到定時器,而為了保證單片機與外界時鐘一致,要用到一個實時時鐘電路。這里使用DS1302實時時鐘芯片來完成這項功能。3.2.1DS1302性能簡介公司推出的涓流充電時鐘芯片,內(nèi)含有一個實時時鐘/日歷和31字節(jié)靜態(tài)RAM,通過簡單的串行接口與單片機進行通信。實時時鐘/日歷電路提供秒、分、時、日、周、月、年的信息,每月的天數(shù)和閏年的天數(shù)可自動調(diào)整。時鐘操作可通過AM/PM指示決定采用24或12小時格式。DS1302與單片機之間能簡單地采用同步串行的方式進行通信,僅需用到三個口線:(1)RES復位(2)I/0數(shù)據(jù)線(3)SCLK的讀/寫數(shù)據(jù)以一個字節(jié)或多達31個字節(jié)的字符組方式通信。DS1302工作時功耗很低保持數(shù)據(jù)和時鐘信息時功率小于1mW。DS1302是由DS1202改進而來增加了以下的特性:雙電源管腳用于主電源和備份電源供應,Vcc1為可編程涓流充電電源,附加七個字節(jié)存儲器。它廣泛應用于電話、傳真、便攜式儀器以及電池供電的儀器儀表等產(chǎn)品領域。下面將主要的性能指標作一綜合:(1)實時時鐘具有能計算2100年之前的秒、分、時、日、星期、月、年的能力,還有閏年調(diào)整的能力。(3)串行I/0口方式使得管腳數(shù)量最少。(4)寬范圍工作電壓2.05.5V。(5)工作電流2.0V時,小于300nA。(6)讀/寫時鐘或RAM數(shù)據(jù)時有兩種傳送方式單字節(jié)傳送和多字節(jié)傳送字符組方(7)8腳DIP封裝或可選的8腳SOIC封裝根據(jù)表面裝配。(10)可選工業(yè)級溫度范圍-40+85。(11)雙電源管用于主電源和備份電源供應。DS1302的外部引腳功能說明如圖3.6所示。各引腳的功能為:(1).VCC1:主電源。三線接口時的雙向數(shù)據(jù)線。(5).CE:輸入信號,在讀、寫數(shù)據(jù)期間,必須為高。該引腳有兩個功能:第一,CE開始控制字訪問移位寄存器的控制邏輯;其次,CE提供結(jié)束單字節(jié)或多字節(jié)數(shù)據(jù)傳輸?shù)姆椒?。圖3.6DS1302外部引腳分配圖3.2.2DS1302接口電路設計DS1302時鐘芯片和STC89C52單片機的接口電路如圖3.7所示。DS1302與單片機的源,X1與X2外接一個32.768kHZ晶振,為芯片提供計時脈沖。VCCD1可VCC22X1X24GND5DS130278P1.0P1.1P1.2P1.3P1.4P1.6P1.7VCC1 A1STC89C52234876563圖3.7DS1302與單片機的接口電路3.3鍵盤顯示電路3.3.1鍵盤電路鍵盤在由單片機控制的窗簾自動控制系統(tǒng)中的主要作用是通過按鍵向單片機輸入指令,其中主要包括設定時間,控制窗簾的開關(guān)等等功能,是人工控制單片機的主要手本設計中的鍵盤采用了五個按鍵。S2鍵為自動手動切換鍵。S3鍵為退出鍵,S4鍵S2鍵可以在手動、自動狀態(tài)切換。S6鍵為設置鍵,按下S6鍵有三種選項,可分別按S4-,S5+來設定窗簾的開啟時間,關(guān)閉時間,定時開關(guān)窗簾時間以及光線值。按鍵接口電路如圖3.8所示:圖3.8鍵盤電路3.3.2顯示電路顯示部分則主要用于顯示、設置時間,以及顯示溫度。在日常生活中,我們對液晶顯示器并不陌生。液晶顯示模塊已作為很多電子產(chǎn)品的通用器件,如在計算器、萬用表、電子表及很多家用電子產(chǎn)品中都可以看到,顯示的主要是數(shù)字、專用符號和圖形。在單片機與人的人機交流界面中,一般的輸出方式有以下幾種:發(fā)光管、LED數(shù)碼管、液晶顯示器。本設計中采用的是液晶顯示器作為輸出器件的。在單片機系統(tǒng)中應用液晶顯示器作為輸出有以下幾個優(yōu)點:(1)顯示質(zhì)量高:由于液晶顯示器每一個點在收到信號后就一直保持那種色彩和亮度,恒定發(fā)光,而不像陰極射線管顯示器(CRT)那樣需要不斷刷新新亮點。因此,液晶顯示器畫質(zhì)高且不會閃爍。(2)數(shù)字式接口液晶顯示器都是數(shù)字式的,和單片機系統(tǒng)的接口更加簡單可靠,操作更加方便。(3)體積小、重量輕:液晶顯示器通過顯示屏上的電極控制液晶分子狀態(tài)來達到顯示的目的,在重量上比相同顯示面積的傳統(tǒng)顯示器要輕得多(4)低功耗:相對而言,液晶顯示器的功耗主要消耗在其內(nèi)部的電極和驅(qū)動IC上,因而耗電量比其它顯示器要少得多。字符型液晶顯示模塊是一種專門用于顯示字母、數(shù)字、符號等點陣式LCD,目前常用16*1,16*2,20*2和40*2行等的模塊。本設計采用的液晶顯示器為1602字符型液1602LCD主要技術(shù)參數(shù):1602液晶顯示器引腳接口說明:③第3腳:VL為液晶顯示器對比度調(diào)整端,接正電源時對比度最弱,接地時對比RS和R/W共同為低電平時可以寫入指令或者顯示地址,當RS為低電平R/W為高電平時⑦第7~14腳:D0~D7為8位雙向數(shù)據(jù)線。⑨第16腳:背光源負極。1602液晶模塊內(nèi)部的控制器共有11條控制指令如表3.1所示:序號指令RS1清顯示00000000012光標返回00000000*3置輸入模式00000001S4顯示開/關(guān)控制0000001DCB5光標或字符移位000001**6置功能00001NF**7置字符發(fā)生存貯器地址0001字符發(fā)生存貯器地址8置數(shù)據(jù)存貯器地址001顯示數(shù)據(jù)存貯器地址9讀忙標志或地址0計數(shù)器地址寫數(shù)到CGRAM或DDRAM10要寫的數(shù)據(jù)內(nèi)容從CGRAM或DDRAM讀數(shù)11讀出的數(shù)據(jù)內(nèi)容1為高電平、0為低電平)指令1:清顯示,指令碼01H,光標復位到地址00H位置。指令2:光標復位,光標返回到地址00H。指令3:光標和顯示模式設置I/D:光標移動方向,高電平右移,低電平左移S:屏指令4:顯示開關(guān)控制。D:控制整體顯示的開與關(guān),高電平表P00P00P03p06BGVCCBGGNIP07表示關(guān)顯示C:控制光標的開與關(guān),高電平表示有光標,低電平表示無光標B:控制光標是否閃爍,高電平閃爍,低電平不閃爍。指令5:光標或顯示移位S/C:高電平時移動顯示的文字,低電平時移動光標。指令6:功能設置命令DL:高電平時為4位總線,低電平時為8位總線N:低電平時為單行顯示,高電平時雙行顯示F:低電平時顯示5x7的點陣字符,高電平時顯示5x10的點陣字符。指令7:字符發(fā)生器RAM地址設置。指令9:讀忙信號和光標地址BF:為忙標志位,高電平表示忙,此時模塊不能接收命令或者數(shù)據(jù),如果為低電平表示不忙。指令10:寫數(shù)據(jù)。指令11:讀數(shù)據(jù)。液晶顯示器電路如圖3.9所示:IRSE12345689ⅡBP32INT0PSENP3.6.WRP24XTAL2P22XTALIP21圖3.93.4光敏傳感器電路vccPRI82441602液晶顯示電路窗簾自動控制系統(tǒng)的光控功能是可以根據(jù)用戶設定的光照強度值通過感光器采集光照自動開關(guān)窗簾,因此需要用到光照傳感元器件,在本設計中采用了光敏電阻。光敏電阻又稱光導管,常用的制作材料為硫化鎘,另外還有硒、硫化鋁、硫化鉛和硫化鉍等材料。這些制作材料具有在特定波長的光照射下,其阻值迅速減小的特性。這是由于光照產(chǎn)生的載流子都參與導電,在外加電場的作用下作漂移運動,電子奔向電源的正極,空穴奔向電源的負極,從而使光敏電阻器的阻值迅速下降。光敏電阻屬半導體光敏器件,除具靈敏度高,反應速度快,光譜特性及r值一致性好等特點外,在高溫,多濕的惡劣環(huán)境下,還能保持高度的穩(wěn)定性和可靠性,可廣泛應用于照相機,太陽能庭院燈,草坪燈,驗鈔機,石英鐘,音樂杯,禮品盒,迷你小夜燈,光聲控開關(guān),路燈自動開關(guān)以及各種光控玩具,光控燈飾,燈具等光自動開關(guān)控制領域。光敏控制電路是由運算放大器組成比較電路,在運算放大器同相輸入端用兩個電阻分壓,得到的電壓值作為基準電壓,在反相輸入端則用光敏電阻對光進行采集,由于光敏電阻具有根據(jù)光照強度阻值變化的特點,可以得到反向輸入端的電壓值。然后將得到的兩組電壓值進行比較,比較后的信號經(jīng)過A/D轉(zhuǎn)換送入單片機89C52的P1接口,單片機處理后輸出命令控制電機正轉(zhuǎn)或者反轉(zhuǎn),以實現(xiàn)通過光照控制窗簾的開關(guān)功能。應用光控原理工作,天亮窗簾自動打開,天黑窗簾自動關(guān)閉。由于光敏電阻信號檢測后得到的是模擬信號,所以光控電路采集到的模擬信號需要經(jīng)過A/D轉(zhuǎn)換后輸出數(shù)字信號給單片機。A/D轉(zhuǎn)換的作用是進行模數(shù)轉(zhuǎn)換,把接收到的模擬信號轉(zhuǎn)換成數(shù)字信號輸出。在選擇A/D轉(zhuǎn)換時,先要確定A/D轉(zhuǎn)換精度、轉(zhuǎn)換速度以及轉(zhuǎn)換位數(shù)等,A/D轉(zhuǎn)換的位數(shù)確定與整個測量控制系統(tǒng)所需測量控制的范圍和精度有關(guān),在自定窗簾控制系統(tǒng)中采用了是美國國家半導體公司生產(chǎn)的一種8位分辨率、雙通道A/D轉(zhuǎn)換芯片。圖3.10光敏電阻電路圖圖3.11光控電路原理圖由運放組成比較電路,同向輸入端有兩個電阻分壓得到一個電壓值,作為基準電壓進行比較,而反相輸入端用一個光敏二極管對外部環(huán)境的光線進行采集,利用光敏二極管暗時電阻大,亮時電阻小的特點,來確定反向輸入端的電壓值。再兩者進行比較,比較后的信號再送入單片機的PO口,從而通過單片機來控制電機的正反轉(zhuǎn)。來實現(xiàn)天亮窗簾自動打開,天黑窗簾自動關(guān)閉這一自動控制功能。本設計采用了型號為GL3526的光敏電阻。光敏電阻電路圖如圖3.10所示。光控電路原理圖如圖3.11所示。3.5步進電機控制電路步進電機為一種數(shù)字伺服執(zhí)行元件,具有結(jié)構(gòu)簡單、運行可靠、控制方便、控制性能好等優(yōu)點,廣泛應用在數(shù)控機床、機器人、自動化儀表等領域。為了實現(xiàn)步進電機的簡易運動控制,一般以單片機作為控制系統(tǒng)的微處理器,通過步進電機專用驅(qū)動芯片實現(xiàn)步進電機的速度和位置定位控制?,F(xiàn)在比較常用的步進電機包括反應式步進電機(vr)、永磁式步進電機(pm)、混合式步進電機(hb)和單相式步進電機等。永磁式步進電機一般為兩相,轉(zhuǎn)矩和體積較小,步進角一般為7.5度或15度;反應式步進電機一般為三相,可實現(xiàn)大轉(zhuǎn)矩輸出,步進角一般為1.5度,但噪聲和振動都很大。反應式步進電機的轉(zhuǎn)子磁路由軟磁材料制成,定子上有多相勵磁繞組,利用磁導的變化產(chǎn)生轉(zhuǎn)矩。本設計采用的步進電機是混合式步進電機?;旌鲜讲竭M電機混合了永磁式和反應式步進電機的優(yōu)點它又分為兩相和五相:兩相步進角一般為1.8度而五相步進角一般為0.72度。這種步進電機的應用最為廣泛。所以,本設計采用28BYJ-48型四相八拍步進步進電機28BYJ-48型四相八拍電機,電壓為DC5V—DC12V。當對步進電機施加一系列連續(xù)不斷的控制脈沖時,它可以連續(xù)不斷地轉(zhuǎn)動。每一個脈沖信號對應步進電機的某一相或者兩相繞組的通電狀態(tài)改變一次,也就對應轉(zhuǎn)子轉(zhuǎn)過一定的角度(一個步距角)。當通電狀態(tài)改變完成一個循環(huán)時,轉(zhuǎn)子轉(zhuǎn)過一個齒距。步進電機驅(qū)動方式如表3.2:表3.2步進電機驅(qū)動方式導線顏色123456785紅++++++++4橙一一3黃一—一2粉一一一1藍—一—28BYJ-48步進電機技術(shù)指標:1.額定電壓:5VDC。2.減速比:1/16。3.步距角:5.625/16。4.驅(qū)動方式:四相八拍。5.牽入轉(zhuǎn)距:≥200gf.cm(工作頻率:100Hz)。6.打滑扭力:≥500~1600gf.cm。7.溫升:≤55K(5VDC工作頻率:100Hz)。8.噪音:≤35dB(空載,100Hz,水平距馬達10cm)。由于單片機接口信號不夠大需要通過ULN2003放大再連接到相應的電機接口。ULN2003晶體管陣列:ULN2003是一個單片高電壓、高電流的達林頓晶體管陣列集成電路。它是由7對NPN達林頓管組成的,它的高電壓輸出特性和陰極箍位二極管可以轉(zhuǎn)換感應負載。單個達林頓對的集電極電流是500mA。達林頓管并聯(lián)可以承受更大的電流。此電路主要應用于繼電器驅(qū)動器,字錘驅(qū)動器,燈驅(qū)動器,顯示驅(qū)動器(LED氣體放電),線路驅(qū)動器和邏輯緩沖器。ULN2003的每對達林頓管都有一個2.7kΩ串聯(lián)電阻,可以直(1)500mA額定集電極電流(單個輸出)。(2)高電壓輸出:50V。(3)輸入和各種邏輯類型兼容。(4)繼電器驅(qū)動器。步進電機控制系統(tǒng)的方框圖以及其控制系統(tǒng)的電路圖如圖3.12與3.13所示。圖3.圖3.13步進電機控制系統(tǒng)電路圖脈沖信號脈沖控制器功率驅(qū)動電路步進電機負載圖3.12步進電機控制系統(tǒng)方框圖9U214步進電機2345678在使用兩相混合式步進電機時需注意,該種電機在低速運轉(zhuǎn)時有振動和噪聲,是其固有的缺點、一般可采用以下方案來克服:(1)如步進電機正好工作在共振區(qū),可通過改變減速比等機械傳動避開共振區(qū);(2)采用帶有細分功能的驅(qū)動器,這是最常用的、最簡便的方法;(3)換成步距角更小的步進電機,如三相或五相步進電機;(4)在電機軸上加磁性阻尼器,市場上已有這種產(chǎn)品,但機械結(jié)構(gòu)改變較大。3.6溫度檢測電路本設計溫度檢測使用的溫度傳感器的型號為DS18B20。DS18B20采用單總線通信協(xié)議。它有獨特的單線接口方式,DS18B20在與微處理器連接時僅需要一條口線即可實現(xiàn)微處理器與DS18B20的雙向通訊。本系統(tǒng)只用到單片機的一條口線,即P1.0,如圖3.14所示。由于采用單總線數(shù)據(jù)傳輸方式,DS18B20的數(shù)據(jù)I/0均由同一條線完成,因此,對讀寫的操作時序要求嚴格。為了保證DS18B20的嚴格I/0時序,需要做較精確的延時。DS18B20采用+5V電源供電。這些在程序中有體現(xiàn)。圖3.圖3.14溫度模塊DS18B20口23DATAVCC第四章軟件設計智能窗簾控制系統(tǒng)的程序分析與設計包括主程序設計,步進電機程序設計,顯示程序設計,鍵盤程序設計,定時程序設計幾部分。本章節(jié)系統(tǒng)的介紹了智能窗簾控制系統(tǒng)的主程序和各主要功能子程序的設計流程。4.1軟件主程序設計主程序主要完成單片機初始化,關(guān)中斷,菜單顯示內(nèi)容初始化,按鍵掃描,電機運行,計時等功能。主程序的流程圖如圖4.1所示。開始關(guān)中斷設置堆棧復位初始化設定鍵?N顯示N有鍵操作?Y設定時間N電機控制鍵Y電機工作Y鍵碼分析命令鍵?N數(shù)碼鍵處理Y開始計時到點了?NN工作完成?Y電機停止圖4.1主程序流程圖主程序流程說明:電路主要分為以下幾個部分,分別是電源部分、顯示部分、按鍵部分、步進電機控制部分、A\D轉(zhuǎn)換部分、單片機主控器件部分,各部分具有不同的子啟動主程序,先關(guān)中斷并且設置堆棧,接著初始化寄存器,初始化顯示內(nèi)容;然后執(zhí)行按鍵查詢,執(zhí)行相應的操作。如果是設定鍵,則設定時間,開始計時;到時間后步進電機開始相應的工作,工作完成后停機。如果是電機控制鍵,則也執(zhí)行相應的工作。如果都不是,則是復位鍵,采取復位操作。4.2軟件子程序設計4.2.1步進電機程序設計步進電機是操控窗簾開閉的主要執(zhí)行器件,其設計主要是按照單片機指令以及按鍵指令進行正轉(zhuǎn)或者反轉(zhuǎn)。圖4.2是步進電機工作流程圖。開始步進電機N是正轉(zhuǎn)嗎?Y傳送正轉(zhuǎn)脈沖序列傳送反轉(zhuǎn)脈沖序列N傳送步數(shù)是否完成?Y傳送步數(shù)是杏完成YN返回圖4.2步進電機工作流程圖(1)判斷旋轉(zhuǎn)方向;(2)按順序傳送控制脈沖;(3)判斷所要求的控制步數(shù)是否傳送完畢??傊灰匆欢ǖ捻樞蚋淖働2.0-P2.3四位通電的狀況,即可控制步進電機依選定的方向步進。而對于節(jié)拍比較多的控制程序,通常采用循環(huán)程序進行設計。顯示子程序顯示器緩沖起始地址60H→R2顯示位代碼01H→R2位代碼R2→89C52取顯示數(shù)據(jù)查表轉(zhuǎn)換成顯示代碼→89C52延時指針RO加16位顯示完嗎?R2左移一位返回圖4.3顯示部分子程序流程圖4.2.2顯示程序設計顯示程序開始后,起始地址60H發(fā)送到R0,01H發(fā)送至顯示位代碼R2,再將位代碼發(fā)送到單片機A口,單片機取顯示數(shù)據(jù)查表轉(zhuǎn)換成顯示代碼發(fā)送至單片機B口,延時2ms,指針RO加1,然后判斷6位顯示是否完成。如果完成則返回,沒完成則位代碼R2左移一位,繼續(xù)顯示查表,一直到6位顯示完成后返回。顯示部分子程序流程圖如圖4.3所示。4.2.3鍵盤程序設計在操作按鍵時,無論是按下還是松開,觸點在閉合和斷開時均會產(chǎn)生抖動,此時邏輯電平是不穩(wěn)的,如果得不到正確處理,可能會引起單片機對按鍵命令的錯誤執(zhí)行。解決這個問題的簡單方法是利用軟件延時。在單片機處理按鍵操作后都延時6ms,如果確定是按鍵后再延時12ms,這樣基本可以避免鍵盤的抖動。然后由單片機進行鍵碼分析,并執(zhí)行相應的命令,顯示并且返回。圖4.4是鍵盤程序設計流程圖。4.2.4定時程序設計定時程序的主要作用是在用戶設定的時間后能夠使單片機收到一個中斷信號,從而發(fā)出相應的指令,控制窗簾的開關(guān)。時鐘芯片發(fā)出50ms的信號給單片機后,計數(shù)器開始工作,計數(shù)器記到20,時間即為1秒,秒單元加1,當秒單元計數(shù)到60,分單元加1,此時秒單元清零。當時單元計數(shù)到24時單元清零。圖4.5是定時程序流程圖。開始開始有按鍵閉合?N調(diào)用顯示子程序延時顯示返回兩次調(diào)用顯示子程序延時12msN有按鍵閉Y鍵碼分析執(zhí)行相應的模塊Y圖4.4鍵盤程序流程圖王王力臺了「女如分單元加1,秒單元清零,分寫入分個位和分十位N分單元=60?YN計數(shù)器=20?Y秒單元加1,50ms計數(shù)器清零,秒寫入秒個位和秒平位Y時單元清零N秒單元=60?返回Y時單元加1,分單)C用H]時個位和時十位現(xiàn)場保護,重置初值,啟動下一個50ms50ms,計數(shù)器加1時單元=24?N第五章系統(tǒng)仿真與總結(jié)Proteus軟件是英國LabCenterElectronics公司出版的EDA工具軟件。它不僅具有其它EDA工具軟件的仿真功能,還能仿真單片機及外圍器件。它是目前比較好的仿真單片機及外圍器件的工具。Proteus是世界上著名的EDA工具(仿真軟件),從原理圖布圖、代碼調(diào)試到單片機與外圍電路協(xié)同仿真,一鍵切換到PCB設計,是目前世界上唯一將電路仿真軟件、PCB設計軟件和虛擬模型仿真軟件三合一的設計平臺。首先,將在Keil軟件中調(diào)試好的程序生成*.HEX文件,然后將本文所設計的智能窗簾控制系統(tǒng)的原理圖在PROTEUS繪制好,最后調(diào)入已編譯好的目標代碼文件:*.HEX。本設計在接通電源時,系統(tǒng)自動復位,默認處于手動光控狀態(tài)。系統(tǒng)仿真前部分電路圖如圖5.1所示,圖中1602液晶顯示屏,DS18B20為溫度檢測,圖中還有五個按鍵,S1,S2,S3,S4,S5。S1鍵為自動手動切換鍵。S2鍵為退出鍵,S3鍵為參數(shù)減/手動關(guān),S4鍵為參數(shù)加/手動開,S5為設置鍵。利STEPPER-MCTOR圖5.1系統(tǒng)仿真前部分電路圖點擊開始仿真時系統(tǒng)部分電路圖如5.2,本設計在接通電源時,系統(tǒng)自動復位,處于手動狀態(tài)。LCD1602液晶顯示屏從左到右第一排依次為當前控制狀態(tài),時分秒,以及星期。第二排從左到右依次為當前光線值,年月日,以及當前溫度。在手動模式下,系統(tǒng)可以實現(xiàn)一次性開光窗簾。此時按下S4電機正傳,如圖5.3圖5.2系統(tǒng)開始仿真時部分電路圖圖5.3電機正傳勢名言曾器勢名言曾器若此時按下S1手動/自動模式切換鍵則系統(tǒng)變?yōu)樽詣幽J?,如圖5.4所示。85228888RU2STEPPER-MOTOR圖5.4自動模式電路圖在自動模式下,此時若按下S5鍵,系統(tǒng)則進入設置菜單,如圖5.5,設置菜單由上到下分別為設置時間,設置窗簾開閉時間,以及設置光線值??煞謩e按S3-,S4+,來切換菜單,切換到設置光線值的菜單如圖5.6所示。P2T備罰3眼相出3UN2003STEPPER-MOTORL401Lon-ofR4圖5.5設置菜單當光標分別位于數(shù)字“1”“2”“3”時,按下S5鍵可分別設置對應參數(shù)。若此時光標位于“1”處,按下S5鍵,則此時進入系統(tǒng)時間設置如圖5.7所示,則此時按下S3-,S4+設定當前光標的值,然后按下S5鍵向右切換光標位置,依次設定當前時間的時分秒,星期,以及年月日,設定完成后按S2返回主界面,系統(tǒng)時間設置完成,如圖5.8所示。圖5.6設置光線值菜單圖5.7系統(tǒng)時間設置若此時光標位于“2”處,按下S5鍵,則此時進入窗簾定時開閉設置,如圖5.9所示。顯示屏第一排為關(guān)窗時間,第二排為開窗時間的設置,若設定關(guān)窗簾時間為18:25,開窗簾時間設定為18:30。則此時按下S3-,S4+設定當前光標的值,然后按下S5鍵向右切換光標位置,設定好時間后如圖5.10所示。然后按下S2鍵返回主界面。當時間到達18:25時電機轉(zhuǎn)動,如圖5.11,窗簾關(guān)閉;當時間到達18:30時電機轉(zhuǎn)動,如圖5.12,窗簾打開。圖5.8系統(tǒng)時間設置完成界面圖5.9窗簾定時開閉設置AEE重心AEE重心80!5MSTEPPER-MOTORB2P26P26PP29R4化16周Te34P22P221國1×5CN200xSTEPPER-MOTORU5正滅圖5.11關(guān)窗時間到FFLMOMg別節(jié)□FRFP度STEPPER-MOTORm的文拼LLN200AgP254正RT41第六章總結(jié)經(jīng)過這段時間資料的查找和設計,最終完成了畢業(yè)設計的任務。本文設計了基于單片機的智能窗簾控制系統(tǒng),系統(tǒng)的介紹了智能窗簾控制系統(tǒng)從硬件電路設計到軟件設計的一系列步驟。本設計采用光敏電阻、溫度傳感器作為檢測元件,89C52單片機作為控制芯片,步進電機作為執(zhí)行元件,結(jié)合鍵盤和顯示器件,實現(xiàn)了智能窗簾控制器的多項智能項目。從整體設計來看,使用了熟悉的89C52單片機,從而對控制芯片的功能了如指掌,熟悉的控制芯片設計起來也是得心應手。所用芯片簡單實用,減少了開發(fā)和硬件開銷。本設計的主要原理是光敏電阻受到外界條件影響后,經(jīng)過A/D轉(zhuǎn)換,傳送給單片機一個電信號,在由單片機經(jīng)過處理后,將信號傳給步進電機,控制步進電機做出相應的動作,最終實現(xiàn)控制窗簾的開閉。在實現(xiàn)一般應用的基礎上,又添加了定時元器件電路,用戶可以自己設定開關(guān)時間,使窗簾的自動化性能得到進一步提升。再加上手動控制,使得本系統(tǒng)更加人性化。光敏電阻的良好感光性以及步進電機的結(jié)構(gòu)簡單,控制方便的優(yōu)點使窗簾控制開關(guān)更加穩(wěn)定。并且設計的溫度檢測電路可以實時顯示室內(nèi)當前溫度值。同時,智能項目是一項比較有價值的項目,智能窗簾也有許多問題和功能可以進一步研究,如解決光電開關(guān)的滯回特性,可以使用施密特電路來完成。一個完整的畢業(yè)設計過程,使我掌握了單片機系統(tǒng)和電子操作軟件等方面的知識,尤其在動手能力方面有很大的提升,也給今后打下堅實的基礎。本次畢業(yè)設計的整個研究與設計過程包括選題、設計以及完善等。首先,在選題方面我查閱了很多與題目相關(guān)的資料和課題并且制定了幾個詳細的設計方案,進行設計的總體規(guī)劃,從中選出經(jīng)濟,節(jié)能并且穩(wěn)定容易實現(xiàn)的方案,然后將方案落實到設計環(huán)節(jié)中。其次,在制定的方案基礎上運用所學的知識對硬件以及軟件進行了設計,并用相關(guān)軟件進行仿真設計。最后,對設計內(nèi)容進一步修繕,以求達到最佳設計效果。但是由于個人水平能力有限,論文設計上存在許多不足之處,有待于進一步的改進。所以雖然設計內(nèi)容完成了基本的功能要求,但是其中還是存在一定欠缺,比如在設計中沒有考慮到窗簾工作方式的顯示,以及沒有添加類似紅外遙控的設計等。此次設計過程中,在完成設計任務之外也讓我系統(tǒng)性地認識和全面地掌握了單片機相關(guān)技術(shù),從本次畢業(yè)設計中我更加深刻地認識到了理念來源于實際的含義。并且在和老師以及同學就相關(guān)問題的互相討論交流中,我認識到了自己的很多不足,但在這些不足中我又學到了很多知識,使我的綜合應用能力有了很大提高。所以在本次畢業(yè)設計的實現(xiàn)中,使我對所學的科目進行了綜合,讓我對所學的知識更加的清楚,我也相信在不久的將來踏入社會,類似這樣的設計絕不在少數(shù),只要我們努力學習、勇于實踐、勤學好問我們就會懂得以前不明白或不懂得道理,就會很快地成長和成熟起來。我也相信憑著我自強不息勇于拼搏的精神一定能夠很快的適應類似設計的需要,適應這個多變的社會,充分發(fā)揮長處,朝需要我們的地方不斷前進再前進!參考文獻單片機的智能窗簾控制系統(tǒng)設計[J].微計算機信[5]安森,張彥航,崔文華.基于凌陽61單片機的智能窗簾控制系統(tǒng)設計[J].微處理機,2012(01).[6]何康旭,張婧婧.基于單片機的智能窗簾控制系統(tǒng)的設計與實現(xiàn).現(xiàn)代計算機(專業(yè)版),2012.[7]孫健.智能家居電動窗簾的設計與實現(xiàn).機械工程與自動化[J],2012.[9]劉守義.單片機應用技術(shù).陜西:西安電子科技大學出版社[M],2007.[10]張鑫.單片機原理及應用(第二版).電子工業(yè)出版社[M],2010.[11]姚福安.電子電路設計與實踐.濟南:山東科學技術(shù)出版社[M],2005.[13]楊亞讓.基于AT89C51的窗簾控制系統(tǒng)設計[J].科技通報.2012(06).的多機通信智能窗簾設計[J].測控技術(shù).2012(06).[15]馮娟,李燕君.基于步進電動機的智能電動窗簾設計與實現(xiàn)[J].微特電機.2014(10).[17]顧永樂.智能窗簾控制系統(tǒng)的設計[J].數(shù)字技術(shù)與應用.2013(10).[18]諶容,胡澤,張扯拉,汪維.基于單片機控制的智能光控窗簾系統(tǒng)研究[J].電子世界.[19]BehzadRazavi.DesignofAnalogCMOSIntegratedCircuits[M].2001.[20]JacobFraden.HandbookofmodernsensorprincipleDesignsandapplication[M].SpringerNewYorkHeidelbergDordrechtLondon.2010.[21]DeitelMH.VisualBasic6.0HowtoProgram.PrenticeHall[M].2003.[22]AT89C51DATASHEEPPhilipsSemiconducto[23]ErikaCotaFfernandaLima.Synthesisofan8051-LikeMicro-ControllerToleranttoTransientFaults[J].TheoryandApplications.2001.17,149-161.致謝經(jīng)過這么長時間的忙碌,畢業(yè)設計和論文已經(jīng)接近尾聲。在畢業(yè)設計的過程中,由于經(jīng)驗的缺乏以及知識的局限性,難免有許多考慮不周全的地方,在選題,設計等方面,如果沒有導師的督促指導,沒有同學們的支持和幫助,單獨完成這個設計,其中還是有一定難度的。在論文完稿之際,我想借此機會對在完成畢業(yè)設計期間關(guān)心、幫助、支持和鼓勵過我的老師、同學以及朋友們致以最誠摯的謝意和最衷心的祝福!首先我要感謝的是我的導師史健芳老師,··成整個畢業(yè)設計的過程中,老師給我提供了很大的幫助,在選題、設計以及修改論文的各個環(huán)節(jié)里老師給我指出了很多錯誤,提出了很多寶貴意見,對于設計中存在的問題也是耐心的回答和指導,讓我能夠順利的完成畢業(yè)設計。在此謹向老師致以誠摯的謝意和崇高的敬意。其次要感謝的是所有在大學四年中教育指導過我的所有老師,··傳授給我的專業(yè)知識是我完成本設計的基礎,也是日后踏入工作崗位的重要基石,對于老師們一絲不茍,兢兢業(yè)業(yè)的精神表示衷心的感謝。我還要感謝所有關(guān)心和支持我學習的朋友和同學們,感謝你們對我的關(guān)心、關(guān)注和支持。無論是從學習還是生活中他們都給予我很大的幫助,謝謝你們。最后感謝一直支持我、愛護我的父母,不僅養(yǎng)育了我,給了我經(jīng)濟上的援助,而且還在我最缺乏信心的時候鼓勵我,在我情緒低落時安慰我,他們是最無私的,謝謝爸媽!附錄A:系統(tǒng)設計原理圖附錄A:系統(tǒng)設計原理圖出vccvccC%DFVCC1X1VCC2CRYSTALRSTSCLKP13P12DS1302VCCP27CHOCH1GNDP25RV1P0.0/AD0P0.1/AD138d1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.71AD7ADC0832LCD1LM0161VCC1X1VCC2CRYSTALRSTSCLKP13P12DS1302VCCP27CHOCH1GNDP25RV1P0.0/AD0P0.1/AD138d1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.71AD7ADC0832LCD1LM0161RESPACK-8P20P21P22P23P25P27P2.0/A8P2.11A9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.71A15PSENP3.0/RXDP3.1/TXDP3.2/NTOP3.3/INT1P3.4/T0P3.5/T1P3.6WRP3.7/RDGNDSTEPPER-MOTORDS18B20LED-RED220uF電源模塊0.1uFSW-DPDT義m義gNN%寸n號5>>XTAL1XTALXTAL2又立8gata3vtlOl68L9GヤE乙Ttp3SVCCgSVCCP10COMP23P21P20=oCOMP23P21P20ULN2003A=P1.0P1.2P1.3P1.4P1.5P1.6P1.7P101P1.0P1.2P1.3P1.4P1.5P1.6P1.7P101p112P123P134uNouAT89C518古8附錄C:程序清單智能窗簾.c#defineucharunsigned#defineuintunsigbitflagrelayen;ucharkey_time,flag//按鍵連加使能//按鍵連3次連加后使能加的數(shù)就越大了value;//用做連加的中間變量ucharmenushudu=20;//用來控制連加的速度ucharvalue,i;uchark_shi=1,k_fen=2;//開窗簾時間uchargshi=3,gfen=4;//關(guān)窗簾時間sbitDO=P2^6//DO定義為P1口的第4位腳,連接sbitSCL=P2^7;//SCL定義為P1口的第3位腳,連接ADC0832SCL腳sbitCS=P2^5;//CS定義為P1口的第4位腳,連接ADCO832CS腳ucharguanxian,guanxianset=4;//光線#include"ds1302.h"#include"bujindianji.h"sbitkeyjia=P3^1;//加sbitkeyjie=P3^2;//減/*************寫單片機內(nèi)部EEPOM*************/{bytewrite(0x2000,flagzdsd)bytewrite(0x2001,kshi);bytewrite(0x2002,kfen);byte_write(0x2003,g_shi);byte_write(0x2004,g_fen);bytewrite(0x2009,guanxianset);byte_write(0x2010,bjdj_value);byte_write(0x2050,a_a);/*************讀單片機內(nèi)部EEPOM*************/voidread_eepom(){flag_zd_sd=byte_read(0x2000);k_shik_fen=byte_read(0x2001);=byte_read(0x2002);=byte_read(0x2003);=byte_read(0x2004);bjdj_value=byteread(0x2009);=byte_read(0x2010);a_a=byte_read(0x2050);/*************初始化EEPROM************/voidinit_eepom()//初始化EEPR{read_eepom():{k_shi=8;guanxian_set=4;bjdjvalue=0;}#include"menu.h"/***************讀數(shù)模轉(zhuǎn)換數(shù)據(jù)****************///請先了解ADCO832模數(shù)轉(zhuǎn)換的串行協(xié)議,再來讀本函數(shù),主要是對應時序圖來理解,本函數(shù)是模擬0832的串行協(xié)議進行的unsignedcharad0832read(bitSGL,bitODD){unsignedchari=0,value=0,valuel=0SCL=0;DO=1;CS=0;//開始SCL=1;//第一個上升沿SCL=1;//第二個上升沿DO=ODD;SCL=1;//第三個上升沿SCL=0;//第三個下降沿DO=1;{SCL=0;//開始從第四個下降沿接收數(shù)據(jù)value<<=1;value++;for(i=0;i<8;i++){//接收校驗數(shù)據(jù)valuel+=0x80;SCL=0;CS=1;if(value==valuel)returnvalue;//與校驗數(shù)據(jù)比較,正確就返回數(shù)據(jù),否則返回0/******************1ms延時函數(shù)*******************/voiddelay1ms(uintq){for(i=0;i<q;i++)for(j=0;j<120;j++);/*************定時器0初始化程序***************/voidinit_1602_ds1302(){write_sfm2_ds1302(2,4,nian);write_sfm2_ds1302(2,7,yue)write_sfm2_ds1302(2,10,ri);write_sfm2_ds1302(1,4,shi);write_sfm2_ds1302(1,7,fen);write_sfm2_ds1302(1,10,miao);write_sfml(1,14,week);/*************定時器0初始化程序***************/voidinit_time0(){//開總中斷//定時器0、工作方式1//開定時器0中斷//允許定時器0定時/*************手動開關(guān)窗簾***************/voidshoudong_kaiguan()//手動開關(guān)窗簾{if(flag_zd_sd==0)//手動模式{{if(flag_kaigmoshi==0){if(key_can==2)flagzf=1;//手動開窗if(key_can==3)flag_z_f=2//手動關(guān)窗flag_z_f=0;}if(flagkaigmoshi==0){if(flagzdsd==1)//自動模式{if(guanxian<=guanxianset)flag_z_f=1;//手動開窗elseflagzf=2;//手動關(guān)窗}/*********************智能窗簾處理函數(shù)***********************/voidzinengchuangliandis()//智能窗簾處理函數(shù){if((miao==0)&&(fen==k_fen)&&(shi{flagzf=1;//開窗簾flagkaigmoshi=1;if((miao==0)&&(fen==g_fen)&&(shi{flagzf=2;//關(guān)窗簾flagkaigmoshi=2;}==k_shi))//定時開窗簾==g_shi))//定時關(guān)窗簾1voidmain(){init_eepom();//初始化EEPROMinit1602();//lcd1602初始化init1602discsf();//lcd1602初始化顯示initds1302io()://初始化ds1302Icinittime0();//初始化定時器menu1break();//菜單初始界面initds1302();//ds1302初始化{key();//按鍵程序if(key_can<10){//手動開關(guān)窗簾if(flag_200ms{flag_200mstemperaturel=readl_temp();//讀溫度1環(huán)境溫度zinengchuanglian_dis();//智能窗簾處理函數(shù)guanxian=ad0832read(1,0)*9.0/255;{readtime();//讀時間init_1602_ds1302();//顯示時鐘write_sfm_18b20(2,13,temperaturel);//顯示溫度bujindj();//步進電機函數(shù))[}voidtime0()interrupt1THO=0X3C;TLO=OXB0;//50ms{flag_200ms=1;//200ms{//按下按鍵使能if(key_time>=menu_shudu)//500ms{key_500ms=1;//500msif(flagvalue>3){flagvalue=10;flag_lj_3_en=1;//3次后1.5秒后連加大些LCD1602.h#ifndef_LCD1602_H#defineLCD1602H#defineucharunsignedchar#defineuintunsignedint#definedata1602P0ucharcodetable_num[]=”0123456789abcdefg”;sbitrs=P3^5;//寄存器選擇信號H:數(shù)據(jù)寄存器sbitrw=P3^6;//寄存器選擇信號H:數(shù)據(jù)寄存器L:指令寄存器L:指令寄存器sbite=P3^7;//片選信號下降沿觸發(fā)/***********************延時函數(shù)************************/voiddelayuint(uintq){while(q--);/***********************1cd1602寫命令函數(shù)************************/{rs=0;rw=0;data1602=com;delayuint(10);delayuint(50);}/***********************1cd1602寫數(shù)據(jù)函數(shù)************************/voidwritedata(uchardat){rs=1;rw=0;delayuint(10);delayuint(50);{write_com(0x06);/***********************1cd1602上顯示兩位十進制數(shù)************************/{if(hang==1)/*********

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論