久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 19516|回復: 1
打印 上一主題 下一主題
收起左側

基于MFRC522 RFID技術的單片機智能門禁系統設計論文

[復制鏈接]
跳轉到指定樓層
樓主
基于RFID技術的智能門禁系統設計(控制部分)
摘 要
隨著社會經濟和科技的飛速發展,射頻識別技術越來越廣泛的應用于各種行業,如:商流、物流、信息和資金等方的重要單元越來越得到重視。
門禁安全管理系統是新型現代化安全管理系統,它集自動識別技術和現代安全管理措施為一體你在哪里的  dsfdf體某些部位(如眼睛、指紋)的識別來確認來人是否經過授權。這種門禁系統相對射頻識別的系統安全系數有很大提高,但其成本較高,在日常生活中還未廣泛應用。
文章從門禁技術面,并以前所未有的速度迅猛發展,引起了許多國家的重視。特別是身份識別和安防等行業。門禁系統作為智能建筑的發展出發,首先介紹了射頻識別技術的概念、分類及工作原理,然后介紹了本次使用的射頻芯片MFRC522。本RFID系統設計可分為硬件部分和軟件部分。硬件部分以MFRC522射頻識別模塊為核心,結合主控模塊STC89C52設計系統的外圍硬件電路,實現對射頻卡的控制與MCU之間的互通。軟件部分采用C語言進行系統的下位機程序的開發,完成與IC卡之間的通信,實現數據交換功能.

目 錄


摘要
Abstract              II
第1章 緒論              1
1.1 課題研究的背景及意義              1
1.2 課題研究現狀              1
1.2.1國內研究現狀              1
1.2.2國外研究現狀              2
1.3 門禁系統發展趨勢              3
1.4 課題設計任務              3
1.5 論文結構              3
第2章 基于RFID技術的門禁系統理論基礎              4
2.1射頻識別技術概述              4
2.1.1射頻識別技術              4
2.1.2射頻識別技術的分類              4
2.1.3射頻識別技術的典型結構              5
2.1.4射頻識別技術的工作原理              5
2.2非接觸式讀卡芯片MFRC522              6
2.2.1 MFRC522概述              6
2.2.2 MFRC522特性              6
2.2.3 MFRC522管腳排列              7
2.3本章小結              7
第3章 門禁系統硬件設計
3.1 STC89C52主控模塊
3.1.1 STC89C52簡介
3.1.2 STC89C52主要特性
3.1.3 STC89C52管腳說明              10
3.3.4 STC89C52最小系統接口電路              11
3.2 LCD12864液晶顯示模塊              11
3.2.1 LCD12864簡介              11
3.2.2 LCD12864分類              11
3.2.3 12864管腳說明              12
3.2.4 LCD12864基本特性              12
3.2.5 12864與89C52接口              13
3.3 按鍵              13
3.4 本章小結              14
第4章 門禁系統軟件設計              15
4.1 Keil C51開發系統              15
4.2 LCD顯示程序設計              16
4.2.1 LCD初始化              16
4.2.2 LCD顯示              17
4.3 按鍵程序設計              22
4.3.1 密碼驗證              22
4.3.2 密碼修改              24
4.4 本章小結              27
結論              28
謝辭              29
參考文獻              30


第1章 緒論
1.1 課題研究的背景及意義
門禁系統,又稱出人口控制系統。在何時允許某些人進出,拒絕某些人進出,什么情況下要發出警報,記錄人員出入情況,是門禁系統最基本的功能。門禁系統的發展是隨著人類社會的發展一起進步的。從原始社會開始,隨著剩余價值的產生,人們有了自己的財產,有的人覬覦他人的財產而進行盜搶等犯罪行為,直接危害了人們的財產乃至生命安全。為了保護自己的財產不受他人的侵犯,人們用木棒或鐵鏈將門鎖起。門禁也就隨之產生了。隨著社會的發展和人們安全意識的提高,產生了鐵鎖和暗鎖等門鎖設備[1]。
隨著社會經濟的發展,城市面貌發生了巨大的變化,高樓大廈越來越多,安全隱患也越來越多,出現了更多的高科技的犯罪,直接威脅到每個人的人身財產安全。僅僅靠傳統的門鎖和防盜門是遠遠不夠的!爸悄荛T禁系統”應運而生。
智能門禁系統是對樓房中的重要通道進行管理。在門口、電梯、等人員來往頻繁或重要的地方安裝控制裝置,例如:讀卡器、鍵盤等,人員要想進入,必須有卡且輸入密碼正確,才能通過,大大增強了安全性。而傳統的機械門鎖僅僅是單純的機械裝置,無論結構設計多么合理,材料多么堅固,人們總能通過各種手段把它打開。在小區等人流量大的地方由人來充當保安控制和監控人員流動更是實際意義不大。智能化門禁管理方便了內部管理,而且比傳統的門禁系統的安全性更高。
基于RFID技術的門禁系統作為智能門禁系統中的“骨干”,已經成為一項先進的高科技技術防范和管理手段,在一些經濟發達的國家已經廣泛應用于科研、工業、博物館、酒店、商場、醫療監護、銀行、監獄等,已成為安防技術重點研究和開發的方向。

1.2 課題研究現狀
1.2.1 國內研究現狀
1994年RFID技術進入中國,引發了中國RFID技術的應用革命。在國內,其應用領域越來越廣,涉及到交通、商場、銀行、物流等各多個領域。智能門禁就是其中一個重要的組成部分。
國內從事門禁系統有門吉利、捷順、北京青云等公司。在技術方面,中國目前也有很多廠家,仿制國外優秀的門禁系統,但生產IC卡和讀卡器的關鍵技術則被歐美國家和部分亞洲國家所壟斷,并且真正形成大批量生產的廠家還只有美國;德國、英國次之。雖然雖然國內已經實行“金卡工程”,并著力于發展非接觸式IC卡的技術,但是基于射頻識別的智能門禁系統的使用在國內還處于發展狀態,因此對射頻識別技術在門禁系統方面應用的理論及實際可行及實用性進行研究是重中之重 [2]。
2005年的門禁行業是在整個安防行業集成化、網絡化、數字化的推動下不斷完善的一年。隨著中國房地產業的發展、智能建筑的推廣和智能小區安全防范工作的加強,門禁應用領域的進一步拓展,2006年的門禁行業是高速發展的一年。雙總線的通訊模式、指紋等生物識別設備的集成管理及DVR系統的集成成為2006年門禁系統發展的亮點。另外,作為蓬勃發展的生物識別技術,隨著其辨別的辨別速度和辨別的準確度的提高,以及人們對這類產品的進一步了解,若價格因素能保持了人們可以接受的范圍內,那這技術的應用前景將會是非常廣闊的。

1.2.2 國外研究現狀
歐美門禁系統市場的發展已經日趨成熟,產業分工細化,并且在國際市場上占有較大的份額。國外門禁系統的知識品牌有美國的休斯(HID)、西屋(WSE)、洛泰克(NTK),以色列的DDS、英國的集寶等品牌。當今世界上非接觸式IC卡主流產品是PhiliPs公司的Miafer技術,己經被制定為國際標準150/IEC14443TypeA標準。歐洲一些IC卡及讀卡器制造商大都以Mifare技術為標準發展自己的IC卡事業。
隨著其產業化的形成,各大公司由于其財力的雄厚、技術的先進、市場的導向以及專業知識產權,市場逐漸被壟斷,大公司越做越大,中小公司被淘汰或兼并。從目前全球門禁系統的前端輸入設備的水平及發展方向來看,雖然磁卡和接觸式IC卡在門禁系統的應用中還有一部分市場,但從發展趨勢上看,除賓館鎖外,磁卡和接觸式IC卡己在逐步地退出門禁系統市場。
ATMEL公司生產的Temic非接觸式IC卡是一種ID(身份)識別卡片,信息容量為264位EEPROM,采用125KHz工作頻率,是一種低頻無源卡,操作距離5-10cm。相應的讀寫基站芯片為U2270B,此芯片在身份識別、考勤控制等方面得到了應用。瑞士EM公司的H40OI非接觸IC卡,信息容量為64位EEPROM,采用125KHz工作頻率,也是低頻無源卡。美國TI公司的ID卡是一種低頻只讀卡,內部有8字節(64位)ID號碼,己應用在門禁考勤系統中。
Philips公司的Mifare IC卡系列產品有三大類:Mifare Standard,Mifare light,Mifare PLUS(第一代)和MifarePRO(第二代)。最近又推出一種新型Mifare卡,即Mifare ultralight非接觸式IC卡,有512字節EEpROM,專用于車票系統,此卡最大的特點是交易時間只有31.4ms,比其它Mifare卡要短得多[3]。

1.3 門禁系統發展趨勢
隨著現代科學技術的發展,傳統的門禁被逐漸取代并向智能化發展。基于RFID的智能門禁系統絕對是未來的主流,已占據目前約9成的市場。生物識別雖然安全性上也許更高些,但其價格的高昂阻礙了它走入人們的日常生活。在非接觸式IC卡門禁系統銷售額中,卡片和讀卡器占了3成以上,飛利浦的Mifare卡是目前中國市場上最主要產品[4]。RFID技術以其更快的響應速度和更高的頻率成為目前的潮流。未來國內門禁系統發展方向為基于大容量IC卡、基于開放式通道、基于消費系統、基于傳統門禁系統、基于LAN/WAN網絡管理,真正實現的一卡通系統。雖然這樣,但不少廠家認為,一味地追求新技術和一卡通的理念實現,并不能給實際應用帶來成功,反而會造成資金的浪費,造成整個系統的不穩定。所以,目前中國市場上一卡通標準還不是很規范,所以需要大家一起來制定標準,推動行業的發展[5]。

1.4 課題設計任務
智能門禁系統設計主要分為兩個部分:外圍硬件系統和軟件系統。硬件系統包括射頻系統外圍電路的設計;軟件系統包括非接觸式IC卡讀寫程序、LCD顯示程序、密碼驗證及重置程序的設計編寫。此門禁系統基于RFID射頻識別技術,可實現IC卡識別,并可完成顯示IC卡卡號、進行密碼驗證、重置密碼的功能。

1.5 論文結構
第1章:簡要概述了課題研究現狀、課題研究的相關內容和論文主要結構。
第2章:介紹基于RFID技術的門禁系統理論基礎。
第3章:基于RFID技術的門禁系統硬件設計,主要介紹單片機STC89C52及LCD12864模塊及其接口電路。
第4章:基于RFID技術的門禁系統軟件設計。

第2章 基于RFID技術的門禁系統理論基礎
2.1 射頻識別技術概述

2.1.1
射頻識別技術
射頻識別(Radio Frequency Identification,RFID)技術是從八十年代逐漸走向成熟
的一種自動識別技術,它是一項利用射頻信號通過空間耦合(交變磁場或電磁場)實現無接觸信息傳遞并通過所傳遞的信息達到識別目的的技術。射頻識別是無線電識別的簡稱,它源于無線電通信技術,綜合了現代計算機智能控制、智能識別等高新技術,順應了電子商務、交通運輸、物流管理的發展需要。是當前最受人們關注的技術之一。射頻識別技術具有非接觸、自動完成識別過程、不易損壞、可識別高速運動物體、數據存儲量大等優點,極大地加速了有關信息的收集和處理,在近年來獲得了極為迅速的發展[6]。
2.1.2 射頻識別技術的分類
RFID系統的分類方法主要有以下幾種:
根據系統采用的頻率不同可分成低頻系統和高頻系統。低頻系統的工作頻率一般小于30MHz,典型的工作頻率有:125KHz、13.56MHz等,其基本特點是成本較低、電子標簽內存儲的數據量較少、感應范圍較。o源情況,與讀卡器距離約為10cm時才可感應)、電子標簽外形多樣(卡狀、環狀、筆狀),不適合高速運動的物體等。高頻系統的工作頻率一般大于400MHz,典型的工作頻段有:915MHz、5800MHz等,其基本特點是電子標簽及閱讀器成本較高、標簽內保存的數據量較大、感應距離較遠(可達幾米至十幾米)、外形一般為卡狀、適應物體高速運動性能好等[7]。
按射頻卡有無電池可分為無源系統和有源系統。有源系統中電子標簽內裝有電池,一般具有較遠的閱讀距離,使用壽命取決于電池容量。無源系統中電子標簽內無電池,一般識別距離短,但與有源系統相比,對工作環境要求不高并且壽命較長。
根據工作方式的不同還可分為主動式和被動式。主動式系統主要用于有障礙物的應用中,距離更遠(可達30米); 被動式系統主要在門禁或交通應用中。
根據射頻卡讀寫方式的不同可分成可讀寫(RW)卡、一次寫入多次讀出(WORM)卡和只讀(RO)卡。RW卡成本較WORM卡和RO卡相比要高,而且寫入數據所花費的時間要遠大于讀取數據所花費的時間。用戶可以一次性將信息寫入WORM卡,寫入后數據不能改變。RO卡存有一個唯一的號碼。只可讀取,不能修改,雖然安全性較高,但用途有限。

2.1.3 射頻識別系統的典型結構
圖2-1 RFID系統典型結構圖

典型RFID系統(如圖2-1所示)由應答器(Tag)、讀寫器(Read and Write Device)以及計算機系統等組成。讀寫器由無線收發模塊、天線、控制模塊及接口電路等組成。應答器也稱電子標簽,它具有可存儲讀寫信息及對信息進行加密的能力,是射頻識別系統主要的核心。在閱讀器的感應范圍之外,電子標簽無源無法工作,只有在閱讀器感應范圍之內,電子標簽才是有源的。應答器工作所需的能量,是通過讀寫器的耦合單元傳輸給應答器的。應答器如果是無源系統,即應答器內不含電池,則應答器工作的能量是由讀寫器發出的射頻脈沖提供[8]。應答器如果是有源系統,即應答器內含有電池,則應答器工作能量和工作壽命有電池決定。

2.1.4 射頻識別系統的工作原理
實用RFID系統為無源系統,即射頻卡能量由讀寫器發出的射頻脈沖信號提供。無源系統的通信優劣取決于讀寫器發出的脈沖信號能否被射頻卡完整接受。當射頻卡進入讀卡器接受范圍后,如果接收到讀卡器發出的射頻信號,就能憑借產生的感應電流所獲得的能量發送出存儲在卡片中的信息,通過讀卡器的處理,將信息送至信息管理系統進行有關數據處理[9]。
2.2 非接觸式讀卡芯片MFRC522
2.2.1 MFRC522概述
MFRC522是應用于13.56MHz 非接觸式通信中高集成度讀寫卡系列芯片中的一員,是NXP公司推出的一款非接觸式讀寫卡芯片。MFRC522利用了先進的調制和解調的技術,完全集成了在13.56MHz下所有類型的通信協議,支持多種工作在13.56MHz下的射頻卡讀寫操作 [10]。其內部發送器部分可驅動讀寫器天線與射頻卡和應答機的通信,無需其它的電路。
2.2.2 MFRC522特性
1)高集成度的調制解調電路
2)支持 ISO/IEC 14443 TypeA 和MIFARE®通信協議
3)支持多種工作頻率為13.56M的射頻卡的信息讀寫
4)支持在線SPI編程
5)雙向數據傳輸速率高達424kbit/s
6)64字節的發送和接收緩沖區
7)靈活的中斷模式
8)可編程定時器
9)內部振蕩器,晶振頻率為 27.12MHz
10)采用相互獨立的多組電源供電,提高工作的穩定性及安全性
11)采用硬件掉電、軟件掉電和發送器掉電3種節電模式[11]

2.2.3 MFRC522管腳排列
MFRC522管腳如圖2-2所示:



圖2-2 MFRC522引腳圖

2.3 本章小結
本章對基于RFID技術的門禁系統的理論基礎進行簡單的介紹,重點講述了RFID技術概念和原理,并介紹了射頻芯片MFRC522。

第3章 門禁系統硬件設計
本電路是由STC89C52 單片機為控制核心,射頻卡信息由MFRC522模塊讀出,通過MCU在LCD12864上顯示,通過按鍵完成密碼驗證和修改密碼的功能。整個門禁系統框圖如圖3-1所示。


                            圖3-1 門禁系統框圖                           

3.1 STC89C52主控模塊3.1.1 STC89C52簡介
STC89C52是宏晶科技發行的一款兼容標準MCS-51指令系統,工業80C51產品指令和引腳完全兼容的51單片機。傳統的8051系列單片機只有128-256個字節RAM可使用,對于工程量較大的程序設計時往往會不夠用。而STC89C52RC系列單片機擴展了256個字節RAM,拓展的容量,在應用中漸漸取代傳統單片機被廣泛應用。STC89C52還擁有8K字節在線可編程的Flash存儲器、支持在線SPI編程、32個雙向數據I/O口線、兩個16位定時器/計數器和全雙工UART串行通道[12]。

3.1.2 STC89C52主要特性
1)與MCS-51 兼容
2)壽命:1000次擦/寫
3)據保留時間:10年
4)全靜態工作:0Hz-24Hz
5)512M內部RAM
6)32雙向數據I/O線
7)兩個16位定時器/計數器
8)5個中斷源
9)可編程串行通道
10)芯片內自帶振蕩器和時鐘電路[13]

3.1.3 STC89C52管腳說明

圖3-2 STC89C52管腳圖
VCC:電源電壓。
GND:接地。
P0口:P0口為一個8位雙向I/O口,內部不提供上拉電阻。連接電路時需外接上拉電阻。P0口緩沖器能接受輸出8TTL門電流。當P0口的管腳第一次寫入“1”時,被定義為高阻輸入。P0能夠作為外部程序數據存儲器,暫時存儲外部輸入數據而不需反復輸入。
P1口:P1口是一個內部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。由于內部上拉的緣故,P1口管腳寫入“1”后,其管腳電平被上拉電阻拉高,此時管腳用作輸入。P1口被上拉電阻下拉為低電平時,此時管腳作為將輸出電流端口用。
P2口:P2口為一個內部上拉電阻的8位雙向I/O口,P2口緩沖器可接收輸出4個TTL門電流。由于內部上拉的緣故,當P2口被寫“1”時,其管腳電平被上拉電阻拉高,且作為輸入。P2口被上拉電阻下拉為低電平時,此時管腳作為將輸出電流端口用。在FLASH編程和

校驗時,P2口用來接收高八位地址和控制信號。
P3口:P3 口是一個具有內部上拉電阻的8 位雙向I/O 口,P3口緩沖器可接收輸出4個TTL門電流。對P3口管腳寫入“1”時,其管腳電平被上拉電阻拉高,此時可以作為輸入口使用。P3口也作為STC89C52的第二功能使用[14]。具體功能如表3-1所示:
表3-1 P3口功能表
端口引腳
第二功能
P3.0
RXD(串行輸入口)
P3.1
TXD(串行輸出口)
P3.2
INT0(外部中斷0)
P3.3
INT1(外部中斷1)
P3.4
T0(記時器0)
P3.5
T1(記時器1)
P3.6
WR(外部數據存儲器寫選通)
P3.7
RD(外部數據存儲器讀選通)

RST:復位輸入,高電平有效。當需對器件進行復位時,要保持RST腳兩個機器周期的高電平時間。
ALE/PROG: ALE是地址鎖存允許信號端,低電平有效。在FLASH編程期間,此引腳用于輸入編程脈沖。PORG為編程脈沖的輸入端。當ALE/PROG接上低電平的時候,單片機對外部存儲器進行數據讀取時,用來鎖住地址線的低位地址。
/PSEN:外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每個機器周期兩次/PSEN有效。但在訪問外部數據存儲器時,這兩次有效的/PSEN信號將不出現。
/EA/VPP:當/EA保持低電平時,在此期間數據輸入都存入外部程序存儲器,不管內部程序存儲器是否有空間存儲數據。
XTAL1:反向振蕩放大器的輸入及外部時鐘工作電路的輸入。
XTAL2:反向振蕩放大器的輸出及外部時鐘工作電路的輸出。


3.1.4 STC89C52最小系統接口電路
單片機最小系統接口電路如圖3-3所示:

圖3-3 最小系統接口圖
3.2 LCD12864液晶顯示模塊
圖3-3 最小系統接口圖
3.2.1 LCD12864簡介
帶中文字庫的12864是一種具有4位/8位并行、2線或3線串行多種接口方式,內部含有簡體中文字庫的圖形液晶顯示模塊,內部含8192個漢字,其顯示分辨率為128×64 [15]。利用該模塊靈活的接口方式,通過簡單的代碼編寫,可在界面上顯示漢字和圖形。而且由于其工作電壓和功率較同類型顯示圖形漢字的點陣模塊低,且硬件電路和程序都簡單的多,因此LCD12864與同類型點陣相比,有更廣闊的市場。

3.2.2 LCD12864分類
128×64點陣液晶顯示屏有三種控制器,分別是KS0107(KS0108)、T6963C和ST7920。三種控制器主要區別是:KS0107(KS0108)不帶任何字庫、T6963C帶ASCII碼,使用前兩種LCD若要顯示漢字,則需要通過字模軟件,將漢字取模后進行編譯才可顯示,而ST7920自帶國標二級字庫(8千多個漢字),可自動顯示漢字。以此,在需要顯示字的情況下,使用ST7920控制器的12864更受歡迎。


3.2.3 12864管腳說明
表3-2 12864管腳功能(見附件)

LCD連接電路中,兩側1、2和20、19腳分別接地和+5V。V0為LCD驅動電壓輸入端,與一個三端滑動變阻器相連,這樣通過調整V0端輸入電壓,可實現對LCD液晶屏對比度的調整,它決定了LCD能否正常顯示數據及顯示的效果[16]。
3.2.4 LCD12864基本特性
(1)顯示分辨率:128×64點
(2)內置128個16×8點陣字符
(3)內部含有繁體、簡體中文字庫,包括含8192個漢字
(4)低電源電壓(VDD:+3.0-+5.5V)
(5)2MHZ時鐘頻率
(6)顯示方式:STN、正顯、半透
(7)工作溫度: 0℃-+55℃ ,存儲溫度: -20℃- +60℃
(8)通訊方式:串行、并行
(9)內置轉換電路,無需轉換電壓或外加負壓 [17]

3.2.5 12864與89C52接口

3.3 按鍵本系統使用三個按鍵順序控制而非4*4鍵盤實現密碼輸入驗證及修改功能。三個按鍵分別接89C52的P3.5、P3.6、P3.7口,通過軟件程序,實現一個按鍵實現+1,多次按壓則多次+1;一個按鍵實現-1,多次按壓則多次-1;另一按鍵作為功能鍵,實現數位變動及確定功能。
3.4 本章小結
本章對系統的外圍電路進行了分析。圖3-5為完整的電路圖:

圖3-5 總體設計圖

第4章 門禁系統軟件設計4.1 Keil C51開發系統
Keil C51是美國Keil Software公司出品的51系列兼容單片機C語言軟件開發系統。Keil C51軟件以其豐富的庫函數、強大的開發功能和超高的代碼生成率成為單片機C51開發所用到的主要調試工具 [18]。
C51有6種編譯時間庫,支持絕大部分ANSIC-C函數,它們適用于不同的應用存儲模式。6種庫文件如表4-1所示:
表4-1 C51六種庫文件
庫文件
說明
C51S.LIB
小模式,無浮點計算
C51L.LIB
大模式,無浮點計算
C51C.LIB
緊湊模式,無浮點計算
C51FPS.LIB
小模式,有浮點計算
C51FPL.LIB
大模式,有浮點計算
C51FPC.LIB
緊湊模式,有浮點計算

Keil C51程序編譯界面:
  

圖4-1 Keil編譯界面
4.2 LCD顯示程序設計
這里采用8位并行接口方式對12864進行操作,D0-D7與單片機P0.0-P0.7對接,由89C52的P0端口作為數據的輸入端口。對RS、PSB等控制引腳進行定義:
sbit RS = P1^0;
sbit WRD = P1^1;
sbit E= P1^2;
sbit PSB = P1^3;
sbit RES = P1^4;
4.2.1 LCD初始化
圖4-2 LCD初始化流程圖


void initinal(void)         
{
LCDdelay(40);          //大于40MS的延時程序
PSB=1;                 //設置為8BIT并口工作模式
LCDdelay(1);           //延時
RES=0;                 //復位
LCDdelay(100);          //大于100uS的延時程序
TransferData(0x30,0);  //Function Set
LCDdelay(100);         //大于100uS的延時程序
TransferData(0x10,0);  //Cursor Display Control光標設置
LCDdelay(100);         //大于100uS的延時程序
TransferData(0x0C,0);  //Display Control,D=1,顯示開
LCDdelay(100);         //大于100uS的延時程序
TransferData(0x01,0);  //Display Clear
LCDdelay(100);         //大于100uS的延時程序
}

4.2.2 LCD顯示
1)BF的判斷
bit isbusy(void) // 判斷是否忙?busy=1,表示忙;busy=0,表示不忙;
{bit busy;
RS=0;RW=1;EP=1;delay 1ms(4);
Busy=(P1&0x80);EP=0;
Return(busy);
}
本程序作用是用來判斷LCD當前狀態,BF狀態字決定了LCD模塊的工作狀態,當處于忙狀態時,此時模塊不接受外部指令和數據,BF=0時,模塊為準備狀態,可對外部指令和數據進行處理。因此,對LCD進行操作之前,要對其工作狀態進行判斷。
2)寫指令和數據
void writedata(unsighed char dat)      //寫數據模式
{while(isbusy()==1);             //判斷BF是否忙
RS=1;RW=0;EP=0;delay 1ms(2);P1=dat;
delay1 ms(5);EP=1;delay 1ms(5);EP=0;
}

void writecode(unsigned char dat)     //寫指令模式
{while(isbusy()==1);            //判斷BF是否忙
RS=0;RW=0;EP=0;delay 1ms(2);P1=dat;
Delay 1ms(5);EP=1;delay 1ms(5);EP=0;
}
在寫數據和指令之前,先對LCD狀態進行判斷。當BF=0,即LCD非忙時,即可進行寫入指令和數據的操作。寫入指令還是數據由RS,RW,EP三個引腳來確定。當三個引腳分別為1,0,0時,為寫入數據模式;三個引腳為0,0,0時,為寫入指令模式。
3)顯示


void lcd_mesg(uchar code *adder1)
{
uchar i;
TransferData(0x80,0);  //Set Graphic Display RAM Address
LCDdelay(100);
for(i=0;i<32;i++)
{
TransferData(*adder1,1);
adder1++;
}
TransferData(0x90,0);  //Set Graphic Display RAM Address
LCDdelay(100);
for(i=32;i<64;i++)
{
TransferData(*adder1,1);
adder1++;
}
}
//*******顯示上半屏內容設置
fo

圖4-4 系統初始界面
5)刷卡界面顯示
while(K1==1&&K2==1&&K3==1)  //按任意鍵進入

圖4-5 刷卡界面
4.3按鍵程序設計4.3.1 密碼驗證


char code Menu_2[]={
"歡迎您使用本系統"                                          //0x80ok
"    密碼正確    "                                          //0x90ok
"  是否修改密碼? "                                          //0x88ok
"  YES     NO    "                                          //0x98ok
};

//密碼輸入完畢

if(Mode==5)

{

Mode=1;

OK_temp=0;

S=SSSS_MM[0]*1000+SSSS_MM[1]*100+SSSS_MM[2]*10+SSSS_MM[3];}

//認證成功

if(S==money)

{

lcd_init_T();

Delay_ms(250);

lcd_mesg(Menu_2);      //顯示菜單2

}

圖4-7 密碼驗證顯示圖

4.3.2 密碼修改


圖4-8 密碼修改流程圖

//按下++

if(K1==0)

{

write_data('0'+SSSS_MM[0]);

write_data('0'+SSSS_MM[1]);

write_data('0'+SSSS_MM[2]);

write_data('0'+SSSS_MM[3]);

lcd_pos(3,2+Mode);

}

K1鍵實現相加功能,連續按下實現0-9之間切換。

//按下--

if(K2==0)

write_data('0'+SSSS_MM[0]);

write_data('0'+SSSS_MM[1]);

write_data('0'+SSSS_MM[2]);

write_data('0'+SSSS_MM[3]);

lcd_pos(3,2+Mode);

}

K2鍵實現相減功能,連續按下實現9-0之間切換。

//按下功能鍵

if(K3==0)

{

Delay_ms(20);

while(K3==0)

Mode++;

lcd_pos(3,2+Mode);

}

K3為功能鍵,前三次按下功能鍵實現移位功能,光標分別切換至1、2、3、4位。第四次按下實現確定功能,即輸入完畢后將數據輸入MCU并進行處理。

uchar code Menu_3[]={

"  請輸入新密碼  "                                          //0x80ok

"卡號:           "                                          //0x88ok

"================"                                          //0x90ok

"密碼:           "                                          //0x98ok

initinal();                                               //調用LCD字庫初始化程序

Delay_ms(10);

lcd_init_T();            

Delay_ms(10);

lcd_mesg(Menu_3);      //顯示菜單3

修改密碼界面如圖4-9所示:



圖4-9 輸入新密碼界面

圖4-9 修改密碼界面

4.4本章小結
本章介紹了系統軟件部分的設計。畫出各模塊的框圖,可使整個設計流程一目了然,比如要實現什么功能,在哪塊還有問題需要解決和改進。軟件編寫時,記的加上注釋,這在以后檢查時很有幫助。

結論
經過三個多月的努力,終于如期完成了畢業設計這艱巨的任務。在整個設計過程中,出現過很多的難題,但都在老師和同學的幫助下順利解決了。本系統基本達到了預期的要求,可以實現以下功能:
(1)IC卡進行讀取
(2)將卡號信息顯示在LCD上
(3)通過按鍵可輸入密碼
(4)進行密碼驗證
(5)修改密碼
雖然本次設計的門禁系統基本完成了設計時預想的功能,但由于學識及設計能力有限,還有許多功能有待開發,具體可改進的設計如下:
(1)可將按鍵輸入該為4*4鍵盤輸入:可以增加功能,如退鉻、清除;單個鍵實現單個功能,不必一鍵多用。如功能鍵實現切換、確定。
(2)界面修改:增加刷卡、輸入密碼成功后歡迎界面。
(3)增加時鐘:記錄刷卡時間。
(4)上位機通訊:將刷卡信息通過串口傳給上位機,對刷卡人員、時間等信息進行處理,存入數據庫,以此來實現對刷卡門禁系統的管理。

謝辭
經過三個多月的努力,終于完成了這次的畢業設計作品,由于經驗的缺乏,此次設計中難免有許多考慮不周全的地方,如果沒有導師的督促指導,以及同學們的幫助,想要完成這個設計的難度是極大的。
在這里首先要感謝我的指導老師XXX老師。從課題確定開始,查閱資料,設計草案的確定和修改,中期檢查,后期詳細設計,甚至最后論文編寫和完成校稿,整個過程中都給予了我悉心的指導。在此,特別向XXX老師表示由衷的感謝和誠摯的敬意。
其次要感謝和我一起作畢業設計的XXX同學,在課題研究過程中,我們一起討論、研究專業理論問題;在設計中勤奮工作,克服了許多困難來完成此次畢業設計。如果沒有他的努力工作,此次設計的完成將變得非常困難。
最后還要感謝大學四年來所有的老師,為我們打下扎實的專業知識的基礎,讓我們在遇到那些專業問題是不至于不知所措。同時還要感謝所有的同學們,正是有了你們的陪伴,大學四年才會過的如此精彩;正是有了你們的鼓勵,才不至于在遇到挫折時一蹶不振;正是有了你們的幫助,此次畢業設計才會順利完成。


全部資料51hei下載地址(源碼+電路圖等全套資料):
http://www.zg4o1577.cn/bbs/dpj-115348-1.html


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏6 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:69476 發表于 2018-7-23 20:55 | 只看該作者
學習一下
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 欧美不卡一区二区三区 | 成人在线视频看看 | 免费看a | 色啪网 | 黄色a级一级片 | 91在线观看视频 | 色婷婷狠狠 | 久久av网 | 在线观看亚洲精品 | 国产乱码精品一区二区三区中文 | 国产超碰人人爽人人做人人爱 | 欧洲精品码一区二区三区免费看 | 91文字幕巨乱亚洲香蕉 | 国产露脸国语对白在线 | 视频一区在线播放 | 午夜寂寞福利视频 | 欧美激情一区二区 | 国产福利在线 | 精品国产乱码久久久久久丨区2区 | 欧美一级全黄 | 亚洲精品成人av久久 | 成人在线观看免费视频 | 欧美一区精品 | 久久小视频 | ririsao久久精品一区 | 午夜欧美| 99精品久久久 | 一级欧美 | 免费的色网站 | 在线播放中文字幕 | 亚洲午夜精品久久久久久app | 日本福利视频免费观看 | 一区二区精品 | 一区二区三区国产 | 日韩电影免费观看中文字幕 | 日韩成人在线网址 | 成人免费区一区二区三区 | 黄片毛片在线观看 | 亚洲精品免费看 | 国产精品久久久久久久久久免费 | 99精品久久久久久 |