版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 摘 要</b></p><p> 隨著社會(huì)的發(fā)展、科技的進(jìn)步以及人們生活水平的逐步提高,各種方便于生活的遙控系統(tǒng)開(kāi)始進(jìn)入了人們的生活。傳統(tǒng)的遙控器采用專用的遙控編碼及解碼集成電路,這種方法雖然制作簡(jiǎn)單、容易,但由于功能鍵數(shù)及功能受到特定的限制,只實(shí)用于某一專用電器產(chǎn)品的應(yīng)用,應(yīng)用范圍受到限制。而采用單片機(jī)進(jìn)行遙控系統(tǒng)的應(yīng)用設(shè)計(jì),具有編程靈活多樣、操作碼個(gè)數(shù)可隨
2、便設(shè)定等優(yōu)點(diǎn)。</p><p> 本設(shè)計(jì)應(yīng)用AT89S52單片機(jī)作為核心,綜合應(yīng)用了單片機(jī)中斷系統(tǒng)、定時(shí)器、計(jì)數(shù)器等知識(shí),應(yīng)用紅外光的優(yōu)點(diǎn)。遙控操作的不同,遙控發(fā)射器通過(guò)對(duì)紅外光發(fā)射載波脈沖數(shù)目的控制來(lái)區(qū)別不同的操作。遙控接收器通過(guò)對(duì)紅外光接收載波脈沖數(shù)目的識(shí)別,判斷出控制操作,來(lái)完成整個(gè)紅外遙控發(fā)射、接收過(guò)程。</p><p> 其優(yōu)點(diǎn)是硬件電路簡(jiǎn)單,軟件功能完善,性價(jià)比較高等特點(diǎn),
3、具有一定的使用和參考價(jià)值。</p><p> 關(guān)鍵詞:紅外遙控;中斷;定時(shí);計(jì)數(shù);脈沖數(shù)目</p><p><b> Abstract</b></p><p> With the social development, technological advances, and gradually raise the living stand
4、ards of people, all kinds of remote control system to facilitate the beginning of life into the people's lives. The traditional use of a dedicated remote control remote control encoding and decoding circuits, althoug
5、h the production of this method is simple, easy, but because of the number and function keys are certain restrictions, only practical in a dedicated electrical products should Sichuan, the scope </p><p> Th
6、e advantages of simple hardware circuit, software functions, high cost performance characteristics, has some use and reference. </p><p> Keywords: infrared remote control; break; time; count; number of pul
7、ses</p><p><b> 目 錄 </b></p><p><b> 1 緒論1</b></p><p> 1.1 單片機(jī)的發(fā)展歷程1</p><p> 1.1.1 單片機(jī)的發(fā)展階段1</p><p> 1.1.2 單片機(jī)的應(yīng)用2</
8、p><p> 1.2 紅外通信技術(shù)概述3</p><p> 1.2.1 紅外概述3</p><p> 1.2.2 選擇紅外遙控的原因3</p><p> 1.2.3 紅外的簡(jiǎn)單發(fā)射接收原理4</p><p> 2 系統(tǒng)設(shè)計(jì)方案5</p><p> 2.1 設(shè)計(jì)目的與
9、原理5</p><p> 2.2 單片機(jī)紅外遙控發(fā)射器設(shè)計(jì)原理5</p><p> 3 系統(tǒng)硬件電路設(shè)計(jì)7</p><p> 3.1 AT89S52單片機(jī)7</p><p> 3.1.1 單片機(jī)簡(jiǎn)介7</p><p> 3.1.2 引腳介紹7</p><p>
10、3.1.3 AT89S52單片機(jī)的主要組成部分11</p><p> 3.1.4 復(fù)位電路13</p><p> 3.1.5 時(shí)鐘電路15</p><p> 3.2 獨(dú)立式按鍵16</p><p> 3.2.1 按鍵原理及電路16</p><p> 3.2.2 鍵盤(pán)設(shè)計(jì)注意的問(wèn)題16&
11、lt;/p><p> 3.3 紅外發(fā)射電路的設(shè)計(jì)17</p><p> 3.3.1 遙控發(fā)射器遙控方式18</p><p> 3.3.2 發(fā)射電路的設(shè)計(jì)18</p><p> 3.4 硬件系統(tǒng)的工作原理19</p><p> 4 系統(tǒng)功能的實(shí)現(xiàn)21</p><p>
12、4.1 遙控碼的編碼格式21</p><p> 4.2 遙控碼的發(fā)射21</p><p> 4.3 利用仿真的系統(tǒng)實(shí)現(xiàn)22</p><p> 4.3.1 PROTUSE軟件簡(jiǎn)介22</p><p> 4.3.2 Proteus ISIS的特點(diǎn)22</p><p> 4.3.3 ISIS智
13、能原理圖輸入系統(tǒng)23</p><p> 4.3.4 操作簡(jiǎn)介24</p><p> 4.3.5 仿真24</p><p> 5 系統(tǒng)的軟件設(shè)計(jì)27</p><p> 5.1 遙控器發(fā)射程序設(shè)計(jì)27</p><p> 5.1.1 程序總體結(jié)構(gòu)27</p><p>
14、 5.1.2 偽指令和初始化程序29</p><p> 5.1.3 鍵掃描程序30</p><p> 5.1.4 中斷服務(wù)程序30</p><p> 5.2 程序的編譯及編譯過(guò)程31</p><p><b> 結(jié) 論40</b></p><p><b> 致
15、謝41</b></p><p><b> 參考文獻(xiàn)42</b></p><p><b> 附錄A43</b></p><p><b> 附錄B49</b></p><p><b> 附錄C53</b></p>&
16、lt;p><b> 1 緒論</b></p><p> 1.1 單片機(jī)的發(fā)展歷程</p><p> 1.1.1 單片機(jī)的發(fā)展階段</p><p> 為適應(yīng)社會(huì)發(fā)展的需要,微型計(jì)算機(jī)不斷的更新?lián)Q代,新產(chǎn)品層出不窮。在微型計(jì)算機(jī)的大家族中,幾年來(lái)單片微型計(jì)算機(jī)異軍突起,發(fā)展極其迅速。</p><p>
17、單片微型計(jì)算機(jī)(Sing-Chip Microcomputer)簡(jiǎn)稱單片機(jī)。它是一種集成在電路的芯片,是采用超大規(guī)模集成電路技術(shù)把具有數(shù)據(jù)處理能力的中央處理器(Central Processing Unit,CPU)、隨機(jī)存儲(chǔ)器(Random Access Memory,RAM)、只讀存儲(chǔ)器(Read Only Memory,ROM)、多種I/O口和中斷系統(tǒng)、定時(shí)器/計(jì)時(shí)器等功能(可能還包括顯示驅(qū)動(dòng)電路、脈寬調(diào)制電路、模擬多路轉(zhuǎn)換器、A
18、/D轉(zhuǎn)換器等電路)集成到一塊硅片上構(gòu)成的一個(gè)小而完善的計(jì)算機(jī)系統(tǒng)。它的特點(diǎn)是:高性能,高速度,體積小,價(jià)格低廉,穩(wěn)定可靠,應(yīng)用廣泛。</p><p> 單片機(jī)誕生于20世紀(jì)70年代末,它的發(fā)展史并不長(zhǎng),經(jīng)歷了SCM、MCU、SOC三大階段。</p><p> SCM即單片微型計(jì)算機(jī)(Single Chip Microcomputer)階段,主要是尋求最佳的單片形態(tài)嵌入式系統(tǒng)的最佳體系結(jié)
19、構(gòu)?!皠?chuàng)新模式”獲得成功,奠定了SCM與通用計(jì)算機(jī)完全不同的發(fā)展道路。在開(kāi)創(chuàng)嵌入式系統(tǒng)獨(dú)立發(fā)展道路上,Intel公司功不可沒(méi)。</p><p> MCU即微控制器(Micro Controller Unit)階段,主要的技術(shù)發(fā)展方向是:不斷擴(kuò)展?jié)M足嵌入式應(yīng)用時(shí),對(duì)象系統(tǒng)要求的各種外圍電路與接口電路,突顯其對(duì)象的智能化控制能力。它所涉及的領(lǐng)域都與對(duì)象系統(tǒng)相關(guān),因此,發(fā)展MCU的重任不可避免地落在電氣、電子技術(shù)廠家
20、。從這一角度來(lái)看,Intel逐漸淡出MCU的發(fā)展也有其客觀因素。在發(fā)展MCU方面,最著名的廠家當(dāng)數(shù)Philips公司。</p><p> 單片機(jī)是嵌入式系統(tǒng)的獨(dú)立發(fā)展之路,向MCU階段發(fā)展的重要因素,就是尋求應(yīng)用系統(tǒng)在芯片上的最大化解決;因此,專用單片機(jī)的發(fā)展自然形成了SOC化趨勢(shì)。隨著微電子技術(shù)、IC設(shè)計(jì)、EDA工具的發(fā)展,基于SOC的單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)會(huì)有較大的發(fā)展。因此,對(duì)單片機(jī)的理解可以從單片微型計(jì)算機(jī)
21、、單片微控制器延伸到單片應(yīng)用系統(tǒng)。</p><p> 從SCM到SOC三個(gè)階段,單片機(jī)的發(fā)展雖然經(jīng)歷了4位,8位,16位各階段,但是4位,8位,16位單片機(jī)仍有其各自的應(yīng)用領(lǐng)域,如4位單片機(jī)在一些簡(jiǎn)單家用電器,高檔玩具中仍有應(yīng)用,8位單片機(jī)在中、小規(guī)模的應(yīng)用場(chǎng)所仍占主流地位,16位單片機(jī)只有在比較復(fù)雜的控制系統(tǒng)中才有應(yīng)用,32位單片機(jī)因控制領(lǐng)域?qū)λ男枨蟛皇鞘志o切,所以32位單片機(jī)在過(guò)去應(yīng)用并不是很多[12]
22、。</p><p> 1.1.2 單片機(jī)的應(yīng)用 </p><p> 正是由于單片機(jī)具有上述顯著的特點(diǎn),使得單片機(jī)的應(yīng)用范圍日益擴(kuò)大。目前單片機(jī)滲透到我們生活的各個(gè)領(lǐng)域,幾乎很難找到哪個(gè)領(lǐng)域沒(méi)有單片機(jī)的蹤跡。導(dǎo)彈的導(dǎo)航裝置,飛機(jī)上各種儀表的控制,計(jì)算機(jī)的網(wǎng)絡(luò)通訊與數(shù)據(jù)傳輸,工業(yè)自動(dòng)化過(guò)程的實(shí)時(shí)控制和數(shù)據(jù)處理,廣泛使用的各種智能IC卡,民用豪華轎車的安全保障系統(tǒng),錄像機(jī)、攝像機(jī)、全自動(dòng)
23、洗衣機(jī)的控制,以及程控玩具、電子寵物等等,這些都離不開(kāi)單片機(jī)。更不用說(shuō)自動(dòng)控制領(lǐng)域的機(jī)器人、智能儀表、醫(yī)療器械以及各種智能機(jī)械了。因此,單片機(jī)的學(xué)習(xí)、開(kāi)發(fā)與應(yīng)用將造就一批計(jì)算機(jī)應(yīng)用與智能化控制的科學(xué)家、工程師。單片機(jī)廣泛應(yīng)用于儀器儀表、家用電器、醫(yī)用設(shè)備、航空航天、專用設(shè)備的智能化管理及過(guò)程控制等領(lǐng)域,大致可分如下幾個(gè)范疇: </p><p> 在智能儀器儀表上的應(yīng)用。單片機(jī)具有體積小、功耗低、控制功能強(qiáng)、
24、擴(kuò)展靈活、微型化和使用方便等優(yōu)點(diǎn),廣泛應(yīng)用于儀器儀表中,結(jié)合不同類型傳感器,可實(shí)現(xiàn)諸如電壓、功率、頻率、濕度、溫度、流量、速度、厚度、角度、長(zhǎng)度、硬度、元素、壓力等物理量的測(cè)量。采用單片機(jī)控制使得儀器儀表數(shù)字化、智能化、微型化,且功能比起采用電子或數(shù)字電路更加強(qiáng)大。例如精密的測(cè)量設(shè)備(功率計(jì),示波器,各種分析儀)。 </p><p> 在工業(yè)控制中的應(yīng)用。用單片機(jī)可以構(gòu)成形式多樣的控制系統(tǒng)、數(shù)據(jù)采集系統(tǒng)。例
25、如工廠流水線的智能化管</p><p><b> 芯片</b></p><p> 理,電梯智能化控制、各種報(bào)警系統(tǒng),與計(jì)算機(jī)聯(lián)網(wǎng)構(gòu)成二級(jí)控制系統(tǒng)等。 </p><p> 在家用電器中的應(yīng)用可以這樣說(shuō),現(xiàn)在的家用電器基本上都采用了單片機(jī)控制,從電飯煲、洗衣機(jī)、電冰箱、空調(diào)機(jī)、彩電、其他音響視頻器材、再到電子稱量設(shè)備,五花八門,無(wú)所不在。
26、 </p><p> 在計(jì)算機(jī)網(wǎng)絡(luò)和通信領(lǐng)域中的應(yīng)用。現(xiàn)代的單片機(jī)普遍具備通信接口,可以很方便地與計(jì)算機(jī)進(jìn)行數(shù)據(jù)通信,為在計(jì)算機(jī)網(wǎng)絡(luò)和通信設(shè)備間的應(yīng)用提供了極好的物質(zhì)條件,現(xiàn)在的通信設(shè)備基本上都實(shí)現(xiàn)了單片機(jī)智能控制,從手機(jī),電話機(jī)、小型程控交換機(jī)、樓宇自動(dòng)通信呼叫系統(tǒng)、列車無(wú)線通信、再到日常工作中隨處可見(jiàn)的移動(dòng)電話,集群移動(dòng)通信,無(wú)線電對(duì)講機(jī)等。 </p><p> 單片機(jī)在醫(yī)
27、用設(shè)備領(lǐng)域中的應(yīng)用。單片機(jī)在醫(yī)用設(shè)備中的用途亦相當(dāng)廣泛,例如醫(yī)用呼吸機(jī),各種分析儀,監(jiān)護(hù)儀,超聲診斷設(shè)備及病床呼叫系統(tǒng)等等。 </p><p> 在各種大型電器中的模塊化應(yīng)用。某些專用單片機(jī)設(shè)計(jì)用于實(shí)現(xiàn)特定功能,從而在各種電路中進(jìn)行模塊化應(yīng)用,而不要求使用人員了解其內(nèi)部結(jié)構(gòu)。如音樂(lè)集成單片機(jī),看似簡(jiǎn)單的功能,微縮在純電子芯片中(有別于磁帶機(jī)的原理),就需要復(fù)雜的類似于計(jì)算機(jī)的原理。如:音樂(lè)信號(hào)以數(shù)字的形式存
28、于存儲(chǔ)器中(類似于ROM),由微控制器讀出,轉(zhuǎn)化為模擬音樂(lè)電信號(hào)(類似于聲卡)。在大型電路中,這種模塊化應(yīng)用極大地縮小了體積,簡(jiǎn)化了電路,降低了損壞、錯(cuò)誤率,也方便于更換。 </p><p> 單片機(jī)在汽車設(shè)備領(lǐng)域中的應(yīng)用。單片機(jī)在汽車電子中的應(yīng)用非常廣泛,例如汽車中的發(fā)動(dòng)機(jī)控制器,基于CAN總線的汽車發(fā)動(dòng)機(jī)智能電子控制器,GPS導(dǎo)航系統(tǒng),ABS防抱緊系統(tǒng),制動(dòng)系統(tǒng)等等。 </p><
29、;p> 此外,單片機(jī)在工商、金融、科研、教育,國(guó)防航空航天等領(lǐng)域都有著十分廣泛的用途[1]。</p><p> 1.2 紅外通信技術(shù)概述</p><p> 1.2.1 紅外概述</p><p> 從光學(xué)的角度而言,紅外光是頻率低于紅色光的不可見(jiàn)光,在無(wú)線光譜的整個(gè)頻率中占有很小的一頻率段,波長(zhǎng)為0.75—100微秒之間,其中0.75—3微秒之間的紅
30、外光稱為近紅外,3—30微秒之間的紅外光稱為中紅外,30—100微秒之問(wèn)的紅外光稱為遠(yuǎn)紅外。紅外光就其性質(zhì)而言很簡(jiǎn)單,與普通光線的頻率特性沒(méi)有很大的區(qū)別,但是,由于任何有熱量的物體均有能量產(chǎn)生,所以紅外的利用非常廣泛,而且不可取代,能否檢測(cè)紅外、能測(cè)到多少紅外或者紅外檢測(cè)的技術(shù)是否可以應(yīng)用于任何自然的或想象的場(chǎng)合是紅外應(yīng)用技術(shù)的關(guān)鍵[13]。</p><p> 當(dāng)今紅外技術(shù)的一個(gè)重要分支是紅外通信技術(shù)的應(yīng)用,這
31、個(gè)應(yīng)用的發(fā)展非常迅速,尤其是紅外通信應(yīng)用于計(jì)算機(jī)設(shè)備中,近幾年的發(fā)展已經(jīng)表現(xiàn)出其非常成熟的特性[2]。</p><p> 1.2.2 選擇紅外遙控的原因</p><p> 無(wú)線遙控方式可分為無(wú)線電波式、聲控式、超聲波式和紅外線式。由于無(wú)線電式容易對(duì)其它電視機(jī)和無(wú)線電通訊設(shè)備造成干擾,而且,系統(tǒng)本身的抗干擾性能也很差,所以未能大量使用。超聲波式頻帶較窄,易受噪聲干擾,系統(tǒng)抗干擾能力差以
32、及聲控式識(shí)別正確率低,難度大而未能大量采用[12]。紅外遙控方式是以紅外線作為載體來(lái)傳送控制信息的,同時(shí)隨著電子技術(shù)的發(fā)展,單片機(jī)的出現(xiàn),催生了數(shù)字編碼方式的紅外遙控系統(tǒng)的快速發(fā)展。另外,紅外遙控具有很多的優(yōu)點(diǎn),例如紅外線發(fā)射裝置采用紅外發(fā)光二極管,遙控發(fā)射器益于小型化且價(jià)格低廉;采用數(shù)字信號(hào)編碼和二次調(diào)制方式,不僅可以實(shí)現(xiàn)多路信息的控制,增加遙控功能,提高信號(hào)傳輸?shù)目垢蓴_性,減少誤動(dòng)作,而且功率消耗低;紅外線不會(huì)向室外泄露,不會(huì)產(chǎn)生信
33、號(hào)干擾;反應(yīng)速度快、傳輸效率高、工作穩(wěn)定可靠。所以現(xiàn)在很多無(wú)線遙控方式都采用紅外遙控方式。</p><p> 1.2.3 紅外的簡(jiǎn)單發(fā)射接收原理</p><p> 在發(fā)射端,輸入信號(hào)經(jīng)放大后送入紅外發(fā)射管發(fā)射,在接收端,接收管收到紅外信號(hào)后,由放大器放大處理后還原成信號(hào),這就是紅外的簡(jiǎn)單發(fā)射接收原理[3,4]。</p><p><b> 2 系統(tǒng)
34、設(shè)計(jì)方案</b></p><p> 2.1 設(shè)計(jì)目的與原理</p><p> 目前市場(chǎng)上一般采用的遙控編碼及解碼集成電路。此方案具有制作簡(jiǎn)單、容易等特點(diǎn),但由于功能鍵數(shù)及功能受到特定的限制,只適合用某一專用電器產(chǎn)品的應(yīng)用,應(yīng)用范圍受到限制。而采用單片機(jī)進(jìn)行遙控系統(tǒng)的應(yīng)用設(shè)計(jì),具有編程靈活多樣、操作碼個(gè)數(shù)可隨意設(shè)定等優(yōu)點(diǎn)。本單片機(jī)遙控應(yīng)用系統(tǒng)采用紅外線發(fā)射頻率的不同,來(lái)識(shí)別
35、不同的遙控功能。當(dāng)我們按下某一個(gè)按鍵的時(shí)候,由單片機(jī)識(shí)別出該按鍵后,由CPU向接有紅外發(fā)射管的端口發(fā)射一定頻率的脈沖,該脈沖與38KHZ左右的載波脈沖進(jìn)行調(diào)制(本設(shè)計(jì)采用40KHZ載波脈沖),然后將已調(diào)制的脈沖進(jìn)行緩沖放大,激勵(lì)紅外發(fā)光二極管將電能轉(zhuǎn)化為光能,使得紅外發(fā)光二極管發(fā)射出一定頻率的紅外線,當(dāng)接收控制系統(tǒng)接收到該紅外光后,由單片機(jī)內(nèi)定時(shí)器/計(jì)數(shù)器得到該紅外光的脈沖數(shù)目,然后將該脈沖數(shù)目送往CPU由CPU對(duì)該信號(hào)進(jìn)行反編碼,識(shí)別
36、出控制信號(hào),從而對(duì)控制電路實(shí)施控制功能,完成整個(gè)遙控功能[5,8]。</p><p> 2.2 單片機(jī)紅外遙控發(fā)射器設(shè)計(jì)原理</p><p> 單片機(jī)紅外遙控發(fā)射器主要有單片機(jī)、獨(dú)立式按鍵、方式控制電路、紅外管發(fā)射電路以及單片機(jī)的一些電源、復(fù)位、振蕩電路組成。本設(shè)計(jì)中單片機(jī)的P0口的P0.0和P0.1會(huì)做鍵掃描端口,在P0.0和P0.1兩個(gè)引腳引上拉電阻。在無(wú)按鍵按下的時(shí)候兩個(gè)引腳全
37、部為高電平,當(dāng)P0.0和P0.1兩引腳有任意一個(gè)按鍵按下時(shí)候,會(huì)觸發(fā)其引腳變?yōu)榈碗娖健T谲浖幊虝r(shí),CPU會(huì)一直掃描P0.0和P0.1這兩個(gè)引腳電平,當(dāng)掃描發(fā)現(xiàn)有低電平出現(xiàn)的時(shí)候會(huì)自動(dòng)轉(zhuǎn)移到按鍵所對(duì)應(yīng)的子程序中去。然后再由P1.0引腳將調(diào)制好對(duì)應(yīng)的40KHZ的方波通過(guò)紅外線發(fā)射管發(fā)送出去[5]。其設(shè)計(jì)原理框圖如圖2.1所示。</p><p> 圖2.1 單片機(jī)遙控發(fā)射原理框圖</p><p&
38、gt; 3 系統(tǒng)硬件電路設(shè)計(jì)</p><p> 3.1 AT89S52單片機(jī)</p><p> 3.1.1 單片機(jī)簡(jiǎn)介</p><p> AT89S52是一種低功耗、高性能CMOS8位微控制器,具有8K在系統(tǒng)可編程Flash存儲(chǔ)器。使用Atmel公司高密度非易失性存儲(chǔ)器技術(shù)制造,與工業(yè)80C51產(chǎn)品指令和引腳完全兼容。片上Flash允許程序存儲(chǔ)器在系統(tǒng)
39、可編程,亦適于常規(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口線,看門狗定時(shí)器,2個(gè)數(shù)據(jù)指針,三個(gè)16位定時(shí)器/計(jì)數(shù)器,一個(gè)6向量2級(jí)中斷結(jié)構(gòu),全雙工串行口,片內(nèi)晶振及時(shí)鐘電路。</p><p> 另外,AT89S52可降0Hz靜態(tài)邏輯操
40、作,支持2種軟件可選擇節(jié)電模式??臻e模式下,CPU停止工作,允許RAM、定時(shí)器/計(jì)數(shù)器、串口、中斷繼續(xù)工作。掉電保護(hù)方式下,RAM內(nèi)容被保存,振蕩器被凍結(jié),單片機(jī)一切工作停止,直到下一個(gè)中斷或硬件復(fù)位為止。</p><p> 3.1.2 引腳介紹</p><p> 如圖3.1所示,AT89S52單片機(jī)有40個(gè)引腳,每個(gè)引腳具有不同的功能,這些引腳使得單片機(jī)工作方式變得簡(jiǎn)單靈活,下面介
41、紹每個(gè)引腳的功能:</p><p> VCC:AT89S52電源正端輸入,接+5V。</p><p><b> VSS:電源地端。</b></p><p> XTAL1:?jiǎn)涡酒到y(tǒng)時(shí)鐘的反相放大器輸入端。</p><p> XTAL2:系統(tǒng)時(shí)鐘的反相放大器輸出端,一般在設(shè)計(jì)上只要在 XTAL1 和 XTAL2 上
42、接上一只石英振蕩晶體系統(tǒng)就可以動(dòng)作了,此外可以在兩引腳與地之間加入30PF的小電容,可以對(duì)振蕩頻率起到微調(diào)的作用,也可以使系統(tǒng)更穩(wěn)定,避免噪聲干擾而死機(jī)。</p><p> 圖3.1 AT89S52單片機(jī)引腳圖</p><p><b> RESET:</b></p><p> AT89S52的重置引腳,高電平動(dòng)作,當(dāng)要對(duì)晶片重置時(shí),只要
43、對(duì)此引腳電平提升至高電平并保持兩個(gè)機(jī)器周期以上的時(shí)間,AT89S51便能完成系統(tǒng)重置的各項(xiàng)動(dòng)作,使得內(nèi)部特殊功能寄存器之內(nèi)容均被設(shè)成已知狀態(tài),并且至地址0000H處開(kāi)始讀入程序代碼而執(zhí)行程序。</p><p><b> EA/Vpp:</b></p><p> "EA"為英文"External Access"的縮寫(xiě),表示存取
44、外部程序代碼之意,低電平動(dòng)作,也就是說(shuō)當(dāng)此引腳接低電平后,系統(tǒng)會(huì)取用外部的程序代碼(存于外部EPROM中)來(lái)執(zhí)行程序。因此在8031及8032中,EA引腳必須接低電平,因?yàn)槠鋬?nèi)部無(wú)程序存儲(chǔ)器空間。如果是使用 8051 內(nèi)部程序空間時(shí),此引腳要接成高電平。此外,在將程序代碼燒錄至8051內(nèi)部EPROM時(shí),可以利用此引腳來(lái)輸入21V的燒錄高壓(Vpp)。</p><p><b> ALE/PROG:<
45、;/b></p><p> ALE是英文"Address Latch Enable"的縮寫(xiě),表示地址鎖存器啟用信號(hào)。AT89S52可以利用這支引腳來(lái)觸發(fā)外部的8位鎖存器(如74LS373),將端口0的地址總線(A0~A7)鎖進(jìn)鎖存器中,因?yàn)锳T89S52是以多工的方式送出地址及數(shù)據(jù)。平時(shí)在程序執(zhí)行時(shí)ALE引腳的輸出頻率約是系統(tǒng)工作頻率的1/6,因此可以用來(lái)驅(qū)動(dòng)其他周邊晶片的時(shí)基輸入。此
46、外在燒錄8051程序代碼時(shí),此引腳會(huì)被當(dāng)成程序規(guī)劃的特殊功能來(lái)使用。</p><p><b> PSEN:</b></p><p> 此為"Program Store Enable"的縮寫(xiě),其意為程序儲(chǔ)存啟用,當(dāng)8051被設(shè)成為讀取外部程序代碼工作模式時(shí)(EA=0),會(huì)送出此信號(hào)以便取得程序代碼,通常這支腳是接到EPROM的OE腳。AT89S5
47、2可以利用PSEN及RD引腳分別啟用存在外部的RAM與EPROM,使得數(shù)據(jù)存儲(chǔ)器與程序存儲(chǔ)器可以合并在一起而共用64K的定址范圍。</p><p> PORT0(P0.0~P0.7):</p><p> 端口0是一個(gè)8位寬的開(kāi)路汲極(Open Drain)雙向輸出入端口,共有8個(gè)位,P0.0表示位0,P0.1表示位1,依此類推。其他三個(gè)I/O端口(P1、P2、P3)則不具有此電路組態(tài),
48、而是內(nèi)部有一提升電路,P0在當(dāng)做I/O用時(shí)可以推動(dòng)8個(gè)LS的TTL負(fù)載。如果當(dāng)EA引腳為低電平時(shí)(即取用外部程序代碼或數(shù)據(jù)存儲(chǔ)器),P0就以多工方式提供地址總線(A0~A7)及數(shù)據(jù)總線(D0~D7)。設(shè)計(jì)者必須外加一鎖存器將端口0送出的地址栓鎖住成為A0~A7,再配合端口2所送出的A8~A15合成一完整的16位地址總線,而定址到64K的外部存儲(chǔ)器空間。</p><p> PORT2(P2.0~P2.7):<
49、;/p><p> 端口2是具有內(nèi)部提升電路的雙向I/O端口,每一個(gè)引腳可以推動(dòng)4個(gè)LS的TTL負(fù)載,若將端口2的輸出設(shè)為高電平時(shí),此端口便能當(dāng)成輸入端口來(lái)使用。P2除了當(dāng)做一般I/O端口使用外,若是在AT89S52擴(kuò)充外接程序存儲(chǔ)器或數(shù)據(jù)存儲(chǔ)器時(shí),也提供地址總線的高字節(jié)A8~A15,這個(gè)時(shí)候P2便不能當(dāng)做I/O來(lái)使用了。</p><p> PORT1(P1.0~P1.7):</p&g
50、t;<p> 端口1也是具有內(nèi)部提升電路的雙向I/O端口,其輸出緩沖器可以推動(dòng)4個(gè)LS TTL負(fù)載,同樣地若將端口1的輸出設(shè)為高電平,便是由此端口來(lái)輸入數(shù)據(jù)。如果是使用8052或是8032的話,P1.0又當(dāng)做定時(shí)器2的外部脈沖輸入腳,而P1.1可以有T2EX功能,可以做外部中斷輸入的觸發(fā)腳位。</p><p> PORT3(P3.0~P3.7):</p><p> 端口
51、3也具有內(nèi)部提升電路的雙向I/O端口,其輸出緩沖器可以推動(dòng)4個(gè)TTL負(fù)載,同時(shí)還多工具有其他的額外特殊功能,包括串行通信、外部中斷控制、計(jì)時(shí)計(jì)數(shù)控制及外部數(shù)據(jù)存儲(chǔ)器內(nèi)容的讀取或?qū)懭肟刂频裙δ堋?lt;/p><p><b> 其引腳分配如下:</b></p><p> P3.0:RXD,串行通信輸入口。</p><p> P3.1:TXD,串行
52、通信輸出口。</p><p> P3.2:INT0,外部中斷0輸入。</p><p> P3.3:INT1,外部中斷1輸入。</p><p> P3.4:T0,計(jì)時(shí)計(jì)數(shù)器0輸入。</p><p> P3.5:T1,計(jì)時(shí)計(jì)數(shù)器1輸入。</p><p> P3.6:WR:外部數(shù)據(jù)存儲(chǔ)器的寫(xiě)入信號(hào)。</p&g
53、t;<p> P3.7:RD,外部數(shù)據(jù)存儲(chǔ)器的讀取信號(hào)。</p><p> RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持RST腳兩個(gè)機(jī)器周期的高電平時(shí)間。</p><p> ALE/PROG:當(dāng)訪問(wèn)外部存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時(shí),ALE端以不變的頻率周期輸出正脈沖信號(hào),此頻率為振蕩器頻率的
54、1/6。因此它可用作對(duì)外部輸出的脈沖或用于定時(shí)目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲(chǔ)器時(shí),將跳過(guò)一個(gè)ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時(shí),ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無(wú)效。</p><p> PSEN:外部程序存儲(chǔ)器的選通信號(hào)。在由外部程序存儲(chǔ)器取指期間,每個(gè)機(jī)器周期兩次PSEN有效。但
55、在訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的PSEN信號(hào)將不出現(xiàn)。</p><p> EA/VPP:當(dāng)EA保持低電平時(shí),則在此期間外部程序存儲(chǔ)器(0000H-FFFFH),不管是否有內(nèi)部程序存儲(chǔ)器。注意加密方式1時(shí),EA將內(nèi)部鎖定為RESET;當(dāng)EA端保持高電平時(shí),此間內(nèi)部程序存儲(chǔ)器。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。</p><p> XTAL1:反向振蕩放大器
56、的輸入及內(nèi)部時(shí)鐘工作電路的輸入。</p><p> XTAL2:來(lái)自反向振蕩器的輸出。</p><p> 主要功能特性:擁有靈巧的8位CPU和在系統(tǒng)可編程Flash;晶片內(nèi)部具時(shí)鐘振蕩器(傳統(tǒng)最高工作頻率可至 12MHz);內(nèi)部程序存儲(chǔ)器(ROM)為 8KB內(nèi)部數(shù)據(jù)存儲(chǔ)器(RAM)為 256字節(jié);32 個(gè)可編程I/O 口線;8 個(gè)中斷向量源;三個(gè) 16 位定時(shí)器/計(jì)數(shù)器;三級(jí)加密程序存
57、儲(chǔ)器;全雙工UART串行通道[6,10]。</p><p> 3.1.3 AT89S52單片機(jī)的主要組成部分</p><p><b> 1、CPU</b></p><p> CPU是單片機(jī)的核心部分,他的作用是讀入和分析每條指令,根據(jù)每條指令的功能要求,控制各個(gè)部件執(zhí)行相應(yīng)的操作。AT89S52單片機(jī)內(nèi)部有一個(gè)8位的CPU,它是由運(yùn)算器
58、和控制器組成。</p><p><b> ?。?)運(yùn)算器</b></p><p> 運(yùn)算器豐要包括算術(shù)、邏輯運(yùn)算部件ALU、累加器ACC、寄存器B、程序狀態(tài)寄存器PSW、布爾處理器及十進(jìn)制調(diào)整電路等。運(yùn)算器主要用來(lái)實(shí)現(xiàn)數(shù)據(jù)的傳送、數(shù)據(jù)的算術(shù)運(yùn)算、邏輯運(yùn)算和位變量處理等。</p><p><b> ?。?)控制器</b>&
59、lt;/p><p> 控制器包括時(shí)鐘發(fā)生器、定時(shí)控制邏輯、指令寄存器指令譯碼器、程序計(jì)數(shù)器PC、程序地址寄存器、數(shù)據(jù)指針寄存器。DPTR和堆棧指針SP等。</p><p> 控制器是用來(lái)統(tǒng)一指揮和控制計(jì)算機(jī)進(jìn)行工作的部件。它的功能是從程序存儲(chǔ)器中提取指令,送到指令寄存器,再進(jìn)入指令譯碼器進(jìn)行譯碼,并通過(guò)定時(shí)和控制電路,在規(guī)定的時(shí)刻發(fā)出各種操作所需要的全部?jī)?nèi)部控制信息及CPU外部所需要的控制
60、信號(hào),如ALE、PSEN、RD、WR等,使各部分協(xié)調(diào)工作,完成指令所規(guī)定的各種操作。</p><p><b> 2、存儲(chǔ)器</b></p><p><b> ?。?)程序存儲(chǔ)器</b></p><p> 程序存儲(chǔ)器用于存放編好的程序、表格和常數(shù)。CPU的控制器專門提供一個(gè)控制信號(hào)EA來(lái)區(qū)分內(nèi)部ROM和外部ROM的公用地
61、址區(qū):當(dāng)EA為高電平時(shí),單片機(jī)從片內(nèi)ROM的8KB存儲(chǔ)器取指令,而當(dāng)PC超過(guò)0FFFFFH后,就自動(dòng)轉(zhuǎn)向片外ROM執(zhí)行指令;當(dāng)EA為低電平時(shí),CPU只執(zhí)行片外ROM指令。</p><p><b> ?。?)數(shù)據(jù)存儲(chǔ)器</b></p><p> AT89S52單片機(jī)內(nèi)部程序存儲(chǔ)器RAM為256個(gè)字節(jié),地址范圍為00H-FFH。它主要是用來(lái)存放運(yùn)算的中間結(jié)果和數(shù)據(jù)等。它
62、分為兩個(gè)部分,低128字節(jié)(00H-7FH)為真正的RAM區(qū);高128字節(jié)(80H-FFH)為特殊功能寄存器(SFR)區(qū)。低128B RAM分為工作寄存器區(qū)、位尋址區(qū)和用戶RAM區(qū)。高128B RAM是特殊功能寄存器區(qū),里面含有累加器A、B寄存區(qū)、程序狀態(tài)寄存器PSW、堆棧指針SP、數(shù)據(jù)指針DPTR、中斷優(yōu)先級(jí)寄存器IP、中斷允許控制寄存器IE、定時(shí)器方式寄存器TMOD、定時(shí)器控制寄存器TCON、串行口控制寄存器SCON、定時(shí)器0定時(shí)初
63、值寄存器T0、定時(shí)器1定時(shí)初值寄存器T1等。</p><p><b> 3、定時(shí)器/計(jì)數(shù)器</b></p><p> ?。?)定時(shí)器/計(jì)數(shù)器簡(jiǎn)介</p><p> AT89S52單片機(jī)內(nèi)部設(shè)有兩個(gè)16位可編程的定時(shí)器/計(jì)數(shù)器,簡(jiǎn)稱定時(shí)器0(T0)和定時(shí)器1(T1)。定時(shí)器/計(jì)數(shù)器的工作方式、定時(shí)時(shí)間和啟停由程序來(lái)確定。定時(shí)器/計(jì)數(shù)器由定時(shí)器
64、0、定時(shí)器1和兩個(gè)特殊功能寄存器(TCON、TMOD)組成。這兩個(gè)定時(shí)器有4中工作方式,可由程序選擇。任一定時(shí)器/計(jì)數(shù)器在定時(shí)時(shí)間到或計(jì)數(shù)值到時(shí),可由程序安排產(chǎn)生中斷請(qǐng)求信號(hào)或不產(chǎn)生中斷請(qǐng)求信號(hào)。</p><p> 定時(shí)器/計(jì)數(shù)器的控制和狀態(tài)寄存器</p><p> 如圖3.2所示定時(shí)器控制寄存器(TCON)。 TCON為定時(shí)器/計(jì)數(shù)器的控制寄存器,同時(shí)也鎖存外部中斷請(qǐng)求標(biāo)志,各位定義
65、如下: </p><p> 圖3.2 定時(shí)器控制寄存器(TCON)</p><p> TF1:定時(shí)器/計(jì)數(shù)器1中斷請(qǐng)求標(biāo)志位。當(dāng)定時(shí)器計(jì)數(shù)滿溢出回零時(shí),由硬件置位,并可申請(qǐng)中斷。當(dāng)CPU響應(yīng)中斷并進(jìn)入中斷服務(wù)程序后,TF1自動(dòng)清零。 </p><p> TR1:定時(shí)器/計(jì)數(shù)器1運(yùn)行控制位,靠軟件置位或清除。置位時(shí),定時(shí)器/計(jì)數(shù)器1接通工作,清除時(shí)停止工作。 &
66、lt;/p><p> TF0:定時(shí)器/計(jì)數(shù)器0中斷請(qǐng)求標(biāo)志位,其功能和操作情況類同于TF1。 </p><p> TR0:定時(shí)器/計(jì)數(shù)器0運(yùn)行控制位,其功能和操作情況類同于TR1。 </p><p> IE1:外部中斷1的請(qǐng)求標(biāo)志位,檢測(cè)到在INT引腳上出現(xiàn)的外部中斷信號(hào)的下降沿時(shí),由硬件置位,申請(qǐng)中斷。進(jìn)入中斷服務(wù)程序后被硬件自動(dòng)清除。 </p>
67、<p> IT1:外部中斷1的觸發(fā)當(dāng)時(shí)選擇位。IT1=1,由下降沿觸發(fā);IT1=0,由低電平觸發(fā)??梢杂绍浖?lái)設(shè)置或清除。 </p><p> IE0:外部中斷0的請(qǐng)求標(biāo)志位。其功能和操作情況類同于IE1。 </p><p> IT0:外部中斷0的觸發(fā)方式選擇位。其功能和操作情況類同于IT1。 </p><p> 如圖3.3所示工作方式寄存器(TM
68、OD)。TMOD確定定時(shí)器的工作方式及功能選擇,不能位尋址。其中,高4位用于控制定時(shí)器1,低4位用于控制定時(shí)器0。TMOD各位的定義如下: </p><p> 圖3.3 工作方式寄存器(TMOD)</p><p> GATE:門控位,當(dāng)GATE=1時(shí),只有INTO或INT1引腳為高電平,且TR0或TR1置1時(shí),定時(shí)器/計(jì)數(shù)器才工作。當(dāng)GATE=0時(shí),定時(shí)器/計(jì)數(shù)器僅受TR0或TR1的控
69、制,而不管INT0或INT1引腳的電平是高還是低。 </p><p> C/T:定時(shí)器/計(jì)數(shù)器功能選擇位,C/T=0時(shí),設(shè)置為定時(shí)功能;C/T=1時(shí),設(shè)置為計(jì)數(shù)功能。 </p><p> M1M0 :工作方式選擇位。由M1和M0共2位形成4種編碼,對(duì)應(yīng)以下4種工作方式。 </p><p> M1M0=00:工作方式0(13位方式)。 </p>&
70、lt;p> M1M0=01:工作方式1(16位方式)。 </p><p> M1M0=10:工作方式2(自動(dòng)重裝初值8位方式)。 </p><p> M1M0=11:工作方式3(2個(gè)獨(dú)立8位方式——僅對(duì)T0)。 </p><p><b> 定時(shí)時(shí)間的計(jì)算方法</b></p><p> 當(dāng)設(shè)定為工作方式0時(shí)
71、,定時(shí)初值的計(jì)算公式為:X=213-T/T機(jī) ;計(jì)數(shù)初值的計(jì)算公式為:X=213 -計(jì)數(shù)值。</p><p> 當(dāng)設(shè)定為工作方式1時(shí),定時(shí)初值的計(jì)算公式為:X=216-T/T機(jī);計(jì)數(shù)初值的計(jì)算公式為:X=216 -計(jì)數(shù)值。</p><p> 當(dāng)設(shè)定為工作方式2時(shí),定時(shí)初值的計(jì)算公式為:X=28-T/T機(jī);計(jì)數(shù)初值的計(jì)算公式為:X=28 -計(jì)數(shù)值[13]。</p><
72、p> 3.1.4 復(fù)位電路</p><p> RC上電復(fù)位電路的理解:</p><p> 單片機(jī)要復(fù)位,本質(zhì)上是在其RESET腳上保持一定時(shí)間的高電平(一般保持兩個(gè)機(jī)器周期的高電平),單片機(jī)檢測(cè)到這個(gè)電平保持時(shí)間大于它要求的時(shí)間就會(huì)自動(dòng)復(fù)位。最簡(jiǎn)單的上電復(fù)位電路是用一個(gè)電容與一個(gè)電阻串聯(lián)組成,電容接VCC,電阻接地,RESET腳接在它們中間,當(dāng)上電時(shí),電容相當(dāng)于短路,此時(shí)電阻
73、上的電壓等于VCC,經(jīng)過(guò)一段時(shí)間后電阻電壓逐漸變小直至為0,只要RC時(shí)間選擇合適,就可以用來(lái)上電復(fù)位。但是這個(gè)電路要想起到重新復(fù)位的作用,只能先下電,再上電才行。如果在電容兩端并聯(lián)一個(gè)按鍵,就成了按鍵復(fù)位電路,只要按下這個(gè)按鍵,單片機(jī)就能復(fù)位而無(wú)需下電,這個(gè)就是兩者的區(qū)別。</p><p> 在硬件電路中,本設(shè)計(jì)電路采用單片機(jī)手動(dòng)按鍵復(fù)位RC電路,就是用一個(gè)10uF的電解電容與一個(gè)8.2K的電阻串聯(lián)組成,電容接
74、VCC高電平,電阻接地,RESET引腳接在他們中間,在電解電容兩端并接一個(gè)按鍵。當(dāng)上電時(shí),電容相當(dāng)于短路,此時(shí)電阻上的電壓等于VCC,引腳RESET端的電壓也為VCC(高電平),經(jīng)過(guò)一段時(shí)間后,由于電容不斷充電,電阻電壓逐漸變小直至為0,這個(gè)時(shí)候電容相當(dāng)于開(kāi)路,因此引腳RESET的電壓也為0(低電平),單片機(jī)在連續(xù)兩個(gè)機(jī)器周期的高電平時(shí)間段里完成復(fù)位過(guò)程。關(guān)于復(fù)位時(shí)間的計(jì)算由于數(shù)字邏輯電路中,電源正電壓為5V,高于3.5V為高電平,低于
75、1.5V為低電平。當(dāng)端口RESET的電壓低于3.5V時(shí)候,雖然電容還在繼續(xù)充電,但是單片機(jī)復(fù)位結(jié)束,這時(shí)候端口RESET為低電平。充電時(shí)間τ=RC,若C的單位是μF(微法),R的單位是MΩ(兆歐),時(shí)間常數(shù)τ的單位就是秒。復(fù)位時(shí)間一般取0.6τ,具體由復(fù)位有效電平?jīng)Q定。因?yàn)榘褟?fù)位時(shí)間拖長(zhǎng)10倍都沒(méi)關(guān)系,而且阻容也有誤差,所以用τ=RC估算下,放足裕量就行了。這里 τ = RC = 8.2kΩ×10μF = 82ms 。
76、 電容在上</p><p><b> 上電自動(dòng)復(fù)位</b></p><p> 上電瞬間,電容充電電流最大,電容相當(dāng)于短路,RST端為高電平,自動(dòng)復(fù)位;電容兩端的電壓達(dá)到電源電壓時(shí),電容充電電流為零,電容相當(dāng)于開(kāi)路,RST端為低電平,程序正常運(yùn)行。</p><p><b> 2、手動(dòng)按鍵復(fù)位</b></p>
77、<p> 首先經(jīng)過(guò)上電復(fù)位,當(dāng)按下按鍵時(shí),RST直接與VCC相連,為高電平形成復(fù)位,同時(shí)電解電容被短路放電;按鍵松開(kāi)時(shí),VCC對(duì)電容充電,充電電流在電阻上,RST依然為高電平,仍然是復(fù)位,充電完成后,電容相當(dāng)于開(kāi)路,RST為低電平,單片機(jī)開(kāi)始正常工作[10]。</p><p> 除以上兩種復(fù)位電路之外,還有很多種復(fù)位電路。復(fù)位電路的設(shè)計(jì)日趨多樣化,并且在各行各業(yè)中都有用到,復(fù)位電路的重要性可謂不
78、言而喻了。</p><p> 3.1.5 時(shí)鐘電路</p><p> AT89S52單片機(jī)的時(shí)鐘信號(hào)通常由兩種方式產(chǎn)生:一是內(nèi)部振蕩方式,二是外部時(shí)鐘方式。時(shí)鐘設(shè)計(jì)電路圖如3.4圖,圖3.5所示。</p><p> 圖3.4 內(nèi)部方式時(shí)鐘電路 圖3.5 外部方式時(shí)鐘電路</p><p&
79、gt;<b> 1、內(nèi)部振蕩方式</b></p><p> 電路如圖3.4所示。在51單片機(jī)內(nèi)部有一個(gè)高增益的反相放大器,用于構(gòu)成振蕩電路,反相放大器的輸入端接X(jué)TAL1,反相器的輸出端接X(jué)TAL2。內(nèi)部振蕩方式是在XTAL1和XTAL2引腳的兩端跨界石英晶體振蕩器和兩個(gè)電容構(gòu)成穩(wěn)定的自激振蕩路。通常電容C1和C2取30pF,對(duì)振蕩頻率有微調(diào)作用。晶體振蕩范圍是1.2MHZ-12MHZ&
80、lt;/p><p><b> 2、外部時(shí)鐘方式</b></p><p> 外部時(shí)鐘方式是把外部已有的時(shí)鐘信號(hào)引入到單片機(jī)。對(duì)51單片機(jī)而言,如圖3.5所示,外部時(shí)鐘由XTAL2輸入,直接送入內(nèi)部時(shí)鐘電路,XTAL1接地;而對(duì)CHMOS 51單片機(jī)而言,則XTAL1輸入,XTAL2懸空。</p><p> 外部時(shí)鐘方式常由多片51單片機(jī)同時(shí)工作
81、,以便多個(gè)單片機(jī)同步,。一般要求外部時(shí)鐘信號(hào)為高電平持續(xù)時(shí)間大于20MS,且頻率低于12MHZ的方波[1,10]。</p><p> 3.2 獨(dú)立式按鍵</p><p> 3.2.1 按鍵原理及電路 </p><p> 如圖3.6所示,獨(dú)立式按鍵是指直接用I/O線構(gòu)成的單個(gè)按鍵電路,每個(gè)獨(dú)立式按鍵占有一根I/O口線,每根I/O口線上的按鍵的工作狀態(tài)不會(huì)影
82、響其他I/O口線的工作狀態(tài),其結(jié)構(gòu)簡(jiǎn)單。本設(shè)計(jì)采用獨(dú)立式按鍵電路。當(dāng)按鍵數(shù)目多的時(shí)候,可采用矩陣式按鍵。獨(dú)立式按鍵配置靈活,軟件結(jié)構(gòu)簡(jiǎn)單,上拉電阻保證了按鍵斷開(kāi)時(shí),I/O 口線有確定的高電平,其電路原理圖如下:</p><p> 圖3.6 獨(dú)立式按鍵電路</p><p> 3.2.2 鍵盤(pán)設(shè)計(jì)注意的問(wèn)題</p><p> 鍵盤(pán)設(shè)計(jì)也應(yīng)該有注意的問(wèn)題。機(jī)械式按
83、鍵在按下或釋放的時(shí)候,由于機(jī)械彈性作用的影響,通常伴隨有一定時(shí)間的觸點(diǎn)機(jī)械抖動(dòng),然后其觸點(diǎn)才穩(wěn)定下來(lái)。其抖動(dòng)過(guò)程如圖3.7所示,抖動(dòng)的時(shí)間長(zhǎng)短與開(kāi)關(guān)的機(jī)械特性有關(guān),一般為5-10ms(本設(shè)計(jì)中去抖動(dòng)延遲時(shí)間是10ms)。</p><p> 如圖3.7所示,在觸點(diǎn)抖動(dòng)期間檢測(cè)按鍵的通與斷狀態(tài),可能導(dǎo)致判斷錯(cuò)誤,即按鍵一次按下或釋放被錯(cuò)誤地認(rèn)為是多次操作。系統(tǒng)設(shè)計(jì)中如果開(kāi)關(guān)脈沖是作為外部中斷觸發(fā)信號(hào)或要對(duì)開(kāi)關(guān)脈沖進(jìn)
84、行計(jì)數(shù)時(shí),這種情況是不允許出現(xiàn)的。為了克服按鍵觸點(diǎn)機(jī)械抖動(dòng)所致的檢測(cè)誤判,必須采取去抖動(dòng)措施,去抖動(dòng)可以從硬、軟兩方面予以考慮。由于本設(shè)計(jì)采用軟件去抖動(dòng)方式,所以硬件去抖動(dòng)的方法在這里不詳細(xì)解釋。軟件上采取的措施是在檢測(cè)到有按鍵按下時(shí),執(zhí)行一個(gè)10ms左右(具體時(shí)間應(yīng)視所使用的按鍵進(jìn)行調(diào)整)的延時(shí)程序,再確認(rèn)該鍵電平是否仍保持閉合狀態(tài)電平,若仍保持閉合狀態(tài)電平,則確認(rèn)該鍵處于閉合狀態(tài);同理,在檢測(cè)到該鍵釋放后,也應(yīng)該采用相同的步驟進(jìn)行確
85、認(rèn),從而消除抖動(dòng)對(duì)系統(tǒng)的影響。</p><p> 本設(shè)計(jì)中采用軟件去按鍵抖動(dòng),在檢測(cè)有鍵按下后執(zhí)行一個(gè)10ms的延時(shí)程序,然后再去確認(rèn)該鍵控制的端口電平是否仍閉合狀態(tài)電平,如果是,CPU執(zhí)行下一步程序,如果不是,則返回繼續(xù)等待按鍵。當(dāng)確定按鍵有效之后,檢測(cè)該鍵是否釋放,如果釋放,延遲10ms去抖動(dòng),查看是否處于釋放電平狀態(tài),如果仍是釋放電平的狀態(tài),則單片機(jī)CPU會(huì)轉(zhuǎn)到對(duì)應(yīng)按鍵的子程序中去執(zhí)行指令。如果10ms延
86、時(shí)過(guò)后發(fā)現(xiàn)不是按鍵釋放電平的狀態(tài),則繼續(xù)等待按鍵釋放[1]。</p><p> 圖3.7 按鍵觸點(diǎn)的機(jī)械抖動(dòng)</p><p> 3.3 紅外發(fā)射電路的設(shè)計(jì)</p><p> 根據(jù)發(fā)射管本身的物理性質(zhì),必須有載波信號(hào)與即將發(fā)射的信號(hào)相“與”,然后將相“與”后的信號(hào)送發(fā)射管,才能進(jìn)行紅外信號(hào)的發(fā)射傳送,而在頻率為38KHz(本設(shè)計(jì)取頻率為40KHZ)的載波信號(hào)下
87、,發(fā)射管的性能最好,發(fā)射距離最遠(yuǎn),所以在硬件設(shè)計(jì)上[15],本設(shè)計(jì)采用40KHz的晶振產(chǎn)生載波信號(hào),與發(fā)射信號(hào)進(jìn)行邏輯“與”運(yùn)算后,通過(guò)三極管的功率驅(qū)動(dòng)到紅外發(fā)光二極管上。</p><p> 紅外發(fā)送電路由單片機(jī)發(fā)送控制電路和紅外發(fā)送管驅(qū)動(dòng)輸出電路組成,當(dāng)單片機(jī)P1.0口輸出為“0”時(shí),發(fā)射管不發(fā)光,當(dāng)單片機(jī)P1.0輸出為“1”時(shí),紅外發(fā)送管發(fā)出40KHz的載波信號(hào)。</p><p>
88、 3.3.1 遙控發(fā)射器遙控方式</p><p> 本遙控發(fā)射器采用碼分制遙控方式,碼分制紅外遙控就是指令信號(hào)產(chǎn)生電路以不同的脈沖編碼(不同的脈沖數(shù)目及組合)代表不同的控制指令。當(dāng)不同的指令鍵被按下時(shí),指令信號(hào)電路產(chǎn)生不同脈沖編碼的指令信號(hào),也就是進(jìn)行編碼,然后經(jīng)調(diào)制電路調(diào)制,變?yōu)榫幋a脈沖編碼脈沖調(diào)制信號(hào),再由驅(qū)動(dòng)電路驅(qū)動(dòng)紅外發(fā)射器發(fā)射紅外信號(hào)[4]。整體過(guò)程如圖3.8所示。</p><p
89、> 圖3.8 遙控發(fā)射過(guò)程</p><p> 3.3.2 發(fā)射電路的設(shè)計(jì)</p><p> 本發(fā)射電路采用一個(gè)12MHZ的晶體振蕩器,產(chǎn)生相對(duì)應(yīng)受控開(kāi)關(guān)的脈沖頻率,通過(guò)紅外線發(fā)射管發(fā)射出去。如圖3.9所示,其中第9腳(RST)所接的是手動(dòng)按鍵RC復(fù)位電路。P1.0接一個(gè)三極管,紅外發(fā)光二極管利用紅外光為介質(zhì),將控制信號(hào)以紅外光脈沖的形式發(fā)射出去,由接收電路再進(jìn)行放大,解調(diào),信
90、號(hào)還原。</p><p> 晶體三極管主要用于放大電路中起開(kāi)關(guān)作用,本設(shè)計(jì)采用的是一個(gè)NPN型的三極管9013,高電平驅(qū)動(dòng)三極管工作。為了得到更大的放大倍數(shù),采用了類似共射極接法。因?yàn)閺腜1.0口出來(lái)的為高電壓,而三極管9013不能承受此電壓,所以采用了一個(gè)阻值較大的電阻來(lái)起分壓作用,從而緩沖了加到三極管上的電壓(本設(shè)計(jì)采用4.7KΩ電阻來(lái)分壓)。</p><p> 紅外發(fā)射管的工作電
91、壓一般為1.5V至1.7V,不能直接用5V的電壓加在上面,所以又接了一個(gè)39Ω的電阻,起分流作用,以保證紅外發(fā)射管正常工作。</p><p> 圖3.9 遙控發(fā)射器硬件原理圖</p><p> 3.4 硬件系統(tǒng)的工作原理</p><p> 由遙控發(fā)射器的電路原理圖可以知道,單片機(jī)AT89S52的引腳不是每一個(gè)都會(huì)用到,本設(shè)計(jì)中P0口的P0.0和P0.1會(huì)做鍵
92、掃描端口,在P0.0和P0.1兩個(gè)引腳引上拉電阻。在無(wú)按鍵按下的時(shí)候兩個(gè)引腳全部為高電平,當(dāng)P0.0和P0.1兩引腳有任意一個(gè)按鍵按下時(shí)候,會(huì)觸發(fā)其引腳變?yōu)榈碗娖?。在軟件編程時(shí),CPU會(huì)一直掃描P0.0和P0.1這兩個(gè)引腳電平,當(dāng)掃描發(fā)現(xiàn)有低電平出現(xiàn)的時(shí)候會(huì)自動(dòng)轉(zhuǎn)移到相應(yīng)的子程序中去。然后再由P1.0引腳將對(duì)應(yīng)的40KHZ的方波通過(guò)紅外線發(fā)射管發(fā)送出去。</p><p> 單片機(jī)的18和19引腳接12MHZ的石
93、英晶體振蕩器,本設(shè)計(jì)單片機(jī)的時(shí)鐘信號(hào)采用內(nèi)部振蕩方式,內(nèi)部振蕩方式是在XTAL1和XTAL2引腳兩端跨接石英晶體振蕩器和兩個(gè)電容構(gòu)成穩(wěn)定的自激振蕩電路。通常電容C1和C2取30pF,對(duì)振蕩頻率有微調(diào)作用,可以使系統(tǒng)更穩(wěn)定,避免噪聲干擾而死機(jī)[9,12]。</p><p> 單片機(jī)的9引腳接單片機(jī)復(fù)位電路,本設(shè)計(jì)單片機(jī)采用手動(dòng)按鍵RC上電復(fù)位,當(dāng)復(fù)位引腳RST出現(xiàn)2個(gè)機(jī)器周期以上的高電平時(shí),單片機(jī)就會(huì)執(zhí)行復(fù)位操作
94、。因?yàn)槭褂?2MHZ的晶振,則需持續(xù)2us以上才能完成復(fù)位操作。</p><p> 單片機(jī)的31引腳EA為外部程序存儲(chǔ)器地址允許輸入端,本設(shè)計(jì)中上拉一個(gè)高電平給這個(gè)引腳,使CPU可以正常的讀取片內(nèi)程序存儲(chǔ)器ROM指令。</p><p> 單片機(jī)的1引腳作為紅外線遙控碼的輸出口,用于輸出40KHZ載波編碼,其中引腳電路上的9013三極管的作用是驅(qū)動(dòng)紅外發(fā)射管發(fā)射載波脈沖,當(dāng)P1.0為高電
95、平的時(shí)候,三極管驅(qū)動(dòng)紅外線發(fā)射管發(fā)射脈沖??刂菩盘?hào)以紅外光脈沖的形式發(fā)射出去,再由接收電路再進(jìn)行放大,解調(diào),信號(hào)還原。當(dāng)P1.0為低電平的時(shí)候,三極管工作在截止區(qū),集電極無(wú)電流,相當(dāng)于斷路,紅外線發(fā)射管不發(fā)射脈沖。</p><p> 4 系統(tǒng)功能的實(shí)現(xiàn)</p><p> 4.1 遙控碼的編碼格式</p><p> 該遙控器采用脈沖個(gè)數(shù)編碼,不同的脈沖個(gè)數(shù)代
96、表不同的碼,最小為2個(gè)脈沖,最大為3個(gè)脈沖,為了使接收可靠,第一位碼寬為3ms,其余為1ms,遙控碼數(shù)據(jù)幀間隔大于10ms,如圖4.1所示,圖中前兩個(gè)遙控輸出碼為本次設(shè)計(jì)所要輸出的遙控碼,一共兩個(gè)按鍵,兩個(gè)遙控輸出碼。第三個(gè)遙控輸出碼是在按鍵擴(kuò)展中才會(huì)用到的,本次設(shè)計(jì)不會(huì)出現(xiàn)。第1腳P1.0輸出編碼波形。</p><p> 圖4.1 遙控碼的編碼格式</p><p> 4.2 遙控碼
97、的發(fā)射</p><p> 當(dāng)系統(tǒng)上電工作無(wú)按鍵按下時(shí)候,由于兩引腳上拉電阻的作用,會(huì)一直持續(xù)高電平狀態(tài)。由于軟件設(shè)計(jì),CPU會(huì)一直掃描PO口的P0.0和P0.1兩引腳,直到有按鍵按下,觸發(fā)引腳的低電平時(shí)候,程序會(huì)自動(dòng)轉(zhuǎn)移到按鍵所對(duì)應(yīng)的子程序中去,然后設(shè)定遙控碼的 脈沖個(gè)數(shù)。由于采用紅外線遙控方式,所以能受到遙控距離、角度等影響,使用效果不是很好。如果調(diào)制成40KHZ的載波或調(diào)幅的方式進(jìn)行編碼,可提高遙控距離,并
98、且,沒(méi)有角度影響。</p><p> 4.3 利用仿真的系統(tǒng)實(shí)現(xiàn)</p><p> 在本次設(shè)計(jì)中過(guò)程中,為了查看軟件是否可以和硬件搭配實(shí)現(xiàn)實(shí)物所有的功能。采用了PROTUSE軟件來(lái)進(jìn)行仿真實(shí)驗(yàn)。利用軟件畫(huà)出電路原理圖,然后將程序存儲(chǔ)到單片機(jī)的ROM寄存器中。</p><p> 4.3.1 PROTUSE軟件簡(jiǎn)介</p><p>
99、Proteus ISIS是英國(guó)Labcenter公司開(kāi)發(fā)的電路分析與實(shí)物仿真軟件。它運(yùn)行于Windows操作系統(tǒng)上,可以仿真、分析(SPICE)各種模擬器件和集成電路,該軟件的功能是:</p><p> 實(shí)現(xiàn)了單片機(jī)仿真和SPICE電路仿真相結(jié)合。具有模擬電路仿真、數(shù)字電路仿真、單片機(jī)及其外圍電路組成的系統(tǒng)的仿真、RS232動(dòng)態(tài)仿真、I2C調(diào)試器、SPI調(diào)試器、鍵盤(pán)和LCD系統(tǒng)仿真的功能;有各種虛擬儀器,如示波
100、器、邏輯分析儀、信號(hào)發(fā)生器等。</p><p> 提供軟件調(diào)試功能。在硬件仿真系統(tǒng)中具有全速、單步、設(shè)置斷點(diǎn)等調(diào)試功能,同時(shí)可以觀察各個(gè)變量、寄存器等的當(dāng)前狀態(tài),因此在該軟件仿真系統(tǒng)中,也必須具有這些功能;同時(shí)支持第三方的軟件編譯和調(diào)試環(huán)境,如Keil C51 uVision2等軟件。</p><p> 具有強(qiáng)大的原理圖繪制功能??傊撥浖且豢罴瘑纹瑱C(jī)和SPICE分析于一身的仿真軟
101、件,功能極其強(qiáng)大。本章介紹Proteus ISIS軟件的工作環(huán)境和一些基本操作。</p><p> 4.3.2 Proteus ISIS的特點(diǎn)</p><p> 支持ARM7,PIC ,AVR,HC11以及8051系列的微處理器CPU模型,更多模型正在開(kāi)發(fā)中,更新信息請(qǐng)參見(jiàn)主頁(yè)資料;交互外設(shè)模型有LCD顯示、RS232終端、通用鍵盤(pán)、開(kāi)關(guān)、按鈕、LED等;強(qiáng)大的調(diào)試功能,如訪問(wèn)寄存器
102、與內(nèi)存,設(shè)置斷點(diǎn)和單步運(yùn)行模式;支持如IAR、Keil和Hitech等開(kāi)發(fā)工具的源碼C和匯編的調(diào)試;一鍵“make”特性:一個(gè)鍵完成編譯與仿真操作;內(nèi)置超過(guò)6000標(biāo)準(zhǔn)SPICE模型,完全兼容制造商提供的SPICE模型;DLL界面為應(yīng)用提供特定的模式;基于工業(yè)標(biāo)準(zhǔn)的SPICE3F5混合模型電路仿真器14種虛擬儀器:示波器、邏輯分析儀、信號(hào)發(fā)生器、規(guī)程分析儀等;高級(jí)仿真包含強(qiáng)大的基于圖形的分析功能:模擬、數(shù)字和混合瞬時(shí)圖形;頻率;轉(zhuǎn)換;噪
103、聲;失真;付立葉;交流、直流和音頻曲線;模擬信號(hào)發(fā)生器包括直流、正旋、脈沖、分段線性、音頻、指數(shù)、單頻FM;數(shù)字信號(hào)發(fā)生器包括尖脈沖、脈沖、時(shí)鐘和碼流;集成PROTEUS PCB設(shè)計(jì)形成完整的電子設(shè)計(jì)系。</p><p> 4.3.3 ISIS智能原理圖輸入系統(tǒng)</p><p> ISIS是Preoteus系統(tǒng)的中心,具有控制原理圖畫(huà)圖的超強(qiáng)的設(shè)計(jì)環(huán)境。ISIS有以下特性:</
104、p><p><b> 1、精美的原理圖</b></p><p> ISIS提供給用戶圖形外觀,包括線寬、填充類型、字符等的全部控制,使用戶能夠生成如雜志上看到的精美的原理圖,畫(huà)完圖可以以圖形文件輸出,畫(huà)圖的外形由風(fēng)格模板定義。</p><p><b> 2、良好的用戶界面</b></p><p>
105、 IsIs有一個(gè)無(wú)連線方式,用戶只需單擊元件的引腳或者先前布好的線,就能實(shí)現(xiàn)布線。此外,擺放、編輯、移動(dòng)和刪除操作能夠直接用鼠標(biāo)實(shí)現(xiàn).無(wú)需去單擊菜單或圖標(biāo)。</p><p><b> 3、自動(dòng)走線</b></p><p> 只要單擊想要連接的兩個(gè)引腳,就能簡(jiǎn)單地實(shí)現(xiàn)走線。在特殊的位置需要布線時(shí),使用者只需在中間的角落單擊。自動(dòng)走線也能在元件移動(dòng)的時(shí)候操作,自動(dòng)解
106、決相應(yīng)連線。節(jié)點(diǎn)能夠自動(dòng)布置和移除。既節(jié)約了時(shí)間,又避免了其他可能的錯(cuò)誤。</p><p><b> 4、層次設(shè)計(jì)</b></p><p> ISIS支持層次圖設(shè)計(jì),模塊可畫(huà)成標(biāo)準(zhǔn)元件,特殊的元件能夠定義為通過(guò)電路圖表示的模塊,能夠任意設(shè)定層次,模塊可畫(huà)成標(biāo)準(zhǔn)元件,在使用中可放置和刪除端口的子電路模塊。</p><p><b>
107、 5、總線支持</b></p><p> ISIS提供的不僅是一根總線,還能用總線引腳定義元件和子電路。因此,一個(gè)連線在處理器和存儲(chǔ)器之間的32位的處理器總線可以用單一的線表示,節(jié)省繪圖的時(shí)間和空間。</p><p><b> 6、元件庫(kù)</b></p><p> ISIS的元件庫(kù)包含8000個(gè)元件,有標(biāo)準(zhǔn)符號(hào)、三極管、二極管
108、、熱離子管、TTLCMOS、ECL、微處理器,以及存儲(chǔ)器元件、PLD、模擬IC和運(yùn)算放大器。</p><p><b> 7、可視封裝工具</b></p><p> 原理圖和PCB庫(kù)元件的匹配是由封裝工具簡(jiǎn)化的。在原理圖部分的引腳旁邊將顯示</p><p> PCB的封裝,并允許每個(gè)引腳名對(duì)應(yīng)文本和圖形的引腳號(hào)碼。</p>&
109、lt;p><b> 8、復(fù)合元件</b></p><p> ISIS的元件庫(kù)表達(dá)方式有很多種,無(wú)論是單個(gè)元件、同態(tài)復(fù)合元件、異態(tài)復(fù)合元件,還是連接器,都可以在原理圖上以獨(dú)立引腳來(lái)表達(dá),不用所有線都連到一個(gè)獨(dú)立元件上。</p><p><b> 9、元件特性</b></p><p> 設(shè)計(jì)中的每個(gè)元件都有一定數(shù)
溫馨提示
- 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ù)僅提供信息存儲(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ī)紅外遙控系統(tǒng)畢業(yè)設(shè)計(jì)
- 單片機(jī)紅外遙控系統(tǒng)設(shè)計(jì)畢業(yè)設(shè)計(jì)
- 單片機(jī)畢業(yè)設(shè)計(jì)外文翻譯
- 單片機(jī)紅外遙控外文翻譯
- 畢業(yè)設(shè)計(jì)--基于單片機(jī)溫度控制系統(tǒng)設(shè)計(jì)(含外文翻譯)
- 單片機(jī)畢業(yè)設(shè)計(jì)外文翻譯7
- 單片機(jī)畢業(yè)設(shè)計(jì)--基于單片機(jī)的智能恒溫箱設(shè)計(jì)(含外文翻譯)
- 單片機(jī)畢業(yè)設(shè)計(jì)外文翻譯9
- 單片機(jī)基礎(chǔ)畢業(yè)設(shè)計(jì)外文翻譯
- 單片機(jī)畢業(yè)設(shè)計(jì)外文翻譯1
- 畢業(yè)設(shè)計(jì)--基于avr單片機(jī)的數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)(含外文翻譯)
- 單片機(jī)測(cè)油溫和轉(zhuǎn)速畢業(yè)設(shè)計(jì)(含外文翻譯)
- 畢業(yè)設(shè)計(jì)--基于單片機(jī)的流量檢測(cè)系統(tǒng)的設(shè)計(jì)(含外文翻譯)
- 單片機(jī)畢業(yè)設(shè)計(jì)----基于單片機(jī)的多功能電子時(shí)鐘設(shè)計(jì)(含外文翻譯)
- 畢業(yè)設(shè)計(jì)---基于單片機(jī)的紅外遙控系統(tǒng)設(shè)計(jì)
- 基于單片機(jī)的步進(jìn)電機(jī)控制系統(tǒng)畢業(yè)設(shè)計(jì)(含外文翻譯)
- 單片機(jī)畢業(yè)設(shè)計(jì)外文翻譯-- pic系列單片機(jī)的特點(diǎn)
- 單片機(jī)畢業(yè)設(shè)計(jì)外文翻譯單片機(jī)at89c51
- 基于單片機(jī)的步進(jìn)電機(jī)控制系統(tǒng)畢業(yè)設(shè)計(jì)(含外文翻譯)
- 畢業(yè)設(shè)計(jì)---基于單片機(jī)的數(shù)字鐘設(shè)計(jì)(含外文翻譯)
評(píng)論
0/150
提交評(píng)論