版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、 紅外遙控密碼鎖的設(shè)計(jì)前言紅外線IrDA,簡(jiǎn)稱IR,是一種點(diǎn)對(duì)點(diǎn)的無(wú)線通訊方式,只能進(jìn)行短距離的無(wú)線數(shù)據(jù)的傳輸,且中間不能有障礙物。紅外線又稱紅外光波,在電磁波譜中,光波的波長(zhǎng)范圍為0.01um 1000um;波長(zhǎng)為0.76um 1000um的光波為紅外光(線),紅外線遙控是利用近紅外光傳送遙控指令的,波長(zhǎng)為0.76um 1.5um;用近紅外作為遙控光源,是因?yàn)槟壳凹t外發(fā)射器件與紅外接收器件的發(fā)光與受光峰值波長(zhǎng)一般為0.8um 0.94um,在近紅外光波段內(nèi),二者的光譜正好重合,能夠很好地匹配,可以獲得較高的傳輸效率及較高的可靠性。目前紅外線得到了很普片的應(yīng)用,如紅外線鼠標(biāo),紅外線打印機(jī),紅外
2、線鍵盤等等。本論文設(shè)計(jì)的是基于C51單片機(jī)的紅外遙控密碼鎖。該鎖采用6位數(shù)作為密碼,紅外遙控密碼鎖的應(yīng)用研究主要應(yīng)用了單片機(jī)的編程進(jìn)行紅外的編碼與解碼,并通過(guò)單片機(jī)實(shí)現(xiàn)密碼的設(shè)置、修改及識(shí)別功能。一 緒論1.1課題背景進(jìn)入二十一世紀(jì)以來(lái)各種電子信息技術(shù)進(jìn)入高速發(fā)展階段,包括信息系統(tǒng)技術(shù)微電子、計(jì)算機(jī)和現(xiàn)代通信技術(shù)、傳感器技術(shù),這也包括紅外線技術(shù),紅外線是一種人的肉眼看不見(jiàn)的光線,最近二三十年來(lái),初露頭角的紅外技術(shù),在各個(gè)領(lǐng)域里獲得了廣泛的應(yīng)用。開(kāi)始應(yīng)用到生產(chǎn)上,并形成了一門嶄新的技術(shù)紅外技術(shù)。本設(shè)計(jì)針對(duì)傳統(tǒng)機(jī)械鎖的不足而設(shè)計(jì)的通過(guò)紅外來(lái)控制的密碼鎖。1.2紅外通訊紅外通訊,顧名思義,就是通過(guò)紅
3、外線傳輸數(shù)據(jù)。在電腦技術(shù)發(fā)展早期,數(shù)據(jù)都是通過(guò)線纜傳輸?shù)模€纜傳輸連線麻煩,需要特制接口,頗為不便。于是后來(lái)就有了紅外、藍(lán)牙、等無(wú)線數(shù)據(jù)傳輸技術(shù)。紅外通訊技術(shù)利用紅外線來(lái)傳遞數(shù)據(jù),是無(wú)線通訊技術(shù)的一種。紅外線的特征:紅外傳輸是一種點(diǎn)對(duì)點(diǎn)的傳輸方式,無(wú)線,不能離的太遠(yuǎn),要對(duì)準(zhǔn)方向,且中間不能有障礙,由于紅外線的直射特性,紅外通訊技術(shù)不太適合傳輸障礙比較多的地方。因此,紅外通訊技術(shù)多數(shù)情況下傳輸距離短、傳輸速率不高。1.3密碼鎖的發(fā)展趨勢(shì)與特點(diǎn)密碼鎖產(chǎn)生也是經(jīng)歷了一些階段的,有傳統(tǒng)的機(jī)械密碼鎖,電子密碼鎖,數(shù)字密碼鎖等。隨著科學(xué)技術(shù)的發(fā)展,一些以芯片特別是單片機(jī)為處理核心的新型密碼鎖開(kāi)始不斷出現(xiàn)。
4、電子密碼鎖是一種通過(guò)密碼輸入來(lái)控制電路或是芯片工作,從而控制機(jī)械開(kāi)關(guān)的閉合,完成開(kāi)鎖、閉鎖等任務(wù)。本論文就以AT89C51單片機(jī)設(shè)計(jì)了一個(gè)紅外遙控密碼鎖。二 密碼鎖的總體設(shè)計(jì)2.1密碼鎖的結(jié)構(gòu)與組成該鎖采用80C51作為本設(shè)計(jì)的核心,由遙控發(fā)射部分及主機(jī)接收部分組成。2.1.1 遙控發(fā)射部分遙控發(fā)射器主要由AT89C51單片機(jī),紅外發(fā)射二級(jí)管,矩形鍵盤,數(shù)碼顯示管及復(fù)位電路等組成。該部分的結(jié)構(gòu)圖如圖2-1所示。紅外發(fā)射器AT89C51鍵 盤顯 示復(fù) 位晶 振 圖2-1遙控發(fā)射結(jié)構(gòu)框圖2.1.2 主機(jī)接收部分主機(jī)接收部分主要由AT89C51單片機(jī),紅外接收頭,矩形鍵盤,數(shù)碼顯示管,報(bào)警器,電磁鎖
5、及復(fù)位電路等組成。該部分的結(jié)構(gòu)圖如圖2-2所示。鍵 盤紅外接收頭AT89C51 顯 示電磁鎖復(fù) 位報(bào)警器晶 振圖2-2主機(jī)結(jié)構(gòu)框圖2.2 密碼鎖的工作原理 2.2.1 基本工作原理主機(jī)上通過(guò)鍵盤輸入6位密碼,將輸入的密碼與設(shè)定的密碼進(jìn)行比較,如果相同則驅(qū)動(dòng)電磁鎖進(jìn)行開(kāi)鎖,如果不相同則不解鎖;當(dāng)從遙控器上輸入6位密碼時(shí)利用紅外給主機(jī)一個(gè)中斷信號(hào),使主機(jī)執(zhí)行中斷服務(wù)程序(解碼程序),來(lái)控制解鎖與否。紅處線發(fā)射及接收控制電路均采用8051單片機(jī)來(lái)實(shí)現(xiàn),電路簡(jiǎn)單,輸出控制方式可選擇,實(shí)用性強(qiáng)。具體工作過(guò)程如下:發(fā)射時(shí)如圖2-3所示,通過(guò)定時(shí)器T1(P3.5)口,利用定時(shí)中斷來(lái)發(fā)射信號(hào),定時(shí)器1中斷服務(wù)
6、程序的功能是:紅外管發(fā)射的信號(hào)需經(jīng)過(guò)高頻(采用38.5KHZ)調(diào)制載波才可發(fā)射出去,利用定時(shí)器1的定時(shí)作用,在發(fā)射高頻脈沖時(shí),通過(guò)定時(shí)對(duì)P3.5口的取反的操作,使發(fā)射信號(hào)調(diào)制成38.5KHZ的高頻。再經(jīng)過(guò)紅外發(fā)射二級(jí)管發(fā)射,發(fā)射距離為8-10米。 AT89C51P3.5 紅外發(fā)射二級(jí)管 圖2-3紅外發(fā)射框圖接收時(shí)如圖2-4所示,利用P3.2口(外部中斷0)的下降沿觸發(fā)中斷來(lái)接收信號(hào),并通過(guò)P3.3口來(lái)判斷高低電平。外部中斷0的中斷服務(wù)程序的功能是:由接收第一位碼的下降沿觸發(fā)中斷后,對(duì)第一位(起始位)碼的碼寬進(jìn)行驗(yàn)證。若第一位低電平碼的脈寬小于2ms,將作為錯(cuò)誤幀處理。當(dāng)間隔位的高電平脈沖寬大于
7、3ms時(shí),結(jié)束接收,然后根據(jù)累加器A中的脈沖數(shù),執(zhí)行相應(yīng)的功能操作。 AT89C51P3.2(INT0)P3.3 紅外接收頭 圖2-4紅外接收框圖2.2.2 紅外發(fā)射信號(hào)的編碼遙控器信息碼是由AT89C51單片機(jī)的定時(shí)器T1調(diào)制成38.5KHZ紅外載波信號(hào),而關(guān)鍵是它的編碼,在這里遙控器的編碼采用脈沖個(gè)數(shù)編碼格式,不同的脈沖個(gè)數(shù)代表不同的操作碼信息,最少為2個(gè)脈沖(采用2個(gè)),其它信息碼的脈沖個(gè)數(shù)逐個(gè)遞增。為了使接收盡量可靠,第一位碼寬為3ms,其余碼寬為1ms,碼間距為1ms,遙控碼數(shù)據(jù)間隔大于10ms。遙控器上每個(gè)鍵都有唯一的一個(gè)鍵號(hào),單片機(jī)通過(guò)查得按下鍵的鍵值發(fā)約定個(gè)數(shù)的脈沖。遙控器的編
8、碼格式如圖2-5所示。頻率為38.5KHZ,即周期約為26us,第一位碼需115個(gè)脈沖周期,其余為38個(gè)脈沖周期,結(jié)束幀至少為385個(gè)脈沖周期。 按鍵0編碼輸出格式 115個(gè) 38個(gè) 26us 3ms 1ms 1ms 按鍵1編碼輸出格式 115個(gè) 38個(gè) 38個(gè) 3ms 1ms 1ms 1ms 1ms 兩幀信號(hào)之間的輸出格式 一幀信號(hào) 兩幀信號(hào)間隔 一幀信號(hào) 115個(gè) 38個(gè) 38個(gè) 115個(gè) 38個(gè) 3ms 1ms 1ms 至少為10ms 3ms 1ms 1ms圖2-5遙控器編碼圖2.2.3 紅外接收信號(hào)的解碼接收信號(hào)的解碼是根據(jù)紅外線接收器輸出脈沖幀的格式來(lái)進(jìn)行解碼的,即用累加器A分別對(duì)符
9、合條件的負(fù)跳變脈沖進(jìn)行計(jì)數(shù)。當(dāng)紅外線接收器輸出脈沖幀數(shù)據(jù)時(shí),第一位碼的低電平將啟動(dòng)中斷程序,實(shí)時(shí)接收數(shù)據(jù)幀。在接收數(shù)據(jù)幀時(shí),根據(jù)發(fā)射幀的格式將對(duì)第一位(起始)碼的碼寬進(jìn)行驗(yàn)證。若第一位低電平碼的脈沖寬小于2ms,將作為錯(cuò)誤碼處理。當(dāng)間隔位的高電平脈沖大于3ms時(shí),結(jié)束接收,然后根據(jù)累加器A中的脈沖個(gè)數(shù),執(zhí)行相應(yīng)的操作。圖2-6為紅外線接收器輸出的一幀遙控碼波形圖。 停止位10ms 1ms 10ms 3ms 1ms 圖2-6紅外接收遙控碼波形圖2.3 密碼鎖的主要功能遙控密碼鎖的基本設(shè)計(jì)功能主要有如下幾個(gè)部分:1 設(shè)定密碼:在該設(shè)計(jì)中設(shè)定了一組原始密碼:用戶可以通過(guò)矩形鍵盤的修改鍵來(lái)修改原始密碼
10、。比如:按一下修改鍵,接著在本機(jī)上依次輸入六位密碼,再按確認(rèn)(#)鍵即表示密碼被設(shè)置好了,那么下次用戶輸入這組數(shù)據(jù)即可開(kāi)鎖。2 密碼輸入有效顯示:為了確信是否有鍵按下以及防止密碼外泄,在電路中設(shè)置了數(shù)碼管顯示,即在顯示時(shí)并不是顯示用戶按下的數(shù)字符號(hào),而是在輸入一位時(shí),數(shù)碼管則顯示一個(gè)字符“ H”, 這樣既巧妙地提醒了用戶又保護(hù)了 用戶密碼,此本設(shè)計(jì)可靠性優(yōu)點(diǎn)之一。3 密碼錯(cuò)誤報(bào)警:當(dāng)用戶輸入的密碼連續(xù)三次出現(xiàn)密碼錯(cuò)誤時(shí),系統(tǒng)會(huì)長(zhǎng)期報(bào)警不止,這時(shí)必須按復(fù)位方可停止。乃安全可靠性能之二。4 遙控開(kāi)鎖:這是本論文設(shè)計(jì)中的最大特點(diǎn)之處,用戶可以不必在主機(jī)上輸入密碼開(kāi)鎖。只要手執(zhí)遙控器,鍵入正確密碼,便
11、會(huì)自動(dòng)開(kāi)鎖;如果密碼錯(cuò)誤,同樣也會(huì)報(bào)警。這是本設(shè)計(jì)優(yōu)越性能之三。三 硬件電路設(shè)計(jì)3.1 單片機(jī)AT89C51簡(jiǎn)介3.1.1 主要特性 在本設(shè)計(jì)中,是以AT89C51單片機(jī)為核心的。AT89C51單片機(jī)是由ATMEL公司推出的AT89系列的單片機(jī)。AT89C2051是一種帶2K字節(jié)閃爍可編程可擦除片機(jī)。單片機(jī)的可擦除只讀存儲(chǔ)器可以反復(fù)擦除100次。該器件采用ATMEL高密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲(chǔ)器組合在單個(gè)芯片中,ATMEL的AT89C51是一種高效微控制器,AT89C51是它的一種精簡(jiǎn)版本。引腳排練如圖3-1所
12、示。它的性能與主要特點(diǎn)如下:(1) 與MCS-51微控制器產(chǎn)品系列兼容。(2) 片內(nèi)有4KB可在線重復(fù)編程的快閃擦寫存儲(chǔ)器(Flash Memory)。(3) 存儲(chǔ)器可循環(huán)寫入/擦除1000次。 圖3-1 AT89C51引腳排列圖(4) 寬工作電壓范圍:Vcc可為2.7V-6V。(5) 1288位內(nèi)部RAM。 (6) 32條可編程I/O線。(7) 兩個(gè)16位定時(shí)器/計(jì)數(shù)器。(8) 中斷結(jié)構(gòu)具有5個(gè)中斷源和2個(gè)優(yōu)先級(jí)。(9) 可編程全雙工串行通道。(10) 空閑狀態(tài)維持低功耗和掉電狀態(tài)保存存儲(chǔ)內(nèi)容。3.1.2 管腳說(shuō)明主要引腳的具體描述如下;Vcc: 電源。提供掉線、空閑、正常+5V工作電壓。V
13、ss(GND): 接地。P0口: P0口可以作普通的雙向I/O口使用,也可以在訪問(wèn)外部存儲(chǔ)器時(shí)用作低8位地址線和數(shù)據(jù)總線。P1口: P1口是一個(gè)內(nèi)部提供上拉電阻的8位雙向I/O口,向P2口管腳寫入1后,被內(nèi)部上拉為高電平可用作輸入口,當(dāng)作為輸入腳時(shí),被外部拉低的P1口會(huì)因?yàn)閮?nèi)部上拉而輸出電流。P1口還具備第二功能。P2口: P2口是一個(gè)內(nèi)部提供上拉電阻的8位雙向I/O口,向P2口管腳寫入1后,被內(nèi)部上拉為高電平可用作輸入口,當(dāng)作為輸入腳時(shí),被外部拉低的P2口會(huì)因?yàn)閮?nèi)部上拉而輸出電流。在訪問(wèn)外部程序存儲(chǔ)器和外部數(shù)據(jù)存儲(chǔ)器時(shí),可作為地址總線的高位字節(jié)。P3口:也是一個(gè)雙向功能口既可以作普通輸入輸出
14、口使用,也可以按每一位的定義實(shí)現(xiàn)第二功能操作。P3口的第二功能如表1.1所示???線第二功能信 號(hào) 名 稱 P3.0 RXD串行輸入口 P3.1 TXD串行輸出口 P3.2 /INT0 外部中斷0 P3.3 /INT1 外部中斷1 P3.4 T0 定時(shí)器/計(jì)數(shù)器0 P3.5 T1 頂時(shí)器/計(jì)數(shù)器1 P3.6 /WR外部數(shù)據(jù)存儲(chǔ)器寫選通 P3.7 /RD 外部數(shù)據(jù)存儲(chǔ)器讀選通 表1.1RST: 復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持RST腳兩個(gè)機(jī)器周期的高電平時(shí)間ALE/PROG: 當(dāng)訪問(wèn)外部存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在平時(shí),ALE端以不變的頻率周期輸出正脈沖信號(hào),此
15、頻率為振蕩器頻率的1/6,因此它可用作對(duì)外部輸出的脈沖或用于定時(shí)目的。/PSEN: 外部程序存儲(chǔ)器的選通信號(hào)。在由外部程序存儲(chǔ)器取指期間,每個(gè)機(jī)器周期兩次/PSEN有效。但在訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的/PSEN信號(hào)將不出現(xiàn)。/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)。XTAL1: 反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入。XTAL2: 來(lái)自反向振蕩器的輸出
16、。3.1.3 芯片可擦除性AT89C51單片機(jī)還具有芯片擦除性,整個(gè)PEROM陣列和三個(gè)鎖定位的電擦除可通過(guò)正確的控制信號(hào)組合,并保持ALE管腳處于低電平10ms 來(lái)完成。在芯片擦操作中,代碼陣列全被寫“1”且在任何非空存儲(chǔ)字節(jié)被重復(fù)編程以前,該操作必須被執(zhí)行。此外,AT89C51設(shè)有穩(wěn)態(tài)邏輯,可以在低到零頻率的條件下靜態(tài)邏輯,支持兩種軟件可選的掉電模式。在閑置模式下,CPU停止工作。但RAM,定時(shí)器,計(jì)數(shù)器,串口和中斷系統(tǒng)仍在工作。在掉電模式下,保存RAM的內(nèi)容并且凍結(jié)振蕩器,禁止所用其他芯片功能,直到下一個(gè)硬件復(fù)位為止。3.1.4 單片機(jī)的電源電路電源電路由橋式整流,濾波電容,7805穩(wěn)壓
17、器及電源指示燈組成。交流電經(jīng)過(guò)橋式整流變成直流電,再經(jīng)過(guò)電容濾波。7805集成穩(wěn)壓器穩(wěn)壓成為穩(wěn)定的5V電源。用一個(gè)發(fā)光二級(jí)管指示燈指示電源狀態(tài)。電源電路如圖3-2所示。圖3-2 電源電路圖3.1.5 復(fù)位電路單片機(jī)復(fù)位時(shí)RESET需要保持96個(gè)晶振周期的高電平(即需8個(gè)機(jī)器周期)。復(fù)位以后P0P3口輸出高電平,堆棧指針SP指向07H,其他特殊功能寄存器和程序計(jì)數(shù)器PC清零。只要RESET保持高電平,AT89C51就會(huì)循環(huán)復(fù)位。RESET當(dāng)由高電平變?yōu)榈碗娖胶?,單片機(jī)從程序存儲(chǔ)器0地址開(kāi)始執(zhí)行程序。但單片機(jī)復(fù)位不影響內(nèi)部RAM的狀態(tài),包括工作寄存器R0R7。常見(jiàn)的復(fù)位電路有:上電復(fù)位電路和上電按
18、鈕復(fù)位電路,在本設(shè)計(jì)中均采用上電按鈕復(fù)位電路,如圖3-3所示。 圖3-3 復(fù)位電路3.1.6 晶振電路所謂的晶振電路即指單片機(jī)的時(shí)鐘電路。該電路通常有內(nèi)部時(shí)鐘電路和外部時(shí)鐘電路。一般選用前者。單片機(jī)芯片內(nèi)部有一個(gè)反相放大器構(gòu)成的振蕩器。反相放大器的輸入端為XTAL1,輸出端為XTAL2,把XTAL1和XTAL2與外部石英晶體及兩個(gè)電容連接起來(lái)可構(gòu)成一個(gè)石英晶體振蕩器如圖3-4所示。時(shí)鐘發(fā)生器是一個(gè)2分頻電路。它把晶體振蕩器的頻率2分頻后供給片內(nèi)其他電路。一般電容C1和C2起到穩(wěn)定振蕩頻率、快速起振的作用。XTAL1 XTAL2 C1 晶振 C2 圖3-4 晶振電路3.2 紅外發(fā)射與接收裝置紅外
19、遙控系統(tǒng)一般由紅外發(fā)射裝置和紅外接收設(shè)備兩大部分組成。紅外發(fā)射裝置又可由鍵盤電路、電源和應(yīng)用電路組成。通常為了使信號(hào)能更好的被傳輸發(fā)送端將基帶二進(jìn)制信號(hào)調(diào)制為脈沖串信號(hào),通過(guò)紅外發(fā)射管發(fā)射。紅外接收裝置通常由一紅外接收頭組成的接收電路。3.2.1 發(fā)射裝置常用的發(fā)射器為紅外發(fā)光二級(jí)管它是錄像機(jī)、影碟機(jī)、音響裝置、空調(diào)器等各類紅外遙控系統(tǒng)中不可缺少的電子器件,它將脈沖編碼遙控指令用紅外發(fā)光二極管發(fā)射紅外線去控制受控裝置時(shí),受控裝置中均有相應(yīng)的紅外光電轉(zhuǎn)換元件,通過(guò)這個(gè)轉(zhuǎn)換把相應(yīng)的光信號(hào)轉(zhuǎn)換為電信號(hào)。這里采用紅外發(fā)光二極管如 SE303PH303,外形和發(fā)光二極管LED相似,發(fā)出紅外光(近紅外線約
20、0.93m )。管壓降約1.4V ,工作電流一般小于20mA。為了適應(yīng)不同的工作電壓,回路中常串有限流電阻。發(fā)射紅外線去控制相應(yīng)的受控裝置時(shí),其控制的距離與發(fā)射功率成正比。為了增加紅外線的控制距離,紅外發(fā)光二極管工作于脈沖狀態(tài),因?yàn)槊}動(dòng)光(調(diào)制光)的有效傳送距離與脈沖的峰值電流成正比,只需盡量提高峰值電流 ,就能增加紅外光的發(fā)射距離。提高峰值電流的方法,是減小脈沖占空比,即壓縮脈沖的寬度。減小脈沖占空比還可使小功率紅外發(fā)光二極管的發(fā)射距離大大增加。要使紅外發(fā)光二極管產(chǎn)生調(diào)制光,只需在驅(qū)動(dòng)管上加上一定頻率的脈沖電壓。紅外發(fā)射電路如圖3-5所示。圖3-5 紅外發(fā)射電路3.2.2 接收裝置常用的紅外
21、接收裝置有如紅外接收二極管,光電三極管等。實(shí)用中已有紅外發(fā)射和接收配對(duì)的二級(jí)管。在本設(shè)計(jì)中采用紅外一體化接收頭HS0038,接收頭圖如圖(12)所示。它有如下優(yōu)點(diǎn):一體化的紅外接收裝置將遙控信號(hào)的接收、放大、檢波、整形集于一身,并且輸出可以讓單片機(jī)識(shí)別的TTL 信號(hào),這樣大大簡(jiǎn)化了接收電路的復(fù)雜程度和電路的設(shè)計(jì)工作,方便使用。接收頭連接圖及紅外接收電路圖如圖3-6所示。HS0038 黑色環(huán)氧樹(shù)脂封裝,不受日光、熒光燈等光源干擾,內(nèi)附磁屏蔽功耗低,靈敏度高。在用小功率發(fā)射管發(fā)射信號(hào)情況下,其接收距離可達(dá)35 m。它能與TTL、COMS 電路兼容。HS0038 為直立側(cè)面收光型。它接收紅外信號(hào)頻率
22、為38KHZ,周期約26s,同時(shí)能對(duì)信號(hào)進(jìn)行放大、檢波、整形,得到TTL 電平的編碼信號(hào)。三個(gè)管腳(1、2、3)分別是地、5 V 電源、解調(diào)信號(hào)輸出端。 圖3-6紅外接收?qǐng)D3.3 34矩陣鍵盤在單片機(jī)運(yùn)用系統(tǒng)中,經(jīng)常使用簡(jiǎn)單的鍵盤和BCD撥碼盤作為系統(tǒng)的輸入。鍵盤由一組常開(kāi)的按鍵組成,可以通過(guò)鍵盤輸入數(shù)據(jù)或命令。每個(gè)按鍵都被賦予一個(gè)代碼,稱為鍵碼。鍵碼分為編碼鍵盤和非編碼鍵盤。編碼鍵盤是通過(guò)一個(gè)編碼電路識(shí)別閉合鍵的鍵碼,而非編碼鍵盤是通過(guò)軟件來(lái)識(shí)別鍵盤的。通常因由于機(jī)械觸點(diǎn)的彈性作用,觸點(diǎn)在閉合和斷開(kāi)瞬間的電接觸情況不穩(wěn)定,造成了電壓信號(hào)的抖動(dòng)現(xiàn)象,鍵抖動(dòng)的時(shí)間一般為510ms。為了避免一次閉
23、合引起CPU多次處理,通?;夭扇∪ザ秳?dòng)措施。非編碼鍵盤有獨(dú)立式鍵盤和行列式(矩陣)鍵盤。由于前者在按鍵較多時(shí)會(huì)站用較多的I/O口,因此采用行列式(矩陣)鍵盤。1. 矩陣鍵盤及其接口行列式鍵盤又叫矩陣鍵盤,是將I/O線的一部分作為行線,另一部分作為列線,按鍵設(shè)置在行線和列線的交叉點(diǎn)上,它是通過(guò)檢測(cè)鍵盤有無(wú)閉合以及查找閉合鍵的鍵號(hào),一般采用掃描法。在這里設(shè)計(jì)了一34的矩陣鍵盤。如圖3-7所示。(1) 先向所有的行線輸出0,列線輸出1,然后檢測(cè)各列線的按鍵狀態(tài),由相應(yīng)的列線讀入累加器A中。有鍵按下時(shí),對(duì)應(yīng)的列線輸入0,無(wú)鍵按下時(shí)所有的列線輸入為1。(2) 若有鍵閉合,依次從行線上逐列輸出0,然后依次
24、檢測(cè)各列線的狀態(tài)。若為1,說(shuō)明閉合鍵不在該列;若有的為0,則說(shuō)明閉合鍵在該列與行線的交點(diǎn)上。由于每個(gè)按鍵所有的行號(hào)與列號(hào)不相同,所以每個(gè)按鍵按行號(hào)加列號(hào)的值賦予了一個(gè)鍵號(hào)。 圖3-7 矩陣鍵盤圖3.4 74LS164芯片在顯示部分,運(yùn)用LED靜態(tài)顯示,靜態(tài)顯示方式編程簡(jiǎn)單,但占用單片機(jī)I/O口線多適合于顯示器位數(shù)較少的場(chǎng)合。AT89C51單片機(jī)應(yīng)用系統(tǒng)中,當(dāng)串行口空閑時(shí),可用來(lái)拓展并行I/O口(這里設(shè)定串行口工作在移位寄存器方式0狀態(tài)下),作為L(zhǎng)ED靜態(tài)顯示接口。在這里運(yùn)用74LS164來(lái)擴(kuò)展并行I/O口,節(jié)約單片機(jī)資源。74LS164是一個(gè)串行輸入并行輸出的移位寄存器。并帶有清除端。引腳排練
25、圖以及邏輯圖如圖3-8所示。 74LS164 引腳定義圖 74LS164邏輯圖 圖3-8 74LS164器件圖引腳說(shuō)明:74LS164是串行輸入、并行輸出的移位寄存器,其引腳功能如下:A、B串行輸入端。Q0-Q7并行輸入端。/MR清除端。CP時(shí)鐘脈沖輸入端。在脈沖上升沿實(shí)現(xiàn)移位;當(dāng)CP=0、/MR=1時(shí),輸出保持不變。3.5 數(shù)碼管單片機(jī)運(yùn)用系統(tǒng)中,使用的顯示器主要有LED(發(fā)光二級(jí)管顯示器)和LCD(液晶顯示器)。這兩種顯示器成本低廉,配置靈活,與單片機(jī)接口方便。LED顯示器結(jié)構(gòu)與原理:LED顯示器是由發(fā)光二級(jí)管顯示字段的顯示器件有共陰極與共陽(yáng)極兩種,如圖(15)所示。其中7只發(fā)光二級(jí)管(a
26、-g7段)構(gòu)成字符“8”,另外還有一只小數(shù)點(diǎn)發(fā)光二級(jí)管dp。當(dāng)某個(gè)發(fā)光二級(jí)管的陽(yáng)極為高電平時(shí),發(fā)光二級(jí)管點(diǎn)亮。當(dāng)人為控制某幾段發(fā)光二級(jí)管點(diǎn)亮就能顯示某個(gè)數(shù)碼或字符。LED顯示器有靜態(tài)顯示與動(dòng)態(tài)顯示兩種方式。LED顯示器的字碼段(7段碼)如表3-9所示。 圖3-9 LED顯示器顯示字符共陰極字段碼共陽(yáng)極字段碼顯示字符共陰極字段碼共陽(yáng)極字段碼03FHC0H96FH90H106HF9HA77H88H25BHA4HB7CH83H34FHB0HC39HC6H466H99HD5EHA1H56DH92HE79H86H67DH82HF71H8EH707HF8HP73H8CH87FH80H熄滅00HFFH 表1
27、.2 LED顯示器的字段碼(7段碼)3.6 發(fā)光二級(jí)管LED1LED簡(jiǎn)介發(fā)光二極管簡(jiǎn)稱為L(zhǎng)ED。由鎵(Ga)與砷(AS)、磷(P)的化合物制成的二極管,其核心是PN結(jié)。當(dāng)電子與空穴復(fù)合時(shí)能輻射出可見(jiàn)光,因而可以用來(lái)制成發(fā)光二極管,在電路及儀器中作為指示燈,或者組成文字或數(shù)字顯示。它是半導(dǎo)體二極管的一種,可以把電能轉(zhuǎn)化成光能;而紅外二極管在正向?qū)〞r(shí)會(huì)發(fā)出紅外光。常簡(jiǎn)寫為L(zhǎng)ED。發(fā)光二極管與普通二極管一樣是由一個(gè)PN結(jié)組成,也具有單向?qū)щ娦浴?LED特性(1) 發(fā)光二極管的反向擊穿電壓約5伏。主要特性是正向?qū)ā⒎聪蚪刂?、擊穿特性。它的正向伏安特性曲線很陡,使用時(shí)必須串聯(lián)限流電阻以控制通過(guò)管子的
28、電流,以防止擊穿。 圖3-10 LED伏安特性圖(2) 發(fā)光二極管(LED)的主要參數(shù)a. 最大正向電流Ifm: 允許加的最大正向直流電流,超過(guò)此值LED損壞。b. 正向工作電流IF: 指LED正常發(fā)光時(shí)的正向電流值。c. 正向工作電壓VF: 在給定的正向電流下測(cè)得的工作電壓。d. 最大反向電壓VRm: 允許加的最大反向電壓,超過(guò)此值LED可能被擊穿損壞。e. 伏安特性: LED的電壓與電流的關(guān)系可用圖3-10表示。3.7 電磁繼電器在開(kāi)鎖部分采用電磁繼電器。通過(guò)單片機(jī)來(lái)控制其線圈的通斷電,從而控制其觸點(diǎn)的吸和與斷開(kāi)。繼電器是一種電子控制器件,它具有控制系統(tǒng)(又稱輸入回路)和被控制系統(tǒng)(又稱輸
29、出回路),通常應(yīng)用于自動(dòng)控制電路中,它實(shí)際上是用較小的電流去控制較大電流的一種“自動(dòng)開(kāi)關(guān)”。故在電路中起著自動(dòng)調(diào)節(jié)、安全保護(hù)、轉(zhuǎn)換電路等作用。一般用符號(hào)“J”表示。1電磁繼電器的工作原理和特性電磁式繼電器一般由鐵芯、線圈、銜鐵、觸點(diǎn)簧片等組成的。只要在線圈兩端加上一定的電壓,線圈中就會(huì)流過(guò)一定的電流,從而產(chǎn)生電磁效應(yīng),銜鐵就會(huì)在電磁力吸引的作用下克服返回彈簧的拉力吸向鐵芯,從而帶動(dòng)銜鐵的動(dòng)觸點(diǎn)與靜觸點(diǎn)(常開(kāi)觸點(diǎn))吸合。當(dāng)線圈斷電后,電磁的吸力也隨之消失,銜鐵就會(huì)在彈簧的反作用力返回原來(lái)的位置,使動(dòng)觸點(diǎn)與原來(lái)的靜觸點(diǎn)(常閉觸點(diǎn))吸合。這樣吸合、釋放,從而達(dá)到了在電路中的導(dǎo)通、切斷的目的。驅(qū)動(dòng)電路
30、如圖3-11所示。2電磁式繼電器的主要參數(shù)(1) 額定工作電壓: 是指繼電器正常工作時(shí)線圈所需要的電壓。根據(jù)繼電器的型號(hào)不同,可以是交流電壓,也可以是直流電壓。在這采用直流電壓(+5V)的工作電壓來(lái)驅(qū)動(dòng)。(2) 直流電阻: 是指繼電器中線圈的直流電阻.(3) 吸合電流: 是指繼電器能夠產(chǎn)生吸合動(dòng)作的最小電流。在正常使用時(shí),給定的電流必須略大于吸合電流,這樣繼電器才能穩(wěn)定地工作。圖3-11 電磁繼電器驅(qū)動(dòng)電路圖3.8 報(bào)警器在報(bào)警部分,使用揚(yáng)聲器。從單片機(jī)發(fā)出的引腳(P2.3)控制信號(hào),經(jīng)一個(gè)三極管放大后再驅(qū)動(dòng)揚(yáng)聲器,使整個(gè)系統(tǒng)產(chǎn)生報(bào)警。報(bào)警電路如圖3-12所示。 圖3-12 報(bào)警電路圖4 軟件
31、程序設(shè)4.1 遙控發(fā)射部分程序設(shè)計(jì)該部分主要分為主程序、按鍵掃描程序以及遙控編碼脈沖發(fā)射程序。1. 主程序主要是對(duì)定時(shí)器T1定時(shí)的方式的設(shè)定、計(jì)數(shù)器的初始化等。主程序程序流程圖如圖4-1所示。開(kāi)始 初始化 鍵盤掃描有鍵閉合? N Y轉(zhuǎn)按鍵功能程序轉(zhuǎn)脈沖發(fā)射程序 *鍵按下? N Y Y開(kāi)始發(fā)送返回圖4-1 主程序流程圖主程序的初始化程序如下:START: LCALL CLEAR LJMP START LCALL KEYIN RET AJMP STARTCLEAR: MOV P1,#0FFH CLR P3.5 MOV SP,#70H MOV IE,#00H;關(guān)總中斷與中斷1 MOV TMOD,#2
32、0H;設(shè)定時(shí)器T1方式2自動(dòng)重裝模式 MOV TH1,#0F3H;定時(shí)13us MOV TL1,#0F3H SETB EA;開(kāi)總中斷 MOVE SCON,#OOH;置串行口工作方式02. 按鍵掃描程序 在此設(shè)計(jì)的是3行4列的矩陣鍵盤。程序流程圖如圖4-2所示。開(kāi)始 閉合鍵釋放否?有鍵閉合? N N Y Y閉合鍵號(hào)放入A延時(shí)10ms Y返回有鍵閉合? N Y逐列逐行掃描判斷閉合鍵鍵號(hào) 圖4-2 按鍵掃描程序流程圖按鍵掃描程序如下:KEYIN : MOV P1,#0F8H MOV R3,A MOV A,P1 MOV A,R5 CJNE A,#0F8H,NEXT1 LJMP NEXT7KEYOUT:
33、 RET NEXT6: MOV A,R4 NEXT1: LCALL DELAY10MS ADD A,#04H;行號(hào)加四 MOV A,P1 MOV R4,A CJNE A,#0F8H,NEXT2 DJNZ R7,KEYOUT LJMP KEYOUT MOV A,R2;進(jìn)行下一列掃描 NEXT2: MOV R4,#0;行號(hào) RL A MOV R7,#03H;掃描行數(shù) MOV R2,A MOV R2,#0FEH LJMP NXLOOPNXLOOP: MOV R3,#0;列號(hào) QJZ: MOV A,R4;置行號(hào)MOV R6,#04H ADD A,R3;行號(hào)加列號(hào) MOV P1,R2 MOV 30H,A
34、;置鍵號(hào) MOV A,P1 MOV A,P1 ANL A,#0F8H ANL A,#0F0H CJNE A,#0F8H,NEXT3 CJNE A,#0F0H,KEYOUT LJMP KEYOUT LCALL DELAY10MS;待按鍵釋放NEXT3 : CLR C CJNE A,#0F0H,KEYOUT RLC A MOV A,30H;鍵號(hào)放入A NEXT7: RLC A RET MOV R5,A JC NEXT4 LJMP QJZ;求鍵值 NEXT4: DJNZ R6,NEXT5 LJMP NEXT6 NEXT5: MOV A,R3 INC A;列號(hào)加一3. 遙控編碼脈沖發(fā)射程序遙控器的編碼
35、采用脈沖個(gè)數(shù)編碼格式,不同的脈沖個(gè)數(shù)代表不同的操作碼信息。程序流程圖如圖4-3所示。發(fā)射開(kāi)始裝入發(fā)射脈沖個(gè)數(shù)發(fā)送3ms停發(fā)1ms(R1)-1=0? Y N停發(fā)10ms以上發(fā)1ms脈沖返回停發(fā)1ms圖4-3 遙控器編碼程序流程圖 遙控編碼脈沖發(fā)射程序如下:SEND: JNB BEGIN,START;BENGIN為*(開(kāi)機(jī))鍵標(biāo)志 CLR RS1;選工作寄存起器1 SETB RS0 MOV R1,A;裝入發(fā)射脈沖數(shù) MOV R0,#0FAH;第一個(gè)碼:250x0.012ms=3ms AJMP SEND2SEND1: MOV R0,#53;中間碼:83x0.012=1msSEND2: SETB TR
36、1;開(kāi)高頻定時(shí)器1中斷調(diào)制(38KHZ) SETB ET1 NOP NOP NOP NOP NOP NOP NOP NOP DJNZ R0,SEND2 MOV R0,#64H;碼距:100x0.010ms=1msSENDOUT: CLR ET1;關(guān)高頻定時(shí)器1中斷調(diào)制(38KHZ) CLR TR1 CLR P3.5 NOP NOP NOP NOP NOP DJNZ R0,SENDOUT DJNZ R1,SEND1;若R1中仍有脈沖則繼續(xù)發(fā)送1ms的碼 LCALL DELAY500MS RET INTT1: CPL P3.5 RETI4.2 主機(jī)接收部分程序設(shè)計(jì)主機(jī)程序部分主要分為主程序、按鍵掃
37、描程序以及解碼接收程序。1. 主程序主程序中主要是對(duì)外部中斷0的設(shè)定以及一些存儲(chǔ)單元的清零等初始化工作。主程序程序流程圖如圖4-4所示。開(kāi)始 初始化鍵盤掃描有鍵按下? N Y轉(zhuǎn)按鍵功能子程序圖4-4 主程序流程圖主程序的初始化程序如下:START: LCALL CLEAR MOV MIMACWCS,#0;密碼錯(cuò)誤存儲(chǔ)單元清零 LCALL KEYIN MOV WZDMIMACWCS,#0 LJMP START NOPCLEAR: MOV SP,#60H NOP SETB IT0;負(fù)跳變中斷 NOP SETB EX0;開(kāi)外部中斷0 NOP SETB EA;開(kāi)總中斷 NOP CLR P2.0;關(guān)鎖
38、LJMP START CLR P2.3;關(guān)報(bào)警 RET MOV 20H,#0;清零 MOV 21H,#0 MOV 29H,#0 MOVE SCON,#00H;置串行口工作方式02. 按鍵掃描程序如同上所示。3. 解碼接收程序。解碼接收程序利用外部中斷0的中斷服務(wù)程序?qū)崿F(xiàn)的。外部中斷0服務(wù)子程序流程圖如圖4-5所示。中斷開(kāi)始 低電平脈寬2ms? N Y接收并對(duì)低電平(負(fù))脈沖計(jì)數(shù)高電平脈寬3ms? N 按脈沖個(gè)數(shù)至對(duì)應(yīng)功能程序 Y中斷返回圖4-5 解碼接收程序流程圖解碼接收程序如下:INT0SERVE: PUSH ACC PUSH PSW PUSH DPL PUSH DPH CLR EX0;中斷
39、一來(lái)關(guān)外中斷0 JNB P3.3,INT0SERVE1;確認(rèn)中斷 INT0RET: POP DPH;若為干擾信號(hào)則開(kāi)中斷0退出中斷 POP DPLPOP PSW POP ACC SETB EX0 RETI INT0SERVE1: CLR A MOV DPH,A;用數(shù)據(jù)寄存器對(duì)第一個(gè)碼的低電平計(jì)時(shí) MOV DPL,AINT0SERVE2: JB P3.3,INT0SERVE3;開(kāi)始對(duì)低電平計(jì)時(shí)當(dāng)p3.3為高電平1時(shí) ;計(jì)時(shí)結(jié)束跳出循環(huán)并計(jì)時(shí)低電平是否大于2ms INC DPTR NOP NOP AJMP INT0SERVE2;循環(huán)周期為8usINT0SERVE3: MOV A,DPH;利用DPT
40、R的高8位判斷低電平是否大于2ms JZ INT0RET;A不為0,說(shuō)明DPL有進(jìn)位則255x8us=2ms即為;第一個(gè)脈沖,A為0,說(shuō)明小于2ms是一個(gè)干擾;則退出中斷程序 CLR A INT0SERVE4: INC A;脈沖個(gè)數(shù)加一INT0SERVE5: JNB P3.3,INT0SERVE5;為低電平則等待 MOV R1,#06H;為高電平則開(kāi)始對(duì)高電平計(jì)時(shí)INT0SERVE6: JNB P3.3,INT0SERVE4;當(dāng)P3.3有副負(fù)脈沖時(shí),且前一高電平小;于3ms ,則脈沖個(gè)數(shù)加一 LCALL DELAY513US DJNZ R1,INT0SERVE6;若前一高電平脈寬大于3ms時(shí)即
41、為一結(jié)幀 DEC A DEC AJZ FUNCION0;A為0則接收0號(hào)鍵DEC AJZ FUNCION1;A為0則接收1號(hào)鍵DEC AJZ FUNCION2;A為0則接收2號(hào)鍵DEC AJZ FUNCION3;A為0則接收3號(hào)鍵DEC AJZ FUNCION4;A為0則接收4號(hào)鍵DEC AJZ FUNCION5;A為0則接收5號(hào)鍵DEC AJZ FUNCION6;A為0則接收6號(hào)鍵DEC AJZ FUNCION7;A為0則接收7號(hào)鍵DEC AJZ FUNCION8;A為0則接收8號(hào)鍵DEC AJZ FUNCION9;A為0則接收9號(hào)鍵DEC ADEC AJZ FUNCION11;A為0則接收11號(hào)鍵LJMP INT0RET;退出中斷服務(wù)子程序RET結(jié)論本課題研究的是具有單片機(jī)功能的紅外遙控密碼鎖, 通過(guò)掌握其原理及控
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年吉林大學(xué)重慶研究院多崗位招聘?jìng)淇碱}庫(kù)及參考答案詳解1套
- 新時(shí)代生產(chǎn)安全講解
- 工人安全生產(chǎn)合同范本
- 承包酒店用車合同范本
- 牛奶行業(yè)規(guī)范制度
- 文稿起草送審制度規(guī)范
- 電臺(tái)呼叫工作規(guī)范制度
- 手工打金制度規(guī)范標(biāo)準(zhǔn)
- 護(hù)士夜間巡護(hù)制度規(guī)范
- 物業(yè)公司培訓(xùn)規(guī)范制度
- 住建局執(zhí)法證考試題庫(kù)及答案2025
- 主管護(hù)師聘任述職報(bào)告
- AI搜索時(shí)代:從GEO到AIBE的品牌新藍(lán)圖
- 產(chǎn)品知識(shí)培訓(xùn)會(huì)議總結(jié)
- 四川省成都市樹(shù)德實(shí)驗(yàn)中學(xué)2026屆九年級(jí)數(shù)學(xué)第一學(xué)期期末監(jiān)測(cè)試題含解析
- 與業(yè)主溝通技巧培訓(xùn)
- 專題11 圓(安徽專用)5年(2021-2025)中考1年模擬《數(shù)學(xué)》真題分類匯編
- 工程春節(jié)停復(fù)工方案(3篇)
- 社區(qū)基金使用管理辦法
- WST856-2025安全注射標(biāo)準(zhǔn)解讀
- 低壓控制基本知識(shí)培訓(xùn)課件
評(píng)論
0/150
提交評(píng)論