版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(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> 題目: 單片機(jī)紅外遙控系統(tǒng)的設(shè)計(jì) </p><p> 系 院: 物理與電子工程學(xué)院</p><p> 專(zhuān) 業(yè): 自 動(dòng) 化 </p><p> 單片機(jī)紅外遙控系統(tǒng)設(shè)計(jì)</p><p> 摘要 作為傳統(tǒng)的家用
2、電器,隨著空調(diào)的普及,電風(fēng)扇的市場(chǎng)地位受到了巨大的沖擊,傳統(tǒng)的開(kāi)/關(guān)、調(diào)速功能已經(jīng)不能滿(mǎn)足市場(chǎng)的需求。人們希望電風(fēng)扇在體積小、作方便等的基礎(chǔ)上能夠擁有更多的功能,而紅外遙控的廣泛應(yīng)用及單片機(jī)技術(shù)的成熟,則使得智能紅外遙控系統(tǒng)成為了電風(fēng)扇的發(fā)展趨勢(shì)。 本設(shè)計(jì)方案基于市場(chǎng)的需求,結(jié)合紅外遙控設(shè)計(jì)簡(jiǎn)單、作方便、成本低廉等特點(diǎn),采用了51單片機(jī)作為遙控發(fā)射接收芯片,HS0038作為紅外一體化接收發(fā)射管,在此基礎(chǔ)上設(shè)計(jì)了一個(gè)簡(jiǎn)易的智能紅外遙
3、控電風(fēng)扇系統(tǒng)。系統(tǒng)包括接收和發(fā)射兩大部分,本文設(shè)計(jì)實(shí)現(xiàn)了幾項(xiàng)電風(fēng)扇的基本功能:開(kāi)/關(guān)功能、多級(jí)調(diào)速功能、0.5-7.5小時(shí)不同時(shí)間段的定時(shí)功能,以及自然、正常兩種風(fēng)類(lèi)的選擇功能。另外本系統(tǒng)有16個(gè)按鍵,可用于擴(kuò)展控制其他電器。關(guān)鍵字:紅外遙控;信號(hào)調(diào)制;編碼;解碼. </p><p> The Design Of The Infared Remote Contorl Based On 51-MCU</
4、p><p> Abstract:With the popularity of air conditioners, the market position of the electric fans which are the traditional household appliances will receive a huge impact, the traditional on / off and speed c
5、ontrol function have been unfit for the needs of the market. It is hoped that the fans in small, easy to operate, and so on the basis can have more features. When the application of infrared remote control becomes wilder
6、 and technologies of SCM become mature, the remote control system is the tren</p><p> Key words: Infrared Remote Control; Signal Modulation; Encoding; Decoding。</p><p><b> 目 錄</b&g
7、t;</p><p><b> 1緒 論1</b></p><p> 1.1課題設(shè)計(jì)目的及意義1</p><p> 2課題的方案設(shè)計(jì)與論證3</p><p> 3系統(tǒng)的硬件結(jié)構(gòu)設(shè)計(jì)4</p><p> 3.1 系統(tǒng)方框圖4</p><p> 3.2 系
8、統(tǒng)功能需求5</p><p> 3.3 51系列單片機(jī)功能特點(diǎn)[3]6</p><p> 3.4 紅外發(fā)射電路10</p><p> 3.5 紅外檢測(cè)接收電路11</p><p> 3.6 控制電路12</p><p> 3.7 電源電路設(shè)計(jì)13</p><p> 3
9、.8 顯示部分的設(shè)計(jì)14</p><p> 3.9鍵盤(pán)設(shè)計(jì)17</p><p> 4 系統(tǒng)軟件的設(shè)計(jì)19</p><p> 4.1 定時(shí)/計(jì)數(shù)器應(yīng)用19</p><p> 4.2遙控碼的發(fā)射22</p><p> 4.3 紅外接收25</p><p> 4.4 調(diào)速單元
10、27</p><p> 4.4.1 調(diào)速原理27</p><p> 4.4.2 調(diào)速方法27</p><p> 4.5按鍵抖動(dòng)問(wèn)題29</p><p> 4.6 系統(tǒng)的軟硬件的調(diào)試30</p><p><b> 結(jié)論32</b></p><p><
11、b> 參考文獻(xiàn)33</b></p><p><b> 附 錄35</b></p><p><b> 致 謝47</b></p><p><b> 1緒 論</b></p><p> 1.1課題設(shè)計(jì)目的及意義</p><
12、p> 隨著科技的發(fā)展,人們生活的節(jié)奏也越來(lái)越快,隨之人們對(duì)方便,快捷的要求也隨之不斷增高!遙控器的出現(xiàn),在一定程度上滿(mǎn)足了人們這個(gè)要求!遙控器是由高產(chǎn)的發(fā)明家Robert Adler在五十年代發(fā)明的[14]。而紅外遙控是20世紀(jì)70年代才開(kāi)始發(fā)展起來(lái)的一種遠(yuǎn)程控制技術(shù),其原理是利用紅外線來(lái)傳遞控制信號(hào),實(shí)現(xiàn)對(duì)控制對(duì)象的遠(yuǎn)距離控制,具體來(lái)講,就是有發(fā)射器發(fā)出紅外線指令信號(hào),有接收器接收下來(lái)并對(duì)信號(hào)進(jìn)行處理,最后實(shí)現(xiàn)對(duì)控制對(duì)象的各種
13、功能的遠(yuǎn)程控制。 紅外遙控具有獨(dú)立性、物理特性與可見(jiàn)光相似性、無(wú)穿透障礙物的能力及較強(qiáng)的隱蔽性等特點(diǎn)。隨著紅外遙控技術(shù)的開(kāi)發(fā)和迅速發(fā)展,很多電器都應(yīng)用了紅外遙控,而電風(fēng)扇也不例外。從單純的在電風(fēng)扇面板上通過(guò)按鈕控制,到短距離(10M以?xún)?nèi))的遙控,雖然改變不大,但其帶來(lái)的便利無(wú)疑是巨大的。而紅外遙控技術(shù)的成熟,也使得遙控電風(fēng)扇變得設(shè)計(jì)簡(jiǎn)單,價(jià)格低廉。 作為一種老牌的電器,電風(fēng)扇具有價(jià)格便宜、擺放方便、體積輕巧等特點(diǎn)。雖
14、然現(xiàn)在空調(diào)在城市中已經(jīng)相當(dāng)普遍,并有替代電風(fēng)扇的趨勢(shì),但由于大部分家庭消費(fèi)水平的限制,電風(fēng)扇作為一個(gè)成熟的家電行業(yè)的一員,尤其在中小城</p><p> 1.2紅外遙控的設(shè)計(jì)思路</p><p> 紅外遙控是單工的紅外通信方式,整個(gè)通信中,需要一個(gè)發(fā)射端和一個(gè)接收端。發(fā)送端采用單片機(jī)將待發(fā)送的二進(jìn)制信號(hào)編碼調(diào)制為一系列的脈沖串信號(hào),通過(guò)紅外發(fā)射管發(fā)射紅外信號(hào)。紅外接收端普遍采用價(jià)格便宜
15、,性能可靠的一體化紅外接收頭接收紅外信號(hào),它同時(shí)對(duì)信號(hào)進(jìn)行放大、檢波、整形,得到TTL電平的編碼信號(hào),再送給單片機(jī),經(jīng)單片機(jī)解碼并控制相關(guān)對(duì)象[14]。</p><p> 圖1 遙控器原理框圖 </p><p> 2課題的方案設(shè)計(jì)與論證</p><p> 紅外編碼有很多種方式,下面列舉兩種實(shí)現(xiàn)方案[12]:</p><p> 方案一:
16、脈寬調(diào)制的串行碼。這種遙控碼具有以下特征: 以脈寬為0.565ms、間隔0.56ms、周期為1.125ms的組合表示二進(jìn)制的“0”;以脈寬為0.565ms、間隔1.685ms、周期為2.25ms的組合表示二進(jìn)制的“1”。 其相關(guān)的波形圖如下: </p><p> 圖 2 串行碼編碼 </p><p> 方案二:碼分制。采用脈沖個(gè)數(shù)編碼,不同的脈沖個(gè)數(shù)代表不同的被控對(duì)象,最小為2個(gè)脈
17、沖。為了使接收可靠,第一位碼寬為3ms,其余為1ms,遙控碼數(shù)據(jù)幀間隔大于10ms,如圖3所示。</p><p> 圖 3 碼分制編碼波形圖</p><p> 本設(shè)計(jì)采用方案二,碼分制編碼編程簡(jiǎn)單,在按鍵較少的情況下優(yōu)勢(shì)明顯。</p><p> 3 系統(tǒng)的硬件結(jié)構(gòu)設(shè)計(jì)</p><p><b> 3.1 系統(tǒng)方框圖</
18、b></p><p> (1)發(fā)射端電路:?jiǎn)纹瑱C(jī)系統(tǒng)及顯示電路、紅外發(fā)射電路以及按鍵電路,穩(wěn)壓電路等組成。其設(shè)計(jì)原理圖如下:</p><p> 圖 4 手持段遙控器方框圖</p><p> (2)發(fā)射端電路:?jiǎn)纹瑱C(jī)系統(tǒng)及顯示電路、紅外發(fā)射電路以及按鍵電路,電源電路,控制單元等組成。其設(shè)計(jì)原理圖如下:</p><p> 圖
19、5 紅外接收端方框圖</p><p> 3.2 系統(tǒng)功能需求</p><p> 本遙控系統(tǒng)要求用單片機(jī)作為控制芯片制作一個(gè)遙控器[8],另一個(gè)單片機(jī)控制系統(tǒng)能被遙控操作。本系統(tǒng)要求遙控器具有多級(jí)調(diào)速,開(kāi)關(guān),定時(shí),以及自然風(fēng),睡眠風(fēng)切換等功能!將單片機(jī)、控制、鍵盤(pán)組合在一起完成了人機(jī)對(duì)話。 用 AT89C51單片機(jī)來(lái)作主芯片控制,采用紅外HS0038接收頭,用雙向可控硅MC97A6控
20、制電機(jī)開(kāi)關(guān),具有紅外遙控功能。</p><p> 自然風(fēng)的處理流程 : 圖 6 自然風(fēng)的循環(huán)圖 </p><p> 睡眠風(fēng)的處理流程 : </p><p> 圖 7 自然風(fēng)的循環(huán)圖 </p><p> 正常風(fēng)的處理流程 : </p>
21、<p> 圖 8 正常風(fēng)循環(huán) </p><p> 3.3 51系列單片機(jī)功能特點(diǎn)[3]</p><p><b> ?。?)主要特性</b></p><p> ·與MCS-51 兼容 </p><p> ·4K字節(jié)可編程閃爍存儲(chǔ)器 </p><p>
22、·壽命:1000寫(xiě)/擦循環(huán)</p><p> ·數(shù)據(jù)保留時(shí)間:10年</p><p> ·全靜態(tài)工作:0Hz-24Hz</p><p> ·三級(jí)程序存儲(chǔ)器鎖定</p><p> ·128*8位內(nèi)部RAM</p><p> ·32可編程I/O線<
23、/p><p> ·兩個(gè)16位定時(shí)器/計(jì)數(shù)器</p><p><b> ·5個(gè)中斷源 </b></p><p> ·可編程串行通道 </p><p> ·低功耗的閑置和掉電模式</p><p> ·片內(nèi)振蕩器和時(shí)鐘電路 </
24、p><p> AT89C51的引腳功能,圖9所示:</p><p> 圖 9 AT89S51的引腳功能圖</p><p><b> (2)管腳說(shuō)明</b></p><p> —VCC:供電電壓。</p><p><b> —GND:接地。</b></p>
25、<p> —P0口:P0口為一個(gè)8位漏級(jí)開(kāi)路雙向I/O口,每個(gè)管腳可吸收8TTL門(mén)電流。當(dāng)P1口的管腳寫(xiě)“1”時(shí),被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲(chǔ)器,它可以被定義為數(shù)據(jù)/地址的第八位。在FLASH編程時(shí),P0口作為原碼輸入口,當(dāng)FLASH進(jìn)行校驗(yàn)時(shí),P0輸出原碼,此時(shí)P0外部電位必須被拉高。</p><p> —P1口:P1口是一個(gè)內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能
26、接收輸出4TTL門(mén)電流。P1口管腳寫(xiě)入“1”后,電位被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時(shí),將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程和校驗(yàn)時(shí),P1口作為第八位地址接收。 </p><p> —P2口:P2口為一個(gè)內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個(gè)TTL門(mén)電流,當(dāng)P2口被寫(xiě)“1”時(shí),其管腳電位被內(nèi)部上拉電阻拉高,且作為輸入。作為輸入時(shí),P2口的管腳電位被外部拉
27、低,將輸出電流,這是由于內(nèi)部上拉的緣故。P2口當(dāng)用于外部程序存儲(chǔ)器或16位地址外部數(shù)據(jù)存儲(chǔ)器進(jìn)行存取時(shí),P2口輸出地址的高八位。在給出地址“1”時(shí),它利用內(nèi)部上拉的優(yōu)勢(shì),當(dāng)對(duì)外部八位地址數(shù)據(jù)存儲(chǔ)器進(jìn)行讀寫(xiě)時(shí),P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASH編程和校驗(yàn)時(shí)接收高八位地址信號(hào)和控制信號(hào)。</p><p> —P3口:P3口管腳是8個(gè)帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個(gè)TTL門(mén)電流。當(dāng)P3口
28、寫(xiě)入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入時(shí),由于外部下拉為低電平,P3口將輸出電流(ILL),也是由于上拉的緣故。</p><p> P3口也可作為AT89C51的一些特殊功能口,如下所示:</p><p> P3.0 RXD(串行輸入口)</p><p> P3.1 TXD(串行輸出口)</p><p> P3.2
29、 (外部中斷0)</p><p> P3.3 (外部中斷1)</p><p> P3.4 T0(記時(shí)器0外部輸入)</p><p> P3.5 T1(記時(shí)器1外部輸入)</p><p> P3.6 (外部數(shù)據(jù)存儲(chǔ)器寫(xiě)選通)</p><p> P3.7 (外部數(shù)據(jù)存儲(chǔ)器讀選通)</p><p
30、> P3口同時(shí)為閃爍編程和編程校驗(yàn)接收一些控制信號(hào)。</p><p> —RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持RST腳兩個(gè)機(jī)器周期的高電平時(shí)間。</p><p> —:當(dāng)訪問(wèn)外部存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時(shí),ALE端以不變的頻率周期輸出正脈沖信號(hào),此頻率為振蕩器頻率的1/6。因此它可用作對(duì)外
31、部輸出的脈沖或用于定時(shí)目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲(chǔ)器時(shí),將跳過(guò)一個(gè)ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時(shí), ALE只有在執(zhí)行MOVX,MOVC指令時(shí)ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無(wú)效。</p><p> —:外部程序存儲(chǔ)器的選通信號(hào)。在由外部程序存儲(chǔ)器取址期間,每個(gè)機(jī)器周期兩次有效。但在訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的
32、信號(hào)將不出現(xiàn)。</p><p> —:當(dāng)保持低電平時(shí),訪問(wèn)外部ROM;注意加密方式1時(shí),將內(nèi)部鎖定為RESET;當(dāng)端保持高電平時(shí),訪問(wèn)內(nèi)部ROM。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。</p><p> —XTAL1:反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入。</p><p> —XTAL2:來(lái)自反向振蕩器的輸出。③內(nèi)部結(jié)構(gòu)框圖如
33、圖10所示。</p><p> 圖10 AT89C51的內(nèi)部結(jié)構(gòu)框圖</p><p> (3)AT89C51的基本操作</p><p> 如圖11所示,在X1和X2之間接一只石英振蕩晶體構(gòu)成了單片機(jī)的時(shí)鐘電路,它還有另一種接法,是把外部振蕩器的信號(hào)直接連接到XTAL1端,XTAL2端懸空不用。</p><p> AT89C51復(fù)位引
34、腳RST/VP通過(guò)片內(nèi)一個(gè)施密特觸發(fā)器(抑制噪聲作用)與片內(nèi)復(fù)位電路相連,施密特觸發(fā)器的輸出在每一個(gè)機(jī)器周期由復(fù)位電路采樣一次。當(dāng)振蕩電路工作,并且在RST引腳上加一個(gè)至少保持2個(gè)機(jī)器周期的高電平時(shí),就能使AT89C51完成一次復(fù)位。</p><p> 復(fù)位不影響RAM的內(nèi)容。復(fù)位后,PC指向0000H單元,使單片機(jī)從起始地址0000H單元開(kāi)始重新執(zhí)行程序。所以,當(dāng)單片機(jī)運(yùn)行出錯(cuò)或進(jìn)入死循環(huán)時(shí),可按復(fù)位鍵重新啟
35、動(dòng)。</p><p> MCS-51單片機(jī)通常采用上電自動(dòng)復(fù)位和按鈕復(fù)位兩種復(fù)位方式。上電復(fù)位利用電容器充電來(lái)實(shí)現(xiàn)。按鈕復(fù)位又分為按鈕電平復(fù)位和按鈕脈沖復(fù)位。前者將復(fù)位端通過(guò)電阻與Vcc相接;后者利用RC微分電路產(chǎn)生正脈沖來(lái)達(dá)到復(fù)位目的。復(fù)位電路參數(shù)的選擇應(yīng)能保證復(fù)位高電平持續(xù)時(shí)間大于2個(gè)機(jī)器周期。</p><p> 圖 11 AT89C51基本操作電路</p><
36、;p> 3.4 紅外發(fā)射電路</p><p> 本遙控發(fā)射器采用碼分制遙控方式,碼分制紅外遙控就是指令信號(hào)產(chǎn)生電路以不同的脈沖編碼(不同的脈沖數(shù)目及組合)代表不同的控制指令。</p><p> 在確定選擇AT89C51作為本設(shè)計(jì)發(fā)射電路核心芯片和點(diǎn)觸式開(kāi)關(guān)作為控制鍵后,加上一個(gè)簡(jiǎn)單紅外發(fā)射電路和12M晶體震蕩器便可實(shí)現(xiàn)紅外發(fā)射。</p><p> 發(fā)射
37、部分的主要元件為紅外發(fā)光二極管。它實(shí)際上是一只特殊的發(fā)光二極管,由于其內(nèi)部材料不同于普通發(fā)光二極管,因而在其兩端施加一定電壓時(shí),它發(fā)出的便是紅外線而不是可見(jiàn)光。目前大量使用的紅外發(fā)光二極管發(fā)出的紅外線波長(zhǎng)為940nm左右,外形與普通Φ5發(fā)光二極管相同,只是顏色不同[7]。</p><p> 遙控發(fā)射通過(guò)鍵盤(pán),每按下一個(gè)鍵,即產(chǎn)生具有不同的編碼數(shù)字脈沖,這種代碼指令信號(hào)調(diào)制在40KHz的載波上,激勵(lì)紅外光二極管產(chǎn)
38、生不同的脈沖,通過(guò)空間的傳送到受控機(jī)的遙控接收器。P1口作為按鍵部分,P0.7口作為發(fā)射部分。電路圖如圖12。</p><p> 圖 12 紅外發(fā)射電路</p><p> 3.5 紅外檢測(cè)接收電路</p><p> 在接收過(guò)程中,脈沖通過(guò)光學(xué)濾波器和紅外二極管轉(zhuǎn)換為40KHZ的電信號(hào),此信號(hào)經(jīng)過(guò)放大,檢波,整形,解調(diào),送到解碼與接口電路,從而完成相應(yīng)的遙控功
39、能。接收電路圖見(jiàn)圖13。</p><p> 通常,紅外遙控器將遙控信號(hào)(二進(jìn)制脈沖碼)調(diào)制在40KHz的載波上,經(jīng)緩沖放大后送至紅外發(fā)光二極管,產(chǎn)生紅外信號(hào)發(fā)射出去。將上述的遙控編碼脈沖對(duì)頻率為40KHz(周期為26μs)的載波信號(hào)進(jìn)行脈幅調(diào)制(PAM ),再經(jīng)緩沖放大后送到紅外發(fā)光管,將遙控信號(hào)發(fā)射出去。</p><p> 根據(jù)遙控信號(hào)編碼和發(fā)射過(guò)程,遙控信號(hào)的識(shí)別——即解碼過(guò)程是去
40、除40KHz載波信號(hào)后識(shí)別出二進(jìn)制脈沖碼中的0和1。由MCS—51 系列單片機(jī)AT89C51、一體化紅外接收頭、還原調(diào)制與紅外發(fā)光管驅(qū)動(dòng)電路組成。</p><p> 接收部分主要元件是紅外接收管,它是一種光敏二極管(實(shí)際上是三極管,基極為感光部分)。在實(shí)際應(yīng)用中要給紅外接收二極管加反向偏壓,它才能正常工作,亦即紅外接收二極管在電路中應(yīng)用時(shí)是反向運(yùn)用,這樣才能獲得較高的靈敏度[18]。</p>&l
41、t;p> 圖 13 紅外接收電路</p><p> 3.6 控制電路 </p><p> 在控制部分采用了隔離驅(qū)動(dòng)電路,用光電器件作為隔離元件,利用光耦來(lái)隔離強(qiáng)電,以防止強(qiáng)電影響單片機(jī)的工作。</p><p> 光電隔離的目的是割斷兩個(gè)電路的電氣聯(lián)系,使之相互獨(dú)立,從而也就割斷了噪聲從一個(gè)電路進(jìn)入另一個(gè)電路的通路[1]。光電隔離是通過(guò)光電耦合器
42、實(shí)現(xiàn)的。光耦又稱(chēng)光電隔離器或光電耦合器,它是以光為媒介來(lái)傳輸電信號(hào)的器件,通常把發(fā)光器與受光器封裝在管殼內(nèi)。當(dāng)輸入端加電信號(hào)時(shí)發(fā)光器發(fā)出光線,受光器接收后就產(chǎn)生光電流,從輸出端流出,從而實(shí)現(xiàn)了“光—電—光”的轉(zhuǎn)換。光電耦合器是把一個(gè)發(fā)光二極管和一個(gè)光敏三極管封裝在一個(gè)外殼里的器件。外殼有金屬的或塑料的兩種。發(fā)光二極管和光敏三極管之間用透明絕緣體填充,并使發(fā)光管與光敏管對(duì)準(zhǔn),以提高其靈敏度,光電耦合器的電路符號(hào)如圖16所示。</p&
43、gt;<p> 對(duì)于數(shù)字量,當(dāng)輸入為低電平“0”時(shí),光敏三極管截止,輸出為高電平“1”;當(dāng)輸入為高電平“1”時(shí),光敏三極管飽和導(dǎo)通,輸出為低電平“0”。</p><p> 圖14 光電耦合器原理圖</p><p> 輸入信號(hào)使用權(quán)發(fā)光二極管發(fā)光,其光線又使光敏三極管產(chǎn)生電信號(hào)輸出,從而既完成了信號(hào)的傳遞又實(shí)現(xiàn)了電氣上的隔離。光電耦合的響應(yīng)時(shí)間一般不超過(guò)幾個(gè)微秒。<
44、;/p><p> 光電耦合器的輸入端與輸出端在電氣上是絕緣的,且輸出端對(duì)輸入端也無(wú)反饋,因而具有隔離和抗干擾兩方面的獨(dú)特性能。通常使用光電耦合器是為實(shí)現(xiàn)以下兩個(gè)主要功能:</p><p> 電平轉(zhuǎn)換:TTL電路與電源電路之間不需另加匹配電路就可以傳輸信號(hào),從而實(shí)現(xiàn)了電平轉(zhuǎn)換。</p><p> 隔離:這時(shí)由于信號(hào)電路與接收電路之間被隔離,因此即使兩個(gè)電路的接地電位
45、不同,也不會(huì)形成干擾。</p><p> 光電耦合器中光敏三極管的基極有引出和不引出兩種形式。基極引出通常是經(jīng)一個(gè)電阻接地。</p><p> 通過(guò)接地電阻可以控制耦合的響應(yīng)速度和靈敏度??偟膩?lái)說(shuō),電阻越小,響應(yīng)速度越高。其控制電路如圖15所示。</p><p><b> 圖15 控制電路</b></p><p>
46、; 3.7 電源電路設(shè)計(jì)</p><p><b> 1 穩(wěn)壓電路</b></p><p> 典型應(yīng)用電路如圖16所示。圖中C5用于頻率補(bǔ)償,防止自激振蕩和抑制高頻干擾;C6采用電解電容,以減少電源引入的低頻干擾對(duì)輸出電壓的影響;D4是保護(hù)二極管,當(dāng)輸入端短路時(shí),給C4一個(gè)放電的通路,防止C4激穿 [1]。</p><p><b>
47、; 圖16穩(wěn)壓電路</b></p><p> 1 直流穩(wěn)壓電源的設(shè)計(jì)</p><p> 直流穩(wěn)壓電源的主要由電源變壓器、整流電路、濾波電路和穩(wěn)壓電路四部分組成。框圖如圖17所示。</p><p> 圖17 直流穩(wěn)壓電源</p><p> 3.8 顯示部分的設(shè)計(jì)</p><p> 由LED組成的7
48、段發(fā)光管顯示器是不太復(fù)雜的單片機(jī)應(yīng)用系統(tǒng)常用外部設(shè)備之一。</p><p> ①7段發(fā)光管顯示器由7段發(fā)光線段組成,并按“日”字形排列,每一段都是一個(gè)發(fā)光二極管,如圖15所示。圖中將7個(gè)LED的陰極連在一起,稱(chēng)之為共陰極接法。反之為共陽(yáng)極接法。</p><p> ②如果將公共陰極接地,而在a~g各段的陽(yáng)極加上不同的電壓,就會(huì)使各段的發(fā)光情況不同,形成不同的發(fā)光字符。加在7段陽(yáng)極上的電壓
49、可以用數(shù)字量表示,如果某一段的陽(yáng)極為數(shù)字量1,則這個(gè)段就發(fā)光;如為0,則不發(fā)光。數(shù)字量與段的對(duì)應(yīng)關(guān)系如表3.1所示。數(shù)碼管原理圖如18 所示。</p><p> 圖 18 數(shù)碼管原理圖</p><p> 表3.1 七段LED字形碼</p><p> 在本設(shè)計(jì)中使用了四個(gè)7段LED顯示器,而多位顯示器連用有兩種方法。</p><p>
50、 其一,每一位都用各自的8位輸出口控制,在顯示某字符時(shí),相應(yīng)的段恒定發(fā)光或不發(fā)光。這種顯示方法屬于靜態(tài)顯示。顯然,靜態(tài)顯示需占用較多的I/O口線。</p><p> 其二,是動(dòng)態(tài)顯示。即將多個(gè)7段LED的段選端復(fù)接在一起,只用一個(gè)8位輸出口控制段選,段選碼同時(shí)加到各個(gè)7段LED顯示器上,通過(guò)控制各個(gè)顯示器公共陽(yáng)極輪流接高電平的辦法,逐一輪流地啟動(dòng)各個(gè)LED。在這種方法中,只要恰當(dāng)?shù)剡x擇點(diǎn)亮?xí)r間和間隔時(shí)間,就會(huì)
51、給人以這樣一種假相:似乎各位LED是“同時(shí)”顯示的。動(dòng)態(tài)顯示法是目前各種單片機(jī)采用的流行方法。其優(yōu)點(diǎn)是硬件簡(jiǎn)單,“動(dòng)態(tài)”由軟件實(shí)現(xiàn)。因而我選用動(dòng)態(tài)顯示的方法。其顯示格式如表3.2,其驅(qū)動(dòng)電路如圖19所示[12]。</p><p> 表3.2 數(shù)碼管顯示格式</p><p> 圖 19 AT89C51基本操作電路 </p><p><b
52、> 3.9鍵盤(pán)設(shè)計(jì)</b></p><p> 單片機(jī)系統(tǒng)所用的鍵盤(pán)有編碼鍵盤(pán)和非編碼鍵盤(pán)兩種。</p><p> ①編碼鍵盤(pán)本身除了按鍵之外,還包括產(chǎn)生鍵碼的硬件電路。只要按下編碼鍵盤(pán)的某一個(gè)鍵,它就能產(chǎn)生這個(gè)鍵的代碼,并稱(chēng)為鍵碼,與此同時(shí)還產(chǎn)生一個(gè)脈沖信號(hào),以通知CPU接收鍵碼,編碼鍵盤(pán)的優(yōu)點(diǎn)是使用比較方便,亦不需要編寫(xiě)太復(fù)雜的程序。其缺點(diǎn)是使用的硬件較復(fù)雜。&l
53、t;/p><p> ②非編碼鍵盤(pán)的按鍵是排列成行、列矩陣形式的。按鍵的作用只是簡(jiǎn)單地實(shí)現(xiàn)接點(diǎn)的接通或斷開(kāi),因此必須有一套相應(yīng)的程序與之配合,才能產(chǎn)生相應(yīng)的鍵碼,非編碼鍵盤(pán)幾乎不需要附加什么硬件電路。因此為了簡(jiǎn)潔電路,我使用非編碼鍵盤(pán)。但使用非編碼鍵盤(pán)需要通過(guò)軟件來(lái)解決按鍵的識(shí)別、防抖動(dòng)以及如何產(chǎn)生鍵碼的問(wèn)題。</p><p> 基于鍵數(shù)少的原因我采用獨(dú)立式鍵盤(pán)接口與單片機(jī)相連接,因?yàn)樗加?/p>
54、的I/O口不多。圖中每個(gè)按鍵占用一個(gè)口,彼此獨(dú)立,互不影響。上拉電阻保證按鍵沒(méi)被按下時(shí),I/O口輸入高電平。</p><p> 獨(dú)立式鍵盤(pán)可工作在查詢(xún)方式下,通過(guò)I/O口讀入鍵狀態(tài),當(dāng)有鍵被按下時(shí)I/O口變?yōu)榈碗娖剑幢话聪碌逆I對(duì)應(yīng)為高電平,這樣通過(guò)讀電平狀態(tài)可判斷是否有鍵按下和哪個(gè)鍵被按下[17]。</p><p><b> a)</b></p>
55、<p><b> b) </b></p><p> 圖 20 按鍵原理圖</p><p> a)矩陣鍵盤(pán)b)獨(dú)立按鍵</p><p> 發(fā)射端采用矩陣按鍵,其中0,1,2按鍵用于風(fēng)扇的定時(shí),模式,調(diào)速切換。其他按鍵用于擴(kuò)展控制其他家用電器,如電腦等,也可以用于設(shè)置密碼鎖等功能,其具體事情由用戶(hù)自己設(shè)定。而接收端采用
56、獨(dú)立按鍵,根據(jù)不同的電器,其具體功能各不相同。本設(shè)計(jì)中,P1.0用于定時(shí)切換,P1.1用于模式切換,P1.2用于調(diào)速切換。</p><p> 4 系統(tǒng)軟件的設(shè)計(jì)</p><p> 該系統(tǒng)的控制軟件主要可以分為測(cè)溫和紅外兩個(gè)大的部分,其中具體有單片機(jī)初始化程序、定時(shí)服務(wù)程序、紅外發(fā)射編碼和紅外接收解碼程序等模塊。</p><p> 4.1 定時(shí)/計(jì)數(shù)器應(yīng)用&l
57、t;/p><p> (1)定時(shí)/計(jì)數(shù)器功能簡(jiǎn)介[7]</p><p> AT89C51單片機(jī)內(nèi)部設(shè)有兩個(gè)16位可編程的定時(shí)/計(jì)數(shù)器,簡(jiǎn)稱(chēng)定時(shí)器0和定時(shí)器1,分別用T0和T1表示。其功能同一般定時(shí)計(jì)數(shù)器,主要作用是:第一,作為一段特定時(shí)間長(zhǎng)短的定時(shí);第二,可以計(jì)算由T1或T0引腳輸入的脈沖數(shù),前者在應(yīng)用上可以產(chǎn)生正確的時(shí)間延遲及定時(shí)去執(zhí)行中斷服務(wù)程序,而后者則是計(jì)數(shù)器或者計(jì)頻器的設(shè)計(jì)。在本設(shè)
58、計(jì)中這兩種作用都用到了。</p><p> 這兩個(gè)定時(shí)器本身有四種工作模式可供使用,如表4.1所示。</p><p> 表4.1 四種工作模式</p><p> (2)定時(shí)器相關(guān)的控制寄存器</p><p> TMOD為模式控制寄存器,主要用來(lái)設(shè)置定時(shí)/計(jì)數(shù)器的操作模式;TCON為控制寄存器,主要用來(lái)控制定時(shí)器的啟動(dòng)與停止。兩個(gè)16
59、位的定時(shí)/計(jì)數(shù)器T0和T1均可以分成2個(gè)獨(dú)立的8位計(jì)數(shù)器即TH0、TL0、TH1、TL1,它們用于存定時(shí)或計(jì)數(shù)的初值。</p><p> ?、倌J娇刂萍拇嫫?-TMOD </p><p> TMOD是一個(gè)專(zhuān)用寄存器,用于控制T1和T0的操作模式及工作方式,其各位定義如下:</p><p> 表4.2 TMOD寄存器</p><p>
60、· GATE:門(mén)控位。當(dāng)GATE=0,定時(shí)器只由軟件控制位TR0或TR1來(lái)控制啟停。位為1,定時(shí)器啟動(dòng)開(kāi)始工作;為0時(shí),定時(shí)器停止工作。當(dāng)GATE=1時(shí),定時(shí)器的啟動(dòng)要由外部中斷引腳和位共同控制。只有當(dāng)外部中斷引腳或?yàn)楦邥r(shí),置1才能啟動(dòng)定時(shí)器工作。</p><p> ·C/:功能選擇位。當(dāng)C/=O時(shí)設(shè)置為定時(shí)器工作方式;計(jì)數(shù)脈沖由內(nèi)部提供,計(jì)數(shù)周期等于機(jī)器周期。當(dāng)C/=1時(shí)設(shè)置為計(jì)數(shù)器工作方
61、式,計(jì)數(shù)脈沖為外部引腳T0或T1的引入的外部脈沖信號(hào)。</p><p> ·M1、M0:操作模式控制位,2位可形成4種編碼,對(duì)應(yīng)于4種操作模式。</p><p> TMOD模式控制寄存器不能進(jìn)行位尋址,只能用字節(jié)傳送指令設(shè)置定時(shí)器的工作方式及操作模式,低4位用于定義定時(shí)器0,高4位用于定義定時(shí)器1。系統(tǒng)復(fù)位時(shí)TMOD所有位均為0。</p><p>
62、模式控制字的設(shè)置舉例:</p><p> 若設(shè)置定時(shí)器1為定時(shí)器工作方式,由軟件啟動(dòng),選擇操作模式2;定時(shí)器0為計(jì)數(shù)方式,由軟件啟動(dòng),選擇操作模式1。則TMOD各位設(shè)置為:</p><p> 0 0 l 0 0 1 O l 25H</p><p> 用MOV TMOD,#25H指令寫(xiě)入TMOD中。</p><p>
63、 ②控制寄存器--TCON</p><p> TCON的作用是用于控制定時(shí)器的啟動(dòng)、停止及定時(shí)器的溢出標(biāo)志和外部中斷觸發(fā)方式等。</p><p><b> 各位定義如下:</b></p><p> 表4.3 TCON寄存器</p><p> ·TF1和TF0;分別為定時(shí)器1和定時(shí)器0溢出標(biāo)志。當(dāng)定時(shí)器
64、計(jì)滿(mǎn)產(chǎn)生溢出時(shí),由硬件自動(dòng)置“1”,并可申請(qǐng)中斷。進(jìn)人中斷服務(wù)程序后,由硬件自動(dòng)清0。這兩位也可作為程序查詢(xún)的標(biāo)志位,在查詢(xún)方式下應(yīng)由軟件來(lái)清0。</p><p> ·TR1和TR0:為定時(shí)器1和定時(shí)器0的啟動(dòng)控制位。當(dāng)由軟件使清0而停止定時(shí)器的工作。定時(shí)器啟動(dòng)時(shí)該位應(yīng)置“1”。</p><p> 定時(shí)器的啟動(dòng)與門(mén)控位和外部中斷引腳有關(guān)。當(dāng)GATE設(shè)置為0,定時(shí)器的啟動(dòng)由=1
65、控制;而當(dāng)GATE設(shè)置為1時(shí),定時(shí)器啟動(dòng)除了=1外,還要求外部中斷引腳=1時(shí)定時(shí)器方可啟動(dòng)工作。</p><p> ·IE1和IE0:為外部中斷1和外部0的中斷請(qǐng)求標(biāo)志位。當(dāng)外部中斷源有請(qǐng)求時(shí)其對(duì)應(yīng)的中斷標(biāo)志位置“1”。其復(fù)位由觸發(fā)方式來(lái)設(shè)置。</p><p> ·IT1和IT0:為外部中斷1和外部中斷0的觸發(fā)方式選擇位。設(shè)置為“0”時(shí)為電平觸發(fā)方式;設(shè)置為“1”時(shí)
66、為邊沿觸發(fā)方式。</p><p> TCON中低4位是與外部中斷有關(guān)的位,高4位為定時(shí)器控制位。它是一個(gè)可以進(jìn)行位尋址的寄存器。當(dāng)系統(tǒng)復(fù)位時(shí)所有位均為0。若要啟動(dòng)定時(shí)器可以使用位操作指令SETB 來(lái)啟動(dòng)。</p><p> (3)定時(shí)計(jì)數(shù)器的操作模式</p><p><b> ①模式1</b></p><p>
67、 在模式1 工作下,計(jì)數(shù)器最多可計(jì)數(shù)個(gè)數(shù)為 M==65536,計(jì)時(shí)時(shí)間最長(zhǎng)為</p><p> 1.085us*65536=72ms 4-1</p><p> 而計(jì)數(shù)初值的加載方法為:</p><p> TL0=(65536-C).MOD.256 4-2</p>
68、<p> TH0=(65536-C)/256 4-3</p><p> 其中C為所要計(jì)數(shù)的值,計(jì)數(shù)時(shí)間長(zhǎng)度為:</p><p> 1.085us*C 4-4</p><p><b> ②模式2</b></p&
69、gt;<p> 模式2有自動(dòng)重新加載初值的功能,使定時(shí)器做更精確的計(jì)時(shí)。在模式2 工作下,計(jì)數(shù)器最多可計(jì)數(shù)個(gè)數(shù)為M==256,計(jì)時(shí)時(shí)間最長(zhǎng)為:</p><p> 1.085us*256=0.28ms 4-5</p><p> 而計(jì)數(shù)初值的加載方法為:</p><p> TH0=256-C
70、 4-6</p><p> 其中C為所要計(jì)數(shù)的值,計(jì)數(shù)時(shí)間長(zhǎng)度為:</p><p> 1.085us*C 4-7</p><p> 本設(shè)計(jì)采用模式2.其具體程序如下:</p><p> TMOD=0x22; //
71、8位自動(dòng)重裝模式</p><p> TH1=0xf3; //40KHZ初值</p><p><b> TL1=0xf3;</b></p><p><b> 4.2遙控碼的發(fā)射</b></p><p> ?。?)遙控碼的發(fā)射
72、0; 當(dāng)某個(gè)操作按鍵按下時(shí),單片機(jī)先讀出鍵值,然后根據(jù)鍵值設(shè)定遙控碼的脈沖個(gè)數(shù),再調(diào)制成40kHz方波由紅外線發(fā)光管發(fā)射出去[14]。</p><p> 通常,紅外遙控是將遙控信號(hào)(二進(jìn)制脈沖碼)調(diào)制在40KHz的載波上,經(jīng)緩沖放大后送至紅外發(fā)光二極管,轉(zhuǎn)化為紅外信號(hào)發(fā)射出去的。為了提高抗干擾性能和降低電源消耗,將上述的遙控編碼脈沖對(duì)頻率為40KHz(周期為26us)的載波信號(hào)進(jìn)行脈幅調(diào)制(PAM),再經(jīng)緩沖
73、放大后送到紅外發(fā)光管,將遙控信號(hào)發(fā)射出去。</p><p> 紅外信號(hào)發(fā)射過(guò)程:首先裝入發(fā)射脈沖個(gè)數(shù)(發(fā)射時(shí)為3ms脈沖,停發(fā)時(shí)為1ms脈沖),此時(shí)若發(fā)射脈沖個(gè)數(shù)為1則返回主程序,若不為1則發(fā)1ms脈沖,然后停發(fā)1ms脈沖,這樣便結(jié)束整個(gè)發(fā)射過(guò)程.</p><p> 在實(shí)踐中,采用紅外線遙控方式時(shí),由于受遙控距離,角度等影響,使用效果不是很好,如采用調(diào)頻或調(diào)幅發(fā)射接收碼,可提高遙控距離
74、,并且沒(méi)有角度影響。</p><p> ?。?)發(fā)射端程序流程圖</p><p> 圖 21 遙控發(fā)射主程序流程圖</p><p> 圖22 遙控發(fā)射器遙控碼發(fā)射程序流程圖</p><p><b> 4.3 紅外接收 </b></p><p> 遙控接收部分的主程序及初始化及延時(shí)過(guò)程如下:
75、首先初始化,然后判斷是否有鍵按下,若有則數(shù)碼管顯示數(shù)據(jù),并發(fā)送相應(yīng)信號(hào),;若無(wú)鍵按下,則返回。</p><p> (1)數(shù)碼幀的接收處理</p><p> 當(dāng)紅外線接收器輸出脈沖幀數(shù)據(jù)時(shí),第一位碼的低電平將啟動(dòng)中斷程序,實(shí)時(shí)接收數(shù)據(jù)幀。在數(shù)據(jù)幀接收時(shí),將對(duì)第一位(起始位)碼的碼寬進(jìn)行驗(yàn)證。若第一位低電平碼的脈寬小于2ms,將作為錯(cuò)誤碼處理。當(dāng)間隔位的高電平脈寬大于3ms時(shí),結(jié)束接收,然
76、后根據(jù)累加器A中的脈沖個(gè)數(shù),執(zhí)行相應(yīng)輸出口的操作。圖23就是紅外線接收器輸出的一幀遙控碼波形圖[14]。</p><p> 圖23 紅外線接收器輸出的一幀遙控碼波形圖</p><p><b> 接收端程序流程圖</b></p><p> 圖24 遙控接收器主程序流程圖</p><p> 中斷過(guò)程:首先判斷低電平脈
77、寬度是否大于2ms,若脈寬不到2ms,則中斷返回;若低電平大于2ms,則接收并地低電平脈沖計(jì)數(shù),接下來(lái)看判斷高電平脈寬度沖是否大于3ms,若脈寬不到3ms,則返回上一接收計(jì)數(shù)過(guò)程;若高電平脈寬大于3ms,則按照脈沖個(gè)數(shù)至對(duì)應(yīng)功能程序.此時(shí)中斷返回.</p><p> 圖25 遙控接收器中斷程序流程圖</p><p><b> 4.4 調(diào)速單元</b></p&
78、gt;<p> 4.4.1 調(diào)速原理</p><p> 脈寬調(diào)制技術(shù)是利用數(shù)字輸出對(duì)模擬電路進(jìn)行控制的一種有效技術(shù),尤其是在對(duì)電機(jī)的轉(zhuǎn)速控制方面,可大大節(jié)省能量,PWM控制技術(shù)的理論基礎(chǔ)為:沖量相等而形狀不同的窄脈沖加在具有慣性的環(huán)節(jié)上時(shí),其效果基本相同,使輸出端得到一系列幅值相等而寬度不相等的脈沖,用這些脈沖來(lái)代替正弦波或其他所需</p><p><b>
79、要的波形[11]。</b></p><p> 4.4.2 調(diào)速方法</p><p> 圖26為PWM降壓斬波器的原理電路及輸出電壓波形。在圖a中,假定晶體</p><p> 管V1先導(dǎo)通T1,秒(忽略V1的管壓降,這期間電源電壓Ud全部加到電樞上),然后關(guān)斷T2秒(這期間電樞端電壓為零)。如此反復(fù),則電樞端電壓波形如圖b中所示。電動(dòng)機(jī)電樞端電壓Ua
80、為其平均值[17]。</p><p> 圖26 PWM降壓斬波器原理電路及輸出電壓波形</p><p> 原理圖 b)輸出電壓波形</p><p><b> 4-8</b></p><p><b> 式4-9中</b></p><p><b> 4-9&
81、lt;/b></p><p> 為一個(gè)周期T中,晶體管V1導(dǎo)通時(shí)間的比率,稱(chēng)為負(fù)載率或占空比。使用下面三種方法中的任何一種,都可以改變的值,從而達(dá)到調(diào)壓的目的:</p><p> (1)定寬調(diào)頻法:T1保持一定,使T2在0~∞范圍內(nèi)變化;</p><p> (2)調(diào)寬調(diào)頻法:T2保持一定,使T1在0~∞范圍內(nèi)變化</p><p>
82、 (3)定頻調(diào)寬法:T1+T2=T保持一定,使T,在0~T范圍內(nèi)變化。</p><p> 不管哪種方法,的變化范圍均為0≤≤l,因而電樞電壓平均值Ua的調(diào)節(jié)范圍為0~Ud,均為正值,即電動(dòng)機(jī)只能在某一方向調(diào)速,稱(chēng)為不可逆調(diào)速。本設(shè)計(jì)采用定頻調(diào)寬法,AT89S52產(chǎn)生可控硅的移相脈沖,移相較的改變實(shí)現(xiàn)導(dǎo)通角的改變。T=50mS,將P0.4導(dǎo)通時(shí)間五等分,使T1在1——5之間變化,從而達(dá)到5級(jí)調(diào)速的目的,如圖27
83、所示。</p><p><b> 圖27 調(diào)速示意圖</b></p><p> 圖 28 調(diào)速接線圖</p><p><b> 4.5按鍵抖動(dòng)問(wèn)題</b></p><p> 鍵盤(pán)一般是由一組機(jī)械按鍵按照一定的規(guī)律組合而成,通過(guò)按鍵的通、斷作用輸入開(kāi)關(guān)電壓信號(hào)。按鍵由斷開(kāi)到閉會(huì)及由閉合到斷開(kāi)時(shí)
84、,由于機(jī)械觸點(diǎn)的彈性作用,按鍵的動(dòng)作不是立刻完成的,在閉合及打開(kāi)的瞬間有機(jī)械抖動(dòng)的發(fā)生,抖動(dòng)時(shí)間一般為5—10ms,表現(xiàn)在輸入電壓信號(hào)上為輸入信號(hào)是抖動(dòng)的不穩(wěn)定的電平信號(hào),其信號(hào)波形見(jiàn)圖29所示[10]。</p><p> 按鍵閉合穩(wěn)態(tài)時(shí)間由我的按鍵時(shí)間決定,一般為零點(diǎn)幾秒到幾秒之間。為了消除鍵抖動(dòng)的影響,保證在按鍵閉合穩(wěn)定狀態(tài)下讀取鍵值,需要對(duì)鍵進(jìn)行消抖處理。常用的消抖措施有硬件消抖和軟件消抖兩種。</
85、p><p> 硬件消抖是采用硬件電路的方法對(duì)鍵盤(pán)的按下抖動(dòng)及釋放抖動(dòng)進(jìn)行消抖,經(jīng)過(guò)消抖電路使按鍵的電平信號(hào)只有兩種穩(wěn)定狀態(tài)。常用的消抖電路有觸發(fā)器消抖電路、濾波消抖電路兩種。硬件消抖電路見(jiàn)圖30。</p><p> 圖 29 按鍵抖動(dòng)波形 圖 30 硬件消抖路 </p><p> 硬件消抖電路解決了
86、鍵抖動(dòng)問(wèn)題,但當(dāng)所需按鍵比較多時(shí),硬件消抖電路將變得復(fù)雜,成本也比較高。而這時(shí)就可以采用軟件消抖的方法。軟件消抖的基本原理是當(dāng)?shù)谝淮螜z測(cè)到有鍵按下時(shí),根據(jù)鍵抖動(dòng)時(shí)間的統(tǒng)計(jì)規(guī)律先采用軟件延時(shí)的方法延時(shí)一段時(shí)間(一般可取10ms—20ms),然后再確認(rèn)鍵是否仍保持閉合狀態(tài),如仍保持閉合狀態(tài)則鍵真正被按下,此時(shí)可讀取鍵值,否則可視為干擾,對(duì)其不予理睬。采用軟件消抖方法可省去硬件消抖電路,可鍵盤(pán)的工作速度將被降低。在此設(shè)計(jì)中使用了軟件消抖,采用
87、軟件延時(shí)的方法延時(shí)一段時(shí)間再確認(rèn)鍵是否仍保持閉合狀態(tài)。</p><p> 4.6 系統(tǒng)的軟硬件的調(diào)試</p><p> 在完成系統(tǒng)硬件的檢查后主要是對(duì)軟件進(jìn)行調(diào)試,對(duì)遙控器的調(diào)試主要是用示波器觀察能否在遙控接收器中輸出圖23所示的波形,調(diào)整發(fā)射電阻的大小可以改變紅外線發(fā)射的作用距離。其性能指標(biāo):</p><p> 調(diào)試后系統(tǒng)性能指標(biāo)測(cè)試如下:</p>
88、;<p> 最大遙控距離: 10m</p><p> 發(fā)射接收角:水平最大90度</p><p> 硬件電路制作完成并調(diào)試好后,便可將程序編譯好下載到單片機(jī)試運(yùn)行。</p><p> 軟件的調(diào)試程序見(jiàn)附錄一</p><p><b> 結(jié) 論</b></p><p> 這
89、次畢業(yè)設(shè)計(jì)歷時(shí)至少3個(gè)月,從一開(kāi)始的確定課題,到后來(lái)的資料查找、理論學(xué)習(xí),再有就是近來(lái)的調(diào)試和測(cè)試過(guò)程,這一切都使我的理論知識(shí)和動(dòng)手能力進(jìn)一步提高。</p><p> 通過(guò)本次紅外系統(tǒng)的設(shè)計(jì),我大有收獲。從得到題目到查找資料,從電路板的調(diào)試到失敗后再一次全部重新開(kāi)始……在這一個(gè)充滿(mǎn)挑戰(zhàn)伴隨挫折,充滿(mǎn)熱情伴隨打擊的過(guò)程中,我感觸頗深,它已不僅是一個(gè)對(duì)我四年學(xué)習(xí)知識(shí)情況和我的應(yīng)用動(dòng)手能力的檢驗(yàn),而且還是對(duì)我的鉆研精
90、神,面對(duì)困難的心態(tài),做事的毅力和耐心的考驗(yàn)。我在這個(gè)過(guò)程中深刻的感受到了做畢業(yè)設(shè)計(jì)的意義所在。</p><p> 這個(gè)課題的根本技術(shù)就是單片機(jī)控制技術(shù),加部分外圍電路來(lái)實(shí)現(xiàn)一些復(fù)雜的功能??梢愿鶕?jù)要求改變軟件來(lái)實(shí)現(xiàn)功能的更新和擴(kuò)展。</p><p> 本課題的重點(diǎn)、難點(diǎn)是:</p><p> ?。?) 初步接觸弱電控制強(qiáng)電,要對(duì)光耦的原理、結(jié)構(gòu)、應(yīng)用等各方面從頭
91、開(kāi)始琢磨;</p><p> (2) 考慮電路實(shí)現(xiàn)原理以及與單片機(jī)的接口;</p><p> (3) 紅外發(fā)送與接收技術(shù);</p><p> 通過(guò)完成本課題,我了解并掌握了傳感器的基本理論知識(shí),更深入的掌握單片機(jī)在實(shí)際電路中的開(kāi)發(fā)和應(yīng)用。為以后從事單片機(jī)軟硬件產(chǎn)品的設(shè)計(jì)開(kāi)發(fā)打下了一定的基礎(chǔ),培養(yǎng)了從事產(chǎn)品研發(fā)的信心。</p><p>&
92、lt;b> 【參考文獻(xiàn)】</b></p><p> [1] 華成英,童詩(shī)白.模擬電子技術(shù)基礎(chǔ)[M] 北京:高等教育出版社,2006 :12-31</p><p> [2] 楊路明. C語(yǔ)言程序設(shè)計(jì)教程[M] 北京:北京郵電大學(xué)出版社,2005 :23 -100</p><p> [3] 胡驊, 陳明.Protel 99 SE 原理圖與PCB
93、設(shè)計(jì)[M] 北京:機(jī)械工業(yè)出版社,2005:42-311</p><p> [4] 王振營(yíng),李滿(mǎn),楊君.ProtelDXP2004電路設(shè)計(jì)與制版實(shí)用教程[M].北京:中國(guó)鐵道出版社,2006,(6) :122-321</p><p> [5] 黃穎松,吳皓東. 用“積木式”實(shí)驗(yàn)板學(xué)習(xí)51單片機(jī)[J].電子制作, 2007,(08) :1-221 [6] 羅政球.
94、提高電子電路抗干擾能力經(jīng)驗(yàn)談[J]. 電子制作, 2006,(10) :1-15 </p><p> [7] 胡漢才.單片機(jī)原理及其接口技術(shù)[M]. 北京:清華大學(xué)出版社,2006,3 :1-12
95、 </p><p> [10] 陸東旭,甄釗博. 自制簡(jiǎn)單的51開(kāi)發(fā)板[J]. 電子制作, 2008,(01) : 2-8</p><p> [11] 吳金戌.8051單片機(jī)實(shí)踐與應(yīng)用研究[M] .北京:清華大學(xué)出版社,2002,(09) : 2-409</p><p> [12] 居榮,郭怡倩.DS18B20在溫控
96、系統(tǒng)中的應(yīng)用[J].農(nóng)機(jī)化研究,2005(1):224-226</p><p> [13] 趙 亮. 單片機(jī)C語(yǔ)言編程與實(shí)例[M]. 北京: 人民郵電出版社, 2003. :3 -432</p><p> [14] 陳燕春. 學(xué)習(xí)型14路紅外遙控開(kāi)關(guān)[J]. 單片機(jī)開(kāi)發(fā)與應(yīng)用, 2005, (6): 22-25. </p><p> [15] 薄晶杰, 潘衛(wèi)
97、華, 韓璞. 實(shí)時(shí)時(shí)鐘芯片在智能氧量?jī)x中的應(yīng)用[J]. 微計(jì)算機(jī)信息, 2009, (04) :147-148,227</p><p> [16] 瞿貴榮. 15通道紅外遙控電路[J]. 實(shí)用電子制作, 2005, (7): 10.</p><p> [17] 劉小春, 首珩. 無(wú)刷直流電動(dòng)機(jī)的單片機(jī)控制[J]. 自動(dòng)化技術(shù)與應(yīng)用, 2009, (03) :129-131</p&
98、gt;<p> [18] 蔣敏. 從Proteus仿真設(shè)計(jì)到實(shí)際產(chǎn)品制作[J]. 科技創(chuàng)新導(dǎo)報(bào), 2009, (02) :21,23</p><p><b> 附 錄</b></p><p><b> 附錄1: 發(fā)射程序</b></p><p> /************************
99、*********************************************/</p><p> // send.c</p><p> // 遙控發(fā)射器</p><p> // LRM 2010.4.22 </p&g
100、t;<p> /*********************************************************************/</p><p> //使用AT89C52單片機(jī),12MHZ晶振,</p><p><b> //</b></p><p> //#pragma src(E:\remo
101、te.asm)</p><p> #include "reg51.h"</p><p> #include "intrins.h" //_nop_();延時(shí)函數(shù)用</p><p><b> //</b></p><
102、;p> #define uchar unsigned char</p><p> #define uint unsigned int</p><p> #define key0 P0 //鍵列線</p><p> #define key1 P1
103、 //鍵行線</p><p><b> //</b></p><p> sbit remoteout=P3^5; // 遙控輸出口</p><p><b> //</
104、b></p><p><b> //</b></p><p> uint i,j,m,n,k,s;</p><p> uchar keyvol; //鍵值存放</p><p> uchar code keyv[
105、8]={1,2,4,8,16,32,64,128};</p><p><b> //</b></p><p><b> ////</b></p><p> /*********1毫秒延時(shí)程序**********/</p><p> delay1ms(uint t)</p>&l
106、t;p><b> {</b></p><p> for(i=0;i<t;i++)</p><p> for(j=0;j<120;j++)</p><p><b> ;</b></p><p><b> }</b></p><p&g
107、t;<b> //</b></p><p><b> //</b></p><p> /***********初始化函數(shù)**********/</p><p> clearmen()</p><p><b> {</b></p><p> r
108、emoteout=0; //關(guān)遙控輸出</p><p><b> IE=0x00;</b></p><p><b> IP=0x01;</b></p><p> TMOD=0x22;
109、 //8位自動(dòng)重裝模式</p><p> TH1=0xf3; //40KHZ初值</p><p><b> TL1=0xf3;</b></p><p> EA=1;
110、 //開(kāi)總中斷</p><p><b> }</b></p><p> /**********發(fā)射函數(shù)************/</p><p><b> sed()</b></p><p><b> {</b>
111、</p><p> ET1=1;TR1=1;delay1ms(3);ET1=0;TR1=0;remoteout=0;//40KHZ發(fā)3毫秒</p><p> for(m=keyvol;m>0;m--)</p><p><b> {</b></p><p> delay1ms(1);
112、 //停1毫秒</p><p> ET1=1;TR1=1;delay1ms(1);ET1=0;TR1=0;remoteout=0; //40KHZ發(fā)1毫秒</p><p><b> }</b></p><p> delay1ms(10);</p>&l
113、t;p><b> }</b></p><p><b> //</b></p><p><b> tx()</b></p><p><b> {</b></p><p> switch(keyvol)</p><p>
114、<b> {</b></p><p> case 0:keyvol=keyvol+1;sed();break;</p><p> case 1:keyvol=keyvol+1;sed();break;</p><p> case 2:keyvol=keyvol+1;sed();break;</p><p> c
115、ase 3:keyvol=keyvol+1;sed();break;</p><p> case 4:keyvol=keyvol+1;sed();break;</p><p> case 5:keyvol=keyvol+1;sed();break;</p><p> case 6:keyvol=keyvol+1;sed();break;</p>
116、<p> case 7:keyvol=keyvol+1;sed();break;</p><p> case 8:keyvol=keyvol+1;sed();break;</p><p> case 9:keyvol=keyvol+1;sed();break;</p><p> case 10:keyvol=keyvol+1;sed();break
117、;</p><p> case 11:keyvol=keyvol+1;sed();break;</p><p> case 12:keyvol=keyvol+1;sed();break;</p><p> case 13:keyvol=keyvol+1;sed();break;</p><p> case 14:keyvol=keyv
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 智能聲控電風(fēng)扇--單片機(jī)課程設(shè)計(jì)
- 51單片機(jī)課程設(shè)計(jì)——智能電風(fēng)扇
- 畢業(yè)設(shè)計(jì)-基于51單片機(jī)的紅外遙控電風(fēng)扇控制系統(tǒng)設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)---基于單片機(jī)的溫度控制智能電風(fēng)扇
- 課程設(shè)計(jì)——基于單片機(jī)的智能電風(fēng)扇控制系統(tǒng)
- 課程設(shè)計(jì)——基于單片機(jī)的智能電風(fēng)扇控制系統(tǒng)
- 畢業(yè)論文--基于單片機(jī)控制的紅外線遙控電風(fēng)扇設(shè)計(jì)
- 基于51單片機(jī)的紅外遙控課程設(shè)計(jì)
- 單片機(jī)紅外遙控系統(tǒng)設(shè)計(jì)
- 單片機(jī)紅外遙控系統(tǒng)設(shè)計(jì)
- 紅外遙控電風(fēng)扇系統(tǒng)畢業(yè)設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)——紅外遙控音樂(lè)播放器
- 單片機(jī)紅外遙控密碼鎖課程設(shè)計(jì)2
- 單片機(jī)紅外遙控系統(tǒng)畢業(yè)設(shè)計(jì)
- 51單片機(jī)課程設(shè)計(jì)--多功能紅外遙控溫度計(jì)
- 單片機(jī)紅外遙控系統(tǒng)設(shè)計(jì)畢業(yè)設(shè)計(jì)
- 課程設(shè)計(jì)-基于單片機(jī)的遙控窗簾課程設(shè)計(jì)
- 基于單片機(jī)的遙控窗簾課程設(shè)計(jì)
- 基于單片機(jī)的遙控窗簾課程設(shè)計(jì)
- 畢業(yè)論文——單片機(jī)紅外遙控系統(tǒng)設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論