紅外遙控電子密碼鎖_第1頁
紅外遙控電子密碼鎖_第2頁
紅外遙控電子密碼鎖_第3頁
紅外遙控電子密碼鎖_第4頁
紅外遙控電子密碼鎖_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領

文檔簡介

1、紅外遙控電子密碼鎖一設計目的1、學習串行通信的原理和應用。2、了解異步串行通信的特點。3、提高動手能力和理論聯(lián)系實際能力。二、設計任務和要求設計并制作一個采用紅外遙控的電子密碼鎖,要求如下:1、能實現(xiàn)遙控開鎖,遙控距離810m。2、具有修改密碼、加密和較強的抗干擾能力。擴展功能:1、密碼輸入出錯能立即報警。2、能實現(xiàn)本機鍵盤開鎖。三系統(tǒng)構(gòu)成框圖AT89C51CPU紅外接收頭頭鍵盤紅外發(fā)射器顯示報警器復位晶振電磁鎖四系統(tǒng)設計思想本系統(tǒng)采用單片機8051作為本設計的核心元件,利用紅外線遙控原理和單片機串行發(fā)射、接處等功能而設計的一款有本機開鎖和遙控開鎖的電子密碼鎖。五基本功能設計遙控密碼鎖的基本設

2、計主要分為如下五個部分。1 選擇密碼:我們將編好的密碼程序存儲在EPROM中,用戶通過密碼選擇鍵-8051中的P1.5口上的按鍵進行選擇,具體操作過程如下:首先按一下P1.5口上按鍵,然后再逐漸輸入號碼,最后按”#”號確信即可.比如現(xiàn)在用戶要是選擇了57618這組數(shù)字作為密碼,則用戶只有首先按一下P1.5上的按鍵,接著在本機鍵盤上一一輸入5、7、6、1、8、之后再按“#”號鍵即表示密碼被設置好了,那么下次用戶只要鍵入這組數(shù)據(jù)即可開鎖。本設計中我們編入了兩密碼即:57618和81675。當然我們還可根據(jù)需要在EPROM中存入更多的密碼,供用戶選擇。2 密碼輸入有效顯示:為了幫助用戶確信是否有鍵按

3、下,我們特在電路中設置了模擬顯示電路;而為了防止密碼外泄;顯示時,并不是顯示用戶按下的數(shù)字符號-而是以發(fā)光二極管的亮滅來提醒用戶是否有鍵按下。有鍵按下,發(fā)光二極管亮0.5秒,沒有鍵按下,發(fā)光二極管滅。這樣既巧妙地提醒了用戶又保護了用戶密碼,此本設計可靠性優(yōu)點之一。3 當用戶鍵入正確密碼后,再按確認鍵-“#”號,便會自動開鎖。但用戶鍵入密碼時應注意:數(shù)字與數(shù)字之間的間隔時間為3秒,例如密碼為57618,當鍵入第一個數(shù)字5后應在3秒內(nèi)鍵入第二個數(shù)字7,否則,就會視為無效。如果鍵入完密碼后不按“#”號,系統(tǒng)會當做放棄開鎖處理。4 密碼錯誤報警:當用戶鍵入錯誤密碼時,系統(tǒng)就會報警,由揚聲器發(fā)出5秒報警

4、聲。當連續(xù)三次出現(xiàn)密碼錯誤時,則系統(tǒng)會長期報警不止。這時必須按復位方可停止。乃安全可靠性能之一5 遙控開鎖:當此鎖用于私家車庫或倉庫時,用戶可以不上車,只要手執(zhí)遙控器,鍵入正確密碼,便會自動開鎖;如果密碼錯誤,同樣也會報警。這是本設計優(yōu)越性能之三。六利用紅外線遙控原理 紅處線發(fā)射/接收控制電路均采用8051單片機來實現(xiàn),電路簡單,輸出控制方式可選擇,實用性強。體工作過程如下: 發(fā)射時:如圖(A), 首先,將從串行發(fā)射口P3.1送出的數(shù)據(jù)反饋到P1.1口時行內(nèi)部調(diào)制,再從P1.2口送出,再經(jīng)過紅外發(fā)射二極管發(fā)射出去,發(fā)射距離為10m 接收時:如圖(B),采用與發(fā)射擊隊配套的紅外接收頭,將發(fā)射出的

5、數(shù)據(jù)接收后送到串行口P3.0中,再由系統(tǒng)進行確認接收數(shù)據(jù)是否與發(fā)送數(shù)據(jù)是否相符,相符則開鎖,以發(fā)光二極管D2亮來表示,不相符則放棄,以發(fā)光二極管滅來表示。七.遙控發(fā)射電路設計 遙控發(fā)射電路利用了通用的紅外發(fā)射管,如圖(A)所示 圖(A)八.本機鍵開鎖的工作原理 本機鍵開鎖電路如圖(B)所示,8051作為本電路的核心,P0口與P1.0 P1.1 P1.2外接本機鍵盤,P3.0口外接愛控接收頭,P1.3口外接報警信號放大器,用來放大報警信號,驅(qū)動揚聲器,P1.7口外接開鎖電磁驅(qū)動電路,P1.5外接密碼選擇鍵,EPROM內(nèi)存有兩密碼,P2.0口用發(fā)光二極管顯示按鍵是否按下,本電路由遙控發(fā)射擊隊器、接

6、收器、鍵盤、顯示器組成,本機采用了10個按鍵,作為密碼輸入鍵,同時也采用了遙控器開鎖。有以下功能:1.當沒有接收到遙控信號時,這時由鍵盤輸入密碼,當5位有效密碼輸入正確時按“#”號確認,P1.7口輸出高電平使電磁鎖動作,完成開鎖,同時,電路進入延時狀態(tài),延時5秒鐘后,電路將自動恢復到初始閉鎖狀態(tài).圖(B) 2.當5位有效密碼輸入正確,但沒有按”#”號鍵確認時,這時電路將自動放棄,恢復到初始和閉鎖狀態(tài). 3.在輸入5位有效密碼時,必須按照先后序輸入,如順序錯誤或密碼不對時,這時若不按”#”號確認,將無法開鎖,并同時發(fā)出5秒鐘的報警信號,用以提醒用戶. 4.若連續(xù)3次輸入錯誤,系統(tǒng)會長時間報警,這

7、時必須按復位鍵恢復到初始化狀態(tài). 5.輸入密碼時,首位密碼正確輸入后,電路將開始自動計時,每位密碼數(shù)之間的輸入間隔應在3秒內(nèi).否則將輸入超時處理,系統(tǒng)自動放棄,恢復到初始狀態(tài).九.遙控開鎖的工作原理 當選擇遙控開鎖時,本機鍵便會被封鎖.這時,用戶手執(zhí)遙控器按下圖(A)805上的P1.0口上的按鍵時,便有數(shù)字從8051 的P1.2口發(fā)出,發(fā)送的過程如下:先將從P3.0送出5FH,然后將5FH反饋到P1.1口進行內(nèi)部調(diào)制,調(diào)制的規(guī)則是”0”電平調(diào)制,”1”電平不調(diào)制,最后將調(diào)好的數(shù)據(jù)從P1.2口通過紅外發(fā)光二極管以波長為940mm的紅外光發(fā)出紅外遙控信號.然后,在本機控制電路中的8051的P3.0

8、口接有與紅外發(fā)光二極管配套的接收頭,將接收的光信號轉(zhuǎn)換成電信號數(shù)據(jù).最后,通過系統(tǒng)與內(nèi)部原先設置的數(shù)據(jù)進行比較確認,如果一致便可開鎖,如果不一致放棄開鎖.十、程序設計1、程序框圖串行口初始化開始發(fā)射鍵按送數(shù)據(jù)到CPU串行口數(shù)據(jù)送完返回開始串行口初始化接收數(shù)據(jù)數(shù)據(jù)是否接完接收數(shù)據(jù)正確進入開鎖程序不處理返回主程序 遙控發(fā)射程序框圖 遙控接收程序框圖2、紅外遙控電子密碼鎖程序 ORG 0000H ;主程序CLR P1.7 ;清零MOV RO, #OOHCLR P1.3 ;關報警CLR P1.7 ;P1.7清零CLR P1.4 ;關報警MOV RO, #OOH ;串行口初始化MOV 52H, #02H

9、 ;將立即數(shù)02H送52HMOV TMOD , #20H ;設置T1工作方式2MOV TL1 ,#OF4H ;定時初始值送TL1MOV TH1 ,#OF4H ;定時初始值送TH1SETB TR1 ;啟動定時器T1MOV SCON, #ODOH ;定義串行行工作方式3 MOV PCON , #OOHKEY: JNB P1.5 , KEP1 ;選擇密碼57618 LJMP KEP2*密碼57618程序KEP1: MOV P2 .#0FFH ;關顯示 MOV A , P0 判斷是否有鍵按下 CPL A ;對P0口的數(shù)據(jù)取反 ANL A , #OFFH ;立即數(shù)OFF 與PO的數(shù)據(jù)相與 JNZ JP

10、;有鍵按下轉(zhuǎn)至JP MOV A , P1 ;判斷是否有鍵盤按下 CPL A ;將P1口的數(shù)據(jù)取反 ANL A ,#O7H ;累加器數(shù)據(jù)為零轉(zhuǎn)遙控接收程序 JZ WAIT ACALL K10MS ;調(diào)用10秒延時 MOV A , P1 CPL A ANL A ,#O7H JZ WAITPP1: CJNE A , #01H ,JP1 MOV P2 , #89H ;顯示字符”H” LJMP K0P1PP2: CJZE A , #02H ,JP2 MOV P2 , #89H ;顯示字符”H” LJMP KOP1JP2: CJNE A . #04H ,KY MOV P2 ,#89H ;顯示字符”H”JP

11、3: MOV A , #O7H CJNE A , #07H ,JP3 LJMP LP1KOP1: MOV A ,P1 ANL A, #07H CJNE A , #07H ,KOP1 LJMP KEP1JP: LCALL D10MS MOV A , PO CPL A, ANL A, #OFFH JZ C6 CJZE A ,#01H ,KEY02 MOV P2, #89H LJMP KEY1KEY02: CJNE A ,#02H ,KEY03 MOV P2 ,#89H LJMP KJP1KEYO3: CJNE A , #04H, KEY04 MOV P2 ,#89 LJMP KJP1 KEY04:

12、 CJZE A , #08H, KEY05 MOV P2 ,#89H LJMP KJP1KEY05: CJZE A , #10H, KEY06 MOV P2 ,#89H LJMP KJP1KEY06: CJZE A , #08H, KEY07 MOV P2 ,#89H LJMP KJP1KEY07 CJZE A , #10H KEY08 MOV P2 ,#89H LJMP KJP1KEY08 CJZE A , #10H, C6 MOV P2 ,#89H LJMP KJP1KJP1: MOV A, P0 CJNE A , #OFFH ,KJP1 C6: LJMP WAIT*KEY1: LCALL

13、 MP CJNE A , #02H , KEY03 MOV P2 , #89HKEY2 LCALL MP CJNE A , #04 , KEY02 MOV P2 , #89HKEY3 LCALL MP CJNE A , #08 , KEY02 MOV P2 , #89HKEY4 LCALL MP CJNE A , #10H, KEY02 MOV P2 , #89HKEY5 MOV A ,P0 CJNE A , #0FFH, KEY5 MOV P2 , #OFFH MOV R5 ,#30HKEY6: MOV A , PO CPL A ANL A , #OFFH JNZ BB2 MOV A ,P1

14、 CPL A ANL A , #O7H JZ BB1 LCALL D10MS MOV A , P1 CPL A ANL A ,#07H JZ CJNE A ,#04H ,B1 MOV P2 , #89H LJMP LP2B1: CJNE A, #01H ,BL1 MOV P2 ,#89H LJMP KOP1BL1: CJNE A , #02H ,BB1 MOV P2 , #89H LJMP KOP1BB2: LCALL D10MS MOV A , P0 CPL A ANL A , #OFFH JZ BB1 LJMP KEY02BB1: MOV R7 ,#OC8HBB4: MOV R6 ,#OF

15、9H NOP NOP BB5: JNZ R6 ,BB5 DJNZ R7, BB4 DJNZ R5 , KEY6 LJMP WAIT*密碼81675程序KEP2: MOV P2 ,#OFFH ;關顯示 MOV A ,PO CPL A ANL A , #OFFH JNZ HP MOV A ,P1 CPL A ANL A , #07H JZ C9 LCALL D1OMS MOV A ,P1 CPL A ANL A ,#07H JZ C9 BB: CJNE A , #O1H ,HP1 MOV P2 ,#89H LJMP K1P1HP1: CJNE A ,#02H ,HP2 MOV P2 ,#89H L

16、JMP K1P1HP2: CJNE A ,#04H ,C9 MOV P2, #89HHP3: MOV A ,P1 ANL A ,#07H CJNE A ,#07H ,HP3 MOV P2 ,#OFFH LJMP LP1K1P1 : MOV A ,P1 ANL A ,#O7H CJNE A ,#07H ,K1P1C9: LJMP WAITHP: LCALL D1OMS MOV A , PO CPL A ANL A ,#OFFH JZ C9 CJNE A , #1OH,K0Y02 MOV P2 ,#89H LJMP K0Y1K0Y02: CJNE A ,#01H ,K0Y03 MOV P2 ,#8

17、9H LJMP KUP1K0Y03 CJNE A ,#02H ,K0Y04 MOV P2 ,#89H LJMP KUP1K0Y04 CJNE A ,#04H ,K0Y05 MOV P2 ,#89H LJMP KUP1K0Y05 CJNE A ,#08H ,K0Y06 MOV P2 ,#89H LJMP KUP1K0Y06 CJNE A ,#20,K0Y07 MOV P2 ,#89H LJMP KUP1K0Y07 CJNE A ,#40,K0Y08 MOV P2 ,#89H LJMP KUP1K0Y08 CJNE A ,#80,U2 MOV P2 ,#89H LJMP KUP1KUP1: MOV

18、 A ,PO CJNE A ,#OFFH ,KUP1U2: LJMP WAITK0Y1: LCALL MP CJNE A #08H ,K0Y02 MOV P2 ,#89HK0Y2 LCALL MP CJNE A #04 ,K0Y02 MOV P2 ,#89HK0Y3 LCALL MP CJNE A #02 ,K0Y02 MOV P2 ,#89HK0Y4 LCALL MP CJNE A #01H ,K0Y02 MOV P2 ,#89HK0Y6: MOV A ,PO CPL A ANL A ,#OFFH JNZ PP2 MOV A , P1 CPL A ANL A ,#07H JZ PPL LCA

19、LL D10MS MOV A , P1 CPL A ANL A ,#07H JZ PP1 CJNE A ,#04H ,Y1 MOV P2 , 389H LJMP LP2Y1: CJNE A ,#01H ,Y11 MOV P2 ,#89H LJMP K1P1Y11: CJNE A , #02H ,PP1 MOV P2 ,#89H LJMP K1P1PP2: LCALL D10MS MOV A, PO CPL A ANL A ,#OFFH JZ PP1 LJMP K0Y02PP1: MOV R7 ,#OC8HPP4: MOV R6 , #OF9H NOP NOPPP5: DJNZ R6 ,PP5

20、DJNZ R7 ,PP4 DJNZ R5 ,K0Y6 LJMP WAIT*報警程序LP1: SETB P1.4 INC ROP019: MOV R3 ,#05HP020: MOV R7 ,#0A0HP018: SETB P1.3 LCALL P01A CLR P1.3 LCALL P01A DJNZ R7 ,P018 DJNZ R3 ,P020 CLR P1.3 CJNE R0 , #03H ,P017 LJMP P019P017: CLR P1.4 LJMP WAIT*開鎖程序LP2: SETB P1.7 LCALL T5S CLR P1.7 MOV R0 ,#00H LJMP WAIT*判

21、斷鍵是否釋放MP: MOV A ,PO CJNE A ,#OFFH ,MP MOV P2 ,#OFFHPM: MOV R5 ,#30H LCALL TP RET*判斷是否有鍵按下TP: MOV A ,PO CPL A ANL A , #OFFH JNZ AP MOV A ,P1 CPL A ANL A, #O7H JZ TP3 LCALL D10MS MOV A , P1 CPL A ANL A , #07H JZ TP3 LCALL D10MS MOV A ,P1 CPL A ANL A ,#07H JZ TP3K CJNE A, #04H ,C1 MOV P2 ,#89HC3: MOV A

22、 P1 ANL A , #07H CJNE A #07H ,C3 MOV P2 ,#0FFH LJMP LP1C1: CJNE A ,#01H ,C2 MOV P2 ,#OCOH LJMP KCP1C2: CJNE A ,#02 ,U11 MOV P2 ,#90HP LJMP KCP1KCP1: MOV A , P1 ANL A ,#07H CJNE A ,#07H ,KCP1U11: LJMP WAIT AP: LCALL D10MS MOV A ,P0 CPL A ANL A , #0FFH JZ TP3 RET *400M延時程序 TP3: MOV R7 ,#OC8H TP1: MOV

23、R6 , #OF9H NOP NOPTP2: DJNZ R6 , TP2 DJNZ R7 ,TP1 DJNZ R5 ,TP ;10S LJMP WAIT*10延時程序D10MS : MOV R7 ,#05H LOOP1: MOV R6 ,#OF9H NOP NOPLOOP2: DJNZ R6 , LOOP2 DJNZ R7 ,LOOP1 RET*延時程序P01A: MOV R2 ,#06H LCALL DELY RETDELY: PUSH 02HDEL2 : PUSH 02HDEL3 : PUSH 02HDEL4: DJNZ R2 ,DEL4 POP O2H DJNZ R2 ,DEL3 POP

24、 O2H DJNZ R2 ,DEL2 POP O2H DJNZ R2 ,DELY RET*5S 延時程序T5S: MOV R4 ,#15HTS1: MOV R3 ,#64H TS2: MOV R2 ,#05HTS3: MOV R1 , #OF9H NOP NOPT5S4 DJNZ R1 ,TS4 DJNZ R2 ,TS3 DJNZ R3 ,TS2 DJNZ R4 ,TS1 RET3、遙控發(fā)送程序 ORG 0000HLOOPO: MOV SCON ,#0C0H ;設定串行口工作方式3 MOV TMOD , #20H ;T1工作方式2 MOV PCON , #00H ;波特率設置 MOV TL1 , #OF4H ;定時初始值F4送TL1 MOV TH1 , #OF4H ;定時初始值F4送TH1* CP: JB P1.0 ,CPK ;判斷遙控按鍵P1.0是否按下 LCALL PP ;調(diào)用延時 JB P1.0 , CP STEB TR1 ;啟動定時器T1 MOV 50H ,#5FH ; 將立即數(shù)5FH 送50H 存儲單元 MOV RO ,#50H ;將立即數(shù)50H 送RO寄存器 MOV R1 , #05H ;將立即數(shù)05H送R1寄存器I

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論