基于單片機(jī)控制的智能窗簾設(shè)計(jì)_第1頁
基于單片機(jī)控制的智能窗簾設(shè)計(jì)_第2頁
基于單片機(jī)控制的智能窗簾設(shè)計(jì)_第3頁
基于單片機(jī)控制的智能窗簾設(shè)計(jì)_第4頁
基于單片機(jī)控制的智能窗簾設(shè)計(jì)_第5頁
已閱讀5頁,還剩34頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

摘要本文首先介紹了智能家居的根本知識(shí)及其應(yīng)用前景,進(jìn)而說明了開發(fā)作為智能家居中一個(gè)很重要局部——紅外線遙控自動(dòng)窗簾的意義。隨后著重介紹了開發(fā)單片機(jī)控制的紅外線遙控窗簾系統(tǒng)所用到的集成芯片STC89C52、DS1302芯片、紅外線發(fā)射接收器等硬件的結(jié)構(gòu)原理。本文采用分塊的模式,對(duì)整個(gè)系統(tǒng)的硬件電路設(shè)計(jì)進(jìn)行分析,分別給出了系統(tǒng)總體框圖、電源電路、時(shí)鐘DS1302電路、鳴響電路、紅外線接收電路、電機(jī)控制電路、顯示電路,并對(duì)相應(yīng)電路設(shè)計(jì)進(jìn)行了相關(guān)的闡述。隨后講述了軟件的編寫思路,也是采用分塊的模式,分別寫出了紅外線解碼程序、時(shí)鐘芯片DS1302控制程序、LCD液晶顯示程序、遙控控制程序的編寫思路,每一模塊都畫出了其方框圖,看起來一目了然。最后通過仿真調(diào)試,時(shí)鐘,手動(dòng)開關(guān)窗簾,自動(dòng)開關(guān)窗簾等控制方面的設(shè)計(jì)上根本到達(dá)了預(yù)期目的。當(dāng)然,該系統(tǒng)在一些細(xì)節(jié)的設(shè)計(jì)上還需要不斷的完善和改良。關(guān)鍵詞:時(shí)鐘芯片,單片機(jī),紅外線,窗簾。目錄第1章.緒言1課題背景1國內(nèi)外概況1課題的研究工作2第2章.單片機(jī)簡介4單片機(jī)的開展4單片機(jī)的特點(diǎn)5單片機(jī)的應(yīng)用5第3章.系統(tǒng)設(shè)計(jì)6系統(tǒng)方案確定6核心芯片結(jié)構(gòu)原理介紹73.2.1中央控制器——STC89C52RC7時(shí)鐘芯片DS1302103.2.3儲(chǔ)存器件AT24C0212紅外接收HS003814液晶顯示器LCD160214硬件電路原理設(shè)計(jì)18電源局部18顯示電路18紅外接收電路19時(shí)鐘電路20數(shù)據(jù)存儲(chǔ)電路20光控測光電路21電機(jī)執(zhí)行電路21窗簾框架構(gòu)造設(shè)計(jì)22軟件設(shè)計(jì)23紅外解碼233.4.2LCD1602顯示程序243.4.3DS1302的控制程序25數(shù)據(jù)存儲(chǔ)程序28第4章.調(diào)試30第5章.總結(jié)32第6章.致謝33參考文獻(xiàn)34附錄:35原理圖:35源程序:36本章闡述了單片機(jī)控制的紅外線遙控自動(dòng)窗簾系統(tǒng)的市場價(jià)值、研究背景、國內(nèi)外的現(xiàn)狀、以及開展方向,明確指出了單片機(jī)控制的紅外線遙控自動(dòng)窗簾系統(tǒng)所面臨的問題及一些解決方案。生活在提高,時(shí)代在進(jìn)步,人類在向文明邁進(jìn),不同的時(shí)代對(duì)居住空間、環(huán)境有不同的要求,這是社會(huì)的必然潮流[1]。單片機(jī)控制的自動(dòng)窗簾遙控系統(tǒng),既能解決每天手拉開和關(guān)上窗簾的不便,又顯示出了生活的檔次,同時(shí)還可以根據(jù)光線的明暗來自動(dòng)控制窗簾的開關(guān),以調(diào)節(jié)室內(nèi)的光線,更進(jìn)一步地滿足了人們的享受要求。所以該產(chǎn)品能形成大規(guī)模生產(chǎn),很快會(huì)普及全國市場,產(chǎn)生巨大的經(jīng)濟(jì)效益;另外,除了廣闊市民住宅使用外,該遙控窗簾器還可以廣泛應(yīng)用于別墅、公寓、賓館、飯店、寫字樓、歌舞廳、影劇院、會(huì)議廳、銀行、學(xué)校、醫(yī)院等各種公共場所,因此該產(chǎn)品具有廣闊的市場前景。遙控自動(dòng)窗簾系統(tǒng)在我國還剛剛興起,但其開展前景廣闊,推廣和應(yīng)用自動(dòng)窗簾系統(tǒng)具有重要的現(xiàn)實(shí)意義。其一,改變?nèi)藗兊纳罘绞?。單片機(jī)控制的遙控自動(dòng)窗簾系統(tǒng)具有豐富的智能化功能,為家庭用戶營造一個(gè)高效、舒適、便利、環(huán)保的居住環(huán)境。單片機(jī)控制的遙控自動(dòng)窗簾只用一個(gè)多功能遙控器就能控制和監(jiān)測住房的窗簾開關(guān)問題,給人們?nèi)丈仙顜順O大的方便。這些都將改變?nèi)藗儌鹘y(tǒng)的生活方式,并提高了人們的生活質(zhì)量。其二、牽動(dòng)一大批產(chǎn)業(yè)。單片機(jī)控制的遙控自動(dòng)窗簾產(chǎn)品面向家庭用戶,其應(yīng)用市場是龐大的,開展前景也是廣闊的,必將吸引大批有遠(yuǎn)見的各類企業(yè)介入,從而牽動(dòng)一大批產(chǎn)業(yè)的開展。這里最先受益的應(yīng)該是房地產(chǎn)業(yè),單片機(jī)控制的遙控自動(dòng)窗簾不僅是一個(gè)很好的概念與“賣點(diǎn)〞,同時(shí)也是直接提升住宅檔次的一個(gè)條件,這將會(huì)給房地產(chǎn)商帶來新的利潤空間。在家居集成化、網(wǎng)絡(luò)化的趨勢下,家居集成也成為一種潮流,許多更專業(yè)的、美觀的、智能化的家居集成產(chǎn)品相繼出現(xiàn)。其三,開拓一個(gè)嶄新的市場。遙控自動(dòng)窗簾系統(tǒng)牽動(dòng)了許多的行業(yè),它將不僅僅是目前的IT系統(tǒng)集成商或建筑弱電工程總包商的市場,而且是專業(yè)公司和智能化裝飾公司的市場。在歐美等興旺國家,電動(dòng)窗簾已廣泛應(yīng)用。在10年前,電動(dòng)窗簾就已經(jīng)進(jìn)入我國,可一直沒有大的推廣,這兩年,隨著電控技術(shù)的不斷提高及價(jià)格的不斷下降,電動(dòng)窗簾熱才又卷土重來。據(jù)了解,全國共有170多種電動(dòng)窗簾器獲得了國家專利,但就其技術(shù)本身而言,還是大同小異,但售價(jià)卻有很大差異,貴的要數(shù)千元,廉價(jià)的只要500塊。2,如果每20m2需要一套窗簾架產(chǎn)品,僅此一項(xiàng)就可以年新增窗簾架產(chǎn)品近千萬套加上。年新增窗簾架產(chǎn)品市場需求將不低于2000萬套。如果單片機(jī)控制的遙控自動(dòng)窗簾,銷售占市場的5%左右,就可實(shí)現(xiàn)年產(chǎn)值上億元。隨著自動(dòng)窗簾熱潮在世界范圍內(nèi)的日漸興起,隨著中國電子技術(shù)的飛速開展、人們生活水平的不斷提高以及智能電子技術(shù)在生活中的廣泛應(yīng)用,自動(dòng)窗簾已經(jīng)成為未來家居裝飾潮流開展的最新方向,在不久的將來,沒有自動(dòng)窗簾系統(tǒng)的住宅肯定不合潮流。從目前的開展趨勢來看,在未來的20年時(shí)間里,自動(dòng)窗簾行業(yè)將成為中國的主流行業(yè)之一,其市場的開展前景是非常廣闊的。智能家居系統(tǒng)是一個(gè)大的社會(huì)系統(tǒng)工程,我們應(yīng)當(dāng)加快我國智能家居標(biāo)準(zhǔn)化進(jìn)程。自動(dòng)窗簾系統(tǒng)作為智能家居中一個(gè)很重要的局部,需要在我國智能家居這一領(lǐng)域,建立起一個(gè)具有中國特色的新興、健康的產(chǎn)業(yè)鏈。讓自動(dòng)窗簾系統(tǒng)在我國并不是遠(yuǎn)在天邊,而是近在眼前?,F(xiàn)有的電動(dòng)窗簾機(jī)的控制方式有固定式開關(guān)控制、遙控、光控、聲控等,其中以前兩種形式居多。就實(shí)用程度和經(jīng)濟(jì)角度來說,用固定式開關(guān)控制方式較好,這是因?yàn)榇昂煹拈_閉不像電視機(jī)等家電產(chǎn)品開閉得那樣頻繁,每天開閉的次數(shù)不多,因此安裝在固定的地方使用也相當(dāng)方便,如把開關(guān)裝在床頭柜等電器綜合控制系統(tǒng)中,睡在床上就能控制窗簾的開閉。利用觸摸開關(guān),實(shí)現(xiàn)全自動(dòng)斷電,既平安又節(jié)能,但最重要的一點(diǎn)就是沒有實(shí)現(xiàn)完全的自動(dòng)化,沒的擺脫對(duì)人的依賴作用。而采用遙控控制時(shí),需要候機(jī)電源,不可能完全斷電而且增加遙控功能,也增加了本錢,售價(jià)也相應(yīng)提高。窗簾機(jī)的控制方式大體上有三種:聲控、光控、時(shí)控,聲控和遙控屬于半自動(dòng)類;而光控雖屬全自動(dòng)式,但因光敏器件的靈敏度,冬夏等不同季節(jié)的光照度的不同,以及人們對(duì)起閉窗簾在時(shí)間上的要求不同,而難以實(shí)施和普及。因此,時(shí)控式的全自動(dòng)窗簾機(jī)便成了專業(yè)以及業(yè)余電子設(shè)計(jì)人員的熱門課題。根據(jù)以上自動(dòng)窗簾有些不能實(shí)現(xiàn)完全的自動(dòng)化;有些雖然實(shí)現(xiàn)了完全的自動(dòng)化,但結(jié)構(gòu)復(fù)雜,性能不夠穩(wěn)定;有些雖然實(shí)現(xiàn)了完全的自動(dòng)化,且性能還可以,但價(jià)格昂貴不適合普通消費(fèi)者使用。所以我想利用價(jià)格相對(duì)廉價(jià)的紅外線遙控發(fā)射芯片、單片機(jī)作為主要控制器件,來完成該系統(tǒng)的設(shè)計(jì)。該系統(tǒng)主要有如下幾方面的特點(diǎn):〔1〕發(fā)射紅外線的發(fā)射裝置采用一般彩色電視機(jī)的遙控器,這樣既方便又實(shí)惠,可謂一物兩用?!?〕時(shí)間控制開關(guān)窗簾。通過對(duì)DS1302芯片的設(shè)定,讓用戶可以隨自己的生活習(xí)慣方便的自動(dòng)開關(guān)窗簾,無需手動(dòng)?!?〕采用紅外遙控方式,不會(huì)干擾其它電器的正常工作,也不會(huì)影響鄰近的無線設(shè)備。超距離遙控,可達(dá)8~9m?!?〕另一種控制方式為手動(dòng)控制方式,防止停電后采用手動(dòng)控制?!?〕美觀。以往的遙控電動(dòng)窗簾都是向一邊拉或向上拉,而本設(shè)計(jì)為向兩邊翻開,隨個(gè)人的愛好可以控制其大小?!?〕體積小、結(jié)構(gòu)簡單、靈敏度高、抗干擾性強(qiáng)、經(jīng)濟(jì)實(shí)用、工作可靠。單片微型計(jì)算機(jī)簡稱單片機(jī),又稱為嵌入式微控制器(Embeddedmicrocontroller)。常用英文字母的縮寫MCU表示單片機(jī),它最早是被用在工業(yè)控制領(lǐng)域。單片機(jī)由芯片內(nèi)僅有CPU的專用處理器開展而來。最早的設(shè)計(jì)理念是通過將大量外圍設(shè)備和CPU集成在一個(gè)芯片中,使計(jì)算機(jī)系統(tǒng)更小,更容易集成進(jìn)復(fù)雜的而對(duì)體積要求嚴(yán)格的控制設(shè)備當(dāng)中。INTEL的Z80是最早按照這種思想設(shè)計(jì)出的處理器,從此以后,單片機(jī)和專用處理器的開展便分道揚(yáng)鑣以大規(guī)模集成電路為主組成的微型計(jì)算機(jī),它的誕生是計(jì)算機(jī)開展史上一個(gè)新的里程碑。單片機(jī)比專用處理器更適合應(yīng)用于嵌入式系統(tǒng),因此它得到了最多的應(yīng)用。事實(shí)上單片機(jī)是世界上數(shù)量最多的計(jì)算機(jī)。現(xiàn)代人類生活中所用的幾乎每件電子和機(jī)械產(chǎn)品中都會(huì)集成有單片機(jī)。、、計(jì)算器、家用電器、電子玩具、掌上電腦以及鼠標(biāo)等電腦配件中都配有1-2部單片機(jī)。而個(gè)人電腦中也會(huì)有為數(shù)不少的單片機(jī)在工作。汽車上一般配備40多部單片機(jī),復(fù)雜的工業(yè)控制系統(tǒng)上甚至可能有數(shù)百臺(tái)單片機(jī)在同時(shí)工作!單片機(jī)的數(shù)量不僅遠(yuǎn)超過PC機(jī)和其他計(jì)算的總和,甚至比人類的數(shù)量還要多。單片機(jī)又稱單片微控制器,它不是完成某一個(gè)邏輯功能的芯片,而是把一個(gè)計(jì)算機(jī)系統(tǒng)集成到一個(gè)芯片上。相當(dāng)于一個(gè)微型的計(jì)算機(jī),和計(jì)算機(jī)相比,單片機(jī)只缺少了I/O設(shè)備。概括的講:一塊芯片就成了一臺(tái)計(jì)算機(jī)。它的體積小、質(zhì)量輕、價(jià)格廉價(jià)、為學(xué)習(xí)、應(yīng)用和開發(fā)提供了便利條件。同時(shí),學(xué)習(xí)使用單片機(jī)是了解計(jì)算機(jī)原理與結(jié)構(gòu)的最正確選擇。單片機(jī)內(nèi)部也用和電腦功能類似的模塊,比方CPU,內(nèi)存,并行總線,還有和硬盤作用相同的存儲(chǔ)器件,不同的是它的這些部件性能都相對(duì)我們的家用電腦弱很多,不過價(jià)錢也是低的,一般不超過10元即可用它來做一些控制電器一類不是很復(fù)雜的工作足矣了。我們現(xiàn)在用的全自動(dòng)滾筒洗衣機(jī)、排煙罩、VCD等等的家電里面都可以看到它的身影!它主要是作為控制局部的核心部件。單片機(jī)從誕生至今已經(jīng)經(jīng)歷了4個(gè)開展階段,分別是:第一階段〔1974-1976年〕:單片機(jī)初級(jí)階段。因工藝限制,此階段的單片機(jī)采用雙片的形式而且功能比較簡單。例如仙童公司生產(chǎn)的F8單片機(jī),只包括了8位CPU,64個(gè)字節(jié)的RAM,和兩個(gè)并行口,需要加一塊具有1KBROM、定時(shí)器/計(jì)數(shù)器和兩個(gè)并行口的3851芯片才能組成一臺(tái)完整的計(jì)算機(jī)。第二階段〔1976-1978年〕:低性能單片機(jī)階段。此階段的單片機(jī)已成為一臺(tái)完整的計(jì)算機(jī),但內(nèi)部資源不夠豐富,以Intel公司生產(chǎn)的MCS-48系列為代表,片內(nèi)集成了8位CPU、8位定時(shí)器/計(jì)數(shù)器、RAM和ROM等,但無串行口,中斷系統(tǒng)也比較簡單,片內(nèi)RAM和ROM容量較小且尋址范圍不大于4KB。第三階段〔1978-1982〕:高性能單片機(jī)階段。此階段的單片機(jī)內(nèi)部資源豐富,以Intel公司生產(chǎn)的MCS-51系列為代表,片內(nèi)集成了8位CPU、16位定時(shí)器/計(jì)數(shù)器、串行I/O口、多級(jí)中斷系統(tǒng)、RAM和ROM等,片內(nèi)RAM和ROM容量加大,尋址范圍可達(dá)64KB。有的型號(hào)內(nèi)部還帶有A/D轉(zhuǎn)換器。第四階段〔1982-〕:8位單片機(jī)得穩(wěn)固開展及16位、32位單片機(jī)推出階段。16位單片機(jī)以Intel公司生產(chǎn)得MCS-96系列為代表,在片內(nèi)帶有多通道A/D轉(zhuǎn)換器和高速輸入/輸出〔HSI/HSO〕部件,中斷處理和實(shí)時(shí)處理能力很強(qiáng)。目前單片機(jī)的品種眾多,其中性能優(yōu)良的8位單片機(jī)在今后假設(shè)干年內(nèi)仍然將是工業(yè)檢測、控制應(yīng)用領(lǐng)域中的主角。〔1〕小巧靈活、本錢低、易于產(chǎn)品化。能利用它方便地組裝成各種智能式測控設(shè)備及各種智能儀器儀表,很容易滿足儀器設(shè)備既智能又微型化的要求?!?〕可靠性高、適用的溫度范圍寬。單片機(jī)芯片一般是按工業(yè)測控要求設(shè)計(jì)的,能適應(yīng)各種惡劣的環(huán)境。這一點(diǎn)是其他機(jī)種無法比較的。〔3〕易擴(kuò)展、控制能力強(qiáng)。通過單片機(jī)本身或擴(kuò)展可以方便地構(gòu)成各種規(guī)模地應(yīng)用系統(tǒng)及多機(jī)和分布式計(jì)算機(jī)控制系統(tǒng)。〔4〕指令系統(tǒng)相對(duì)簡單,較易掌握,且指令中又較豐富地邏輯控制功能指令,能較方便地直接操作外部輸入輸出設(shè)備。由于單片機(jī)具有功能強(qiáng)、體積小、可靠性好和價(jià)格廉價(jià)等獨(dú)特優(yōu)點(diǎn),已成為傳統(tǒng)工業(yè)技術(shù)改造和新產(chǎn)品更新?lián)Q代的理想機(jī)種,具有廣泛的開展前景。單片機(jī)技術(shù)的應(yīng)用,使得許多領(lǐng)域的技術(shù)水平和自動(dòng)化程度大大提高,可以說,當(dāng)今世界正面臨著一場以單片機(jī)〔微電腦〕技術(shù)為標(biāo)志的新技術(shù)革命。單片機(jī)的應(yīng)用可以說,二十世紀(jì)跨越了三個(gè)“電〞的時(shí)代,即電氣時(shí)代、電子時(shí)代和現(xiàn)已進(jìn)入的電腦時(shí)代。不過,這種電腦,通常是指個(gè)人計(jì)算機(jī),簡稱PC機(jī)。它由主機(jī)、鍵盤、顯示器等組成。還有一類計(jì)算機(jī),大多數(shù)人卻不怎么熟悉。這種計(jì)算機(jī)就是把智能賦予各種機(jī)械的單片機(jī)〔亦稱微控制器〕。顧名思義,這種計(jì)算機(jī)的最小系統(tǒng)只用了一片集成電路,即可進(jìn)行簡單運(yùn)算和控制。因?yàn)樗w積小,通常都藏在被控機(jī)械的“肚子〞里?,F(xiàn)在,這種單片機(jī)的使用領(lǐng)域已十分廣泛,如智能儀表、實(shí)時(shí)工控、通訊設(shè)備、導(dǎo)航系統(tǒng)、家用電器等。各種產(chǎn)品一旦用上了單片機(jī),就能起到使產(chǎn)品升級(jí)換代的成效,常在產(chǎn)品名稱前冠以形容詞——“智能型〞,如智能型洗衣機(jī)等?,F(xiàn)在有些工廠的技術(shù)人員或其它業(yè)余電子開發(fā)者搞出來的某些產(chǎn)品,不是電路太復(fù)雜,就是功能太簡單且極易被仿制。究其原因,可能就卡在產(chǎn)品未使用單片機(jī)或其它可編程邏輯器件上。目前單片機(jī)滲透到我們生活的各個(gè)領(lǐng)域,幾乎很難找到哪個(gè)領(lǐng)域沒有單片機(jī)的蹤跡。導(dǎo)彈的導(dǎo)航裝置,飛機(jī)上各種儀表的控制,計(jì)算機(jī)的網(wǎng)絡(luò)通訊與數(shù)據(jù)傳輸,工業(yè)自動(dòng)化過程的實(shí)時(shí)控制和數(shù)據(jù)處理,廣泛使用的各種智能IC卡,民用豪華轎車的平安保障系統(tǒng),錄像機(jī)、攝像機(jī)、全自動(dòng)洗衣機(jī)的控制,以及程控玩具、電子寵物等等,這些都離不開單片機(jī)。更不用說自動(dòng)控制領(lǐng)域的機(jī)器人、智能儀表、醫(yī)療器械了。因此,單片機(jī)的學(xué)習(xí)、開發(fā)與應(yīng)用將造就一批計(jì)算機(jī)應(yīng)用與智能化控制的科學(xué)家、工程師。單片機(jī)廣泛應(yīng)用于儀器儀表、家用電器、醫(yī)用設(shè)備、航空航天、專用設(shè)備的智能化管理及過程控制等領(lǐng)域,這次設(shè)計(jì)題目為單片機(jī)在電子產(chǎn)品中的應(yīng)用已經(jīng)越來越廣泛,在很多的電子產(chǎn)品中也用到了紅外控制。隨著窗簾紅外控制器應(yīng)用范圍的日益廣泛和多樣,各種適用于不同場合的窗簾控制器應(yīng)運(yùn)而生。實(shí)現(xiàn)這種控制目的的方案有3個(gè)。方案〔一〕自動(dòng)控制系統(tǒng)?!膊捎肁/D轉(zhuǎn)換器〕方案〔二〕模擬集成控制器自動(dòng)控制系統(tǒng)。〔采用V/F轉(zhuǎn)換電路〕這二個(gè)方案都是采用單片機(jī)控制,液晶顯示模塊LCD顯示。方案〔一〕的系統(tǒng)框圖如圖3-1:紅外發(fā)送模塊紅外發(fā)送模塊電源模塊鍵盤模塊液晶模塊紅外接收模塊STC89C52圖3-1方案一的原理框圖STC89C52是一款采用ATMEL高密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容的單片機(jī),其主要性能特點(diǎn)有:〔1〕高性能、低功耗的8Byte微控制器,RISC精簡指令集機(jī)構(gòu),指令功能強(qiáng)大,且多數(shù)為單周期指令,具有低功耗的閑置和掉電控制模式、5個(gè)中斷源、兩個(gè)16位定時(shí)器/計(jì)數(shù)器等功能?!?〕片內(nèi)集成4KB可編程閃爍存儲(chǔ)器,可進(jìn)行1000次以上寫/擦循環(huán)操作,數(shù)據(jù)保存時(shí)間可達(dá)10年,支持三級(jí)程序存儲(chǔ)器鎖定?!?〕豐富強(qiáng)大的外部接口性能:32可編程I/O線,可編程串行通道,片內(nèi)振蕩器和時(shí)鐘電路。采用LG28顯示模塊41BH數(shù)碼管,動(dòng)態(tài)掃描,8550三極管位選驅(qū)動(dòng),AT89C51微處理器P0口直接段選實(shí)現(xiàn)小時(shí)、分鐘顯示,具有顯示亮度強(qiáng)、穩(wěn)定性能好、顯示誤差少等優(yōu)點(diǎn)。方案〔二〕的框圖如圖3-2:遙控器遙控器STC89C52單片機(jī)步進(jìn)電機(jī)紅外接收模塊圖3-2方案二的原理框圖該窗簾控制器采用STC89C52單片機(jī)的最小系統(tǒng)設(shè)計(jì),控制一個(gè)220v的可逆、變速電動(dòng)機(jī)控制窗簾的拉開和關(guān)閉。窗簾控制器可以使用紅外遙控器進(jìn)行遠(yuǎn)程手動(dòng)開、手動(dòng)關(guān)和手動(dòng)??刂疲贿€可以根據(jù)室外環(huán)境亮度實(shí)現(xiàn)環(huán)境亮度光控。以及光控狀態(tài)下環(huán)境亮度的控制參數(shù)的調(diào)整等等都可以通過遙控器進(jìn)行設(shè)置。該紅外遙控窗簾可謂是一款多功能的窗簾控制器窗簾控制器原理圖。經(jīng)過論證選擇方案二。為使基于單片機(jī)控制的紅外線遙控系統(tǒng)在實(shí)際使用過程中方便快捷,并且具有較高的性能/價(jià)格比,所以對(duì)該系統(tǒng)的原器件作了精心挑選。按在實(shí)際工作中的作用,可分為以下幾個(gè)局部:STC89C52RC單片機(jī)是整個(gè)電路的核心,它控制其它模塊來完成各種復(fù)雜的操作;紅外線一體化接受頭負(fù)責(zé)接受命令;芯片DS1302負(fù)責(zé)時(shí)鐘的運(yùn)行及設(shè)置參數(shù)。AT24C02用來存儲(chǔ)數(shù)據(jù)。中央控制器——STC89C52RCSTC89C52RC是由宏晶公司推出的一種小型單片機(jī),其主要特點(diǎn)為采用Flash存貯器技術(shù),降低了制造本錢,其軟件、硬件與MCS-51完全兼容,且采用高密度非易失存儲(chǔ)器制造技術(shù)制造,將多功能8位CPU和閃爍存儲(chǔ)器組合在單個(gè)芯片中,可以很快被中國廣闊用戶接受。其程序的電可擦寫特性,使得開發(fā)與試驗(yàn)比較容易,為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價(jià)廉的方案。.1STC89C52RC的特點(diǎn)STC89C52RC有很寬的工作電源電壓,可為2.7~6V,當(dāng)工作在3V時(shí),電流相當(dāng)于6V工作時(shí)的1/4。STC89C52RC工作于12Hz時(shí),動(dòng)態(tài)電流為5.5mA,空閑態(tài)為1mA,掉電狀態(tài)僅為20nA。這樣小的功耗很適合于電池供電的小型控制系統(tǒng)。STC89C52RC具有以下幾個(gè)特點(diǎn):·STC89C52RC與MCS-51系列的單片機(jī)在指令系統(tǒng)和引腳上完全兼容;·片內(nèi)有4k字節(jié)在線可重復(fù)編程快擦寫程序存儲(chǔ)器;·全靜態(tài)工作,工作范圍:0Hz~24MHz;·三級(jí)程序存儲(chǔ)器加密;·128×8位內(nèi)部RAM;·32位雙向輸入輸出線;·兩個(gè)十六位定時(shí)器/計(jì)數(shù)器·五個(gè)中斷源,兩級(jí)中斷優(yōu)先級(jí);·一個(gè)全雙工的異步串行口;·間歇和掉電兩種工作方式·超強(qiáng)抗干擾:

高抗靜電(ESD保護(hù))

,輕松過

2KV/4KV快速脈沖干擾;·寬電壓,不怕電源抖動(dòng)

;·寬溫度范圍,-40℃~85℃;·禁止ALE輸出;;·超低功耗:

1

、掉電模式:典型功耗<0.1

μ

A

;2

、空閑模式:典型功耗2mA

;3

、正常工作模式:典型功耗4mA-7mA

;4

、掉電模式可由外部中斷喚醒,適用于電池供電系統(tǒng),如水表、氣表、便攜設(shè)備等.;.2STC89C52RC引腳功能1電源:①VCC-芯片電源,接+5V;②VSS-接地端;2.時(shí)鐘:XTAL1、XTAL2-晶體振蕩電路反相輸入端和輸出端。3.控制線:控制線共有4根:ALE/PROG:地址鎖存允許/片內(nèi)EPROM編程脈沖①ALE功能:用來鎖存P0口送出的低8位地址②PROG功能:片內(nèi)有EPROM的芯片,在EPROM編程期間,此引腳輸入編程脈沖。PSEN:外ROM讀選通信號(hào)。RST/VPD:復(fù)位/備用電源。①RST〔Reset〕功能:復(fù)位信號(hào)輸入端。②VPD功能:在Vcc掉電情況下,接備用電源。EA/Vpp:內(nèi)外ROM選擇/片內(nèi)EPROM編程電源。①EA功能:內(nèi)外ROM選擇端。②Vpp功能:片內(nèi)有EPROM的芯片,在EPROM編程期間,施加編程電源Vpp。4.I/O口線:P0、P1、P2、P3共四個(gè)八位口。P0口是三態(tài)雙向口,通稱數(shù)據(jù)總線口,因?yàn)橹挥性摽谀苤苯佑糜趯?duì)外部存儲(chǔ)器的讀/寫操作。P0口也用以輸出外部存儲(chǔ)器的低8位地圖1址。由于是分時(shí)輸出,故應(yīng)在外部加鎖存器將此地址數(shù)據(jù)鎖存,地址鎖存,信號(hào)用ALE。P1口是專門供用戶使用的I/O口,是準(zhǔn)雙向口。P2口是從系統(tǒng)擴(kuò)展時(shí)作高8位地址線用。不擴(kuò)展外部存儲(chǔ)器時(shí),P2口也可以作為用戶I/O口線使用,P2口也是準(zhǔn)雙向口。P3口是雙功能口,該口的每一位均可獨(dú)立地定義為第一I/O功能或第二I/O功能。作為第一功能使用時(shí)操作同P1口。P3口的第二功能如表2.1所示。表1P3口第二功能端口引腳各個(gè)功能RXD〔串行口輸入端〕TXD〔串行口輸出端〕(外部中斷0請(qǐng)求輸入端,低電平有效)P(外部中斷1請(qǐng)求輸入端,低電平有效)PT0〔定時(shí)器/計(jì)數(shù)器0計(jì)數(shù)脈沖輸入端〕PT1〔定時(shí)器/計(jì)數(shù)器1計(jì)數(shù)脈沖輸入端〕(外部數(shù)據(jù)存儲(chǔ)器寫選通信號(hào)輸入端,低電平有效)〔外部數(shù)據(jù)存儲(chǔ)器讀選通信號(hào)輸入端,低電平有效〕.3時(shí)鐘電路和復(fù)位電路1〕時(shí)鐘產(chǎn)生電路片內(nèi)電路與片外器件就構(gòu)成一個(gè)時(shí)鐘產(chǎn)生電路,CPU的所有操作均在時(shí)鐘脈沖同步下進(jìn)行。片內(nèi)振蕩器的振蕩頻率非常接近晶振頻率,一般多在1.2MHz~24MHz之間選取。C1、C2是反應(yīng)電容,其值在20pF~100pF之間選取,典型值為30pF。本電路選用的電容為30pF,晶振頻率為12MHz。振蕩周期=;機(jī)器周期指令周期=。XTAL1和XTAL2:片內(nèi)振蕩電路輸入線,這兩個(gè)端子用來外接石英晶體和微調(diào)電容。在石英晶體的兩個(gè)管腳加交變電場時(shí),它將會(huì)產(chǎn)生一定頻率的機(jī)械變形,而這種機(jī)械振動(dòng)又會(huì)產(chǎn)生交變電場,上述物理現(xiàn)象稱為壓電效應(yīng)。一般情況下,無論是機(jī)械振動(dòng)的振幅,還是交變電場的振幅都非常小。但是,當(dāng)交變電場的頻率為某一特定值時(shí),振幅驟然增大,產(chǎn)生共振,稱之為壓電振蕩。這一特定頻率就是石英晶體的固有頻率,也稱諧振頻率。即用來連接8051片內(nèi)OSC的定時(shí)反應(yīng)回路,如圖3.5所示。石英晶振起振后要能在XTAL2線上輸出一個(gè)3V左右的正弦波,以便使MCS-51片內(nèi)的OSC電路按石英晶振相同頻率自激振蕩。通常,OSC的輸出時(shí)鐘頻率fosc為0.5MHz-16MHz,典型值為12MHz或者11.0592MHz。電容C1和C2可以幫助起振,典型值為30pF,調(diào)節(jié)它們可以到達(dá)微調(diào)fosc的目的。如圖3-3.圖3-3時(shí)鐘電路2〕單片機(jī)復(fù)位電路圖3-4為單片機(jī)復(fù)位電路。單片機(jī)在開機(jī)時(shí)都需要復(fù)位,以便中央處理CPU以及其他功能部件都處于一個(gè)確定的初始狀態(tài),并從這個(gè)狀態(tài)開始工作。單片機(jī)的復(fù)位后是靠外部電路實(shí)現(xiàn)的,在時(shí)鐘電路工作后,只要在單片機(jī)的RST引腳上出現(xiàn)24個(gè)時(shí)鐘振蕩脈沖〔2個(gè)機(jī)器周期〕以上的高電平,單片機(jī)便可實(shí)現(xiàn)初始化狀態(tài)復(fù)位。MCS-51單片機(jī)的RST引腳是復(fù)位信號(hào)的輸入端。例如:假設(shè)MCS-51單片機(jī)時(shí)鐘頻率為12MHz,那么復(fù)位脈沖寬度至少應(yīng)該為2μs。圖3-4復(fù)位電路時(shí)鐘芯片DS1302DSl302是美國Dallas公司生產(chǎn)的一種串行實(shí)時(shí)時(shí)鐘/日歷芯片,以串行方式與單片機(jī)進(jìn)行數(shù)據(jù)傳送,它能夠向單片機(jī)提供:秒、分、時(shí)、日、月、年、及星期等實(shí)時(shí)時(shí)間信息,并能夠?qū)﹂c年天數(shù)自動(dòng)調(diào)整,日歷有效至2100年。DSl302由雙電源中較大者供電,使系統(tǒng)在沒有主電源的情況下也能保持時(shí)鐘的連續(xù)運(yùn)行。片內(nèi)具有31個(gè)字節(jié)靜態(tài)RAM,可用來保存重要數(shù)據(jù)。DSl302具有引腳少、體積小、價(jià)格低等優(yōu)點(diǎn),得到了廣泛應(yīng)用。但由于其時(shí)序要求比較嚴(yán)格,應(yīng)用程序不易編寫,給開發(fā)者帶來不便。為此,本文對(duì)其進(jìn)行詳細(xì)分析和闡述并在分析其時(shí)序的根底上給出了DSl302與單片機(jī)連接的接口電路和通訊子程序。.1DS1302的引腳排列及其內(nèi)部結(jié)構(gòu)DS1302的引腳排列如圖3-5所示,其引腳描述如表2.2所示。圖3-5DS1302的引腳排表2DS1302引腳描述引腳號(hào)符號(hào)描述引腳號(hào)符號(hào)描述1Vcc2備用電源引腳5復(fù)位引腳2X1晶振引腳6I/O數(shù)據(jù)輸入/輸出引腳3X2晶振引腳7SCLK串行時(shí)鐘輸入引腳4GND電源地引腳8Vcc1主電源引腳DS1302串行實(shí)時(shí)時(shí)鐘芯片主要由移位存放器、控制邏輯、振蕩器、實(shí)時(shí)時(shí)鐘及31個(gè)字節(jié)RAM組成,其內(nèi)部結(jié)構(gòu)如圖2.7所示。數(shù)據(jù)傳送前,必須把置為高電平且把提供地址和命令信息的8位字節(jié)裝入到移位存放器。在進(jìn)行單字節(jié)傳送或多字節(jié)傳送時(shí),開始的8位命令字節(jié)用于指定40個(gè)字節(jié)(31個(gè)字節(jié)RAM和9個(gè)字節(jié)時(shí)鐘存放器)中哪個(gè)將被訪問。表3DS1302存放器存放器名命令字取值范圍各位內(nèi)容寫讀76543210秒存放器80H81H00--59CH10SECSEC分鐘存放器82H83H00--59010MINMIN小時(shí)存放器84H85H01--12或00--2312/240A/MHRHR日期存放器86H87H01--28,29,30,310010DATEDATE月份存放器88H89H01--1200010MMONTH周日存放器8AH8BH01--1200000DAY年份存放器8CH8DH00--9910YEARYEAR.2DS1302數(shù)據(jù)傳輸方式對(duì)DS1302進(jìn)行任何數(shù)據(jù)傳送時(shí),第一個(gè)數(shù)據(jù)字節(jié)必須是命令字節(jié),格式如圖3-6所示,其最高有效位MSB(位7)必須為邏輯1。如果它是零,禁止寫DS1302。位6為邏輯0時(shí)指定傳送時(shí)鐘/日歷數(shù)據(jù);邏輯1指定傳送RAM數(shù)據(jù)。位1至5指定進(jìn)行輸入或輸出的特定存放器的地址。最低有效位LSB(位0)為邏輯0時(shí)指定時(shí)進(jìn)行寫操作(輸入);邏輯1指定進(jìn)行讀操作(輸出)。命令字節(jié)總是從最低有效LSB(位0)開始輸入[12]。圖3-6地址/命令字節(jié)時(shí)鐘芯片DS1302是采用I2C總線來傳輸數(shù)據(jù)的。I2C(Inter-IntegratedCircuit)總線是一種由PHILIPS公司開發(fā)的兩線式串行總線,用于連接微控制器及其外圍設(shè)備。I2C總線產(chǎn)生于在80年代,最初為音頻和視頻設(shè)備開發(fā),如今主要在效勞器管理中使用,其中包括單個(gè)組件狀態(tài)的通信。I2C總線最主要的優(yōu)點(diǎn)是其簡單性和有效性。由于接口直接在組件之上,因此I2C總線占用的空間非常小,減少了電路板的空間和芯片管腳的數(shù)量,降低了互聯(lián)本錢。總線的長度可高達(dá)25英尺,并且能夠以10Kbps的最大傳輸速率支持40個(gè)組件。I2C總線的另一個(gè)優(yōu)點(diǎn)是,它支持多主控(multimastering),其中任何能夠進(jìn)行發(fā)送和接收的設(shè)備都可以成為主總線。一個(gè)主控能夠控制信號(hào)的傳輸和時(shí)鐘頻率。當(dāng)然,在任何時(shí)間點(diǎn)上只能有一個(gè)主控。儲(chǔ)存器件AT24C021概述AT24C02是一個(gè)2K位串行CMOSE2PROM,內(nèi)部含有256個(gè)8位字節(jié),CATALYST公司的先進(jìn)CMOS技術(shù)實(shí)質(zhì)上減少了器件的功耗。AT24C02有一個(gè)16字節(jié)頁寫緩沖器。該器件通過IC總線接口進(jìn)行操作,有一個(gè)專門的寫保護(hù)功能。圖3-7AT24C02管腳配置2功能描述AT24C02支持IC,總線數(shù)據(jù)傳送協(xié)議IC,總線協(xié)議規(guī)定任何將數(shù)據(jù)傳送到總線的器件作為發(fā)送器。任何從總線接收數(shù)據(jù)的器件為接收器。數(shù)據(jù)傳送是由產(chǎn)生串行時(shí)鐘和所有起始停止信號(hào)的主器件控制的。主器件和從器件都可以作為發(fā)送器或接收器,但由主器件控制傳送數(shù)據(jù)〔發(fā)送或接收〕的模式,通過器件地址輸入端A0、A1和A2可以實(shí)現(xiàn)將最多8個(gè)AT24C02器件連接到總線上。表4管腳描述管腳名稱功能A0、A1、A2器件地址選擇SDA串行數(shù)據(jù)/地址SCL串行時(shí)鐘WP寫保護(hù)VDD—6V工作電壓Vss地SCL串行時(shí)鐘:AT24C02串行時(shí)鐘輸入管腳用于產(chǎn)生器件所有數(shù)據(jù)發(fā)送或接收的時(shí)鐘,這是一個(gè)輸入管腳。SDA串行數(shù)據(jù)/地址:AT24C02雙向串行數(shù)據(jù)/地址管腳用于器件所有數(shù)據(jù)的發(fā)送或接收,SDA是一個(gè)開漏輸出管腳,可與其它開漏輸出或集電極開路輸出進(jìn)行線或〔wire-OR〕。A0、A1、A2器件地址輸入端:這些輸入腳用于多個(gè)器件級(jí)聯(lián)時(shí)設(shè)置器件地址,當(dāng)這些腳懸空時(shí)默認(rèn)值為0。當(dāng)使用AT24C02時(shí)最大可級(jí)聯(lián)8個(gè)器件。如果只有一個(gè)AT24C02被總線尋址,這三個(gè)地址輸入腳〔A0、A1、A2〕可懸空或連接到Vss,如果只有一個(gè)AT24C02被總線尋址這三個(gè)地址輸入腳〔A0、A1、A2〕必須連接到Vss。WP寫保護(hù):如果WP管腳連接到Vcc,所有的內(nèi)容都被寫保護(hù)只能讀。當(dāng)WP管腳連接到Vss或懸空允許器件進(jìn)行正常的讀/寫操作。3.I2C總線的根本結(jié)構(gòu):采用I2C總線標(biāo)準(zhǔn)的單片機(jī)或IC器件,其內(nèi)部不僅有I2C接口電路,而且將內(nèi)部各單元電路按功能劃分為假設(shè)干相對(duì)獨(dú)立的模塊,通過軟件尋址實(shí)現(xiàn)片選,減少了器件片選線的連接。CPU不僅能通過指令將某個(gè)功能單元電路掛靠或摘離總線,還可對(duì)該單元的工作狀況進(jìn)行檢測,從而實(shí)現(xiàn)對(duì)硬件系統(tǒng)的既簡單又靈活的擴(kuò)展與控制。在數(shù)據(jù)傳送過程中,必須確認(rèn)數(shù)據(jù)傳送的開始和結(jié)束。在I2C總線技術(shù)標(biāo)準(zhǔn)中,開始和結(jié)束信號(hào)〔也稱啟動(dòng)和停止信號(hào)〕的定義如圖2所示。當(dāng)時(shí)鐘線SCL為高電平時(shí),數(shù)據(jù)線SDA由高電平跳變?yōu)榈碗娖蕉x為“開始〞信號(hào),起始狀態(tài)應(yīng)處于任何其他命令之前;當(dāng)SCL線處于高電平時(shí),SDA線發(fā)生低電平到高電平的跳變?yōu)椤敖Y(jié)束〞信號(hào)。器件將處于備用方式〔StandbyMODE).開始和結(jié)束信號(hào)都是由主器件產(chǎn)生。在開始信號(hào)以后,總線即被認(rèn)為處于忙狀態(tài);在結(jié)束信號(hào)以后的一段時(shí)間內(nèi),總線被認(rèn)為是空閑的。I2C總線的數(shù)據(jù)傳送格式是:在I2C總線開始信號(hào)后,送出的第一個(gè)字節(jié)數(shù)據(jù)是用來選擇從器件地址的,其中前7位為地址碼,第8位為方向位(R/W)讀寫控制。方向位為“0〞表示發(fā)送,即主器件把信息寫到所選擇的從器件;方向位為“1〞表示主器件將從從器件讀信息。開始信號(hào)后,系統(tǒng)中的各個(gè)器件將自己的地址和主器件送到總線上的地址進(jìn)行比較,如果與主器件發(fā)送到總線上的地址一致,那么該器件即為被主器件尋址的器件,其接收信息還是發(fā)送信息那么由第8位(R/W)確定。紅外接收HS0038紅外接收探頭,接收紅外信號(hào)頻率為38kHz,周期約26μs。如圖3-8。.圖3-8HS0038紅外接收器件紅外接收頭電路一體化的紅外接收裝置將遙控信號(hào)的接受、放大、檢波、整形集一體,并且輸出可以讓單片機(jī)識(shí)別的TTL信號(hào),這樣大大簡化了接收電路的復(fù)雜程度和電路的設(shè)計(jì)工作,方便使用。在本系統(tǒng)中我們采用紅外一體化接收頭HS0038,外觀圖如圖3所示。HS0038黑色環(huán)氧樹脂封裝,不受日光、熒光燈等光源干擾,內(nèi)附磁屏蔽,功耗低,靈敏度高。在用小功率發(fā)射管發(fā)射信號(hào)情況下,其接收距離可達(dá)35m。它能與TTL、COMS電路兼容。HS0038為直立側(cè)面收光型。它接收紅外信號(hào)頻率為38kHz,周期約26μs,同時(shí)能對(duì)信號(hào)進(jìn)行放大、檢波、整形,得到TTL電平的編碼信號(hào)。三個(gè)管腳分別是地、+5V電源、解調(diào)信號(hào)輸出端。紅外接收局部主要是對(duì)紅外載波信號(hào)進(jìn)行解調(diào)放大整形等由于市場上已經(jīng)有集成解調(diào)放大整形輸出的紅外接收頭所以我們只用考慮怎樣能準(zhǔn)確計(jì)算出紅外編碼脈沖時(shí)間就可以了通常我們?cè)谟?jì)算紅外編碼脈沖時(shí)間時(shí)一般把接收程序放在中斷程序中一旦有紅外信號(hào)那么馬上進(jìn)入中斷程序中并啟動(dòng)定時(shí)器對(duì)紅外信號(hào)延時(shí)時(shí)間進(jìn)行定時(shí)一旦計(jì)算判斷出是起始位那么準(zhǔn)備進(jìn)行指令碼的定時(shí)計(jì)算如果沒有檢測到起始位就不能檢測指令碼而是繼續(xù)檢測起始位的出現(xiàn)當(dāng)指令碼全部接收完畢后可根據(jù)指令碼的命令執(zhí)行相應(yīng)的動(dòng)作在紅外接收時(shí)要注意抗干擾因?yàn)檫b控窗簾接收陽光照射的時(shí)間和強(qiáng)度都很大因此主機(jī)接收到的紅外線干擾信號(hào)也很強(qiáng)所以一方面要加強(qiáng)主機(jī)接收頭的避光措施另一方面要在紅外接收軟件中設(shè)置接收紅外編碼信號(hào)延時(shí)時(shí)間的上限和下限依次來到達(dá)最正確的抗干擾效果液晶顯示器LCD1602液晶是一種高分子材料,因?yàn)槠涮厥獾奈锢?、化學(xué)、光學(xué)特性,20世紀(jì)中葉開始廣泛應(yīng)用在輕薄型顯示器上。液晶顯示器〔LCD〕的主要原理是以電流刺激液晶分子產(chǎn)生點(diǎn)、線、面并配合背部燈管構(gòu)成畫面。1602液晶每行可顯示16個(gè)字符,一共可以顯示兩行。液晶顯示器采用目前使用的比較廣泛的字符型液晶顯示器1602。1602液晶模塊內(nèi)部的字符發(fā)生存儲(chǔ)器〔CGROM)已經(jīng)存儲(chǔ)了160個(gè)不同的點(diǎn)陣字符圖形,這些字符有:阿拉伯?dāng)?shù)字、英文字母的大小寫、常用的符號(hào)、和日文假名等,每一個(gè)字符都有一個(gè)固定的代碼,比方大寫的英文字母“A〞的代碼是01000001B〔41H〕,顯示時(shí)模塊把地址41H中的點(diǎn)陣字符圖形顯示出來,我們就能看到字母“A〞。1.引腳功能說明1602LCD采用標(biāo)準(zhǔn)的14腳〔無背光〕或16腳〔帶背光〕接口,各引腳接口說明如表10-13所示:表5引腳接口說明表編號(hào)符號(hào)引腳說明編號(hào)符號(hào)引腳說明1VSS電源地9D2數(shù)據(jù)2VDD電源正極10D3數(shù)據(jù)3VL液晶顯示偏壓11D4數(shù)據(jù)4RS數(shù)據(jù)/命令選擇12D5數(shù)據(jù)5R/W讀/寫選擇13D6數(shù)據(jù)6E使能信號(hào)14D7數(shù)據(jù)7D0數(shù)據(jù)15BLA背光源正極8D1數(shù)據(jù)16BLK背光源負(fù)極第1腳:VSS為地電源。第2腳:VDD接5V正電源。第3腳:液晶顯示偏壓;VL為液晶顯示器比照度調(diào)整端,接正電源時(shí)比照度最弱,接地時(shí)比照度最高,比照度過高時(shí)會(huì)產(chǎn)生“鬼影〞,使用時(shí)可以通過一個(gè)10K的電位器調(diào)整比照度。第4腳:數(shù)據(jù)/命令選擇;RS為存放器選擇,高電平時(shí)選擇數(shù)據(jù)存放器、低電平時(shí)選擇指令存放器。第5腳:讀/寫選擇;R/W為讀寫信號(hào)線,高電平時(shí)進(jìn)行讀操作,低電平時(shí)進(jìn)行寫操作。當(dāng)RS和R/W共同為低電平時(shí)可以寫入指令或者顯示地址,當(dāng)RS為低電平R/W為高電平時(shí)可以讀忙信號(hào),當(dāng)RS為高電平R/W為低電平時(shí)可以寫入數(shù)據(jù)。第6腳:使能信號(hào);E端為使能端,當(dāng)E端由高電平跳變成低電平時(shí),液晶模塊執(zhí)行命令。第7~14腳:D0~D7為8位雙向數(shù)據(jù)線。第15腳:背光源正極。第16腳:背光源負(fù)極。2.1602LCD的RAM地址映射控制器內(nèi)部帶有80B的RAM緩沖區(qū),對(duì)應(yīng)關(guān)系如圖3-9所示圖3-91602LCD內(nèi)部RAM顯示地址當(dāng)我們向00~0F、40~4F地址中的任一處寫顯示數(shù)據(jù)是,液晶都可以立即顯示出來,當(dāng)寫到10~27、50~67地址是,必須通過移屏指令將它們移入可顯示區(qū)域方可正常顯示。3.控制指令表6控制命令表序號(hào)指令D7D6D5D4D3D2D1D01清顯示000000002光標(biāo)返回000001*3輸入模式000001I/DS4顯示開/關(guān)控制00001DCB5光標(biāo)或字符移位0001S/CR/L**6置功能001DLNF**1602液晶模塊的讀寫操作、屏幕和光標(biāo)的操作都是通過指令編程來實(shí)現(xiàn)的?!舱f明:1為高電平、0為低電平〕指令1:清顯示,指令碼01H,光標(biāo)復(fù)位到地址00H位置。指令2:光標(biāo)復(fù)位,光標(biāo)返回到地址00H。指令3:光標(biāo)和顯示模式設(shè)置I/D:光標(biāo)移動(dòng)方向,高電平右移,低電平移S:屏幕上所有文字是否左移或者右移。高電平表示有效,低電平那么無效。指令4:顯示開關(guān)控制。D:控制整體顯示的開與關(guān),高電平表示開顯示,低電平表示關(guān)顯示C:控制光標(biāo)的開與關(guān),高電平表示有光標(biāo),低電平表示無光標(biāo)B:控制光標(biāo)是否閃爍,高電平閃爍,低電平不閃爍。指令5:光標(biāo)或顯示移位S/C:高電平時(shí)移動(dòng)顯示的文字,低電平時(shí)移動(dòng)光標(biāo)。指令6:功能設(shè)置命令DL:高電平時(shí)為4位總線,低電平時(shí)為8位總線N:低電平時(shí)為單行顯示,高電平時(shí)雙行顯示F:低電平時(shí)顯示5x7的點(diǎn)陣字符,高電平時(shí)顯示5x10的點(diǎn)陣字符。電源局部、顯示局部、紅外線接收局部、數(shù)據(jù)儲(chǔ)存局部、光控電路測光局部、電機(jī)控制執(zhí)行局部電源局部通過一帶有整流電路的12V變壓器外接市電〔220V〕后,輸入直流12V電壓。左邊兩個(gè)是12伏的電源濾波電容,一般大電容旁邊并聯(lián)一個(gè)小電容的目的是降低高頻內(nèi)阻,因?yàn)榇蟮碾娊怆娙菀话悴捎镁砝@工藝制造,所以等效電感較大,小電容可以提供一個(gè)小內(nèi)阻的高頻通道,降低電源全頻帶內(nèi)阻。同時(shí)經(jīng)過3端集成穩(wěn)壓器LM7805穩(wěn)壓后輸出+5V電壓VCC,為訊響電路、紅外接收電路、顯示電路提供電源,5V電源經(jīng)過二極管D5、限流電阻R1=5K后,為單片機(jī)及DS1302提供VDD電壓,BATTERY是直流供電電源,電壓為3V~3.6V,在本電路中為了節(jié)省本錢,使用兩節(jié)5號(hào)可充電電池,C6和C7是單片機(jī)電源濾波電容。平時(shí)交流電正常的情況下,VDD電源為單片機(jī)及DS1302供電的同時(shí),也為電池浮充電,大大延長了電池的使用壽命,當(dāng)交流電停電的時(shí)候,電池為單片機(jī)及DS1302供電,單片機(jī)及DS1302在掉電狀態(tài)下維持時(shí)鐘的正常。在控制器設(shè)置成手動(dòng)控制時(shí),單片機(jī)除執(zhí)行任務(wù)外,均處于睡眠狀態(tài),遙控器信號(hào)的到來,單片機(jī)從睡眠中喚醒,恢復(fù)正常工作,所以手動(dòng)狀態(tài)下當(dāng)交流停電時(shí),電池的耗電電流更小。圖3-10電源電路顯示電路顯示電路設(shè)計(jì)采用的是液晶LCD1602來顯示實(shí)時(shí)時(shí)間、調(diào)開窗簾時(shí)間、關(guān)窗簾時(shí)間等內(nèi)容。P0口作為數(shù)據(jù)口連接LCD1602的7~14口,來傳輸數(shù)據(jù)及指令,由于P0口帶負(fù)載能力差,故需接上拉電阻。P2.5接LCD1602的4腳RS〔數(shù)據(jù)/命令選擇端〕,P2.6接LCD1602的5腳R/W〔讀寫選擇端〕,P2.7接LCD1602的6腳E〔使能信號(hào)〕。電位器W1用來調(diào)節(jié)LCD1602的亮度。圖3-11顯示電路紅外接收電路紅外線接收電路使用一個(gè)集成紅外接收器,型號(hào)是HS0038,靜態(tài)時(shí)輸出端輸出高電平,當(dāng)接收到紅外信號(hào)后,按紅外信號(hào)的數(shù)據(jù)波形輸出負(fù)脈沖數(shù)據(jù)信號(hào)。紅外信號(hào)輸出到單片機(jī)的P3.3,該口對(duì)應(yīng)的第二功能是外部中斷1(INT1),利用該口的第二功能,一旦紅外線信號(hào)到來,P3.3被拉低,單片機(jī)中止當(dāng)前的工作轉(zhuǎn)移到接收、處理紅外信號(hào)。開啟中斷功能的目的,既減輕了單片機(jī)的工作負(fù)擔(dān),又保證接收到的紅外信號(hào)的完整性,同時(shí)在手開工作狀態(tài)下,單片機(jī)進(jìn)入睡眠后,利用外部中斷功能完成對(duì)單片機(jī)的喚醒。紅外接收局部主要是對(duì)紅外載波信號(hào)進(jìn)行解調(diào)放大整形等由于市場上已經(jīng)有集成解調(diào)放大整形輸出的紅外接收頭所以我們只用考慮怎樣能準(zhǔn)確計(jì)算出紅外編碼脈沖時(shí)間就可以了通常我們?cè)谟?jì)算紅外編碼脈沖時(shí)間時(shí)一般把接收程序放在中斷程序中一旦有紅外信號(hào)那么馬上進(jìn)入中斷程序中并啟動(dòng)定時(shí)器對(duì)紅外信號(hào)延時(shí)時(shí)間進(jìn)行定時(shí)一旦計(jì)算判斷出是起始位那么準(zhǔn)備進(jìn)行指令碼的定時(shí)計(jì)算如果沒有檢測到起始位就不能檢測指令碼而是繼續(xù)檢測起始位的出現(xiàn)當(dāng)指令碼全部接收完畢后可根據(jù)指令碼的命令執(zhí)行相應(yīng)的動(dòng)作。在紅外接收時(shí)要注意抗干擾因?yàn)檫b控窗簾接收陽光照射的時(shí)間和強(qiáng)度都很大因此主機(jī)接收到的紅外線干擾信號(hào)也很強(qiáng)所以一方面要加強(qiáng)主機(jī)接收頭的避光措施另一方面要在紅外接收軟件中設(shè)置接收紅外編碼信號(hào)延時(shí)時(shí)間的上限和下限依次來到達(dá)最正確的抗干擾效果。圖3-12紅外接收電路時(shí)鐘電路本電路采用DS1302時(shí)鐘芯片,DS1302主要特點(diǎn)是采用串行數(shù)據(jù)傳輸,可為掉電保護(hù)電源提供可編程的充電功能,并且可以關(guān)閉充電功能。采用普通的32768Hz晶振,兩個(gè)電源Vcc1及Vcc2接電源VDD,這樣如果沒有交流電的供電也可以由可充電電池供電,起了掉電保護(hù),防止數(shù)據(jù)喪失。2腳X1〔晶振引腳〕及3腳X2〔晶振引腳〕接32786Hz的晶振,DS1302的7腳CLK〔串行時(shí)鐘輸入引腳〕與單片機(jī)的P1.5相連,6腳I/O(數(shù)據(jù)輸入輸出引腳)與單片機(jī)的P1.6相連,5腳RET〔復(fù)位引腳〕與單片機(jī)的P1.7相連。圖3-13時(shí)鐘電路數(shù)據(jù)存儲(chǔ)電路本電路采用AT24C02芯片,AT24C02支持IC,總線數(shù)據(jù)傳送協(xié)議IC,總線協(xié)議規(guī)定任何將數(shù)據(jù)傳送到總線的器件作為發(fā)送器。任何從總線接收數(shù)據(jù)的器件為接收器。數(shù)據(jù)傳送是由產(chǎn)生串行時(shí)鐘和所有起始停止信號(hào)的主器件控制的。A0、A1、A2接地表示該器件的地址為00H,SCL接單片機(jī)的P1.0腳,SDA接單片機(jī)的P1.1腳。圖3-14數(shù)據(jù)存儲(chǔ)電路光控測光電路光控電路由D6(光敏二極管)、C10、Q5組成,利用單片機(jī)的P2.2及P2.3完成對(duì)環(huán)境亮度的測試工作?!?〞,反之測得數(shù)據(jù)位“1〞“0〞“1“時(shí)表示黑夜。圖3-15光控檢測電路電機(jī)執(zhí)行電路電機(jī)執(zhí)行局部完全受單片機(jī)的控制,通過單片機(jī)的P2.0和P2.1完成。單片機(jī)復(fù)位狀態(tài)下P2.0和P2.1輸出高電平,三極管Q1、Q2,Q3、Q4截止,兩個(gè)繼電器K1、K2釋放狀態(tài),方向可逆的電動(dòng)機(jī)M因無電源供電而停止。當(dāng)P2.0或者P2.1其中有一個(gè)被拉低后,兩個(gè)繼電器便會(huì)有一個(gè)導(dǎo)通,例如P2.0拉低后Q1導(dǎo)通、Q2導(dǎo)通,K1吸合,電機(jī)M得電轉(zhuǎn)動(dòng),當(dāng)只有P2.1拉低后,電機(jī)M那么反方向轉(zhuǎn)動(dòng),實(shí)現(xiàn)了窗簾的拉開和關(guān)閉。兩個(gè)繼電器的工作狀態(tài)受單片機(jī)控制,在同一個(gè)時(shí)間內(nèi)兩個(gè)繼電器僅能有一個(gè)吸合。即便是在電機(jī)M工作期間,操作了反向轉(zhuǎn)動(dòng)按鍵,單片機(jī)也是先釋放當(dāng)前工作的繼電器,并延時(shí)一段時(shí)間后再吸合另外一個(gè)繼電器,防止了電機(jī)M正反工作線圈同時(shí)通電的冒險(xiǎn)。圖3-16電機(jī)執(zhí)行電路窗簾框架構(gòu)造設(shè)計(jì)窗簾框架構(gòu)造設(shè)計(jì)包括窗簾微動(dòng)開關(guān)連接電路設(shè)計(jì)和窗簾架的制作與設(shè)計(jì)。本設(shè)計(jì)中的微動(dòng)開關(guān)通過電容、電阻組成的復(fù)位電路與單片機(jī)的復(fù)位引腳相連,微動(dòng)開關(guān)安裝在窗簾滑桿上,當(dāng)窗簾移動(dòng)到預(yù)定位置時(shí),觸動(dòng)微動(dòng)開關(guān),使單片機(jī)復(fù)位,此時(shí)電機(jī)停轉(zhuǎn),窗簾停到指定位置。圖3-17窗簾框架構(gòu)造程序的編寫是該系統(tǒng)重要的局部,如果軟件編寫的科學(xué)就能表達(dá)出該系統(tǒng)功能的完整性、實(shí)用性、經(jīng)濟(jì)性。只有軟件和硬件都正確才能使電路正常工作到達(dá)我們想要的效果。本系統(tǒng)的軟件編程局部的編寫主要分為紅外解碼程序、LCD1602顯示程序、時(shí)鐘芯片DS1302控制程序、數(shù)據(jù)存儲(chǔ)程序這四大類來闡述。紅外解碼這里采用的是6122型遙控器,載波波形使用455KHz晶體,經(jīng)內(nèi)局部頻電路,信號(hào)被調(diào)制在37.91KHz,占空比為三分之一。數(shù)據(jù)格式包括了引導(dǎo)碼、用戶碼、數(shù)據(jù)碼、數(shù)據(jù)反碼,編碼總共占32位。數(shù)據(jù)反碼是數(shù)據(jù)碼相反的編碼,編碼時(shí)可用對(duì)于數(shù)據(jù)的糾錯(cuò)。圖3-19紅外波形引導(dǎo)碼由一個(gè)9ms的載波波形和的關(guān)斷時(shí)間構(gòu)成,它作為隨后發(fā)射的碼的引導(dǎo),這樣當(dāng)接收系統(tǒng)是由微處理器構(gòu)成的時(shí)候,能更有效地處理碼的接收與檢測及其它各項(xiàng)控制之間的時(shí)序關(guān)系。編碼采用脈沖位置調(diào)制方式〔PPM〕。每次8位的碼被傳送之后,它們的反碼也被傳送,減少了系統(tǒng)的誤碼率。用戶碼或者數(shù)據(jù)碼中的每一位可以是“1〞,也可以是“0〞。區(qū)分“0〞和“1〞是利用脈沖的時(shí)間間隔來區(qū)分,這種編碼方式稱為脈沖位置調(diào)制方式,簡稱PPM。圖3-20“0〞,“1〞碼波形解碼的關(guān)鍵是如何識(shí)別“0〞和“1〞,代碼格式〔以接收代碼為準(zhǔn),接收代碼與發(fā)射代碼反向〕。;根據(jù)碼的格式,應(yīng)該等待9ms的起始碼和4.5ms的結(jié)果碼完成后才能讀碼。紅外解碼流程圖如下:接收并解碼接收并解碼判斷數(shù)據(jù)格式是否正確跳出中斷比較,轉(zhuǎn)出執(zhí)行相應(yīng)動(dòng)作中斷返回有紅外信號(hào),產(chǎn)生中斷否是圖3-21紅外解碼流程圖LCD1602顯示程序?qū)懼噶睿狠斎耄篟S=L,R/W=L,D0—D7=指令碼,E=高脈沖;輸出:D0—D7=數(shù)據(jù)。寫數(shù)據(jù):輸入:RS=H,R/W=L,D0—D7=數(shù)據(jù),E=高脈沖;輸出:無。寫操作時(shí)序如圖3-22所示:圖3-22寫操作時(shí)序LCD1602的一般初始化〔復(fù)位〕過程:延時(shí)15mS,寫指令38H〔不檢測忙信號(hào)〕;延時(shí)5mS,寫指令38H〔不檢測忙信號(hào)〕;延時(shí)5mS,寫指令38H〔不檢測忙信號(hào),以后每次寫指令、讀/寫數(shù)據(jù)操作均需要檢測忙信號(hào)〕;寫指令38H:顯示模式設(shè)置;寫指令08H:顯示關(guān)閉;寫指令01H:顯示清屏;寫指令06H:顯示光標(biāo)移動(dòng)設(shè)置;寫指令0CH:顯示開及光標(biāo)設(shè)置;1602流程圖如下:開始開始初始化單片機(jī)發(fā)寫命令液晶是否應(yīng)答準(zhǔn)備寫入數(shù)據(jù)執(zhí)行顯示命令清屏并光標(biāo)復(fù)位否是圖3-231602流程圖DS1302的控制程序DS1302與微處理器進(jìn)行數(shù)據(jù)交換時(shí),首先由微處理器向電路發(fā)送命令字節(jié),命令字節(jié)最高位MSB(D7)必須為邏輯1,如果D7=0,那么禁止寫DS1302,即寫保護(hù);D6=0,指定時(shí)鐘數(shù)據(jù),D6=1,指定RAM數(shù)據(jù);D5~D1指定輸入或輸出的特定存放器;最低位LSB(D0)為邏輯0,指定寫操作(輸入),D0=1,指定讀操作(輸出)。在DS1302的時(shí)鐘日歷或RAM進(jìn)行數(shù)據(jù)傳送時(shí),DS1302必須首先發(fā)送命令字節(jié)。假設(shè)進(jìn)行單字節(jié)傳送,8位命令字節(jié)傳送結(jié)束之后,在下2個(gè)SCLK周期的上升沿輸入數(shù)據(jù)字節(jié),或在下8個(gè)SCLK周期的下降沿輸出數(shù)據(jù)字節(jié)。DS1302與RAM相關(guān)的存放器分為兩類:一類是單個(gè)RAM單元,共31個(gè),每個(gè)單元組態(tài)為一個(gè)8位的字節(jié),其命令控制字為C0H~FDH,其中奇數(shù)為讀操作,偶數(shù)為寫操作;再一類為突發(fā)方式下的RAM存放器,在此方式下可一次性讀、寫所有的RAM的31個(gè)字節(jié)。數(shù)據(jù)輸入時(shí),時(shí)鐘的上升沿?cái)?shù)據(jù)必須有效,數(shù)據(jù)的輸出在時(shí)鐘的下降沿。如果為低電平,那么所有的數(shù)據(jù)傳送將被中止且I/0引腳變?yōu)楦咦锠顟B(tài)。上電時(shí),在Vcc>2.5伏之前,必須為邏輯0。當(dāng)把驅(qū)動(dòng)至邏輯1狀態(tài)時(shí),SCLK必須為邏輯0。單字節(jié)數(shù)據(jù)輸入跟隨在寫命令字節(jié)的8個(gè)SCLK周期之后,在控制指令字輸入后的下一個(gè)SCLK時(shí)鐘的上升沿時(shí),數(shù)據(jù)被寫入DS1302,數(shù)據(jù)輸入從低位即位0開始。同樣,在緊跟8位的控制指令字后的下一個(gè)SCLK脈沖的下降沿讀出DS1302的數(shù)據(jù),讀出數(shù)據(jù)時(shí)從低位0位到高位7。DS1302的讀寫時(shí)序如圖3-24所示。圖3-24DS1302讀、寫時(shí)序讀取實(shí)時(shí)時(shí)間過程流程見框圖如下:開始開始變量初始化使DS1302不具備寫保護(hù)復(fù)位后產(chǎn)生一個(gè)高電平寫DS1302地址地址增加向該地址寫數(shù)據(jù)數(shù)據(jù)是否寫完復(fù)位后產(chǎn)生一個(gè)高電平寫DS1302地址地址增加將該地址數(shù)據(jù)讀出數(shù)據(jù)是否讀完顯示數(shù)據(jù)NYNY圖3-25DS1302流程圖數(shù)據(jù)存儲(chǔ)程序AT24C02支持IC,總線數(shù)據(jù)傳送協(xié)議IC,總線協(xié)議規(guī)定任何將數(shù)據(jù)傳送到總線的器件作為發(fā)送器。任何從總線接收數(shù)據(jù)的器件為接收器。數(shù)據(jù)傳送是由產(chǎn)生串行時(shí)鐘和所有起始停止信號(hào)的主器件控制的。主器件和從器件都可以作為發(fā)送器或接收器,但由主器件控制傳送數(shù)據(jù)〔發(fā)送或接收〕的模式,通過器件地址輸入端A0、A1和A2可以實(shí)現(xiàn)將最多8個(gè)AT24C02器件連接到總線上。I2C總線是一種用于IC器件之間連接的二線制總線。它通過SDA〔串行數(shù)據(jù)線〕及SCL〔串行時(shí)鐘線)兩根線在連到總線上的器件之間傳送信息,并根據(jù)地址識(shí)別每個(gè)器件:不管是單片機(jī)、存儲(chǔ)器、LCD驅(qū)動(dòng)器還是鍵盤接口。AT24C02的1、2、3腳是三條地址線,用于確定芯片的硬件地址〔實(shí)驗(yàn)板中直接接地只有一塊器件〕;第8腳和第4腳分別為正、負(fù)電源。第5腳SDA為串行數(shù)據(jù)輸入/輸出,數(shù)據(jù)通過這條雙向I2C總線串行傳送,SDA和SCL都需要和正電源間各接一個(gè)5.1K的電阻上拉。第7腳為WP寫保護(hù)端,接地時(shí)允許芯片執(zhí)行一般的讀寫操作。接電源端時(shí)不允許對(duì)器件寫。

24C02中帶有片內(nèi)地址存放器。每寫入或讀出一個(gè)數(shù)據(jù)字節(jié)后,該地址存放器自動(dòng)加1,以實(shí)現(xiàn)對(duì)下一個(gè)存儲(chǔ)單元的讀寫。所有字節(jié)均以單一操作方式讀取。為降低總的寫入時(shí)間,一次操作可寫入多達(dá)8個(gè)字節(jié)的數(shù)據(jù)。圖3-26總線時(shí)序圖3-27寫周期時(shí)序圖3-28起始/停止時(shí)序AT24C02讀寫操作流程圖如下:產(chǎn)生啟動(dòng)條件產(chǎn)生啟動(dòng)條件給出從地址等待接收確認(rèn)給出數(shù)據(jù)地址等待接收確認(rèn)寫入接收數(shù)據(jù)等待接收確認(rèn)產(chǎn)生啟動(dòng)條件給出從地址等待接收確認(rèn)不做應(yīng)答產(chǎn)生停止條件產(chǎn)生應(yīng)答是否最后字節(jié)接收1字節(jié)數(shù)據(jù)產(chǎn)生停止條件NY寫操作流程讀操作流程圖3-29AT24C02讀寫操作流程圖該系統(tǒng)硬件電路結(jié)構(gòu)相比照較簡單,主要是軟件局部的仿真與調(diào)試。軟件局部的重難點(diǎn)又主要表達(dá)在三個(gè)中斷程序中。第一個(gè)中斷,定時(shí)器/計(jì)數(shù)器0定時(shí)中斷,因?yàn)樵趯?shí)驗(yàn)室的仿真器上沒有DS1302時(shí)鐘芯片,所以在調(diào)試的時(shí)候把定時(shí)計(jì)數(shù)器0設(shè)置為工作方式1即16位定時(shí)器,設(shè)定每0.5ms將產(chǎn)生一次中斷,經(jīng)過0.5*20*60既得到一分鐘的定時(shí)時(shí)間,每經(jīng)過一分鐘如果自動(dòng)開關(guān)窗簾功能開啟它就會(huì)與自動(dòng)開關(guān)窗簾的定時(shí)時(shí)間想比較,如果相等就轉(zhuǎn)入相應(yīng)的子程序中去執(zhí)行控制命令。第二個(gè)中斷,定時(shí)器/計(jì)數(shù)器1定時(shí)中斷,此中斷主要是用來控制數(shù)碼管的顯示,這與本系統(tǒng)的設(shè)計(jì)方式根本相同,不同的是MCS-51仿真器上的數(shù)碼管都有相應(yīng)的位碼地址和位形碼地址,只要把字形碼和字位碼送入相應(yīng)的地址既能顯示出需要的數(shù)字。第三個(gè)中斷,外部中斷0,在原程序中,當(dāng)紅外線一體化接受器接受到信號(hào)時(shí)就會(huì)產(chǎn)生中斷,并根據(jù)解碼得到的值去執(zhí)行相應(yīng)的子程序,但是在仿真過程當(dāng)中沒有紅外線發(fā)射器,也沒有紅外線一體化接收頭,所以改用了中斷鍵盤代替。在調(diào)試中把P1口和P2.7,P2.6作為10個(gè)按鍵分別置上下電平,當(dāng)其中一個(gè)口被置為低電平時(shí),此低電平就將引發(fā)外部中斷0,系統(tǒng)轉(zhuǎn)入執(zhí)行中斷子程序,判斷P1口和P2.7、P2.6那個(gè)為低電平,然后轉(zhuǎn)入相應(yīng)功能的子程序中去完成需要的動(dòng)作。現(xiàn)象觀察:在MCS-51仿真器上通過編譯、加載、運(yùn)行后可以觀察到,在沒有調(diào)時(shí)鍵被按下時(shí),數(shù)碼管顯示正常的實(shí)時(shí)時(shí)間,因?yàn)樵诜昼姾托r(shí)中間沒有設(shè)置準(zhǔn)確的秒鐘閃爍信號(hào),所以只能看到在小時(shí)和分鐘間有個(gè)點(diǎn)在閃爍。在P3.0、P3.1口上分別接一發(fā)光二極管,在送入低電平的時(shí)候亮,高電平的時(shí)候不亮。在有鍵被按下時(shí),程序自動(dòng)轉(zhuǎn)入相應(yīng)的中斷子程序,如:P2.1口手動(dòng)開簾鍵被按下時(shí),P3.0口上接的發(fā)光二極管亮;P2.1口上的鍵被按下時(shí),P3.1口上接的發(fā)光二極管亮,這說明程序能夠正常的運(yùn)行,能夠使繼電器導(dǎo)通,帶動(dòng)電機(jī)向正確的方向轉(zhuǎn)動(dòng)。經(jīng)過在MCS-51仿真器上調(diào)試運(yùn)行,此電路及程序根本上到達(dá)了預(yù)期目的,當(dāng)然在程序中也還有很多可以改良的優(yōu)化設(shè)計(jì),也還可以添加一些輔助功能這些都還有待更好的改良[27]。本文主要完成了如下工作:硬件局部:〔1〕采用自制5V穩(wěn)壓電源。先用一變壓器把市電〔220V交流電〕變成12V,經(jīng)整流、濾波后,再用一集成穩(wěn)壓管〔74L05〕把電壓穩(wěn)定在5V以供單片機(jī)使用;〔2〕單片機(jī)選用89C2051,是整個(gè)系統(tǒng)的核心部件,擔(dān)負(fù)整個(gè)系統(tǒng)的管理控制任務(wù);〔3〕紅外線遙控方式。發(fā)射局部采用普通的彩電遙控器,既節(jié)約本錢又方便;接收局部采用一紅外線接頭,主要是通過89C2051解碼,分析出需要執(zhí)行的命令,再由單片機(jī)去完成;〔4〕.數(shù)據(jù)存儲(chǔ)設(shè)定。選用時(shí)鐘日歷芯片DS1302作為萬年歷,因?yàn)樗麕в?2字節(jié)的RAM,并且?guī)в泻髠潆娫床慌聰嚯姡约孀鰯?shù)據(jù)存儲(chǔ)器使用,保存用戶設(shè)定的一些參數(shù)?!?〕.窗簾用能正反轉(zhuǎn)的電動(dòng)機(jī)來拖動(dòng),電機(jī)的轉(zhuǎn)動(dòng)方向由繼電器來控制。軟件局部:〔1〕對(duì)DS1302芯片進(jìn)行初始化,I2C總線進(jìn)行單字節(jié)數(shù)據(jù)讀寫傳送、多字節(jié)數(shù)據(jù)讀寫傳送;〔2〕利用紅外線一體化接收頭對(duì)紅外線遙控器發(fā)射的編碼進(jìn)行接收,然后由單片機(jī)根據(jù)接收到的信號(hào)進(jìn)行解碼;〔3〕控制程序,根據(jù)解碼得到的結(jié)果去執(zhí)行需要的操作。開窗簾、關(guān)窗簾、停止移動(dòng)、調(diào)節(jié)實(shí)時(shí)時(shí)間、調(diào)節(jié)開窗簾時(shí)間、調(diào)節(jié)關(guān)窗簾時(shí)間、時(shí)間增加、時(shí)間減小、開/關(guān)自動(dòng)開關(guān)簾、開/關(guān)自動(dòng)關(guān)窗簾;〔4〕顯示電路。實(shí)時(shí)時(shí)鐘顯示、開窗簾調(diào)時(shí)顯示、關(guān)窗簾調(diào)時(shí)顯示。第5章.總結(jié)學(xué)校給我們布置了個(gè)任務(wù),讓同學(xué)在畢業(yè)前進(jìn)行實(shí)踐調(diào)查,以便培養(yǎng)同學(xué)的能力,這樣會(huì)很好的鍛煉我們社會(huì)交際能力,現(xiàn)在的社會(huì)的要求也是越來越需要我們的能力。通過這項(xiàng)活動(dòng),使我們的視野更加寬闊對(duì)社會(huì)的了解更多.在調(diào)研過程中我參加了實(shí)習(xí),這更加讓我深入的了解企業(yè)。在實(shí)際調(diào)研過程中可以通過網(wǎng)絡(luò),書本,指導(dǎo)老師還有專業(yè)人員得到相關(guān)的信息。從各個(gè)環(huán)節(jié)入手,對(duì)廠品全方面了解。突出應(yīng)用性強(qiáng),注重新技術(shù),新成果的應(yīng)用。對(duì)傳感器進(jìn)行類比,選材,工藝設(shè)計(jì)突出實(shí)用性。立足根底理論,面向應(yīng)用技術(shù),以必須,夠用為尺度。加理論知識(shí)和實(shí)際應(yīng)用統(tǒng)一。這些都是在調(diào)研中所要考慮到的。讓我學(xué)到了許多知識(shí),培養(yǎng)了我的調(diào)查研究、查閱文獻(xiàn)、收集資料和理論分析的能力;分析問題和解決問題的能力。提高自身實(shí)踐技能,到達(dá)理論知識(shí)和實(shí)際應(yīng)用的統(tǒng)一,讓我受益匪淺。調(diào)研的過程也就是探索如何將設(shè)計(jì)變?yōu)楝F(xiàn)實(shí)的過程,通過這次調(diào)研,讓我深深地感覺到我們?cè)趯W(xué)校所學(xué)知識(shí)的重要性。設(shè)計(jì)知識(shí)在實(shí)際工程設(shè)計(jì)環(huán)節(jié)中必不可少,這也讓我感覺到自己所學(xué)知識(shí)的優(yōu)勢及缺乏,覺得平時(shí)的知識(shí)積累的還不夠,仍然有好多東西等著我去學(xué)習(xí)!今后要不斷地提高自身的綜合素質(zhì);同時(shí)認(rèn)識(shí)到實(shí)踐也是一個(gè)不可缺少環(huán)節(jié),只有不斷地通過理論與實(shí)踐相結(jié)合,不斷發(fā)現(xiàn)問題解決問題,才能創(chuàng)作出更好的畢業(yè)設(shè)計(jì)作品。調(diào)研使我對(duì)課題在理論上有了一個(gè)深層次的研究,開闊了自己的設(shè)計(jì)思路,也是對(duì)我在實(shí)踐環(huán)節(jié)中遇到問題的補(bǔ)充,感謝學(xué)校給我的這次學(xué)習(xí)與實(shí)踐的時(shí)機(jī)。謝在論文完成之際,我首先要對(duì)我的指導(dǎo)老師陳老師和幫助過我的所有同學(xué)及提供應(yīng)我實(shí)驗(yàn)條件的劉老師表示最真摯的謝意。在整個(gè)論文的選題、理論研究、需求分析和系統(tǒng)設(shè)計(jì)的過程中,他們給了我不少啟發(fā),并對(duì)論文的設(shè)計(jì)方案提出了許多至關(guān)重要的建議,在實(shí)驗(yàn)過程中幫我解決了不少的難題。在論文寫作期間曾經(jīng)遇到過很多的阻力,但是在大家的幫助下總算是順利地度過了,現(xiàn)在一切都好了。在論文的完成過程中,我還要特別感謝陳老師給予了我無私的幫助,正是在他的鼓勵(lì)和幫助之下,才使得我的實(shí)驗(yàn)?zāi)茼樌耐瓿?;同時(shí),得到了其他許多讓我分享他們珍貴經(jīng)驗(yàn)和知識(shí)的老師以及同學(xué)的熱心幫助,向他們表示由衷的感謝;我還要感謝這一領(lǐng)域的學(xué)者們,是他們給我經(jīng)驗(yàn)和研究方向,文中引用了一些他們研究成果,在此一并表示衷心的感謝。由于本人學(xué)識(shí)有限,加之時(shí)間倉促,文中不免有錯(cuò)誤和待改良之處,真誠歡送各位師長、同行提出珍貴意見。謝謝!參考文獻(xiàn)—原理篇2006[4]童詩白.華成英.模擬電子技術(shù)〔第四版〕2006[5]閻石.數(shù)字電子技術(shù)〔第五版〕2005—模擬局部2005[7]劉葉冰,董欣,張家維.智能園區(qū)系統(tǒng)集成技術(shù).工程設(shè)計(jì)CAD與智能建筑,1999[8]騰飛.智能家居就在眼前.中國計(jì)算機(jī)用戶,2004.[9]丁元杰.單片微機(jī)原理及應(yīng)用,2003年7月.[10]王明順,吳省.可涓流充電的串行實(shí)時(shí)時(shí)鐘芯片DS1302及其應(yīng)用.電子技術(shù)應(yīng)用,1996,[11]崔惠柳,串行實(shí)時(shí)時(shí)鐘芯片DS1302及其應(yīng)用.廣西工業(yè)學(xué)院,1998.3,[12]徐發(fā)榮.DS1302、HT1380時(shí)鐘芯片與8031單片機(jī)的接口技術(shù).國外電子原器件,1999.[13]徐福成,趙會(huì)成.電子制作,2004年合訂本上,自己動(dòng)手搭建單片機(jī)學(xué)習(xí)開發(fā)系統(tǒng).2[14]李光飛,樓然苗,胡佳文等.單片機(jī)課程設(shè)計(jì)實(shí)例指導(dǎo).北京航空航天大學(xué)出版社.2004.[15]覃韋玲.利用單片機(jī)進(jìn)行紅外線編、解碼遙控.電子世界,2002.[17]鄒書文,黃光桂.紅外遙控單片機(jī).電腦與信息技術(shù).1995.附錄:原理圖:附錄圖-1基于單片機(jī)控制的智能窗簾設(shè)計(jì)系統(tǒng)原理圖源程序:#include<reg52.h>#defineuintunsignedint#defineucharunsignedcharuchars[4];uchara,deta1,deta2;sbitred=P3^3;voiddelay(ucharx)//功能:延時(shí)函數(shù){uchari,j;for(i=x;i>0;i++) for(j=1;j>0;j--);}{ uchari;while(x--) { for(i=0;i<13;i++); }}voidmain(){ initbus(); inittime0(); lcd1602_init(); sec=readfromadd(7); init_1602(); EA=1; EX1=1; IT1=1; while(1) { writetoadd(7,sec); delay2(100);delay2(100);delay2(100); write_com1602(0x88); write_data1602(48+(sec/10)); write_data1602(48+(sec%10)); w_com1602(0x82); for(i=0;i<11;i++) { w_data1602(m[i]); } w_com1602(0x82+0x40); for(i=0;i<12;i++) { w_data1602(b[i]); } }}voiditn1()interrupt2using0//函數(shù)功能:外部中斷1處理函數(shù){ uchari,j,num=0; EX1=0; delay(15); if(red==1) { EX1=1; return; } while(!red) // 去掉9ms的前導(dǎo)低電平信號(hào) { delay1(1); } for(i=0;i<4;i++) { for(j=0;j<8;j++) { { delay1(1); } while(!red);//去除上一次低電平的干擾保證每次取0,1的準(zhǔn)確 while(red) //計(jì)算高電平時(shí)長 { delay1(1); num++; if(num>=30) { EX1=1; return; } } s[i]>>=1; if(num>=8) s[i]|=0x80; num=0; } } if(s[2]!=~s[3]) //s[2]是否s[3]相反 { EX1=1; return; } switch(s[2]) { case0x47:key=0;break; case0x40:key1=0;break; case0x44:key0=0;break; default:break; } keyscan(); EX1=1;}#include<reg52.h>#include<lcd1602.h>#defineucharunsignedchar#defineuintunsignedintsbitscl=P1^5;sbitsda=P3^6;ucharnum=0,sec=0;voiddelay1()//功能:延時(shí)函數(shù)1,us級(jí){;;}voiddelay2(ucharx)//功能:延時(shí)函數(shù)2,ms級(jí){ uchari,j; for(i=0;i<x;i++) for(j=0;j<100;j++);}voidinitbus()功能:總線初始化{ scl=1; delay1(); sda=1; delay1();}voidstart()//功能:起始信號(hào){ sda=1;delay1();cl=1;delay1();sda=0;delay1();}voidstop()//功能:終止信號(hào){ sda=0;delay1();scl=1;delay1(); sda=1;delay1();scl=0;delay1();}voidask()//功能:應(yīng)答信號(hào){ uchari=0; scl=1;delay1();// while((sda==1)&&(i<255)) { i++; } scl=0;delay1();//}voidwrite1byte(uchardete)//功能:寫一個(gè)字節(jié){ uchari,temp; temp=dete; for(i=0;i<8;i++) { temp<<=1;scl=0;delay1(); sda=CY;delay1();scl=1;delay1(); } scl=0;delay1();sda=1;delay1(); //=1?}ucharread1byte()//功能:讀一個(gè)字節(jié){ uchari,dete; scl=0;delay1(); sda=1;delay1(); for(i=0;i<8;i++) { scl=1;delay1();dete=(dete<<1)|sda;scl=0;delay1(); } returndete;}ucharreadfromadd(ucharaddress)//功能:讀指定地址{ uchartemp; start();write1byte(0xa0);ask();write1byte(address); ask();start();write1byte(0xa1);ask();temp=read1byte(); stop();returntemp;}voidwritetoadd(ucharaddress,uchardete)//輸入指定地址及數(shù)據(jù){ start();write1byte(0xa0);ask();write1byte(address); ask();write1byte(dete);ask();stop();}voidinittime0()//功能:定時(shí)器初始化{ TMOD=0x01; TH0=(65536-50000)/256; TL0=(65536-50000)%256; EA=1;ET0=1;TR0=1;}voidmain()//函數(shù)名:voidmain(){ initbus();inittime0(); lcd1602_init();sec=readfromadd(7); while(1) { writetoadd(7,sec); delay2(100);delay2(100);delay2(100); write_com1602(0x88);write_data1602(48+(sec/10));write_data1602(48+(sec%10)); }}voidtime0()interrupt1//功能:定時(shí)器0中斷函數(shù){ TH0=(65536-50000)/256; TL0=(65536-50000)%256; num++; if(num==20) { num=0;sec++; if(sec>=100) { sec=0; } } }#include<reg52.h>#include<intrins.h>#defineuintunsignedint#defineucharunsignedcharsbitds1302_sclk=P1^6;sbitds1302_io=P3^5;sbitds1302_rst=P1^7;sbitred=P3^3;sbitkey=P3^4;//調(diào)整sbitkey1=P3^3;//加sbitkey0=P3^2;//減charmiao,fen,shi,ri=1,yue=1,nian,xingqi=1;ucharnum1=0,cz=0,key11,key00,num11;uchara[]={"MonTueWedThuFriSatSun"};uchars[4];voiddelay(ucharx)//功能:延時(shí)函數(shù){uchari,j;for(i=x;i>0;i++) for(j=1;j>0;j--);}voiddelay2(ucharx)//功能:延時(shí)函數(shù){uchari,j;for(i=x;i>0;i++) for(j=10;j>0;j--);}w_in1302(ucharaddress,ucharnum)//功能:往DS1302寫數(shù)據(jù){ uchari; ds1302_rst=0; ds1302_sclk=0; ds1302_rst=1; for(i=0;i<8;i++) { ds1302_io=(bit)(address&0x01); ds1302_sclk=1; ds1302_sclk=0; address>>=1; } for(i=0;i<8;i++) { ds1302_io=(bit)(num&0x01); ds1302_sclk=1; ds1302_sclk=0; num>>=1; } ds1302_sclk=0; ds1302_rst=0;}w_out1302(ucharaddress)//功能:往DS1302讀數(shù)據(jù)/{ uchari,deta; ds1302_rst=0; ds1302_sclk=0; ds1302_rst=1; for(i=0;i<8;i++) { ds1302_io=(bit)(address&0x01); ds1302_sclk=1; ds1302_sclk=0; address>>=1; } for(i=0;i<8;i++) { deta>>=1; if(ds1302_io) deta|=0x80; if(!ds1302_io) deta|=0x00; ds1302_sclk=1; ds1302_sclk=0; } ds1302_sclk=0; ds1302_rst=0; returndeta; }init1302()//功能:1302初始化{w_in1302(0x8e,0x00); //允許寫入w_in1302(0x80,0x00); // 秒w_in1302(0x82,0x00); // 分w_in1302(0x84,0x16); // 時(shí)w_in1302(0x86,0x19); // 日期w_in1302(0x88,0x05); // 月w_in1302(0x8c,0x10); // 年w_in1302(0x8a,0x03); // 星期} sx_deta(ucharadd1602,ucharadd1302)//功能:刷新1302(

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論