基于AT89S52單片機(jī)的遙控器設(shè)計(jì)畢業(yè)論文.doc_第1頁(yè)
基于AT89S52單片機(jī)的遙控器設(shè)計(jì)畢業(yè)論文.doc_第2頁(yè)
基于AT89S52單片機(jī)的遙控器設(shè)計(jì)畢業(yè)論文.doc_第3頁(yè)
基于AT89S52單片機(jī)的遙控器設(shè)計(jì)畢業(yè)論文.doc_第4頁(yè)
基于AT89S52單片機(jī)的遙控器設(shè)計(jì)畢業(yè)論文.doc_第5頁(yè)
已閱讀5頁(yè),還剩31頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

畢業(yè)設(shè)計(jì)論文 基于 at89s52 單片機(jī)的遙控器設(shè)計(jì) 基于 at89s52 單片機(jī)的遙控器設(shè)計(jì) 1 目錄 摘要 .2 1 引言3 1.1 紅外遙控3 1.2 單片機(jī)4 2 總體設(shè)計(jì)方案5 方案一:簡(jiǎn)易紅外遙控電路.5 方案二:利用紅外遙控開(kāi)關(guān)電路.5 3 at89s52 單片機(jī) 7 3.1 at89s52 單片機(jī).7 3.2 系統(tǒng)復(fù)位9 3.3 時(shí)鐘電路.10 3.4 中斷系統(tǒng).11 4 電路框圖設(shè)計(jì) .14 4.1 遙控發(fā)射單元的電路圖設(shè)計(jì)14 4.2 遙控接收單元的電路圖設(shè)計(jì)16 5 紅外遙控程序流程圖18 6 軟件設(shè)計(jì) 20 6.1:紅外遙控發(fā)射端軟件設(shè)計(jì).20 6.2:紅外遙控接收端軟件設(shè)計(jì).23 結(jié)束語(yǔ)26 參考文獻(xiàn) 27 2 摘要 通過(guò)對(duì)設(shè)計(jì)要求的認(rèn)真分析和研究,拿出了幾種可行方案,最終選定一個(gè) 最佳方案。該方案是采用先進(jìn)的單片機(jī)技術(shù)實(shí)現(xiàn)遙控,采用模塊話設(shè)計(jì),主要 分為兩個(gè)模塊:紅外發(fā)射模塊和紅外接收模塊。紅外發(fā)射模塊中的單片機(jī)受開(kāi) 關(guān)控制,通過(guò)紅外發(fā)射管對(duì)另一個(gè)單片機(jī)發(fā)射信號(hào),紅外接收模塊中的單片機(jī) 受紅外接收管接收的信號(hào)控制。文章詳細(xì)的討論了實(shí)現(xiàn)上述紅外遙控過(guò)程的硬 件組成及其工作原理和軟件設(shè)計(jì)。 關(guān)鍵詞:遙控器;紅外發(fā)射;紅外接收;單片機(jī) 基于 at89s52 單片機(jī)的遙控器設(shè)計(jì) 3 1 引言 1.1 紅外遙控 紅外遙控是一種無(wú)線、非接觸控制技術(shù),具有抗干擾能力強(qiáng),信息傳輸可 靠,功耗低,成本低,易實(shí)現(xiàn)等顯著優(yōu)點(diǎn),被諸多電子設(shè)備特別是家用電器廣 泛采用,并越來(lái)越多的應(yīng)用到計(jì)算機(jī)系統(tǒng)中。 60 年代初,一些發(fā)達(dá)國(guó)家開(kāi)始研究民用產(chǎn)品的遙控技術(shù),單由于受當(dāng)時(shí)技 術(shù)條件限制,遙控技術(shù)發(fā)展很緩慢,70 年代末,隨著大規(guī)模集成電路和計(jì)算機(jī) 技術(shù)的發(fā)展,遙控技術(shù)得到快速發(fā)展。在遙控方式上大體經(jīng)理了從有線到無(wú)限 的超聲波,從振動(dòng)子到紅外線,再到使用總線的微機(jī)紅外遙控這樣幾個(gè)階段。 無(wú)論采用何種方式,準(zhǔn)確無(wú)誤傳輸新信號(hào),最終達(dá)到滿意的控制效果是非常重 要的。最初的無(wú)線遙控裝置采用的是電磁波傳輸信號(hào),由于電磁波容易產(chǎn)生干 擾,也易受干擾,因此逐漸采用超聲波和紅外線媒介來(lái)傳輸信號(hào)。與紅外線相 比,超聲傳感器頻帶窄,所能攜帶的信息量少,易受干擾而引起誤動(dòng)作。較為 理想的是光控方式,逐漸采用紅外線的遙控方式取代了超聲波遙控方式,出現(xiàn) 了紅外線多功能遙控器,成為當(dāng)今時(shí)代的主流。 由于紅外線在頻譜上居于可見(jiàn)光之外,所以抗干擾性強(qiáng),具有光波的直線 傳播特性,不易產(chǎn)生相互間的干擾,是很好的信息傳輸媒體。信息可以直接對(duì) 紅外光進(jìn)行調(diào)制傳輸,例如,信息直接調(diào)制紅外光的強(qiáng)弱進(jìn)行傳輸,也可以用 紅外線產(chǎn)生一定頻率的載波,再用信息對(duì)載波進(jìn)調(diào)制,接收端再去掉載波,取 到信息。從信息的可靠傳輸說(shuō),后一種方法更好,這就是我們今天看到的大多 數(shù)紅外遙控所采用的方法。由于紅外線的波長(zhǎng)遠(yuǎn)小于無(wú)線電波的波長(zhǎng),因此在 采用紅外遙控方式時(shí),不會(huì)干擾其他電器的正常工作,也不會(huì)影響臨近的無(wú)線 電設(shè)備。 紅外遙控的發(fā)射電路是采用紅外發(fā)光二極管來(lái)發(fā)出經(jīng)過(guò)調(diào)制的紅外光波; 紅外接收電路由紅外接收二極管、三極管或硅光電池組成,它們將紅外發(fā)射器 發(fā)射的紅外光轉(zhuǎn)換為相應(yīng)的電信號(hào),再送后置放大器。 4 發(fā)射電路 發(fā)射器 發(fā)射器一般由指令鍵(或操作桿)、指令編碼系統(tǒng)、調(diào)制電路、驅(qū)動(dòng)電路、 發(fā)射電路等幾部分組成。當(dāng)按下指令鍵或推動(dòng)操作桿時(shí),指令編碼電路產(chǎn)生所 需的指令編碼信號(hào),指令編碼信號(hào)對(duì)載波進(jìn)行調(diào)制,再由驅(qū)動(dòng)電路進(jìn)行功率放 大后由發(fā)射電路向外發(fā)射經(jīng)調(diào)制定的指令編碼信號(hào)。 接收器 接收器一般由接收電路、放大電路、調(diào)制電路、指令譯碼電路、驅(qū)動(dòng)電路、 執(zhí)行電路(機(jī)構(gòu))等幾部分組成。接收電路將發(fā)射器發(fā)出的已調(diào)制的編碼指令信 號(hào)接收下來(lái),并進(jìn)行放大后送解調(diào)電路,解調(diào)電路將已調(diào)制的指令編碼信號(hào)解 調(diào)出來(lái),即還原為編碼信號(hào)。指令譯碼器將編碼指令信號(hào)進(jìn)行譯碼,最后由驅(qū) 動(dòng)電路來(lái)驅(qū)動(dòng)執(zhí)行電路實(shí)現(xiàn)各種指令的操作控制(機(jī)構(gòu))。 1.2 單片機(jī) 單片微型計(jì)算機(jī)簡(jiǎn)稱單片機(jī),是典型的嵌入式微控制器(microcontroller unit),常用英文字母的縮寫(xiě) mcu 表示單片機(jī),它最早是被用在工業(yè)控制領(lǐng) 域。單片機(jī)由芯片內(nèi)僅有 cpu 的專用處理器發(fā)展而來(lái)。最早的設(shè)計(jì)理念是通過(guò) 將大量外圍設(shè)備和 cpu 集成在一個(gè)芯片中,使計(jì)算機(jī)系統(tǒng)更小,更容易集成進(jìn) 復(fù)雜的而對(duì)體積要求嚴(yán)格的控制設(shè)備當(dāng)中。 以單片機(jī)為核心的控制系統(tǒng),因?yàn)槠鋵?shí)時(shí)控制功能強(qiáng),可靠性高,實(shí)用性 強(qiáng),應(yīng)用范圍廣等優(yōu)點(diǎn),得到了極為廣泛的應(yīng)用。隨著人們生活水平的不斷提 高,單片機(jī)控制無(wú)疑是人們追求的目標(biāo)之一,它所給人帶來(lái)的方便也是不可否定 的,其中紅外遙控就是一個(gè)典型的例子,但人們對(duì)它的要求越來(lái)越高,要為現(xiàn) 代人工作、科研、生活、提供更好的更方便的設(shè)施就需要從單片機(jī)技術(shù)入手, 一切向著數(shù)字化控制,智能化控制方向發(fā)展。因此了解單片機(jī)知識(shí),掌握單片 機(jī)的應(yīng)用技術(shù)具有重大的意義。它的理論性和實(shí)踐性都很強(qiáng),我們?cè)诶碚撜n學(xué) 習(xí)中主要學(xué)習(xí)單片機(jī)的基本構(gòu)造,各部分的工作原理以及指令系統(tǒng),然而,光 指令鍵編碼電路調(diào)制電路驅(qū)動(dòng)電路 接 收 電 路 放大 電 路 解調(diào) 電 路 譯碼 電 路 執(zhí)行 電 路 驅(qū)動(dòng) 電 路 基于 at89s52 單片機(jī)的遙控器設(shè)計(jì) 5 是理論的學(xué)習(xí)是遠(yuǎn)遠(yuǎn)不夠的,最重要的是把理論和實(shí)踐相結(jié)合。 所以此次實(shí)習(xí),通過(guò)設(shè)計(jì)一個(gè)基于 at89s52 單片機(jī)的遙控器設(shè)計(jì),以增 進(jìn)對(duì)單片機(jī)電路的感性認(rèn)識(shí),加深對(duì)理論方面的理解和鞏固,了解和掌握軟硬 件設(shè)計(jì)過(guò)程、方法及實(shí)現(xiàn),增強(qiáng)自己的動(dòng)手和實(shí)踐能力,為以后在工作和學(xué)習(xí) 中,設(shè)計(jì)和實(shí)現(xiàn)應(yīng)用系統(tǒng)打下良好基礎(chǔ)。 2 總體設(shè)計(jì)方案 根據(jù)任務(wù)書(shū)的要求,利用單片機(jī)設(shè)計(jì)一個(gè)遙控開(kāi)關(guān),可以擬定以下二種方 案。 方案一:簡(jiǎn)易紅外遙控電路 在不需要多電路的應(yīng)用場(chǎng)合,可以使用由常規(guī)集成電路組成的單通道紅外 遙控電路。這種遙控電路不需要使用昂貴的專用編譯碼器,因此成本低。 方案結(jié)構(gòu)圖: 紅外發(fā)射部分 產(chǎn)生震蕩頻率紅外發(fā)射 考慮到本方案電路時(shí)簡(jiǎn)單的單通道遙控器,可以直接產(chǎn)生一個(gè)控制功能的 震蕩電路頻率,再通過(guò)紅外發(fā)光二極管發(fā)射出去。 紅外接收部分 方案二:利用紅外遙控開(kāi)關(guān)電路 紅外發(fā)射/接收控制電路均采用單片機(jī)來(lái)實(shí)現(xiàn),輸出控制方式可選擇,實(shí)用 性更強(qiáng)。 方案結(jié)構(gòu)圖: 紅外發(fā)射部分 紅外接收解調(diào)控制受控電器 6 遙 控 按 鈕 單 片 機(jī) 紅 外 發(fā) 射 當(dāng)按下遙控按鈕時(shí),單片機(jī)產(chǎn)生相應(yīng)的控制脈沖,由紅外發(fā)光二極管發(fā)射 出去。 紅外接收部分: 紅 外 接 收 控制方式 選擇開(kāi)關(guān) 單 片 機(jī) 受 控 電 路 當(dāng)紅外接收器收到控制脈沖后,由控制方式選擇開(kāi)關(guān)選擇是“互鎖”還是 但電路控制,再由單片機(jī)處理,對(duì)相應(yīng)的受控電器產(chǎn)生控制。 基于 at89s52 單片機(jī)的遙控器設(shè)計(jì) 7 3 at89s52 單片機(jī) 3.1 at89s52 單片機(jī) 本次設(shè)計(jì)所使用的單片機(jī)是atmel公司的at89s52芯片,at89s52是一種 低功耗、高性能cmos8位微控制器,具有8k 在系統(tǒng)可編程flash 存儲(chǔ)器。使 用atmel 公司高密度非易失性存儲(chǔ)器技術(shù)制造,與工業(yè)80c51 產(chǎn)品指令和引 腳完全兼容。片上flash允許程序存儲(chǔ)器在系統(tǒng)可編程,亦適于常規(guī)編程器。在 單芯片上,擁有靈巧的8 位cpu 和在系統(tǒng)可編程flash,使得at89s52為眾多 嵌入式控制應(yīng)用系統(tǒng)提供高靈活、超有效的解決方案。at89s52具有以下標(biāo)準(zhǔn) 功能:8k字節(jié)flash,256字節(jié)ram,32 位i/o 口線,看門(mén)狗定時(shí)器,2 個(gè)數(shù) 據(jù)指針,三個(gè)16 位定時(shí)器/計(jì)數(shù)器,一個(gè)6向量2級(jí)中斷結(jié)構(gòu),全雙工串行口, 片內(nèi)晶振及時(shí)鐘電路。另外,at89s52 可降至0hz 靜態(tài)邏輯操作,支持2種 軟件可選擇節(jié)電模式??臻e模式下,cpu停止工作,允許ram、定時(shí)器/計(jì)數(shù) 器、串口、中斷繼續(xù)工作。掉電保護(hù)方式下,ram內(nèi)容被保存,振蕩器被凍結(jié), 單片機(jī)一切工作停止,直到下一個(gè)中斷或硬件復(fù)位為止。 at89s52 的引腳圖如 3-1 所示: 8 圖 3-1 at89s52 引腳圖 at89s52 單片機(jī)引腳注釋: vcc : 電源 gnd: 地 p0 口:p0口是一個(gè)8位漏極開(kāi)路的雙向i/o口。作為輸出口,每位能驅(qū)動(dòng)8個(gè) ttl邏輯電平。對(duì)p0端口寫(xiě)“1”時(shí),引腳用作高阻抗輸入。當(dāng)訪問(wèn)外部程序和 數(shù)據(jù)存儲(chǔ)器時(shí),p0口也被作為低8位地址/數(shù)據(jù)復(fù)用。在這種模式下,p0具有內(nèi) 部上拉電阻。在 flash編程時(shí),p0口也用來(lái)接收指令字節(jié);在程序校驗(yàn)時(shí),輸 出指令字節(jié)。程序校驗(yàn)時(shí),需要外部上拉電阻。 p1 口:p1 口是一個(gè)具有內(nèi)部上拉電阻的8 位雙向i/o 口,p1 輸出緩沖器能 驅(qū)動(dòng)4 個(gè)ttl 邏輯電平。對(duì)p1 端口寫(xiě)“1”時(shí),內(nèi)部上拉電阻把端口拉高,此 時(shí)可以作為輸入口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的 原因,將輸出電流(iil)。 p2 口:p2 口是一個(gè)具有內(nèi)部上拉電阻的8 位雙向i/o 口,p2 輸出緩沖器能 驅(qū)動(dòng)4 個(gè)ttl 邏輯電平。對(duì)p2 端口寫(xiě)“1”時(shí),內(nèi)部上拉電阻把端口拉高,此 基于 at89s52 單片機(jī)的遙控器設(shè)計(jì) 9 時(shí)可以作為輸入口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的 原因,將輸出電流(iil)。在訪問(wèn)外部程序存儲(chǔ)器或用16位地址讀取外部數(shù)據(jù) 存儲(chǔ)器(例如執(zhí)行movx dptr)時(shí),p2 口送出高八位地址。在這種應(yīng)用 中,p2 口使用很強(qiáng)的內(nèi)部上拉發(fā)送1。在使用8位地址(如movx ri)訪問(wèn) 外部數(shù)據(jù)存儲(chǔ)器時(shí),p2口輸出p2鎖存器的內(nèi)容。在flash編程和校驗(yàn)時(shí),p2口 也接收高8位地址字節(jié)和一些控制信號(hào)。 p3 口:p3 口是一個(gè)具有內(nèi)部上拉電阻的8 位雙向i/o 口,p2 輸出緩沖器能 驅(qū)動(dòng)4 個(gè)ttl 邏輯電平。對(duì)p3 端口寫(xiě)“1”時(shí),內(nèi)部上拉電阻把端口拉高,此 時(shí)可以作為輸入口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的 原因,將輸出電流(iil)。p3口亦作為at89s52特殊功能(第二功能)使用, 如下表所示。在flash編程和校驗(yàn)時(shí),p3口也接收一些控制信號(hào)。 rst: 復(fù)位輸入。晶振工作時(shí),rst腳持續(xù)2 個(gè)機(jī)器周期高電平將使單片機(jī)復(fù)位。 看門(mén)狗計(jì)時(shí)完成后,rst 腳輸出96 個(gè)晶振周期的高電平。特殊寄存器 auxr(地址8eh)上的disrto位可以使此功能無(wú)效。disrto默認(rèn)狀態(tài)下,復(fù) 位高電平有效。 ale/prog:地址鎖存控制信號(hào)(ale)是訪問(wèn)外部程序存儲(chǔ)器時(shí),鎖存低8 位地址的輸出脈沖。在flash編程時(shí),此引腳(prog)也用作編程輸入脈沖。 在一般情況下,ale 以晶振六分之一的固定頻率輸出脈沖,可用來(lái)作為外部定 時(shí)器或時(shí)鐘使用。然而,特別強(qiáng)調(diào),在每次訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),ale脈沖 將會(huì)跳過(guò)。如果需要,通過(guò)將地址為8eh的sfr的第0位置“1”,ale操作將無(wú) 效。這一位置“1”,ale 僅在執(zhí)行movx 或movc指令時(shí)有效。否則,ale 將被微弱拉高。這個(gè)ale 使能標(biāo)志位(地址為8eh的sfr的第0位)的設(shè)置對(duì)微 控制器處于外部執(zhí)行模式下無(wú)效。 psen:外部程序存儲(chǔ)器選通信號(hào)(psen)是外部程序存儲(chǔ)器選通信號(hào)。當(dāng) at89s52從外部程序存儲(chǔ)器執(zhí)行外部代碼時(shí),psen在每個(gè)機(jī)器周期被激活兩 次,而在訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),psen將不被激活。ea/vpp:訪問(wèn)外部程序存 儲(chǔ)器控制信號(hào)。為使能從0000h 到ffffh的外部程序存儲(chǔ)器讀取指令,ea必 須接gnd。為了執(zhí)行內(nèi)部程序指令,ea應(yīng)該接vcc。在flash編程期間,ea也 接收12伏vpp電壓。 xtal1:振蕩器反相放大器和內(nèi)部時(shí)鐘發(fā)生電路的輸入端。 xtal2:振蕩器反相放大器的輸出端。 10 3.2 系統(tǒng)復(fù)位 通過(guò)某種方式,使單片機(jī)內(nèi)各寄存器的值變?yōu)槌跏紶顟B(tài)的操作稱為復(fù)位。 51 單片機(jī)在時(shí)鐘電路工作以后,在 rst/vpd 端持續(xù)給出 2 個(gè)機(jī)器周期的高電 平就可以完成復(fù)位操作(一般復(fù)位正脈沖寬度大于 10 ms)。 復(fù)位分為上電復(fù) 位和外部按鍵復(fù)位兩種方式。 51 單片機(jī)復(fù)位后,程序計(jì)數(shù)器 pc 和特殊功能寄存器復(fù)位的狀態(tài)如表 2-1 所示。復(fù)位不影響片內(nèi) ram 存放的內(nèi)容,而 ale 在復(fù)位期間將輸出高電平。 由表 3-2 可以看出: (1)(pc)=0000h 表示復(fù)位后程序的入口地址為 0000h; (2)(psw)=00h,其中 rs1(psw.4)=0, rs0(psw.3)=0, 表示復(fù)位后 單片機(jī)選擇工作寄存器 0 組; (3)(sp)=07h 表示復(fù)位后堆棧在片內(nèi) ram 的 08h 單元處建立; (4)p0 口p3 口鎖存器為全 1 狀態(tài),,說(shuō)明復(fù)位后這些并行接口可以直接作 輸入口, 無(wú)須向端口寫(xiě) 1。 表 3-2 基于 at89s52 單片機(jī)的遙控器設(shè)計(jì) 11 寄存器名稱復(fù) 位 狀 態(tài)寄存器名稱復(fù) 位 狀 態(tài) pc0000htcon 00h a00ht2con 00h b00hth0 00h psw00htl0 00h sp07hth1 00h dptr0000htl1 00h p0p3ffhscon 00h 3.3 時(shí)鐘電路 單片機(jī)的時(shí)鐘電路由振蕩電路和分頻電路組成,其振蕩電路由反相器以及 并聯(lián)外接的石英晶體和電容組成,用于產(chǎn)生振蕩脈沖。分頻電路用于把振蕩脈 沖分頻,以的到所需要的時(shí)鐘信號(hào)。 振蕩電路如圖 3-3 所示: 圖 3-3 振蕩電路 12 其輸入端為引腳 xtal1,輸出端為引腳 xtal2。通過(guò)這兩個(gè)引腳在芯片外 并接石英晶體振蕩器和兩只電容,石英晶體為一感性原件,與電容構(gòu)成振蕩回 路,為片內(nèi)放大器提供正反饋和振蕩的相移條件,從而構(gòu)成一個(gè)穩(wěn)定的自激振 蕩器。振蕩器的頻率主要取決于晶體的振蕩頻率, 一般晶體可在 1.212 mhz 之間任選, 電容 c1、 c2 可在 530 pf 之間選擇, 電容的大小對(duì)振蕩頻率有 微小的影響, 可起頻率微調(diào)作用。 振蕩脈沖經(jīng)二分頻后作為系統(tǒng)的時(shí)鐘信號(hào),時(shí)鐘信號(hào)經(jīng)過(guò)三分頻產(chǎn)生 ale 信號(hào), ale 信號(hào)用于控制把 p0 口的低 8 位地址送入鎖存器鎖起來(lái),以實(shí)現(xiàn)低地址和 數(shù)據(jù)的分時(shí)傳送,ale 還可作為外部時(shí)鐘或外部脈沖使用。時(shí)鐘信號(hào)經(jīng)六分頻 得到機(jī)器周期信號(hào)。 3.4 中斷系統(tǒng) a 中斷的概念 當(dāng) cpu 與外設(shè)交換信息時(shí),由于外設(shè)的速度比較慢,若用查詢的方式,則 cpu 就要浪費(fèi)很多時(shí)間去等待外設(shè)。這樣就存在一個(gè)快速的 cpu 與慢速的外 設(shè)之間的矛盾。為了解決這個(gè)問(wèn)題,就發(fā)展了中斷的概念。 cpu 正在處理某一程序時(shí),發(fā)生了另一突發(fā)事件請(qǐng)求 cpu 迅速去處理(中 斷發(fā)生);cpu 暫時(shí)停止當(dāng)前的工作,轉(zhuǎn)到需要處理的中斷源的服務(wù)程序的入口 (中斷響應(yīng)),一般在入口處執(zhí)行一跳轉(zhuǎn)指令轉(zhuǎn)去處理中斷事件(中斷服務(wù));待 cpu 將中斷事件處理完畢后,再回到原來(lái)程序被中斷的地方繼續(xù)處理執(zhí)行程序 (中斷返回),這一處理過(guò)程稱為中斷。 51 單片機(jī)的中斷系統(tǒng)提供 5 個(gè)中斷源:外部中斷 0 和外部中斷 1,定時(shí)/ 計(jì)數(shù)器(t0)和(t1)的溢出中斷,串行接口的接收和發(fā)送中斷。本程序中只用到 了外部中斷 1。 b 中斷控制 1 中斷允許寄存器 ie(a8h) cpu 對(duì)中斷系統(tǒng)所有中斷以及某個(gè)中斷源的開(kāi)放和屏蔽是由中斷允許寄存 器(ie)控制的。ie 各位的定義如表 3-4 所示: 表 3-4 基于 at89s52 單片機(jī)的遙控器設(shè)計(jì) 13 位地址 0afh0aeh0adh0ach0abh0aah0a9h0a8h 位符號(hào) ea/eset1 ex 1 et0 ex 0 ea中斷允許總控制位 ea0 中斷總禁止,禁止所有中斷 ea1 中斷總允許,總允許后中斷的禁止或允許由各中斷源的中 斷允許控制位設(shè)置。 ex0 和 ex1外部中斷允許控制位 ex0(ex1)0 禁止外部中斷 ex0(ex1)1 允許外部中斷 et0 和 et1定時(shí)器/計(jì)數(shù)器中斷允許控制位 et0(et1)0 禁止定時(shí)器/計(jì)數(shù)器中斷 et0(et1)1 允許定時(shí)器/計(jì)數(shù)器中斷 es串行中斷允許控制位 es=0 禁止串行中斷 es=1 允許串行中斷 2 中斷優(yōu)先級(jí)控制寄存器(ip) 各中斷的優(yōu)先級(jí)通過(guò)中斷優(yōu)先級(jí)控制寄存器 ip 來(lái)設(shè)定,其未定義及位地址 如表 3-5 所示: 表 3-5 位地址 0bf h 0beh0bdh 0bch0bbh 0bah0b9h0b8h 位符號(hào) /pspt1px1pt0px0 14 px0外部中斷 0 優(yōu)先級(jí)設(shè)定位; pt0定時(shí)中斷 0 優(yōu)先級(jí)設(shè)定位; px1外部中斷 1 優(yōu)先級(jí)設(shè)定位; pt1定時(shí)中斷 1 優(yōu)先級(jí)設(shè)定位; ps串行中斷優(yōu)先級(jí)設(shè)定位。 3 定時(shí)器控制寄存器(tcon) 該寄存器用于保存外部中斷請(qǐng)求以及定時(shí)器的計(jì)數(shù)溢出。進(jìn)行字節(jié)操作時(shí), 寄存器地址為 88h。按位操作時(shí),各位的地址為 88h8fh。寄存器的內(nèi)容及 位地址表示如表 3-6 所示: 表 3-6 位地址 8fh 8eh 8dh 8ch 8bh 8ah 89h 88h 位符號(hào) tf1 tr1 tf0 tr0 ie1 it1 ie0 it0 ie0 和 ie1外中斷請(qǐng)求標(biāo)志位。當(dāng) cpu 采樣到 int0(或 int1)端出 現(xiàn)有效中斷請(qǐng)求時(shí),ie0(ie1)位由硬件置“1”。 當(dāng)中斷響應(yīng)完成轉(zhuǎn)向中斷 服務(wù)程序時(shí),由硬件把 ie0(或 ie1)清零。 tr0 和 tr1定時(shí)器運(yùn)行控制位: tr0 (tr1 )0 定時(shí)器/計(jì)數(shù)器不工作 tr0 (tr1 )1 定時(shí)器/計(jì)數(shù)器開(kāi)始工作 tf0 和 tf1計(jì)數(shù)溢出標(biāo)志位。當(dāng)計(jì)數(shù)器產(chǎn)生計(jì)數(shù)溢出時(shí),相應(yīng)的溢出 標(biāo)位 硬件置“1”。 并自動(dòng)產(chǎn)生定時(shí)中斷請(qǐng)求。 基于 at89s52 單片機(jī)的遙控器設(shè)計(jì) 15 4 電路框圖設(shè)計(jì) 4.1 遙控發(fā)射單元的電路圖設(shè)計(jì) 遙控發(fā)射單元由單片機(jī)最小系統(tǒng)和按鍵電路、紅外發(fā)射器電路等組成,遙 控發(fā)射單元框圖如圖 3-1 所示。 at89s52 單片機(jī) 紅外發(fā)射器 按鍵電路 復(fù)位電路 晶振電路 圖 4-1 紅外遙控單元發(fā)射框圖 發(fā)射端采用具有在線下載功能的 at89s52 芯片作為控制中心,與鍵盤(pán)掃描 電路和發(fā)射電路共同構(gòu)成??紤]到按鍵較多,可采用矩陣式,這里采用 4 4 的發(fā) 射端利用單片機(jī)將待發(fā)送的二進(jìn)制信號(hào)編碼調(diào)制為一系列的脈沖串信號(hào),通過(guò) p1. 0 口發(fā)出,經(jīng)三極管 9013 功率放大驅(qū)動(dòng)紅外發(fā)射管 led1 。 圖 4-2 為該遙控系統(tǒng)的發(fā)射原理圖,其中 p1 口作為鍵盤(pán)掃描口,具有 16 個(gè)功能操作鍵,第 9 腳為單片機(jī)復(fù)位腳,采用復(fù)位電路如圖所示,15 腳作為紅 外遙控碼的輸出口,用于 38mhz 載波編碼,18 19 腳 12mhz 晶振。 電源電路 16 圖 4-2 遙控發(fā)射單元原理圖 圖 4-3 遙控發(fā)射單元 pcb 圖 基于 at89s52 單片機(jī)的遙控器設(shè)計(jì) 17 4.2 遙控接收單元的電路圖設(shè)計(jì) 遙控接收單元由單片機(jī)最小系統(tǒng)和紅外接收器、控制對(duì)象電路等組成,遙 控接收單元框圖如圖 4-4 所示。 at89s52 單片機(jī) 電源 控制對(duì)象 紅外接收器 復(fù)位電路 圖 4-4 紅外遙控接收單元框圖 接收控制器由一個(gè)at89s52芯片作為控制中心,與接收電路和各自的控制電 路共同構(gòu)成。其中接收電路使用一體化紅外接收頭hs0038, hs0038工作頻率 為38 khz,能對(duì)收到遙控信號(hào)進(jìn)行放大、檢波、整形、解調(diào),得到ttl 電平的編 碼信號(hào),再送給單片機(jī),經(jīng)單片機(jī)解碼并執(zhí)行相關(guān)控制程序,對(duì)外只有3 個(gè)引腳: vs、gnd和1個(gè)脈沖信號(hào)輸出引腳,使用方便,性能可靠。 圖 4-5 為該遙控器的接收器原理圖,其中 p0 口作為數(shù)碼管的二進(jìn)制數(shù)據(jù) 輸出,顯示按鍵號(hào),第 9 腳為單片機(jī)復(fù)位腳,采用復(fù)位電路如圖所示,18 19 腳為 12mhz 晶振。 晶振電路 18 圖 4-5 遙控接收單元原理圖 圖 4-6 遙控接收單元 pcb 圖 基于 at89s52 單片機(jī)的遙控器設(shè)計(jì) 19 5 紅外遙控程序流程圖 程序開(kāi)始是對(duì)單片機(jī)進(jìn)行初始化設(shè)置,循環(huán)掃描判斷是否有鍵按下,如果 有鍵按下就發(fā)射相應(yīng)的紅外信號(hào),遙控發(fā)射程序流程圖如圖 4-5 所示。 開(kāi)始 鍵按下 初始化 調(diào)用按鍵 掃描程序 掃描 按鍵信號(hào)發(fā)送程序 發(fā)送完畢 發(fā)送 n y 圖 5-1 遙控發(fā)射程序流程圖 20 程序開(kāi)始是對(duì)單片機(jī)進(jìn)行初始化設(shè)置,使用顯示程序,循環(huán)掃描判斷信號(hào)是 否有效,如果有效就接收,接收后調(diào)用相應(yīng)功能程序,遙控接收程序流程圖如 圖 4-6 所示。 開(kāi)始 初始化 調(diào)用顯示程序 接收 接收完畢 得鍵號(hào) 調(diào)用相應(yīng)功能程序 判斷信號(hào)是否有效 n y 中斷觸發(fā) 返回 中斷返回 圖 5-2 遙控發(fā)射程序流程圖 基于 at89s52 單片機(jī)的遙控器設(shè)計(jì) 21 6 軟件設(shè)計(jì) 6.1:紅外遙控發(fā)射端軟件設(shè)計(jì) /* * 文件名 : 紅外遙控發(fā)射端 2 */ #include #include #define uint unsigned int #define uchar unsigned char uchar count = 0; /* * 名稱 : delay_1ms() * 功能 : 延時(shí)子程序,延時(shí)時(shí)間為 1ms * x * 輸入 : x (延時(shí)一毫秒的個(gè)數(shù)) */ 22 void delay_1ms(uint i) uchar x,j; for(j=0;j #include #define uchar unsigned char #define uint unsigned int uchar count = 0;/定時(shí)器計(jì)時(shí) uchar time = 0;/脈沖計(jì)時(shí) uchar num = 0; /鍵碼值 uchar receiv = 0; /為 0 時(shí)不是接收狀態(tài),為 1 時(shí)為正在接收數(shù)據(jù) 狀態(tài) void receive(); /* * 名稱 : delay() * 功能 : 延時(shí),延時(shí)時(shí)間為 */ 28 void delay(uint k) uint i,j; for(i=0; i 450 count = 0; else receiv = 0; ex0 = 1; time = 0; /* * 名稱 : main() */ void main() ex0 = 1; while(1) time0_init(); inter0_init(); while(receiv) 32 receive(); p0 = num; delay(5); 結(jié)束語(yǔ) 這是一個(gè)磨練意志的過(guò)程。從課題的選擇開(kāi)始,到硬件和軟件系統(tǒng)的設(shè)計(jì), 這其中經(jīng)歷了很多困難,但是更重要的是在這個(gè)過(guò)程中我得到了很大的鍛煉。 一方面通過(guò) s52 單片機(jī)等一些器件的設(shè)計(jì)讓我學(xué)習(xí)和掌握了單片機(jī)技術(shù)的基礎(chǔ) 知識(shí)和技術(shù)要點(diǎn),也使以前學(xué)的很多知識(shí)都得到了運(yùn)用;另一方面在用 protel 99 se 軟件畫(huà)電路圖,這個(gè)過(guò)程中讓我掌握了計(jì)算機(jī)輔助的設(shè)計(jì)技術(shù)。當(dāng)然,這 基于 at89s52 單片機(jī)的遙控器設(shè)計(jì) 33 是一個(gè)需要不斷的嘗試,不斷的校核,不斷的修改,最后完成一個(gè)合理的設(shè)計(jì) 的過(guò)程。需要的是細(xì)心和耐心。在很大程度上培養(yǎng)了我拼搏的工作精神。使我 受益匪淺,更加明確了自己專業(yè)的方向。這次時(shí)間是短暫的,但這我想我們學(xué) 到的應(yīng)該不僅僅是專業(yè)技術(shù)等表面上的東西,更深一層的是對(duì)人生的感悟,對(duì) 未來(lái)的想法,年輕人的桀驁不馴在此時(shí)已經(jīng)不在有意義,取而代之的是理性的 思維。我們應(yīng)該具備什么樣的能力,我們適合什么樣的人生,我們應(yīng)該在怎樣 的崗位上實(shí)現(xiàn)自己的人生價(jià)值。 實(shí)習(xí)是培養(yǎng)學(xué)生綜合運(yùn)用所學(xué)知識(shí)、發(fā)現(xiàn)、提出、分析和解決實(shí)際問(wèn)題,鍛 煉實(shí)踐能力的重要環(huán)節(jié),是對(duì)學(xué)生實(shí)際工作能力的具體訓(xùn)練和考察過(guò)程,通過(guò)課 程設(shè)計(jì)我們能夠比較系統(tǒng)的了解理論知識(shí),把理論和實(shí)踐相結(jié)合,并且用到生 活當(dāng)中。在做設(shè)計(jì)的過(guò)程中總會(huì)出現(xiàn)各種問(wèn)題,在這種情況下我們都會(huì)努力尋 求最佳路徑解決問(wèn)題,無(wú)形間提高了我們的動(dòng)手,動(dòng)腦能力,并且同學(xué)之間還 能相互探討問(wèn)題,研究解決方案,增進(jìn)大家的團(tuán)隊(duì)意識(shí)。 實(shí)習(xí)是短暫的,影響卻是長(zhǎng)遠(yuǎn)的。通過(guò)實(shí)習(xí)讓我體會(huì)了團(tuán)隊(duì)合作的益處, 在團(tuán)隊(duì)中一起發(fā)現(xiàn)問(wèn)題、討論問(wèn)題,共同進(jìn)步、共同提高。硬件實(shí)習(xí)主要是我 們理論知識(shí)的延伸,它的目的主要是要在設(shè)計(jì)中發(fā)現(xiàn)問(wèn)題,并且自己要能找到 解決問(wèn)題的方案,形成一種獨(dú)立的意識(shí)。我們還能從設(shè)計(jì)中檢驗(yàn)我們所學(xué)的理 論知識(shí)到底有多少,鞏固我們已經(jīng)學(xué)會(huì)的,不斷學(xué)習(xí)我們所遺漏的新知識(shí),把 所學(xué)的知識(shí)學(xué)的更加扎實(shí)。 在本文的撰寫(xiě)過(guò)程中,導(dǎo)師夏雨果給予了悉心的指導(dǎo)和關(guān)心,使我克服了 眾多困難終于完成了畢業(yè)設(shè)計(jì)的撰寫(xiě)工作。導(dǎo)師淵博的知識(shí)、嚴(yán)謹(jǐn)求實(shí)的治學(xué) 態(tài)度及敬業(yè)精神,給我留下了深刻的印象,并將在我今后的人生道路上產(chǎn)生深 遠(yuǎn)的影響,在此論文完成之際,謹(jǐn)向?qū)熤乱猿绺叩木匆夂椭孕牡母兄x! 再一次感謝所有關(guān)心我、幫助我的人! 參考文獻(xiàn) 【1】 李廣弟,朱月秀,冷祖祁編著。單片機(jī)基礎(chǔ)(第 3 版) 。北京航空航天 大學(xué)出版社。2007 年 1 月。 【2】 杜剛主編,王啟寧、戎華洪、張東霞等編著。電路設(shè)計(jì)與制板 34 protel 應(yīng)用教程,清華大學(xué)出版社,2009 年 6 月。 【3】 于京,張景璐編著。51 系列單片機(jī) c 程序設(shè)計(jì)及應(yīng)用案。中國(guó)電力出 版社,2006

溫馨提示

  • 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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論