前言:想要寫出一篇引人入勝的文章?我們特意為您整理了單片機(jī)下的IC卡門禁系統(tǒng)設(shè)計(jì)范文,希望能給你帶來靈感和參考,敬請閱讀。
摘要:針對傳統(tǒng)門鎖鑰匙易丟失、配置不便和忘記攜帶等問題,提出了一種基于STC89C52的ic卡門禁系統(tǒng)設(shè)計(jì)。該系統(tǒng)以STC89C52單片機(jī)為核心來控制電子鎖模塊的開關(guān)。主要過程是由RFID模塊讀取IC卡ID并通過串口發(fā)送至STC89C52單片機(jī)模塊,STC89C52單片機(jī)模塊可以實(shí)現(xiàn)在線對IC卡的ID進(jìn)行注冊、刪除和保存。當(dāng)忘記帶IC卡時(shí),可以通過按鍵模塊輸入密碼,STC89C52單片機(jī)模塊可以實(shí)現(xiàn)對輸入密碼的修改和保存[1]。實(shí)驗(yàn)結(jié)果表明:該系統(tǒng)可以有效解決傳統(tǒng)門鎖鑰匙易丟失、配置不便和忘記攜帶以后的開鎖問題。
關(guān)鍵詞:單片機(jī);在線注冊;門禁
1概述
傳統(tǒng)門鎖在鑰匙丟失或忘記攜帶時(shí),只能從窗戶進(jìn)入或者采取破壞門鎖的辦法開鎖。傳統(tǒng)門鎖在配置時(shí)需要找專業(yè)人士,比較麻煩而且不能保證所配鑰匙的準(zhǔn)確性。在出租房屋業(yè)務(wù)中,由于經(jīng)常換租客,傳統(tǒng)門鎖因?yàn)榭梢噪S意復(fù)制,安全系數(shù)低。針對這些問題提出了一種基于單片機(jī)的IC卡門禁系統(tǒng)[2]。IC卡門禁系統(tǒng)可以通過刷卡和輸入密碼兩種方式開鎖也可以隨意更改密碼,可以有效解決以上問題。
2IC卡門禁系統(tǒng)設(shè)計(jì)方案
IC卡門禁系統(tǒng)設(shè)計(jì)方案如圖1系統(tǒng)設(shè)計(jì)方案圖所示。該系統(tǒng)由單片機(jī)核心模塊、RFID讀卡模塊、LCD顯示模塊、電源模塊、報(bào)警模塊、電子門鎖模塊和存儲模塊七部分組成[3]。系統(tǒng)的工作模式有設(shè)置模式和正常模式兩種。系統(tǒng)上電后,按鍵模塊若有設(shè)置按鍵按下,則系統(tǒng)進(jìn)入設(shè)置模式。設(shè)置模式又分為更新密碼和注冊IC卡兩種模式。設(shè)置模式完成以后,將信息存入存儲模塊[4]。系統(tǒng)上電后,若按鍵模塊設(shè)置按鍵沒有按下,則系統(tǒng)進(jìn)入正常模式。若有IC卡靠近,RFID讀卡模塊讀取IC卡中的ID并且通過串口發(fā)送至STC89C52單片機(jī)模塊。STC89C52單片機(jī)模塊接受IC卡中的ID并且與FLASH中存儲的ID進(jìn)行比對,比對成功則開鎖并提示門已打開,開鎖指示燈亮,反之則不開鎖并示警。若有按鍵按下密碼,則按鍵模塊通過串口將密碼發(fā)送到單片機(jī)模塊,單片機(jī)模塊接受到密碼信息并且與FLASH中存儲的密碼進(jìn)行比對,比對成功則開鎖并提示開鎖成功,開鎖指示燈亮,反之則不開鎖并示警[5]。
3IC卡門禁系統(tǒng)軟件設(shè)計(jì)
IC卡門禁系統(tǒng)主要由KEIL軟件設(shè)計(jì)。系統(tǒng)分為設(shè)置模式和正常模式兩種。程序啟動(dòng),單片機(jī)掃描設(shè)置按鍵是否按下,若按下則進(jìn)入設(shè)置模式,確定是注冊IC卡信息還是更換密碼。并在注冊IC卡信息或更換密碼后將新的IC卡信息或密碼保存在FLASH。若為開鎖程序則掃描是否有IC卡靠近,當(dāng)有IC卡靠近時(shí)讀取IC中的ID并且與FLASH中存儲的ID進(jìn)行比對,比對成功則開鎖,反之則不開鎖并示警。當(dāng)沒有IC卡靠近時(shí),掃描是否有密碼按下,若有則與FLASH中存儲的密碼進(jìn)行比對,比對成功則開鎖,反之則不開鎖并示警。IC卡門禁系統(tǒng)主流程圖如圖2所示。
3.1定時(shí)器程序
采用定時(shí)器0,當(dāng)輸入密碼或刷卡正確時(shí),定時(shí)1s之后門鎖自動(dòng)關(guān)閉。當(dāng)輸入密碼或刷卡不正確時(shí),定時(shí)50ms蜂鳴器滴滴滴響,之后LCD顯示器返回初始界面。
3.2按鍵與修改密碼程序
按鍵模塊由16個(gè)按鍵組成。分別表示0~9、返回、確定、設(shè)置、上鍵和下鍵。通過P1口與STC89C52單片機(jī)模塊連接。當(dāng)有按鍵按下時(shí)分為按下0~9按鍵、按下設(shè)置按鍵和按下其它按鍵。若按下0~9任意按鍵,直接開始輸入密碼,密碼正確,門打開,指示燈亮。若按下設(shè)置按鍵,則系統(tǒng)提示輸入密碼,輸入正確密碼后進(jìn)入設(shè)置模式,按上下鍵選擇進(jìn)入注冊IC卡模式,點(diǎn)擊確定,選擇進(jìn)入注冊還是刪除IC卡ID。操作完成后點(diǎn)擊返回按鍵,返回初始界面。如果選擇進(jìn)入的是修改密碼模式,需要一次輸入一遍原密碼和兩遍新密碼。如果原密碼輸入錯(cuò)誤,則提示原密碼錯(cuò)誤。如果兩遍新密碼不一致,則提示新密碼輸入不一致。如果三個(gè)輸入都正確,則將新密碼存入FLASH。若按下的是0~9和設(shè)置按鍵之外的按鍵,系統(tǒng)不作反應(yīng)。Button_ID=key_fs()//讀按鍵信息if(Button_ID!=255)//有按鍵按下{if(Button_ID<10)//如果系統(tǒng)為正常模式{InputPass[PassNum]=Button_ID//將輸入的密碼存入對應(yīng)數(shù)組}else//如果系統(tǒng)為設(shè)置模式{switch(ShowMode)}//選擇是更新密碼還是IC卡ID
3.3LCD顯示程序
本設(shè)計(jì)的LCD程序主要用于顯示當(dāng)前門禁的狀態(tài)和提示用戶下一步要進(jìn)行的操作。當(dāng)系統(tǒng)上電,LCD顯示歡迎使用,請刷卡或輸入密碼。在正常模式時(shí),當(dāng)系統(tǒng)打開電子鎖時(shí)顯示門已打開。當(dāng)IC卡的ID錯(cuò)誤時(shí)顯示信息錯(cuò)誤,當(dāng)輸入密碼錯(cuò)誤時(shí)顯示密碼錯(cuò)誤。在設(shè)置模式時(shí),LCD顯示注冊ID、更新密碼。選擇注冊ID點(diǎn)擊確定按鍵,顯示注冊ID、刪除ID,選擇注冊ID,顯示請刷卡,注冊成功之后顯示注冊成功和返回。刪除成功之后顯示刪除成功和返回。點(diǎn)擊更新密碼,顯示輸入原密碼,輸入新密碼,確定新密碼。三者都正確之后顯示密碼修改成功。
3.4串口中斷程序
當(dāng)有IC卡靠近RFID讀卡模塊時(shí),STC89C52控制模塊進(jìn)入串口中斷接收IC卡ID,接收完成后,將信息存入FLASH。SCON=0x50;//串口方式1
3.5讀寫FLASH程序
主要有讀和寫兩個(gè)操作,讀是指在當(dāng)有IC卡靠近或者有人輸入密碼時(shí),從FLASH中讀出保存的IC卡的ID與靠近的IC卡進(jìn)行比對,或者讀出保存的密碼與輸入的密碼進(jìn)行比對;寫主要是指注冊完新IC卡ID、刪除系統(tǒng)中原有的IC卡ID和更新門禁密碼之后將新信息保存至FLASH。
3.6IC卡注冊/刪除和開鎖程序
當(dāng)系統(tǒng)在控制模式時(shí),可以選擇注冊IC卡或者刪除IC卡信息。若為注冊IC卡,第一步校驗(yàn)IC卡類型,若卡類型符合標(biāo)準(zhǔn),則status=MI_OK,反之返回。第二步校驗(yàn)IC卡序列號,若序列號不沖突,將IC卡序列號存入序列號數(shù)組,反之返回。第三步車校驗(yàn)IC卡密碼B,若密碼B正確。第四步讀取IC卡中的ID寫入數(shù)組,存入FLASH,同時(shí)將66寫入IC卡數(shù)組shu[0]。若為刪除IC卡時(shí),第一二三步一樣,第四步將00寫入IC數(shù)組shu[0]。當(dāng)有IC卡靠近時(shí),第一二三步和注冊IC卡ID程序一樣,第四步讀取IC卡ID,若和FLASH中存儲的一樣,則開鎖。反之不開鎖,并示警。
4功能測試
系統(tǒng)上電,指示燈顯示正常,LCD顯示器顯示歡迎使用,請刷卡或輸入密碼。輸入密碼正確密碼后顯示門已打開,門鎖指示燈亮,反之顯示密碼錯(cuò)誤,門鎖指示燈不亮。刷卡正確時(shí)如圖3開鎖顯示圖所示顯示門已打開,門鎖指示燈亮,反之如圖4信息錯(cuò)誤顯示圖所示顯示信息錯(cuò)誤,門鎖指示燈不亮。注冊IC卡完成后顯示注冊完成,刪除IC卡信息后顯示刪除成功,更換密碼后顯示修改完成。
5結(jié)論
本文設(shè)計(jì)并實(shí)現(xiàn)了一種基于單片機(jī)的IC卡門禁系統(tǒng)。包括RFID技術(shù)的IC卡讀卡模塊、按鍵輸入密碼模塊、報(bào)警模塊和LCD顯示模塊。通過對系統(tǒng)的設(shè)計(jì)可以實(shí)現(xiàn)直接刷卡打開門禁系統(tǒng)或者輸入密碼打開門禁系統(tǒng),從而方便人們的生活。
參考文獻(xiàn)
[1]閆璞.教室照明智能節(jié)能控制系統(tǒng)[J].中國新技術(shù)新產(chǎn)品,2018(18):31-33.
[2]王芳芳,任擁偉戴志剛.基于單片機(jī)的IC卡門禁系統(tǒng)的設(shè)計(jì)[J].黑龍江科技信息,2016(15):168.
[3]韓玉,王瀟賢,馮薇,王運(yùn).基于RFID的宿舍門禁系統(tǒng)設(shè)計(jì)[J].電子世界,2016(21):114+117.
[4]曾維鵬,黃果.基于WiFi的51單片機(jī)雙層密碼保險(xiǎn)箱的設(shè)計(jì)與實(shí)現(xiàn)[J].電子測試,2016(22):24-25.
[5]施亞杰,韓堅(jiān)潔,廖博文,蔣軍輝.基于AT89C51單片機(jī)的現(xiàn)代化電子密碼鎖探索[J].產(chǎn)業(yè)與科技論壇,2017(12):55-56.
作者:馮美艷 殷鵬 單位:安陽學(xué)院航空工程學(xué)院