版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 本科生畢業(yè)設(shè)計(jì)(論文)</p><p> 學(xué) 院: 電子與電氣工程學(xué)院 </p><p> 專 業(yè): 自動(dòng)化 </p><p> 學(xué) 生: </p><p> 指導(dǎo)教師:
2、 </p><p> 完成日期 2013 年 5 月</p><p> 紅外窗簾控制器設(shè)計(jì)與實(shí)現(xiàn)</p><p> Design and Implementation of Infrared Controller for Curtain</p><p> 總計(jì): 畢業(yè)設(shè)計(jì)(論文) 34頁(yè)</p><
3、p> 表 格: 3 個(gè)</p><p> 插 圖: 36 幅</p><p> 紅外窗簾控制器設(shè)計(jì)與實(shí)現(xiàn)</p><p> [摘 要] 本文設(shè)計(jì)了一種基于STC89C52單片機(jī)的紅外窗簾控制器,系統(tǒng)分為兩個(gè)部分,一是紅外遙控器部分,分別設(shè)置了啟動(dòng)/停止、打開、關(guān)閉、速度減小、速度增加和自動(dòng)6個(gè)按鍵,當(dāng)不同的按鍵被按下時(shí)紅外
4、發(fā)射二極管便發(fā)出不同的按鍵編碼。二是接收控制器部分,其功能是用單片機(jī)通過一體化紅外接收頭接收遙控器發(fā)出的編碼并進(jìn)行解調(diào),然后根據(jù)編碼的功能來(lái)控制步進(jìn)電機(jī)的運(yùn)行狀態(tài)。系統(tǒng)包括手動(dòng)和自動(dòng)兩種模式,在手動(dòng)模式下可通過按鍵來(lái)控制窗簾的打開,關(guān)閉或停止。在自動(dòng)模式下可根據(jù)室內(nèi)光線的強(qiáng)度自動(dòng)控制窗簾的打開或關(guān)閉。從而實(shí)現(xiàn)手動(dòng)和自動(dòng)控制窗簾的目的。</p><p> [關(guān)鍵詞] 單片機(jī);紅外;遙控;窗簾 </p>
5、<p> Design and Implementation of Infrared Controller for Curtain </p><p> Abstract: This design is an infrared curtain controller based on the STC89C52 single chip micro computer. The system can be
6、 divided into two parts. The first part is the IR remote control which sets the 6 buttons of start/stop, open, close, slow down, speed up and automatic. The infrared emitting diode will send different code when different
7、 button is pressed. The second part is the receiving controller which would make use of the single chip micro computer to receive the code sent by the remote</p><p> Key words: Single chip micro computer; i
8、nfrared; remote control; curtain</p><p><b> 目 錄</b></p><p><b> 1 引言1</b></p><p> 2 單片機(jī)的介紹2</p><p> 2.1 單片機(jī)簡(jiǎn)介3</p><p> 2.2
9、單片機(jī)的特點(diǎn)3</p><p> 2.3 單片機(jī)的應(yīng)用3</p><p> 2.4 單片機(jī)AT89C52的結(jié)構(gòu)原理4</p><p> 3 系統(tǒng)總體設(shè)計(jì)8</p><p> 3.1 系統(tǒng)硬件電路設(shè)計(jì)9</p><p> 3.1.1 紅外發(fā)射模塊9</p><p> 3.1
10、.2 紅外接收模塊10</p><p> 3.1.3 顯示模塊11</p><p> 3.1.4 光控模塊13</p><p> 3.1.5 步進(jìn)電機(jī)驅(qū)動(dòng)模塊14</p><p> 3.1.6 窗簾框架構(gòu)造設(shè)計(jì)16</p><p> 3.2 系統(tǒng)軟件設(shè)計(jì)16</p><p>
11、; 3.2.1 紅外遙控器的編碼16</p><p> 3.2.2 二進(jìn)制信號(hào)的調(diào)制17</p><p> 3.2.3 二進(jìn)制信號(hào)的解碼18</p><p> 3.2.4 紅外遙控器模塊程序設(shè)計(jì)19</p><p> 3.2.5 紅外接收模塊程序設(shè)計(jì)21</p><p> 3.2.6 LCD160
12、2模塊程序設(shè)計(jì)24</p><p><b> 4 系統(tǒng)調(diào)試26</b></p><p><b> 結(jié)束語(yǔ)30</b></p><p><b> 參考文獻(xiàn)31</b></p><p><b> 附錄32</b></p><
13、;p><b> 致謝34</b></p><p><b> 1 引言</b></p><p> 近幾年來(lái),隨著科學(xué)技術(shù)的發(fā)展和人民生活水平的日益提高,城市化建設(shè)的步伐也在不斷的加快,一棟棟居民樓、寫字樓、酒店拔地而起。智能家居已經(jīng)覆蓋家庭自動(dòng)化,家庭網(wǎng)絡(luò),信息家電等幾大塊,隨著高新技術(shù)及電子器件的發(fā)展,光控,溫控,及遙控技術(shù)應(yīng)運(yùn)而生
14、,給人們的生活帶來(lái)了很大的方便,同時(shí)也為人們的生活環(huán)境以及智能家居的實(shí)現(xiàn)提供了依據(jù)。</p><p> 單片機(jī)控制的紅外窗簾控制器,既能解決每天用手打開或關(guān)閉窗簾的不便,又顯示出了生活的檔次,同時(shí)還可以根據(jù)光線的明暗來(lái)自動(dòng)控制窗簾的開關(guān),以調(diào)節(jié)室內(nèi)的光線,更進(jìn)一步地滿足了人們的享受要求。所以該產(chǎn)品能形成大規(guī)模生產(chǎn),很快會(huì)普及全國(guó)市場(chǎng),產(chǎn)生巨大的經(jīng)濟(jì)效益;另外,該窗簾控制器除了能在廣大市民住宅區(qū)使用外,還可以廣泛
15、應(yīng)用于別墅、公寓、賓館、飯店、寫字樓、歌舞廳、影劇院、會(huì)議廳、銀行、學(xué)校、醫(yī)院等各種公共場(chǎng)所,因此該產(chǎn)品具有廣闊的市場(chǎng)前景。 </p><p> 紅外窗簾控制器在我國(guó)還剛剛興起,但其發(fā)展前景廣闊,推廣和應(yīng)用自動(dòng)窗簾系統(tǒng)具有重要的現(xiàn)實(shí)意義。其一,改變?nèi)藗兊纳罘绞健纹瑱C(jī)控制的紅外窗簾控制器具有豐富的智能化功能,為家庭用戶營(yíng)造一個(gè)高效、舒適、便利、環(huán)保的居住環(huán)境。單片機(jī)控制的紅外窗簾控制器只用一個(gè)多功能遙控器就能
16、控制住房的窗簾開關(guān)問題,給人們的日常生活帶來(lái)了極大的方便。這些都將改變?nèi)藗儌鹘y(tǒng)的生活方式,并提高了人們的生活質(zhì)量。其二,牽動(dòng)一大批產(chǎn)業(yè)。單片機(jī)控制的紅外遙控窗簾產(chǎn)品面向家庭用戶,其應(yīng)用市場(chǎng)是龐大的,發(fā)展前景也是廣闊的,必將吸引大批有遠(yuǎn)見的各類企業(yè)介入,從而牽動(dòng)一大批產(chǎn)業(yè)的發(fā)展。</p><p> 這里最先受益的應(yīng)該是房地產(chǎn)業(yè),單片機(jī)控制的紅外窗簾控制器不僅是一個(gè)很好的概念與“賣點(diǎn)”,同時(shí)也是直接提升住宅檔次的一
17、個(gè)條件,這將會(huì)給房地產(chǎn)商帶來(lái)新的利潤(rùn)空間。在家居集成化、網(wǎng)絡(luò)化的趨勢(shì)下,家居集成也成為一種潮流,許多更專業(yè)的、美觀的、智能化的家居集成產(chǎn)品相繼出現(xiàn)。其三,開拓一個(gè)嶄新的市場(chǎng)。紅外窗簾控制器牽動(dòng)了許多的行業(yè),它將不僅僅是目前的IT系統(tǒng)集成商或建筑弱電工程總包商的市場(chǎng),而且是專業(yè)公司和智能化裝飾公司的市場(chǎng)。 </p><p> 在歐美等發(fā)達(dá)國(guó)家,紅外遙控窗簾已廣泛應(yīng)用。在10年前,遙控窗簾就已經(jīng)進(jìn)入我國(guó),可一直沒有
18、大的推廣,這兩年,隨著電控技術(shù)的不斷提高及價(jià)格的不斷下降,遙控窗簾熱才又卷土重來(lái)。據(jù)了解,全國(guó)共有170多種電動(dòng)窗簾器獲得了國(guó)家專利,但就其技術(shù)本身而言,還是大同小異,但售價(jià)卻有很大差別,貴的要數(shù)千元,便宜的只要500塊。</p><p> 盡管紅外窗簾控制器在國(guó)內(nèi)是一個(gè)新興的行業(yè),但是,它也正以不可抵擋之勢(shì)迅速崛起。紅外窗簾控制器走進(jìn)中國(guó)以來(lái),在短短四年的時(shí)間里,其生產(chǎn)商由最初的幾家公司增加到如今的百余家企業(yè)
19、,其行業(yè)發(fā)展之迅速是目前國(guó)內(nèi)任何其它行業(yè)所無(wú)法比擬的。目前,我國(guó)紅外窗簾控制器生產(chǎn)廠商、分銷商、集成商與裝飾公司都形成了相當(dāng)規(guī)模,不少國(guó)內(nèi)知名企業(yè)紛紛涉足紅外窗簾控制器行業(yè),如青島海爾、清華同方、TCL等,并涌現(xiàn)出一些較具影響力的智能家居專業(yè)廠商,如上海索博智能電子有限公司、北京九州易居科技有限公司、天津瑞朗智能家居電子科技有限公司、深圳市正星特科技有限公司等。紅外遙控窗簾產(chǎn)品已開始走進(jìn)中國(guó)的家庭。具報(bào)道,我國(guó)2004年售出商品房1.9
20、億m²,如果每20m²需要一套窗簾架產(chǎn)品,僅此一項(xiàng)就可以年新增窗簾架產(chǎn)品近千萬(wàn)套以上,年新增窗簾架產(chǎn)品市場(chǎng)需求將不低于2000萬(wàn)套。如果單片機(jī)控制的紅外窗簾控制器的銷售占市場(chǎng)的5%左右,就可實(shí)現(xiàn)年產(chǎn)值上億元。</p><p> 隨著紅外遙控窗簾熱潮在世界范圍內(nèi)的日漸興起,隨著中國(guó)電子技術(shù)的飛速發(fā)展,人們生活水平的不斷提高以及智能電子技術(shù)在生活中的廣泛應(yīng)用,紅外遙控窗簾已經(jīng)成為未來(lái)家居裝飾潮流
21、發(fā)展的最新方向,在不久的將來(lái),沒有紅外遙控窗簾系統(tǒng)的住宅肯定不合潮流。從目前的發(fā)展趨勢(shì)來(lái)看,在未來(lái)的20年時(shí)間里,紅外遙控窗簾行業(yè)將成為中國(guó)的主流行業(yè)之一,其市場(chǎng)的發(fā)展前景是非常廣闊的。 </p><p> 智能家居系統(tǒng)是一個(gè)大的社會(huì)系統(tǒng)工程,我們應(yīng)當(dāng)加快我國(guó)智能家居標(biāo)準(zhǔn)化進(jìn)程。遙控窗簾系統(tǒng)作為智能家居中一個(gè)很重要的部分,需要在我國(guó)智能家居這一領(lǐng)域,建立起一個(gè)具有中國(guó)特色的新興、健康的產(chǎn)業(yè)鏈,讓自動(dòng)窗簾系統(tǒng)在我
22、國(guó)并不是遠(yuǎn)在天邊,而是近在眼前。現(xiàn)有的遙控窗簾機(jī)的控制方式有固定式開關(guān)控制、遙控、光控、聲控等,其中以前兩種形式居多。就實(shí)用程度和經(jīng)濟(jì)角度來(lái)說(shuō),用遙控方式較好,因?yàn)檫@樣可以省去頻繁用手去拉窗簾的繁瑣,睡在床上就能控制窗簾的開關(guān),既方便又節(jié)能,所以我想利用價(jià)格相對(duì)便宜的AT89C52單片機(jī)作為主要控制器件來(lái)完成本系統(tǒng)的設(shè)計(jì)。該系統(tǒng)主要有如下幾方面的特點(diǎn): </p><p> ?。?)紅外遙控器和紅外接收控制器均采用
23、價(jià)格相對(duì)便宜的AT89C52單片機(jī)作為主控芯片,這樣既方便又實(shí)惠。</p><p> ?。?)采用紅外遙控方式,控制靈活方便,不會(huì)干擾其它電器的正常工作,也不會(huì)影響鄰近的無(wú)線設(shè)備。 </p><p> ?。?)具有兩種控制方式分別為手動(dòng)控制方式和自動(dòng)控制方式。</p><p> ?。?)設(shè)置有位置傳感器用來(lái)檢測(cè)窗簾的打開程度,當(dāng)窗簾完全打開或完全關(guān)閉時(shí)窗簾會(huì)自動(dòng)停止
24、,防止損壞電機(jī)。 </p><p> ?。?)體積小、結(jié)構(gòu)簡(jiǎn)單、靈敏度高、抗干擾性強(qiáng)、經(jīng)濟(jì)實(shí)用、工作可靠。 </p><p><b> 2 單片機(jī)的介紹</b></p><p> 為了使紅外窗簾控制器在實(shí)際使用過程中方便快捷,能夠發(fā)揮較高的性能,為此在該系統(tǒng)上配備了液晶顯示模塊使操作具有可見性。以STC89C52單片機(jī)作為整個(gè)系統(tǒng)的核心芯片
25、,控制其它模塊來(lái)完成各種操作;紅外一體化接收頭負(fù)責(zé)接收遙控信號(hào);ULN2003A用來(lái)驅(qū)動(dòng)步進(jìn)電機(jī);光敏電阻模塊用來(lái)檢測(cè)光照的強(qiáng)度,根據(jù)光線的強(qiáng)弱來(lái)控制窗簾的打開或關(guān)閉。</p><p><b> 2.1 單片機(jī)簡(jiǎn)介</b></p><p> 將中央處理器(Central Processing Unit ,CPU),隨機(jī)存儲(chǔ)器,只讀存儲(chǔ)器,中斷系統(tǒng),定時(shí)器/計(jì)數(shù)器以
26、及I/O接口電路等微型計(jì)算機(jī)的主要部件集成在一塊芯片上,使其具有計(jì)算機(jī)的基本功能,即單片微型計(jì)算機(jī)(Single Chip Micro Computer,SCMC),簡(jiǎn)稱單片機(jī)[1]。</p><p> 由于單片機(jī)的指令功能是按照工業(yè)控制的要求設(shè)計(jì)的,所以單片機(jī)又稱為微控制器(Micro Controller Unit),常用英文字母的縮寫MCU表示,單片機(jī)比專用處理器更適合應(yīng)用于嵌入式系統(tǒng),因此它得到了最多的
27、應(yīng)用,手機(jī)、電話、計(jì)算器、家用電器、電子玩具、掌上電腦以及鼠標(biāo)等電子產(chǎn)品中都有單片機(jī)的身影。</p><p> 2.2 單片機(jī)的特點(diǎn)</p><p> (1)采用面向控制的指令系統(tǒng)。為滿足控制的需要,單片機(jī)有更強(qiáng)的邏輯控制能力,特別是具有很強(qiáng)的位處理能力。</p><p> ?。?)單片機(jī)的I/O引腳通常是多功能的。由于單片機(jī)芯片上引腳數(shù)目有限為了解決實(shí)際引腳數(shù)
28、和需要的信號(hào)線的矛盾,采用了引腳功能復(fù)用的方法。引腳處于何種功能,可由指令來(lái)設(shè)置或由機(jī)器狀態(tài)來(lái)區(qū)分。</p><p> ?。?)單片機(jī)的外部擴(kuò)展能力強(qiáng)。在內(nèi)部的各種功能部分不能滿足應(yīng)用需求時(shí),均可在外部進(jìn)行擴(kuò)展,與許多通用的微機(jī)接口芯片兼容,給應(yīng)用系統(tǒng)設(shè)計(jì)帶來(lái)極大的方便和靈活性。</p><p> ?。?)體積小,成本低,運(yùn)用靈活,易于產(chǎn)品化,它能方便的組成各種智能化的控制設(shè)備和儀器,做到
29、機(jī)電一體化。</p><p> ?。?)面向控制,能有針對(duì)性的解決從簡(jiǎn)單到復(fù)雜的各類控制任務(wù),因而能獲得最佳的性能價(jià)格比。</p><p> ?。?)抗干擾能力強(qiáng),適用溫度范圍寬,在各種惡劣的環(huán)境下都能可靠的工作。</p><p> ?。?)可以方便地實(shí)現(xiàn)多機(jī)和分布式控制,使整個(gè)控制系統(tǒng)的效率和可靠性大為提高。</p><p> 2.3 單
30、片機(jī)的應(yīng)用</p><p> 可以說(shuō),二十世紀(jì)跨越了三個(gè)“電”的時(shí)代,即電氣時(shí)代、電子時(shí)代和現(xiàn)已進(jìn)入的電腦時(shí)代。不過,這種電腦通常是指?jìng)€(gè)人計(jì)算機(jī),簡(jiǎn)稱PC機(jī)。它由主機(jī)、鍵盤、顯示器等組成。還有一類計(jì)算機(jī),大多數(shù)人卻不怎么熟悉,這種計(jì)算機(jī)就是把智能賦予各種機(jī)械的單片機(jī)(亦稱微控制器)。顧名思義,這種計(jì)算機(jī)的最小系統(tǒng)只用了一片集成電路,即可進(jìn)行簡(jiǎn)單運(yùn)算和控制,因?yàn)樗w積小,通常都藏在被控機(jī)械的“肚子”里?,F(xiàn)在,這種
31、單片機(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ā)者搞出來(lái)的某些產(chǎn)品,不是電路太復(fù)雜,就是功能太簡(jiǎn)單且極易被仿制。究其原因,可能就卡在產(chǎn)品未使用單片機(jī)或其它可編程邏輯器件上。</p><p> 目前單片機(jī)滲透到我們生活的各個(gè)領(lǐng)域
32、,幾乎很難找到哪個(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ī),更不用說(shuō)自動(dòng)控制領(lǐng)域的機(jī)器人、智能儀表、醫(yī)療器械了。因此,單片機(jī)的學(xué)習(xí)、開發(fā)與應(yīng)用將造就一批計(jì)算機(jī)應(yīng)用與智能化控制的科學(xué)家、工程師。 </p>&
33、lt;p> 單片機(jī)廣泛應(yīng)用于儀器儀表、家用電器、醫(yī)用設(shè)備、航空航天、專用設(shè)備的智能化管理及過程控制等領(lǐng)域[2]。</p><p> 2.4 單片機(jī)AT89C52的結(jié)構(gòu)原理</p><p> AT89C52實(shí)物圖如圖1所示。</p><p> 圖1 AT89C52實(shí)物圖</p><p> (1) AT89C52的內(nèi)部結(jié)構(gòu)圖<
34、;/p><p> AT89C52的內(nèi)部結(jié)構(gòu)圖如圖2所示。</p><p> 圖2 AT89C52內(nèi)部結(jié)構(gòu)圖</p><p> (2) AT89C52的主要性能</p><p> AT89C52是ATMEL公司生產(chǎn)的帶4K字節(jié)閃速可編程可擦除只讀存儲(chǔ)器(EEPROM)的8位單片機(jī),它具有如下主要特性[3]: </p><
35、;p> 與MCS-51產(chǎn)品完全兼容。 </p><p> 具有4K可在系統(tǒng)編程的Flash內(nèi)部程序存儲(chǔ)器,可擦/寫1000次。 </p><p> 全靜態(tài)操作:0Hz~24MHz。 </p><p> 三級(jí)程序存儲(chǔ)器加密。</p><p> 128字節(jié)內(nèi)部RAM。</p><p> 32根可編程I/O
36、引線。 </p><p> 兩個(gè)16位定時(shí)器/計(jì)數(shù)器。 </p><p><b> 6個(gè)中斷源。</b></p><p> 可編程串行UART通道。</p><p> 低功耗空閑模式和掉電模式。</p><p> (3) AT89C52各引腳功能</p><p&
37、gt; AT89C52單片機(jī)引腳圖如圖3所示。</p><p> 圖3 AT89C52單片機(jī)引腳圖</p><p> AT89C52是一個(gè)有40個(gè)引腳的芯片,采用雙列直插(DIP)方式[4]。</p><p><b> ?。?)電源引腳:</b></p><p> Ucc--接5V電源正端。 </p>
38、<p> Uss--接5V電源地端。 </p><p> ?。?)外接晶振引腳:</p><p> XTAL1(19引腳)。接外部晶振和微調(diào)電容的一端,與單片機(jī)片內(nèi)震蕩電路一起,產(chǎn)生由外部晶振決定的震蕩頻率。接內(nèi)部反向放大器的輸入端,使用外部時(shí)鐘時(shí),該引腳輸入外部時(shí)鐘脈沖。</p><p> XTAL2(18引腳)。接外部晶振和微調(diào)電容的另一端,
39、接內(nèi)部反向放大器的輸出端,使用外部時(shí)鐘時(shí),該引腳接地。 </p><p><b> ?。?)制信號(hào)引腳:</b></p><p> RST/Upd:復(fù)位/備用電源。 </p><p> RST(Reset)功能:復(fù)位信號(hào)輸入端,高電平有效。 </p><p> Upd功能:備用電源輸入端,保持內(nèi)部RAM中的數(shù)據(jù)不丟
40、失。 </p><p> ALE/PROG:地址鎖存允許/片內(nèi)EPROM編程脈沖。</p><p> ALE功能:用來(lái)鎖存P0口送出的低8位地址。</p><p> PROG功能:片內(nèi)有EPROM的芯片,在EPROM編程期間,此引腳輸入編程脈沖。 </p><p> PSEN:片外程序存儲(chǔ)器讀選通信號(hào)輸出端,每個(gè)機(jī)器周期輸出兩個(gè)負(fù)脈沖
41、,低電平有效。 </p><p><b> EA/Upp: </b></p><p> EA為片外程序存儲(chǔ)器選擇輸入端。低電平時(shí)使用片外程序存儲(chǔ)器,為高電平時(shí),使用片內(nèi)程序存儲(chǔ)器。 </p><p> Upp為片內(nèi)程序存儲(chǔ)器編程電壓輸入端。</p><p> 輸入輸出引腳:P0、P1、P2、P3共四個(gè)八位I/O口
42、。</p><p> P0口是一個(gè) 8位漏極開路的I/O口,當(dāng)CPU以總線方式訪問片外存儲(chǔ)器時(shí),P0口分時(shí)的輸出低8位地址,讀入指令和輸入/輸出數(shù)據(jù),此時(shí)PO口可以驅(qū)動(dòng)8個(gè)LS型TTL負(fù)載。當(dāng)P0口作為一般I/O口時(shí),為準(zhǔn)雙向口,并且作為輸出時(shí)必須接上拉電阻。</p><p> P1口是一個(gè)內(nèi)部有上拉的8位準(zhǔn)雙向I/O口,作為一般I/O口使用,可以驅(qū)動(dòng)4個(gè)LS型TTL負(fù)載。對(duì)于增強(qiáng)型單
43、片機(jī),P1.0、P1.1還有第二功能,第二功能的信號(hào)分別為T2和T2EX。T2(P1.0):定時(shí)器/計(jì)數(shù)器2的計(jì)數(shù)脈沖輸入和時(shí)鐘輸出。T2EX(P1.1):定時(shí)器/計(jì)數(shù)器2的重裝、捕獲和計(jì)數(shù)方向控制輸入。</p><p> P2口是一個(gè)內(nèi)部有上拉的8位I/O口。當(dāng)CPU以總線方式訪問片外存儲(chǔ)器,P2口輸出高8位地址。作為一般I/O口使用時(shí),為準(zhǔn)雙向I/O口,可以驅(qū)動(dòng)4個(gè)LS型TTL負(fù)載。</p>
44、<p> P3口:P3口也是一個(gè)內(nèi)部有上拉的8位I/O口,還是一個(gè)雙功能口。作為一般I/O口使用時(shí),為準(zhǔn)雙向I/O口,可以驅(qū)動(dòng)4個(gè)LS型TTL負(fù)載。各引腳第二功能如表1所示。</p><p> 表1 P3口各引腳第二功能定義</p><p><b> (4) 時(shí)鐘電路</b></p><p> 單片機(jī)時(shí)鐘電路如圖4所示。有兩
45、種方式可以產(chǎn)生單片機(jī)需要的時(shí)鐘,一種是內(nèi)部方式:就是利用單片機(jī)內(nèi)部的放大電路,通常外接一個(gè)晶振和兩個(gè)電容分別接在反向放大器的輸入端XTAL1,輸出端XTAL2就可以構(gòu)成穩(wěn)定的自激振蕩器。另一種是外部方式:使用外部的時(shí)鐘信號(hào),接到XTAL1或XTAL2引腳上給單片機(jī)提供基本震蕩信號(hào)。</p><p> 電容C1和C2通常取30pF左右,可穩(wěn)定頻率并對(duì)頻率有微調(diào)作用,對(duì)89C52系列,其震蕩頻率一般為fosc= 0
46、~24MHz。</p><p> 振蕩周期/時(shí)鐘周期:Tc=晶振頻率fosc的倒數(shù)。狀態(tài)周期:Ts=2個(gè)時(shí)鐘周期(Tc)。 機(jī)器周期:Tm=6個(gè)狀態(tài)周期(Ts)=12個(gè)振蕩周期(Tc)。指令周期:Ti:執(zhí)行一條指令所需的機(jī)器周期(Tm)數(shù)。</p><p><b> 圖4 時(shí)鐘電路</b></p><p><b> (5)
47、 復(fù)位電路</b></p><p> 單片機(jī)復(fù)位電路如圖5所示。單片機(jī)與其它微處理器一樣,在啟動(dòng)工作時(shí)先要進(jìn)行復(fù)位,使CPU及其它系統(tǒng)處于確定的初始狀態(tài),并從這個(gè)狀態(tài)開始工作。單片機(jī)有一復(fù)位引腳RST(復(fù)位信號(hào)的輸入端),高電平有效,單片機(jī)的復(fù)位是靠外部電路實(shí)現(xiàn)的,在時(shí)鐘電路工作后,只要在單片機(jī)的RST引腳上出現(xiàn)24個(gè)振蕩周期(2個(gè)機(jī)器周期)以上的高電平,系統(tǒng)內(nèi)部復(fù)位。</p><
48、;p><b> 圖5 復(fù)位電路</b></p><p><b> 3 系統(tǒng)總體設(shè)計(jì) </b></p><p> 本文所介紹的紅外窗簾遙控器的系統(tǒng)框圖如圖6所示,紅外窗簾接收控制器的系統(tǒng)框圖如圖7所示。該系統(tǒng)主要有兩個(gè)部分組成:一是遙控器部分,其功能為:?jiǎn)纹瑱C(jī)掃描遙控器上的6個(gè)按鍵(啟動(dòng)/停止,打開,關(guān)閉,速度減小,速度增加和自動(dòng)),當(dāng)
49、某個(gè)按鍵按下后,單片機(jī)便通過紅外發(fā)光二極管發(fā)射該按鍵的編碼。二是接收控制器部分,其功能是用單片機(jī)通過紅外一體化接收頭接收遙控器發(fā)出的編碼并進(jìn)行解調(diào),解調(diào)后根據(jù)編碼的功能來(lái)控制步進(jìn)電機(jī)的狀態(tài),從而實(shí)現(xiàn)窗簾的打開、關(guān)閉或停止等功能。</p><p> 圖6 紅外窗簾遙控器系統(tǒng)框圖</p><p> 圖7 紅外窗簾接收控制器系統(tǒng)框圖</p><p> 3.1 系統(tǒng)硬
50、件電路設(shè)計(jì) </p><p> 硬件電路設(shè)計(jì)主要包括:紅外發(fā)射模塊、紅外接收模塊、顯示模塊、光控模塊、電機(jī)驅(qū)動(dòng)模塊、窗簾框架構(gòu)造設(shè)計(jì)。</p><p> 3.1.1 紅外發(fā)射模塊 </p><p> 紅外發(fā)射模塊主要包括單片機(jī)最小系統(tǒng),按鍵,紅外發(fā)射電路組成。本設(shè)計(jì)所要實(shí)現(xiàn)的功能不是很多,所以控制按鍵采用4×4的矩陣鍵盤即可達(dá)到要求,另外發(fā)射過程中單
51、片機(jī)輸出端產(chǎn)生的脈沖信號(hào)為38KHz,所以采用一個(gè)12M晶體振蕩器即可發(fā)出滿足要求的頻率。</p><p> 紅外線的發(fā)射過程如圖8所示。</p><p> 圖8 紅外線的發(fā)射過程框圖</p><p> 本遙控器的發(fā)射采用碼分制的遙控方式,碼分制紅外遙控就是指令信號(hào)產(chǎn)生電路以不同的脈沖編碼(不同的脈沖數(shù)目及組合)代表不同的控制指令[5]。</p>
52、<p> 在確定選擇AT89C52作為本設(shè)計(jì)發(fā)射電路核心芯片和矩陣鍵盤作為控制鍵后,加上一個(gè)簡(jiǎn)單的紅外發(fā)射電路便可實(shí)現(xiàn)紅外信號(hào)的發(fā)射,紅外發(fā)射電路如圖9所示。</p><p><b> 圖9紅外發(fā)射電路圖</b></p><p> 根據(jù)紅外發(fā)射管本身的物理特性,必須要有載波信號(hào)與即將發(fā)射的信號(hào)相“與”,然后將相“與”后的信號(hào)送給發(fā)射管,才能進(jìn)行紅外信
53、號(hào)的發(fā)射與傳送,而在頻率為38KHz的載波信號(hào)下,發(fā)射管的性能最好,發(fā)射距離最遠(yuǎn),所以在硬件設(shè)計(jì)上,本設(shè)計(jì)利用單片機(jī)產(chǎn)生38KHz載波信號(hào),與發(fā)射信號(hào)進(jìn)行邏輯“與”運(yùn)算后,通過三極管的功率驅(qū)動(dòng)到紅外發(fā)光二極管上[6]。</p><p> 紅外遙控器由51單片機(jī)、矩陣鍵盤、紅外發(fā)射二極管、NPN型三極管等組成。鍵盤用于輸入控制指令,51單片機(jī)檢測(cè)鍵盤上的按鍵狀態(tài),并對(duì)紅外信號(hào)進(jìn)行調(diào)制。發(fā)射二極管發(fā)射紅外線,當(dāng)單片
54、機(jī)P3.4口輸出為“0”時(shí),紅外發(fā)射管不發(fā)光,當(dāng)單片機(jī)P3.4口輸出為“1”時(shí),紅外發(fā)射管發(fā)出38KHz調(diào)制紅外線。</p><p> 紅外信號(hào)調(diào)制過程如圖10所示。</p><p> 圖10 調(diào)制過程波形圖</p><p> 3.1.2 紅外接收模塊</p><p> 紅外一體化接收頭(HS0038)實(shí)物圖如圖11所示。</p
55、><p> 圖11 HS0038紅外接收器件</p><p> 紅外線接收電路使用的是集成紅外接收器,型號(hào)為HS0038,它接收紅外信號(hào)的頻率為38kHz,周期約26us,采用黑色環(huán)氧樹脂封裝,提供了一個(gè)特殊的紅外濾光器,可防止自然光、熒光燈等光源的干擾,內(nèi)附磁屏蔽,功耗低,靈敏度高。在用小功率發(fā)射管發(fā)射信號(hào)情況下,其接收距離可達(dá)35m。它能與TTL、COMS 電路兼容。</p>
56、;<p> 靜態(tài)時(shí)輸出端輸出高電平,當(dāng)接收到紅外信號(hào)后,按紅外信號(hào)的數(shù)據(jù)波形輸出負(fù)脈沖數(shù)據(jù)信號(hào)。紅外信號(hào)輸出到單片機(jī)的P3.2口,該口對(duì)應(yīng)的第二功能是外部中斷0(INT0),利用這一功能,一旦接收到紅外信號(hào),P3.2即被拉低,單片機(jī)產(chǎn)生中斷,處理紅外信號(hào)[7]。</p><p> 紅外接收頭完成對(duì)紅外信號(hào)的接收、放大、檢波、整形,并解調(diào)出遙控編碼脈沖,輸出可以讓單片機(jī)識(shí)別的TTL信號(hào),再送給單片
57、機(jī),經(jīng)單片機(jī)解碼并執(zhí)行去控制相關(guān)對(duì)象。三個(gè)管腳分別是GND、+5V 電源、OUT(解調(diào)信號(hào)輸出端),紅外接收頭電路如圖12所示。</p><p> 圖12 紅外接收頭電路圖</p><p> 3.1.3 顯示模塊</p><p> 液晶是一種高分子材料,因?yàn)槠涮厥獾奈锢怼⒒瘜W(xué)、光學(xué)特性,20世紀(jì)中葉開始廣泛應(yīng)用在輕薄型顯示器上。</p><
58、p> 液晶顯示器(LCD)的主要原理是以電流刺激液晶分子產(chǎn)生點(diǎn)、線、面并配合背部燈管構(gòu)成畫面。液晶顯示器采用目前使用的比較廣泛的字符型液晶顯示器LCD1602。1602液晶每行可顯示16個(gè)字符,一共可以顯示兩行。LCD1602液晶模塊內(nèi)部的字符發(fā)生存儲(chǔ)器(CGROM)已經(jīng)存儲(chǔ)了160個(gè)不同的點(diǎn)陣字符圖形,這些字符有:阿拉伯?dāng)?shù)字、英文字母的大小寫、常用的符號(hào)和日文假名等。每一個(gè)字符都有一個(gè)固定的代碼,比如大寫的英文字母“A”的代碼
59、是01000001B(41H),顯示時(shí)模塊把地址41H中的點(diǎn)陣字符圖形顯示出來(lái),我們就能看到字母“A”[8]。</p><p> 在本設(shè)計(jì)中LCD1602的主要功能為顯示所接收到的遙控器按鍵編碼、運(yùn)行狀態(tài)(RUN,STOP或AUTO)、速度等級(jí)等內(nèi)容。</p><p><b> ?。?)引腳功能說(shuō)明</b></p><p> LCD1602
60、采用標(biāo)準(zhǔn)的14腳(無(wú)背光)和16腳(有背光)接口,各接口信號(hào)說(shuō)明如表2所示。</p><p><b> 表2 接口信號(hào)說(shuō)明</b></p><p> 第1腳:VSS為地電源;</p><p> 第2腳:VDD接5V正電源;</p><p> 第3腳:液晶顯示偏壓;</p><p> Vo
61、為液晶顯示器對(duì)比度調(diào)整端,使用時(shí)可以通過一個(gè)10K電位器接地。</p><p> 第4腳:數(shù)據(jù)/命令選擇;</p><p> RS為寄存器選擇,高電平時(shí)選擇數(shù)據(jù)寄存器、低電平時(shí)選擇指令寄存器。</p><p> 第5腳:讀/寫選擇;</p><p> RW為讀寫信號(hào)線,高電平時(shí)進(jìn)行讀操作,低電平時(shí)進(jìn)行寫操作。當(dāng)RS和RW共同為低電平時(shí)
62、可以寫入指令或者顯示地址,當(dāng)RS為低電平RW為高電平時(shí)可以讀忙信號(hào),當(dāng)RS為高電平RW為低電平時(shí)可以寫入數(shù)據(jù)。</p><p><b> 第6腳:使能信號(hào);</b></p><p> EN端為使能端,當(dāng)EN端由高電平跳變成低電平時(shí),液晶模塊執(zhí)行命令。</p><p> 第7~14腳:D0~D7為8位雙向數(shù)據(jù)線。</p>&l
63、t;p> 第15腳:背光源正極。</p><p> 第16腳:背光源負(fù)極。</p><p> ?。?)LCD1602的RAM地址映射圖</p><p> 控制器內(nèi)部帶有80×8位(80字節(jié))的RAM緩沖區(qū),對(duì)應(yīng)關(guān)系如圖13所示。</p><p> 圖13 LCD1602內(nèi)部RAM地址映射圖</p><
64、;p> 當(dāng)向00~0F、40~4F地址中的任一處寫顯示數(shù)據(jù)時(shí),液晶都可以立即顯示出來(lái),當(dāng)寫到10~27、50~67地址時(shí),必須通過移屏指令將它們移入可顯示區(qū)域方可正常顯示[9]。</p><p> ?。?)LCD1602電路接線說(shuō)明</p><p> P0口作為數(shù)據(jù)口,P0.0~P0.7分別連接LCD1602的D0~D7數(shù)據(jù)口,來(lái)傳輸數(shù)據(jù)及指令,由于P0口帶負(fù)載驅(qū)動(dòng)能力差,故需接
65、上拉電阻。P2.4接LCD1602的4腳RS(數(shù)據(jù)/命令選擇端),P2.5接LCD1602的5腳RW(讀寫/選擇端),P2.6接LCD1602的6腳EN(使能信號(hào))。VSS接地(電源地),VDD接5V電源(電源正極),VEE為液晶顯示偏壓信號(hào)。顯示模塊電路接線圖如圖14所示。</p><p> 圖14顯示模塊電路圖</p><p> 3.1.4 光控模塊</p><
66、p> 光敏電阻模塊由光敏電阻傳感器、可調(diào)電位器、寬電壓LM393比較器、電源指示燈、電容等元器件組成。光敏電阻對(duì)環(huán)境光線非常敏感,在黑暗的環(huán)境下,它的阻值很高,當(dāng)受到光照并且光輻射能量足夠大時(shí),電阻變小。</p><p> 光敏電阻的管芯是一塊安裝在絕緣襯底上帶有兩個(gè)歐姆接觸電極的光電導(dǎo)體。光導(dǎo)體吸收光子而產(chǎn)生的光電效應(yīng),只限于光照的表面薄層,雖然產(chǎn)生的載流子也有少數(shù)擴(kuò)散到內(nèi)部去,但擴(kuò)散深度有限,因此光
67、電導(dǎo)體一般都做成薄層。為了獲得高的靈敏度,光敏電阻的電極一般采用硫狀圖案[10]。</p><p> 電壓比較器(LM393)是集成運(yùn)放非線性應(yīng)用電路,它將一個(gè)模擬量電壓信號(hào)和一個(gè)參考電壓相比較,在二者幅度相等的附近,輸出電壓將產(chǎn)生越變,相應(yīng)輸出高電平或低電平。比較器可以組成非正弦波形變換電路及應(yīng)用于模擬與數(shù)字信號(hào)轉(zhuǎn)換等領(lǐng)域。參考電壓加在運(yùn)放的反相輸入端,輸入電壓加在同相輸入端,當(dāng)輸入電壓小于參考電壓時(shí),運(yùn)放輸
68、出高電平(DO=1),當(dāng)輸入電壓大于參考電壓時(shí),運(yùn)放輸出低電平(D0=0)。光敏電阻模塊上有一個(gè)可調(diào)電位器用來(lái)調(diào)節(jié)光敏電阻的觸發(fā)靈敏度,使光線控制在一定的范圍之內(nèi)。光敏電阻模塊的DO輸出端與單片機(jī)的P2.0口相連,通過單片機(jī)來(lái)檢測(cè)DO端口高低電平,以此來(lái)判斷光線的強(qiáng)度,當(dāng)環(huán)境光線亮度達(dá)不到設(shè)定閾值時(shí),DO端輸出低電平(光線較暗)步進(jìn)電機(jī)正轉(zhuǎn),當(dāng)外界環(huán)境光線亮度超過設(shè)定閾值時(shí),DO端輸出高電平(光線較亮)步進(jìn)電機(jī)反轉(zhuǎn),從而實(shí)現(xiàn)窗簾的打開和
69、關(guān)閉。光敏電阻檢測(cè)電路如圖15所示。</p><p> 圖15 光敏電阻檢測(cè)電路</p><p> 3.1.5 步進(jìn)電機(jī)驅(qū)動(dòng)模塊</p><p> 步進(jìn)電機(jī)是一種將電脈沖轉(zhuǎn)化為角位移的執(zhí)行機(jī)構(gòu),具有瞬時(shí)啟動(dòng)和急速停止的優(yōu)越特性,通過改變脈沖的順序就可以方便的改變轉(zhuǎn)動(dòng)的方向,步進(jìn)電機(jī)必須加驅(qū)動(dòng)才可以運(yùn)轉(zhuǎn),驅(qū)動(dòng)信號(hào)必須為脈沖信號(hào),沒有脈沖的時(shí)候步進(jìn)電機(jī)靜止,當(dāng)步進(jìn)
70、電機(jī)驅(qū)動(dòng)器接收到一個(gè)脈沖信號(hào),它就驅(qū)動(dòng)步進(jìn)電機(jī)按設(shè)定的方向轉(zhuǎn)動(dòng)一個(gè)固定的角度(即步進(jìn)角)。轉(zhuǎn)動(dòng)的速度與脈沖的頻率成正比??梢酝ㄟ^控制脈沖個(gè)數(shù)來(lái)控制角位移量,從而達(dá)到準(zhǔn)確定位的目的;同時(shí)可以通過控制脈沖頻率來(lái)控制電機(jī)轉(zhuǎn)動(dòng)的速度和加速度,從而達(dá)到調(diào)速的目的。</p><p> 步進(jìn)電機(jī)驅(qū)動(dòng)電路如圖16所示。本系統(tǒng)采用的是額定電壓為5V DC,相數(shù)為4相的步進(jìn)電機(jī),驅(qū)動(dòng)方式為4相8拍,一共有5根連接線,其中紅色為電源
71、線,采用單極性直流電源供電。由于單片機(jī)I/O口輸出的電流比較弱不能直接驅(qū)動(dòng)步進(jìn)電機(jī)。所以要加一個(gè)ULN2003芯片(步進(jìn)電機(jī)驅(qū)動(dòng)芯片)來(lái)放大電流使之能夠驅(qū)動(dòng)步進(jìn)電機(jī)工作。</p><p> ULN2003芯片是高耐壓、大電流,內(nèi)部由七個(gè)硅NPN達(dá)林頓管組成的驅(qū)動(dòng)芯片。經(jīng)常在以下電路中使用,顯示驅(qū)動(dòng)、繼電器驅(qū)動(dòng)、照明燈驅(qū)動(dòng)、伺服電機(jī)驅(qū)動(dòng)、步進(jìn)電機(jī)驅(qū)動(dòng)等電路中。ULN2003的每一對(duì)達(dá)林頓管都串聯(lián)一個(gè)2.7K的基極
72、電阻,在5V的工作電壓下它能與TTL和CMOS電路直接相連??梢灾苯犹幚碓刃枰獦?biāo)準(zhǔn)邏輯緩沖器來(lái)處理的數(shù)據(jù)。ULN2003工作電壓高,工作電流大,灌電流可達(dá)500mA,并且能夠在關(guān)態(tài)時(shí)承受50V的電壓,輸出還可以在高負(fù)載電流并行運(yùn)行。</p><p> ULN2003的封裝采用DIP-16或SOP-16,ULN2003可以驅(qū)動(dòng)7個(gè)繼電器,具有高電壓輸出特性,并帶有共陰極的續(xù)流二極管使器件可用于開關(guān)型感性負(fù)載。每
73、對(duì)達(dá)林頓管的額定集電極電流是500mA,達(dá)林頓管還可以并聯(lián)使用以達(dá)到更高的電流輸出能力[11]。</p><p> 圖16 步進(jìn)電機(jī)驅(qū)動(dòng)電路</p><p> 當(dāng)對(duì)步進(jìn)電機(jī)施加一系列連續(xù)不斷的控制脈沖時(shí),它可以連續(xù)不斷地轉(zhuǎn)動(dòng)。每一個(gè)脈沖信號(hào)對(duì)應(yīng)步進(jìn)電機(jī)的某一相或兩相繞組的通電狀態(tài)改變一次,對(duì)應(yīng)轉(zhuǎn)子也就轉(zhuǎn)過一定的角度(一個(gè)步距角),步距角為對(duì)應(yīng)一個(gè)脈沖信號(hào),電機(jī)轉(zhuǎn)子轉(zhuǎn)過的角位移,當(dāng)通電狀
74、態(tài)的改變完成一個(gè)循環(huán)時(shí),轉(zhuǎn)子轉(zhuǎn)過一個(gè)齒距。由于單片機(jī)I/O口沒有上拉電阻驅(qū)動(dòng)能力有限,需要通過ULN2003來(lái)驅(qū)動(dòng)步進(jìn)電機(jī)[12]。驅(qū)動(dòng)端口為P1.0(A),P1.1(B),P1.2(C),P1.3(D)。紅色電線接電源+5V,橙色電線接P1.3口,黃色電線接P1.2口,粉色電線接P1.1口,藍(lán)色電線接P1.0口。如果P1口輸出的控制信號(hào)中,0代表使繞組通電,1代表使繞組斷電。則步進(jìn)電機(jī)的控制字見表3。</p><p
75、> 表3 四相八拍步進(jìn)電機(jī)控制字</p><p><b> 定義旋轉(zhuǎn)相序如下:</b></p><p><b> 正轉(zhuǎn)相序表</b></p><p> uchar code FFW[8]= {0xf1, 0xf3, 0xf2, 0xf6, 0xf4, 0xfc, 0xf8, 0xf9};</p>
76、<p><b> 反轉(zhuǎn)相序表</b></p><p> uchar code REV[8]= {0xf9, 0xf8, 0xfc, 0xf4, 0xf6, 0xf2, 0xf3, 0xf1};</p><p> 3.1.6 窗簾框架構(gòu)造設(shè)計(jì)</p><p> 窗簾框架構(gòu)造設(shè)計(jì)包括位置傳感器開關(guān)電路和窗簾架結(jié)構(gòu)的設(shè)計(jì)。本設(shè)計(jì)中
77、采用兩個(gè)位置傳感器接在單片機(jī)的P2.1引腳上,位置傳感器電路圖如圖17所示。位置傳感器固定在窗簾滑桿上,一個(gè)安裝在窗簾桿的正中間,另一個(gè)安裝在窗簾桿的最左端或最右端。當(dāng)窗簾完全打開或完全關(guān)閉時(shí),位置傳感器便產(chǎn)生有效信號(hào)并送給單片機(jī),通過程序使步進(jìn)電機(jī)停轉(zhuǎn),窗簾停止運(yùn)動(dòng),防止在窗簾完全打開(關(guān)閉)時(shí)步進(jìn)電機(jī)繼續(xù)運(yùn)行損壞窗簾。窗簾框架構(gòu)造如圖18所示。</p><p> 圖17 位置傳感器電路圖</p>
78、<p> 圖18 窗簾框架構(gòu)造</p><p> 3.2 系統(tǒng)軟件設(shè)計(jì)</p><p> 程序的編寫是系統(tǒng)中重要的組成部分,如果軟件編寫的科學(xué)規(guī)范就能充分體現(xiàn)出該系統(tǒng)功能的完整性、實(shí)用性和經(jīng)濟(jì)性。只有軟件和硬件都正確才能使系統(tǒng)正常的工作,才能達(dá)到我們想要的效果。本系統(tǒng)的軟件設(shè)計(jì)部分主要有紅外編碼程序、紅外解碼程序、LCD1602顯示程序、步進(jìn)電機(jī)控制程序這幾大類。<
79、;/p><p> 3.2.1 紅外遙控器的編碼</p><p> 本設(shè)計(jì)中采用不同的脈寬寬度來(lái)實(shí)現(xiàn)二進(jìn)制信號(hào)的編碼,編碼有發(fā)射單片機(jī)來(lái)完成?!?”碼由0.56ms的高電平和0.565ms的低電平組合而成,“1”碼由0.56ms的高電平和1.69ms的低電平組合而成。其波形如圖19所示。</p><p> 圖19 0和1編碼圖</p><p>
80、; 當(dāng)遙控器的按鍵被按下后,將發(fā)射一組108ms的編碼脈沖,遙控編碼脈沖信號(hào)有前導(dǎo)碼,16位地址碼(8位地址碼,8位地址的反碼)和16位操作碼(8位操作碼,8位操作碼的反碼)組成。</p><p> 通過對(duì)用戶碼的檢驗(yàn),每個(gè)遙控器只能控制一個(gè)設(shè)備動(dòng)作,這樣可以有效的防止多個(gè)設(shè)備之間的干擾。編碼后面還要有編碼的反碼,用來(lái)檢驗(yàn)編碼接收的正確性,防止誤操作,增強(qiáng)系統(tǒng)的可靠性。前導(dǎo)碼是一個(gè)遙控碼的起始部分,有一個(gè)9m
81、s的高電平(起始碼),和一個(gè)4.5ms的低電平(結(jié)果碼)組成,作為接收數(shù)據(jù)的準(zhǔn)備脈沖。開始時(shí)發(fā)射一個(gè)特定的同步碼,對(duì)于接收端而言就是一個(gè)9ms的低電平和一個(gè)4.5ms的高電平,這個(gè)同步碼頭可以使程序知道從這個(gè)同步碼頭以后可以開始接收數(shù)據(jù)[13]。數(shù)據(jù)格式如圖20所示。</p><p><b> 圖20 數(shù)據(jù)格式圖</b></p><p> 3.2.2 二進(jìn)制信號(hào)的
82、調(diào)制</p><p> 二進(jìn)制信號(hào)的調(diào)制仍由發(fā)送單片機(jī)來(lái)完成,采用單片機(jī)的定時(shí)中斷功能,由定時(shí)器T0產(chǎn)生周期為26us的矩形脈沖,即每隔13us定時(shí)器產(chǎn)生中斷輸出一個(gè)相反的信號(hào)使單片機(jī)輸出端產(chǎn)生周期為38KHZ的脈沖信號(hào),脈沖信號(hào)如圖21中的B圖所示,單片機(jī)通過按鍵掃描獲取用戶遙控信息,然后交由單片機(jī)對(duì)將要發(fā)射的數(shù)據(jù)進(jìn)行整理將待發(fā)射的二進(jìn)制信號(hào)調(diào)制在38KHZ脈沖基波上,生成脈沖發(fā)射信號(hào),最后通過紅外發(fā)射管發(fā)射
83、紅外信號(hào),圖21為二進(jìn)制信號(hào)的調(diào)制過程,A是二進(jìn)制信號(hào)的編碼波形,B是頻率為38KHZ(周期為26us)的連續(xù)脈沖,C是經(jīng)調(diào)制后的間斷脈沖串(A和B相與之后的波形),用于紅外發(fā)射二極管發(fā)射的波形,圖中待發(fā)送的二進(jìn)制數(shù)據(jù)為010。</p><p> 圖21 二進(jìn)制信號(hào)的調(diào)制</p><p> 3.2.3 二進(jìn)制信號(hào)的解碼</p><p> 遙控器檢測(cè)到有鍵按下之
84、后,周期性的發(fā)出一種32位二進(jìn)制碼,周期約為108ms。一組碼本身的持續(xù)時(shí)間隨它包含的二進(jìn)制“0”和“1”個(gè)數(shù)的不同而不同,大約在45ms至63ms之間。</p><p> 解碼的關(guān)鍵是如何識(shí)別“0”和“1”,從NEC標(biāo)準(zhǔn)中我們可以發(fā)現(xiàn)“0”碼、“1”碼均以0.56ms的高電平開始,不同的是低電平的寬度不同,“0”為0.565ms,“1”為1.69ms。 </p><p> “0”碼表
85、示為:0.56ms的高電平 + 0.565ms的低電平 = 1.125ms </p><p> “1”碼表示為:0.56ms的高電平 + 1.69ms的低電平 = 2.25ms </p><p> 但是值得注意的是當(dāng)紅外發(fā)射二極管發(fā)射高電平的時(shí)候,HS0038紅外接收頭輸出的是低電平;當(dāng)紅外發(fā)射二極管發(fā)射低電平的時(shí)候,HS0038紅外接收頭輸出的是高電平;所以HS0038接收頭輸出的波
86、形與發(fā)射波形是反向的。紅外信號(hào)是從HS0038紅外接收頭的OUT端獲得的,即發(fā)射碼與接收碼反向,所以在解碼時(shí)候必須按照如下來(lái)判斷“0”碼,“1”碼:</p><p> “0”碼表示為:0.56ms的低電平 + 0.565ms的高電平 = 1.125ms </p><p> “1”碼表示為:0.56ms的低電平 +1.69ms的高電平 = 2.25ms </p><
87、p> 由于“0”碼和“1”碼的低電平時(shí)間是一致的,那么解碼程序編寫的思路就是在解碼程序中通過一個(gè)while循環(huán)語(yǔ)句判斷出每位高電平的時(shí)間是0.565ms還是1.69ms,如果一位碼的高電平持續(xù)的時(shí)間為0.565ms,那么得到的就是“0”碼;如果高電平持續(xù)的時(shí)間是1.69ms,那么這位碼就是“1”碼。為了可靠起見延時(shí)必須比0.56ms長(zhǎng)些,但又不能超過1.12ms,否則如果該位為“0”,讀到的已是下一位的高電平,因此?。?.12m
88、s+0.56ms)/2=0.84ms,一般取0.84ms左右即可,根據(jù)紅外編碼的格式,程序應(yīng)該等待9ms的起始碼和4.5ms的結(jié)果碼完成后才能讀碼[14]。</p><p> 二進(jìn)制信號(hào)的解調(diào)由一體化紅外接收頭HS0038來(lái)完成,它把接收到的紅外信號(hào)(圖22中的波形D)經(jīng)內(nèi)部處理并解調(diào)復(fù)原,在輸出腳輸出圖22中的波形E,(正好是對(duì)圖21中A波形的取反)。HS0038的解調(diào)可理解為:在輸入有脈沖串時(shí),輸出端輸出低
89、電平,否則輸出高電平,輸出端可直接與單片機(jī)串行輸入口及外部中斷相連,以實(shí)現(xiàn)隨時(shí)接收遙控信號(hào)并產(chǎn)生中斷,然后由單片機(jī)對(duì)編碼還原。</p><p> 二進(jìn)制信號(hào)的解調(diào)過程如圖22所示,它把紅外接收頭送來(lái)的二進(jìn)制編碼通過解碼,還原出發(fā)送端發(fā)送的數(shù)據(jù)010。</p><p> 圖22 二進(jìn)制信號(hào)的解調(diào)</p><p> ?。―)紅外發(fā)射頭發(fā)射的波形</p>
90、<p> ?。‥)紅外接收頭解調(diào)后輸出的波形</p><p> 3.2.4 紅外遙控器模塊程序設(shè)計(jì)</p><p> 紅外遙控器主程序流程圖如圖23所示。遙控器上分別設(shè)置了啟動(dòng)/停止,打開,關(guān)閉,速度減小,速度增加和自動(dòng)6個(gè)按鍵。鍵盤是單片機(jī)最常用的輸入設(shè)備,操作人員可以通過鍵盤輸入數(shù)據(jù)或命令,實(shí)現(xiàn)簡(jiǎn)單的人--機(jī)通信。按鍵是一種常開型按鈕開關(guān)。平時(shí)按鍵的二個(gè)觸點(diǎn)處于斷開狀態(tài)
91、,當(dāng)鍵按下時(shí)才閉合。鍵盤分編碼鍵盤和非編碼鍵盤,鍵盤上閉合鍵的識(shí)別由專用的硬件譯碼器實(shí)現(xiàn),并產(chǎn)生鍵編號(hào)或鍵值的稱為編碼鍵盤,靠軟件識(shí)別的稱為非編碼鍵盤。判斷按鍵抖動(dòng)常用軟件方法來(lái)檢測(cè),即檢測(cè)在按鍵閉合后執(zhí)行一個(gè)延時(shí)程序,產(chǎn)生5-10ms的延時(shí),讓前沿抖動(dòng)消失后,再一次檢測(cè)鍵的狀態(tài),如果仍保持閉合狀態(tài)電平,則確認(rèn)為真正有鍵按下。當(dāng)檢測(cè)到按鍵釋放后,也要給5-10ms的延時(shí),待后沿抖動(dòng)消失后,才能轉(zhuǎn)入該鍵的處理程序。如果沒有鍵按下,單片機(jī)不
92、執(zhí)行任何操作,繼續(xù)處于等待狀態(tài),如果有鍵按下時(shí),首先判斷按下的是哪一個(gè)鍵,若為啟動(dòng)鍵則調(diào)用紅外發(fā)射子程序發(fā)送啟動(dòng)鍵編碼0x00H,若為正轉(zhuǎn)鍵則調(diào)用紅外發(fā)射子程序發(fā)送正轉(zhuǎn)鍵編碼0x01H,若為反轉(zhuǎn)鍵則調(diào)用紅外發(fā)射子程序發(fā)射反轉(zhuǎn)鍵編碼0x02H,若為速度減小鍵則調(diào)用紅外發(fā)射子程序發(fā)射速度減小鍵編碼0x03</p><p> 圖23 紅外遙控器主程序流程圖</p><p> 遙控器上6個(gè)按鍵
93、的功能定義如圖24所示。當(dāng)按下啟動(dòng)按鈕時(shí)系統(tǒng)進(jìn)入啟動(dòng)狀態(tài),此時(shí)可以手動(dòng)控制窗簾的打開,關(guān)閉,減速和加速,同時(shí)還可以進(jìn)入自動(dòng)模式利用光敏模塊自動(dòng)控制窗簾的打開或關(guān)閉。</p><p> 圖24 紅外遙控器按鍵功能</p><p> 主程序的按鍵子程序流程圖如圖25所示。首先初始化程序,然后調(diào)用鍵掃描處理子程序,再判斷處理是否有鍵按下,若有控制鍵按下則進(jìn)行逐行掃描,按照P口值查找鍵號(hào),最后
94、按照鍵號(hào)轉(zhuǎn)至相應(yīng)的發(fā)射程序。</p><p> 圖25 遙控器按鍵子程序流程圖</p><p> 3.2.5 紅外接收模塊程序設(shè)計(jì)</p><p> 接收控制器系統(tǒng)中單片機(jī)微處理器的主要任務(wù)是完成對(duì)HS0038接收到的紅外信號(hào)的分析與處理,從而完成對(duì)相應(yīng)控制單元的控制,主程序首先完成初始化,然后啟動(dòng)HS0038等待接收控制指令,進(jìn)行相應(yīng)的輸出操作[15]。&l
95、t;/p><p> 單片機(jī)對(duì)紅外控制信號(hào)的接收是通過P3.2口來(lái)完成的,其對(duì)應(yīng)的第二功能為外部中斷0(INT0),通過接收到不同的紅外信號(hào)脈沖實(shí)現(xiàn)相應(yīng)的操作。遙控器上六個(gè)按鍵的功能通過接收主程序來(lái)完成,程序?qū)3.2口實(shí)時(shí)檢測(cè),一旦檢測(cè)到有低脈沖到來(lái),首先調(diào)用讀紅外線的子程序(紅外解碼),通過子程序還原出遙控器按鍵的編碼,也就是對(duì)應(yīng)的啟動(dòng)/停止,打開,關(guān)閉,速度減小,速度增加和自動(dòng)鍵,然后轉(zhuǎn)至相應(yīng)的子程序去執(zhí)行相應(yīng)
96、的動(dòng)作。</p><p> 若接收到的數(shù)據(jù)為0x00H,則置TEMP=0x00H,系統(tǒng)啟動(dòng);若接收到的數(shù)據(jù)為0x01H,則置TEMP=0x01H,窗簾打開;若接收到的數(shù)據(jù)為0x02H,則置TEMP=0x02H,窗簾關(guān)閉;若接收到的數(shù)據(jù)為0x03H,則置TEMP=0x03H,速度減??;若接收到的數(shù)據(jù)為0x11H,則置TEMP=0x11H,速度增加;若接收到的數(shù)據(jù)為0x12H,則置TEMP=0x12H,進(jìn)入自動(dòng)模式
97、。</p><p> 紅外窗簾控制器接收主程序流程圖如圖26所示。首先初始化,單片機(jī)處理并判斷接收到的控制信號(hào),成功獲取紅外編碼信號(hào)后去執(zhí)行相應(yīng)的動(dòng)作。</p><p> 圖26 紅外窗簾控制器接收主程序流程圖</p><p> 紅外遙控器接收部分由信號(hào)接收子程序和信號(hào)解碼執(zhí)行子程序組成,信號(hào)接收子程序負(fù)責(zé)初始化,不停地查詢有無(wú)紅外信號(hào)。信號(hào)解碼執(zhí)行子程序主要
98、負(fù)責(zé)解碼和執(zhí)行解碼信號(hào)。信號(hào)接收子程序流程圖如圖27所示,信號(hào)解碼執(zhí)行子程序流程圖如圖28所示。</p><p> 圖27 信號(hào)接收子程序流程圖</p><p> 圖28 信號(hào)解碼執(zhí)行子程序流程圖</p><p> 3.2.6 LCD1602模塊程序設(shè)計(jì)</p><p><b> ?。?)本操作時(shí)序:</b><
99、;/p><p> 讀狀態(tài):輸入:RS=L,R/W=H,E=H;輸出:D0—D7=狀態(tài)字。 </p><p> 寫指令:輸入:RS=L,R/W=L,D0—D7=指令碼,E=高脈沖;輸出:無(wú)。</p><p> 讀數(shù)據(jù):輸入:RS=H,R/W=H,E=H;輸出:D0—D7=數(shù)據(jù)。</p><p> 寫數(shù)據(jù):輸入:RS=H,R/W=L,D0—D
100、7=數(shù)據(jù),E=高脈沖;輸出:無(wú)。</p><p> 寫操作時(shí)序如圖29所示。</p><p> 圖29 寫操作時(shí)序圖</p><p> ?。?)LCD1602的一般初始化(復(fù)位)過程:</p><p><b> ?、傺訒r(shí)15ms;</b></p><p> ?、趯懼噶?8H(不檢測(cè)忙信號(hào));&
101、lt;/p><p><b> ?、垩訒r(shí)5ms;</b></p><p> ?、軐懼噶?8H(不檢測(cè)忙信號(hào));</p><p><b> ?、菅訒r(shí)5ms;</b></p><p> ?、迣懼噶?8H(不檢測(cè)忙信號(hào),以后每次寫指令、讀/寫數(shù)據(jù)操作之前均需檢測(cè)忙信號(hào));</p><p>
102、; ?、邔懼噶?8H:顯示模式設(shè)置;寫指令08H:顯示關(guān)閉;寫指令01H:顯示清屏;</p><p> ?、鄬懼噶?6H:顯示光標(biāo)移動(dòng)設(shè)置;寫指令0CH:顯示開及光標(biāo)設(shè)置。</p><p> LCD1602主程序流程圖如圖30所示。</p><p> 圖30 LCD1602主程序流程圖</p><p><b> (3)LCD子
103、程序</b></p><p> LCD子程序主要實(shí)現(xiàn)的功能是顯示步進(jìn)電機(jī)的狀態(tài)。顯示紅外遙控器上6個(gè)控制按鍵的編碼,步進(jìn)電機(jī)的運(yùn)行狀態(tài)(RUN,STOP,AUTO),窗簾的打開和關(guān)閉指示符號(hào)以及步進(jìn)電機(jī)的速度等級(jí)。當(dāng)系統(tǒng)啟動(dòng)時(shí)LCD1602液晶顯示器將顯示“INFRARED CURTAIN CONTROLLER”。系統(tǒng)LCD顯示子程序流程圖如圖31所示。</p><p>
104、圖31 LCD1602顯示子程序流程圖</p><p><b> 4 系統(tǒng)調(diào)試</b></p><p> 系統(tǒng)調(diào)試在控制系統(tǒng)研發(fā)過程中占有重要的地位,它是系統(tǒng)開發(fā)過程中一個(gè)不可缺少的環(huán)節(jié)。調(diào)試過程中可以對(duì)控制系統(tǒng)的各種功能進(jìn)行測(cè)試,通過與設(shè)計(jì)方案的比較來(lái)發(fā)現(xiàn)系統(tǒng)缺陷,并及時(shí)完善系統(tǒng),要求設(shè)計(jì)人員在調(diào)試過程中要認(rèn)真執(zhí)行每一個(gè)調(diào)試環(huán)節(jié),發(fā)現(xiàn)問題,提出相應(yīng)的解決方案,保
105、證控制系統(tǒng)在實(shí)際應(yīng)用中具有良好的可靠性和穩(wěn)定性。</p><p> 調(diào)試程序是發(fā)現(xiàn)并找出程序邏輯錯(cuò)誤的過程其一般步驟為:</p><p> 步驟一:連接AT89C52單片機(jī)串口下載線。</p><p> 步驟二:打開Proteus仿真軟件。</p><p> 步驟三:在Proteus界面中,雙擊單片機(jī)并且加載由Keil軟件生成的*.H
106、ex文件,然后點(diǎn)擊Proteus中的開始按鈕進(jìn)行系統(tǒng)仿真[16]。</p><p> 步驟四:觀察程序執(zhí)行結(jié)果,如果程序運(yùn)行結(jié)果與預(yù)期不一致,則返回Keil編程界面,檢查程序并修改,修改完畢后進(jìn)行編譯,確認(rèn)無(wú)誤后在Proteus中重新加載*.Hex文件仿真。調(diào)試紅外控制步進(jìn)電機(jī)程序如圖32所示。</p><p> 圖32 調(diào)試紅外控制步進(jìn)電機(jī)程序</p><p>
107、; 由于本設(shè)計(jì)采用的是紅外遙控信號(hào),不能直接利用Proteus仿真軟件進(jìn)行仿真,所以在沒有遙控器的情況下只能利用按鍵代替遙控信號(hào)進(jìn)行硬件調(diào)試,其方法為利用步進(jìn)電機(jī)的實(shí)例程序,用6個(gè)按鍵代替遙控器的紅外信號(hào)控制步進(jìn)電機(jī)的啟動(dòng)/停止、正轉(zhuǎn)、反轉(zhuǎn)、減速、加速和自動(dòng)六個(gè)功能,并且用LCD1602液晶屏顯示出來(lái),利用按鍵的硬件調(diào)試原理圖如圖33所示。</p><p> 圖33 按鍵調(diào)試原理圖</p>&l
108、t;p> 硬件的按鍵調(diào)試過程如圖34所示。</p><p> 圖34 按鍵調(diào)試實(shí)物圖</p><p> 利用遙控器的調(diào)試過程如圖35所示。用遙控器去控制步進(jìn)電機(jī)的啟動(dòng)/停止、正轉(zhuǎn)、反轉(zhuǎn)、減速、加速,當(dāng)紅外接收控制器接收到有效紅外信號(hào)時(shí),蜂鳴器響一聲,并且所接收到的紅外編碼及步進(jìn)電機(jī)的運(yùn)行狀態(tài)會(huì)在LCD1602液晶屏上顯示出來(lái)。</p><p> 圖35
109、 遙控器調(diào)試實(shí)物圖</p><p> 由于本設(shè)計(jì)中涉及到“自動(dòng)模式”,因此在自動(dòng)模式中采用了一個(gè)光敏電阻模塊,其功能為在光照強(qiáng)度大的時(shí)候窗簾關(guān)閉,在光線較暗的時(shí)候窗簾打開,從而實(shí)現(xiàn)根據(jù)自然光強(qiáng)度的變化可以自動(dòng)控制窗簾的打開程度,使房間的光線強(qiáng)度在一定程度上保持穩(wěn)定。在調(diào)試過程中用手遮擋和松開光敏電阻來(lái)模擬有光和無(wú)光的環(huán)境,當(dāng)用手遮擋光敏電阻的時(shí)候步進(jìn)電機(jī)正轉(zhuǎn)(窗簾打開),當(dāng)松開光敏電阻的時(shí)候步進(jìn)電機(jī)反轉(zhuǎn)(窗簾關(guān)
110、閉)實(shí)現(xiàn)了自動(dòng)調(diào)節(jié)??刂破魃系奈恢脗鞲衅?,用來(lái)判斷窗簾的打開程度,當(dāng)窗簾完全打開或完全關(guān)閉時(shí),步進(jìn)電機(jī)停止轉(zhuǎn)動(dòng),防止損壞窗簾,由于沒有實(shí)際的窗簾實(shí)物,本設(shè)計(jì)中采用兩個(gè)按鍵代替兩個(gè)位置傳感器。在調(diào)試過程中按下任意一個(gè)按鍵步進(jìn)電機(jī)即停止轉(zhuǎn)動(dòng)。實(shí)驗(yàn)證明光敏電阻模塊和位置開關(guān)均可實(shí)現(xiàn)所要的功能,光敏模塊和位置傳感器實(shí)物調(diào)試過程如圖36所示。</p><p> 圖36 光敏模塊和位置傳感器實(shí)物調(diào)試圖</p>
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 多通道遙控窗簾機(jī)控制器設(shè)計(jì)【畢業(yè)論文】
- 紅外線窗簾遙控控制器畢業(yè)設(shè)計(jì)
- 自動(dòng)窗簾控制器畢業(yè)設(shè)計(jì)論文
- 單片機(jī)窗簾自動(dòng)控制器設(shè)計(jì)【畢業(yè)論文】
- 畢業(yè)論文--交通控制器設(shè)計(jì)
- 畢業(yè)論文——交通控制器設(shè)計(jì)
- 畢業(yè)論文---模糊pid控制器設(shè)計(jì)
- led顯示屏控制器的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文(設(shè)計(jì))
- crt字符控制器設(shè)計(jì)畢業(yè)論文
- 智能路燈控制器設(shè)計(jì)【畢業(yè)論文】
- 循環(huán)彩燈控制器設(shè)計(jì)畢業(yè)論文
- 智能pid控制器設(shè)計(jì)與仿真【畢業(yè)論文】
- 畢業(yè)設(shè)計(jì)--紅外多路控制器
- 冰箱溫度控制器的設(shè)計(jì)與研究畢業(yè)論文
- 基于fpga電梯控制器設(shè)計(jì)畢業(yè)論文
- 畢業(yè)論文--舞廳彩燈控制器的設(shè)計(jì)與仿真
- 畢業(yè)論文--智能點(diǎn)陣式燈光控制器的中心控制器設(shè)計(jì)
- 聲控玩具小車控制器設(shè)計(jì)【畢業(yè)論文】
- 交通燈控制器設(shè)計(jì)畢業(yè)論文
- 自動(dòng)窗簾控制系統(tǒng)設(shè)計(jì)【畢業(yè)論文】
評(píng)論
0/150
提交評(píng)論