分布式RFID門禁系統(tǒng)設(shè)計說明書_第1頁
分布式RFID門禁系統(tǒng)設(shè)計說明書_第2頁
分布式RFID門禁系統(tǒng)設(shè)計說明書_第3頁
分布式RFID門禁系統(tǒng)設(shè)計說明書_第4頁
分布式RFID門禁系統(tǒng)設(shè)計說明書_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、分布式RFID門禁系統(tǒng)設(shè)計說明書刖言射頻識別(Radio Frequency Identification, RFID)技術(shù)是從 20世紀 80年代開始走向成熟的一項自動識別技術(shù),是當前最受人們關(guān)注的熱點之一,該項 技術(shù)既傳統(tǒng)也充滿新意和活力。 射頻識別是無線電識別的簡稱,即通過無線電波 進行識別。它源于無線電通信技術(shù),綜合了現(xiàn)代計算機智能控制、智能識別、計 算機網(wǎng)絡(luò)等高新技術(shù),順應了計算機集成制造系統(tǒng),電子商務等熱點應用的發(fā)展 需要。射頻識別應用電磁場,以非接觸、無視覺、高可靠的方式傳遞特定識別信 息,由于大規(guī)模集成電路技術(shù)的日益成熟,使得射頻識別系統(tǒng)的體積大大減少, 從而進入了實用化階段。

2、射頻識別技術(shù)具有工作距離大、信息收集處理快捷及 較好的環(huán)境適應性等優(yōu)點,極大地加速了有關(guān)信息的采集和處理,在近年來獲得了極為迅速的發(fā)展。基于RFID的考勤系統(tǒng)設(shè)計是將射頻識別技術(shù)應用到家庭 安防系統(tǒng)中的一次成功嘗試。這一系統(tǒng)克服了家庭生活中居住的安全性不能得到 保證的弱點,能夠有效地提高家庭安防系統(tǒng)的能力,為居家生活提供更好的,更安 全的保障。二 案例描述門禁系統(tǒng) , 又稱人口控制系統(tǒng) .在何時允許某些人進出 ,拒絕某些人進出 , 什 么情況下要發(fā)生報警 , 記錄人員的出入狀況 , 是門禁系統(tǒng)最基本的功能 . 智能的 RFID 門禁系統(tǒng)是對樓房中的重要通道進行管理。在門口,電梯,等人員來往頻

3、繁或重要的地方安裝控制裝置,例如:讀卡器,鍵盤等,人員想要進入必須有卡 才能通過,大大增強的安全性?;?RFID 技術(shù)的門禁系統(tǒng)作為智能門禁系統(tǒng)的 “骨干”,已經(jīng)成為了一項先進的高科技技術(shù)防范和管理手段,在一些經(jīng)濟發(fā)達 的國家已經(jīng)廣泛的應用于科研,工業(yè),博物館,酒店,商場,醫(yī)療監(jiān)護,銀行, 監(jiān)獄等,已成為安防技術(shù)重點研究和開發(fā)的對象。1994 年 RFID 技術(shù)進入中國,引發(fā)了中國 RFID 技術(shù)的應用革命。在我國基 于 RFID 的智能門禁系統(tǒng)的使用仍然處于發(fā)展狀態(tài),因此對射頻識別技術(shù)在門禁 系統(tǒng)方面的應用理論及實際可行性及實用性研究的重中之重。 近幾年, 關(guān)于識別 系統(tǒng)的通訊模式,指紋等

4、生物識別設(shè)備的集成管理及 DVRS統(tǒng)的集成成為現(xiàn)代門 禁系統(tǒng)發(fā)展的亮點。另外, 作為蓬勃發(fā)展的生物識別技術(shù), 隨著其辨別技術(shù)的的 不斷成熟, 以及人們對這類產(chǎn)品的進一步了解, 若價格因素能保持人們可以接受 的范圍內(nèi),那么,該技術(shù)的應用前景將是十分廣泛的。射頻識別 (RFID, 即 Radio Frequency Identification) 技術(shù)是自動識別技術(shù) 在無線電技術(shù)方面的具體應用與發(fā)展 , 其基本原理是利用射頻方式進行非接觸雙 向通信, 以達到識別與數(shù)據(jù)交換的目的 1 。具有高精度、適應環(huán)境能力強、抗干 擾強、操作快捷等優(yōu)點,能夠?qū)崿F(xiàn)無線自動識別,主動監(jiān)控的功能。 RFID 技術(shù) 作

5、為一項先進的自動識別和數(shù)據(jù)采集技術(shù), 在實際應用中取得了顯著的成效, 已 經(jīng)成功應用到生產(chǎn)制造、物流管理、公共安全等各個領(lǐng)域。隨著 RFID 技術(shù)的日 益成熟和普及,各國政府都意識到RFID技術(shù)的研究價值和蘊涵的巨大商機,制定相關(guān)政策加大財力、物力投資,積極推動本國 RFID技術(shù)發(fā)展。RFID技術(shù)的運 用是非接觸式 IC 卡目前的潮流,更快的響應速度和更高的頻率是未來的趨勢。三 需求分析3.1 實驗箱模塊的選擇本次實驗選擇的是實驗箱中的高頻模塊,即HF 高頻下識別卡不需要繞制線圈,可以通過印刷的方式制作天線。 識別卡一般是負載調(diào)制的方式工作, 也就是 通過識別卡的負載電阻的接通和斷開促使讀寫器

6、天線上的電壓發(fā)生變化, 實現(xiàn)遠 距離識別卡對天線電壓進行振幅調(diào)制。就頻率而言,高頻RFID具有以下特性: 工作頻率為13.56MHz該頻率的波長大概為22米。 除了金屬材料外, 該頻率的波長可以穿過大多數(shù)的材料, 但是往往會降低 讀取距離。識別卡(感應器)需要離開金屬一段距離。 該頻段在全球都得到認可并沒有特殊的限制。 該系統(tǒng)具有防沖撞特性,可以同時讀取多個識別卡。 可以把某些數(shù)據(jù)信息寫入識別卡中。 數(shù)據(jù)傳輸速率比低頻要快且價格不是很貴。高頻RFID主要應用有:航空包裹的管理和應用瓦斯鋼瓶的管理應用預收費系統(tǒng)酒店門鎖的管理和應用大型會議人員通道系統(tǒng)固定資產(chǎn)的管理系統(tǒng)醫(yī)藥物流系統(tǒng)的管理和應用智能

7、貨架的管理系統(tǒng)運行簡要說明: :上電后,430先通過并口訪問7970芯片,在沒有讀到卡時,程序運行 在串口讀寫模式,并每隔0.5s向串口發(fā)送一個“ D”直到有寫操作為止。 :當有卡讀寫時,針對相應的卡,程序進入不同的協(xié)議中,并且點亮相應的LED燈。(2) API 調(diào)用說明:上電后,配置完內(nèi)部寄存器,程序進入串口讀寫程序,可以進行人機交 互。:當讀到不同協(xié)議的卡時,程序退出串口讀寫程序,進入相應的協(xié)議子程 序中(目前支持14443A協(xié)議和15693協(xié)議)。讀完卡后,退出相應的協(xié)議子程序, 進入串口讀寫程序。(3) ISO 15693 第三部分通過讀卡器獲取指令流,讀卡器采用 TI trf7970

8、 讀卡器芯片,開發(fā)資料參 考協(xié)議 ISO 15693, trf7970 datasheet ,參考 trf7960EVM.pdf 實現(xiàn) ISO 15693 第三部分指令部分,防碰撞實驗。高頻讀寫模塊中,利用高頻卡可以進行識別操作,因此高頻讀寫有以下特性:1. 支持近場通訊 (NFC) 標準 NFCIP-1 (ISO/IEC 18092) 和 NFCIP-2 (ISO/IEC 21481) 2.用于 ISO15693、IS018000-3、ISO14443A/B 和 FeliCa 的 完全集成的協(xié)議處理 3. 集成編碼器、解碼器和用于 NFC 啟動程序的數(shù)據(jù)成幀 , 對所有 3 個比特率 (10

9、6 kbps, 212 kbps, 424 kbps) 的有源和無源目標操作及 卡仿真。 4. 用于 NFC 無源發(fā)射機應答器仿真操作的具有可編程喚醒電平的 RF 場偵測器 。 5.用于 NFC 物理沖突避免的 RF 場檢測器。 6. 用于 ISO14443A 防 沖突 ( 不完整字節(jié) ) 操作 ( 發(fā)射機應答器仿真或者 NFC 無源目標 ) 的集成狀態(tài) 機。7.輸入電壓范圍:2.7 VDC至5.5 VDC。8.可編程輸出功率:+20 dBm(100 mW), +23 dBm (200 mW)。 9. 可編程 I/O 電壓電平從 1.8 VDC 至 5.5 VDC。3.2 開發(fā)語言的選擇軟件結(jié)

10、構(gòu)框圖:系統(tǒng)軟件主要包括信號處理和系統(tǒng)管理兩個部分,信號處理模塊采用C語言編程,系統(tǒng)管理部分軟件采用 Microsoft Visual C# 編程。其中建立了一個中間 數(shù)據(jù)庫,編程簡單,開發(fā)時間短,能夠?qū)崿F(xiàn)雙卡識別功能,控制道閥自動開啟和 關(guān)閉,同時具有報警功能。其軟件流程圖如下圖 1 所示。分布式RFID門禁系統(tǒng)塊圖一軟件結(jié)構(gòu)框圖3.3數(shù)據(jù)交換的方式本次設(shè)計采用數(shù)據(jù)庫存儲用戶信息及數(shù)據(jù),執(zhí)行程序之前,首先要設(shè)置串 口波特率等相關(guān)串口參數(shù),然后上位機通過串口向下位機發(fā)送命令, 并進入串口 中斷。下位機根據(jù)接收SBUF的值做相應的處理。程序流程圖如圖 2所示圖2數(shù)據(jù)采集子程序流程圖3.4應用程序

11、的結(jié)構(gòu)341顯示子程序顯示子程序的主要功能是對當前的門控狀態(tài)進行顯示,顯示函數(shù)首先判斷是寫命令操作還是寫數(shù)據(jù)操作,若是寫命令操作, 則根據(jù)命令進行相應的操作,如 清屏、設(shè)置顯示模式等;若是寫數(shù)據(jù)操作,則在顯示器上顯示相應數(shù)據(jù)。程序流 程圖如圖3所示。圖3 顯示子程序流程圖342密碼子程序密碼子程序流程圖如圖4所示,當程序運行時,會一直判斷是否有按鍵被 按下,當有按鍵被按下時,系統(tǒng)會確定鍵值,關(guān)將鍵值存入到密碼數(shù)組里,然后 將輸入的密碼與本身的密碼做比較,若相同,則執(zhí)行開門和顯示正確信息的操作; 若不相同,則執(zhí)行報警和顯示錯誤信息的操作。 密碼子程序是整個門禁系統(tǒng)的關(guān) 鍵部分,因為在通過密碼程序

12、的實施之后, 才可以進行數(shù)據(jù)的訪問與訪問者的信 息匹配,因此,密碼系統(tǒng)就好比整個門禁系統(tǒng)的大門, 它是連接訪問者與數(shù)據(jù)的關(guān)鍵一環(huán)。其中,密碼程序的代碼如下:P1=0x0f;if(P1!=0x0f) compare(P1); for(n=0;n<10;n+) if(inputn!=passwordn) break; if(n=10) if(m<10) continue;WriteLcdCom(0x01);WriteLcdCom(0x80); for(s=0;s<16;s+) WriteLcdDat(str2s);LEDG=0;BUZ=0; delay_10ms(20);LEDG

13、=1;BUZ=1;WriteLcdCom(0x01);input0=" " else if(n<10)&&(P1=0xbd) WriteLcdCom(0x01);WriteLcdCom(0x80); for(s=0;s<16;s+)WriteLcdDat(str4s);LEDR=0;for(s=0;s<5;s+) BUZ=0; delay_10ms(20);BUZ=1;/ 清屏/ 第一行數(shù)據(jù)指針地址/ 清屏/ 第一行數(shù)據(jù)指針地址delay_10ms(20); LEDR=1; 密碼子系統(tǒng)的流程圖如下:圖4密碼子程序流程圖3.5存儲系統(tǒng)的設(shè)計及

14、分析本設(shè)計中數(shù)據(jù)的存儲芯片選用的是 AT24C04該芯片是串行的E2PR0M支持I2C總線數(shù)據(jù)傳送協(xié)議。程序流程圖如圖 5所示。c存儲程序C 結(jié)束 J圖5存儲系統(tǒng)程序流程圖當我們完成對存儲過程的分析之后,我們需要對存儲過程加以實施,此時, 就需要編寫存儲程序的代碼,存儲程序核心的代碼如下:void eeprom()write_byte(O,Ox1e);write_byte(1,Oxda); write_byte(2,0x62); write_byte(3,0xb6);write_byte(4,0x25); write_byte(5,0xee); write_byte(6,0xde);write

15、_byte(7,0xb6); write_byte(8,0x05); write_byte(9,0xc8);write_byte(10,0x43);write_byte(11,0xb8);write_byte(12,0x3a); write_byte(13,0x04);write_byte(14,0x5d);write_byte(15,0xb6); bit shout(uchar write_data) 從 MCU 移出數(shù)據(jù)到 AT89C51 uchar i; bit ack_bit;for(i = 0; i < 8; i+)/ 循環(huán)移入 8 個位SDA1 = (bit)(write_d

16、ata & 0x80);_nop_();SCL1 = 1;delayNOP();SCL1 = 0;write_data <<= 1; SDA1 = 1;/讀取應答delayNOP();SCL1 = 1;delayNOP();ack_bit = SDA1;SCL1 = 0;return ack_bit; / 返回 AT24C04 應答位void write_byte(uchar addr, uchar write_data)start();shout(OP_WRITE);shout(addr);shout(write_data);stop();delay_10ms(1); 3

17、.6 系統(tǒng)模塊的總體設(shè)計依據(jù)上述功能的分析, 系統(tǒng)中模塊分別為: 數(shù)據(jù)采集模塊、 數(shù)據(jù)處理模塊、 數(shù)據(jù)存儲模塊、顯示模塊、串口發(fā)送 / 接收模塊、密碼輸入模塊、報警機制模 塊。系統(tǒng)功能結(jié)構(gòu)圖如圖 6 所示,各功能模塊具體功能如下:1. 數(shù)據(jù)采集模塊:當 RFID 卡進入到讀卡器讀卡范圍時,讀卡器讀取卡序列 號的過程。2. 數(shù)據(jù)處理模塊:針對于采集到的數(shù)據(jù)處理,從而對得到的數(shù)據(jù)進行判斷其 有效性。3. 數(shù)據(jù)存儲模塊:用來存儲數(shù)據(jù)。4. 顯示模塊:用來接收單片機發(fā)送的數(shù)據(jù),并對數(shù)據(jù)進行操作從而得到要顯 示的信息。5. 串口發(fā)送 / 接收模塊:主要用來通過串口發(fā)送和接收數(shù)據(jù)。6. 密碼輸入模塊:針對

18、于用按鍵輸入密碼,根據(jù)密碼的正確與否來進行相應 的操作。7. 報警機制模塊:當出現(xiàn)非法卡或輸入的密碼不正確時產(chǎn)生報警。圖6系統(tǒng)功能結(jié)構(gòu)圖361系統(tǒng)硬件設(shè)計系統(tǒng)硬件設(shè)計主要由AT89C51主控芯片和ISO/IEC15693讀卡器模塊構(gòu)成。 硬件電路由八部分構(gòu)成:微控制器AT89C51讀卡器模塊ISO/IEC15693、LCD1602 顯示、串口通信MAX232按鍵電路、AT24C04存儲、報警電路、門控電路。微控制器AT89C51負責讀卡器模塊ISO/IEC15693的初始化,上位機通過串 口向ISO/IEC15693發(fā)送命令,ISO/IEC15693根據(jù)上位機發(fā)送的命令做相應的操 作,然后將得

19、到的信息傳送給微控制器 AT89C51然后微控制器控制其它模塊完 成顯示、報警、判斷和門控操作。上位機與下位機之間的連接主要是通過串口進 行通信,采用MAX2325片并將芯片的輸入和輸出管腳連接到 AT89C51 的 I/O 口, 在MAX232勺引腳上連接10小的電解電容用來濾波。讀卡器模塊 ISO/IEC15693 與微控制器AT89C51之間的通信是通過I2C總線進行的,由于AT89C5仲片機本 身并沒有I2C總線,所以將ISO/IEC15693模塊的串行時鐘線與數(shù)據(jù)線接到 AT89C51的兩個I/O 口,然后通過模擬I2C時序來完成 AT89C51與 ISO/IEC15693 之間的通

20、信,為了防止出現(xiàn)三態(tài),在 ISO/IEC15693的串行時鐘線和數(shù)據(jù)線上分 別上拉10k電阻。而ISO/IEC15693讀卡器與RFID卡之間的數(shù)據(jù)通信主要是通過 天線進行的。AT24C04與 AT89C51之間的通信也是通過模擬I2C時序進行,同時 為了防止出現(xiàn)三態(tài),在時鐘線與數(shù)據(jù)線上分別連接5.1 k的上拉電阻。LCD1602與AT89C52之間的通信是通過將LCD1602勺3條控制線和8條數(shù)據(jù)線與AT89C51 的I/O 口相連。對于按鍵電路的設(shè)計是將 3*4按鍵直接連接到AT89C51 的 7位 I/O 口,采用線反轉(zhuǎn)法通過查詢方式進行工作。3.6.2系統(tǒng)軟件設(shè)計軟件主要實現(xiàn)數(shù)據(jù)的采集

21、,數(shù)據(jù)的分析,模塊之間的通信,以及相應的數(shù)據(jù) 處理。1. 數(shù)據(jù)采集:讀卡器 ISO/IEC15693 通過天線讀取 RFID 卡的數(shù)據(jù),然后將 數(shù)據(jù)傳送出去。2. 數(shù)據(jù)分析:AT89C51接收到數(shù)據(jù)后,將數(shù)據(jù)傳送給 AT24C04或上位機, AT24C0堿上位機對數(shù)據(jù)進行分析,從而判斷數(shù)據(jù)的有效性。3. 模塊之間的通信:AT89C51與ISO/IEC15693/AT24C04之間的通信都是通 過模擬 I2C 總線進行的, I2C 總線的高效性、高實用性、高可靠性數(shù)據(jù)傳輸增 強了系統(tǒng)的實時性和可靠性。4. 數(shù)據(jù)處理:針對數(shù)據(jù)的采集和分析的結(jié)果做出相應的處理,例如顯示、 報警、門控等。四 系統(tǒng)的整

22、體描述和實現(xiàn)4.1 射頻識別的簡單描述在本設(shè)計中,采用的是射頻識別技術(shù)。 下面對射頻識別技術(shù)做一下簡要介紹:1. 射頻識別技術(shù)原理通常情況下,RFID的應用系統(tǒng)主要由讀寫器和 RFID卡兩部分組成的,見下 圖7。其中,讀寫器一般作為計算機終端,用來實現(xiàn)對 RFID卡的數(shù)據(jù)讀寫和存 儲,它是由控制單元、高頻通訊模塊和天線組成。而 RFID卡則是一種無源的應 答器,主要是由一塊集成電路(IC)芯片及其外接天線組成,其中 RFID卡芯片通 常集成有射頻前端、邏輯控制、 存儲器等電路, 有的甚至將天線一起集成在同一 芯片上。RFID應用系統(tǒng)的基本工作原理是 RFID卡進入讀寫器的射頻場后,由其天線 獲

23、得的感應電流經(jīng)升壓電路作為芯片的電源, 同時將帶信息的感應電流通過射頻 前端電路檢得數(shù)字信號送入邏輯控制電路進行信息處理, 所需回復的信息則從存 儲器中獲取經(jīng)由邏輯控制電路送回射頻前端電路,最后通過天線發(fā)回給讀寫器。 可見, RFID 卡與讀寫器實現(xiàn)數(shù)據(jù)通訊過程中起關(guān)鍵的作用是天線。一方面,無 源的RFID卡芯片要啟動電路工作需要通過天線在讀寫器天線產(chǎn)生的電磁場中獲 得足夠的能量;另一方面,天線決定了 RFID卡與讀寫器之間的通訊信道和通訊 方式。邏輯控制圖7射頻識別系統(tǒng)原理圖2. 射頻識別系統(tǒng)典型結(jié)構(gòu)射頻識別系統(tǒng)的典型結(jié)構(gòu)見圖 8,主要是由兩部份組成:讀寫器和射頻卡。 讀寫器同射頻卡之間通過

24、無線方式通訊,因此它們都有無線收發(fā)模塊及天線(或感應線圈)。射頻卡中有存儲器,內(nèi)存容量為幾個比特到幾十千比特。可 以存儲永久性數(shù)據(jù)和非永久性數(shù)據(jù)。永久性數(shù)據(jù)可以是射頻卡序列號,它是用 來作為射頻卡的唯一身份標識,不能更改;非永久性數(shù)據(jù)寫在E2PR0M等可重寫的存儲器內(nèi),用以存儲用戶數(shù)據(jù)。射頻卡可以根據(jù)讀寫器發(fā)出的指令對這 些數(shù)據(jù)進行相應的實時讀寫操作??刂颇K完成接收、譯碼及執(zhí)行讀寫器的命 令,控制讀寫數(shù)據(jù),負責數(shù)據(jù)安全等功能。射頻卡分無源卡和有源卡兩種,有 源卡內(nèi)置天線和電池,而無源卡只有內(nèi)置天線沒有電池, 其能量由讀寫器提供, 由于無源卡無需電池因此其尺寸較小且使用壽命長,應用越來越廣泛。

25、讀寫器內(nèi)的控制模塊往往具有很強的處理功能,除了完成控制射頻卡工作的任務, 還要實現(xiàn)相互認證、數(shù)據(jù)加解密、數(shù)據(jù)糾錯、出錯報警及與計算機通信等功能。 計算機的功能是向讀寫器發(fā)送指令,并與讀寫器之間進行數(shù)據(jù)交換。能ht接I I模塊訂篦機圖8 RFID系統(tǒng)典型結(jié)構(gòu)圖8為RFID系統(tǒng)的工作過程,這是一個無源系統(tǒng),即射頻卡內(nèi)不含電池, 射頻卡工作的能量是由射頻讀寫模塊發(fā)出的射頻脈沖提供。(1) 射頻讀寫模塊在一個區(qū)域內(nèi)發(fā)射能量形成電磁場,區(qū)域大小取決于發(fā)射 功率、工作頻率和天線尺寸。(2) 射頻卡進入這個區(qū)域時,接收到射頻讀寫模塊的射頻脈沖,經(jīng)過橋式整流后給電容充電。電容電壓經(jīng)過穩(wěn)壓后作為工作電壓。(3)

26、 數(shù)據(jù)解調(diào)部分從接收到的射頻脈沖中解調(diào)出命令和數(shù)據(jù)并送到邏輯控制 部分。邏輯控制部分接收指令完成存儲、發(fā)送數(shù)據(jù)或其它操作。(4) 如果需要發(fā)送數(shù)據(jù),則將數(shù)據(jù)調(diào)制然后從收發(fā)模塊發(fā)送出去。(5) 讀寫模塊接收到返回的數(shù)據(jù)后,解碼并進行錯誤校驗來決定數(shù)據(jù)的有效性,然后進行處理,必要時可以通過 RS232或 RS422或 RS485或RJ45或無線接 口將數(shù)據(jù)傳送到計算機。讀寫器發(fā)送的射頻信號除提供能量外,通常還提供時鐘 信號,使數(shù)據(jù)同步,從而簡化了系統(tǒng)的設(shè)計。有源系統(tǒng)的工作原理與此大致相同, 不同處只是卡的工作電源由電池提供的。4.2軟件結(jié)構(gòu)的實現(xiàn)4.2.1系統(tǒng)的整體軟件結(jié)構(gòu)系統(tǒng)軟件設(shè)計是整個系統(tǒng)設(shè)

27、計的重要部分,在硬件電路的基礎(chǔ)上,加上軟件編程才可以實現(xiàn)系統(tǒng)預期的功能在本系統(tǒng)中,軟件的設(shè)計主要包括:數(shù)據(jù)采集模塊、存儲模塊、顯示模塊、 門控模塊、報警模塊、鍵盤模塊和上位機軟件的設(shè)計幾個方面。本系統(tǒng)的軟件結(jié)構(gòu)框圖如圖9所示。1. 數(shù)據(jù)采集模塊:讀卡器ISO/IEC15693通過天線讀取RFID卡的數(shù)據(jù),然 后將數(shù)據(jù)傳送出去。2. 存儲模塊:AT89C51接收到數(shù)據(jù)后,將數(shù)據(jù)傳送給 AT24C044行存儲。3. 顯示模塊:AT89C51接收到數(shù)據(jù)后,將數(shù)據(jù)與 AT24C04里存儲的數(shù)據(jù)進 行對比,若兩者完全相同,則液晶顯示正確的信息;若不相同,則液晶顯示錯誤的信息。4門控模塊:AT89C51接

28、收到數(shù)據(jù)后,將數(shù)據(jù)與 AT24C04里存儲的數(shù)據(jù)進 行對比,若兩者完全相同,貝皿行開門操作;若不相同,貝U不開門。5. 報警模塊:AT89C51接收到數(shù)據(jù)后,將數(shù)據(jù)與 AT24C04里存儲的數(shù)據(jù)進 行對比,若不相同則報警。6. 鍵盤模塊:通過鍵盤輸入密碼,并根據(jù)輸入密碼的有效性做相應的操作。圖9 軟件結(jié)構(gòu)框圖串口發(fā)送/接收部分的調(diào)試:將電路板與計算機連接以后,用一段簡單的程 序進行調(diào)試。發(fā)現(xiàn)在調(diào)試的過程中, 串口不能正常通信,經(jīng)過查證后發(fā)現(xiàn)是電容 正負極接反了,修正以后,便能正常通信了。注:電容的選擇要注意,應選擇 0.1卩F/1卩F/10曲的電容。存儲部分的調(diào)試:將 AT24C04與單片機連

29、接好后,編 寫一段簡單的存儲程序,將字符存入到24C04里,并取出查看存儲數(shù)據(jù)的正確性。 通過調(diào)試后,并未發(fā)現(xiàn)問題。存儲電路調(diào)試成功。讀卡器部分的調(diào)試:將讀卡器 接口與單片機相連后, 用串口調(diào)試助手檢測讀卡器。 在用串口助手向讀卡器發(fā)送 讀卡命令時,當有卡(MIFIRE S50 S70卡)進入讀卡器讀卡范圍內(nèi)時,會向串 口助手返回卡序列號,以此證明讀卡器可用。4.3 系統(tǒng)功能的具體實現(xiàn)4.3.1 系統(tǒng)軟件調(diào)試在進行軟件調(diào)試之前要先進行人工檢查代碼, 要仔細認真的檢查, 在程序中 要多添加注釋,以便檢查方便。在人工檢查無誤后,才可以進行動態(tài)檢查,也就 是上機調(diào)試。 通過編譯可以得到語法錯誤的信息

30、, 根據(jù)提示信息找出程序中出錯 之處并改正。有時提示的出錯信息并不是真正出錯的行, 這就要求我們善于分析, 找出真正的錯誤, 而不要單純從字面意義上找出錯信息, 要懂得變通的理解并解 決問題。軟件調(diào)試時,也要模塊式進行。調(diào)試時可用單步運行和斷點運行方式, 通過檢查系統(tǒng)的CPU現(xiàn)場情況、RAM勺內(nèi)容和I/O 口的狀態(tài),檢測程序執(zhí)行結(jié)果 是否符合設(shè)計要求。 同時,還可以發(fā)現(xiàn)系統(tǒng)中存在的硬件設(shè)計錯誤和軟件算法錯 誤。待各個模塊調(diào)好后再進行系統(tǒng)程序聯(lián)調(diào)。 這個階段若出現(xiàn)故障, 可以檢查算 法上是否有沖突、參數(shù)傳遞是否正確等。在使用WAV軟件時,調(diào)試的方法和技巧最為重要,不同的情況采用不同的 調(diào)試方法,

31、有助于程序的實現(xiàn)。 在設(shè)計過程中顯示運行結(jié)果一般用全速調(diào)試, 調(diào) 試時主要使用了跟蹤調(diào)試、斷點調(diào)試。1 跟蹤調(diào)試:跟蹤應用程序用戶能夠在運行應用程序時,看到PC指針在應用源代碼程序中的確切位置。跟蹤型:單步執(zhí)行一條語句程序,有利于觀察變量。但是,如果調(diào)用一個函 數(shù),則進入函數(shù)中,在函數(shù)中單步執(zhí)行每一條語句。跟蹤使用熱鍵F7。單步型:單步執(zhí)行每條語句程序,如果調(diào)用一個函數(shù),則不進入函數(shù)中。單 步使用熱鍵 F8。2斷點調(diào)試如果已知程序中某塊代碼實際運行正常的情況下, 仍用跟蹤調(diào)試, 將大大浪 費時間,而且很枯燥,因此調(diào)試中第二個重要工具是在源代碼中某一處設(shè)置斷點, 大多數(shù)調(diào)試程序通過使用斷點中止程

32、序執(zhí)行。在程序調(diào)試中用到使用斷點調(diào)試, 即在指定行上設(shè)置斷點后,全速執(zhí)行程序,看是否能進行到設(shè)置斷點所在行。 如 果用斷點調(diào)試, 由比較容易觀察出程序變量的改變及程序運行的結(jié)果。 設(shè)置斷點 熱鍵 Ctrl F8。3查看變量WAVE軟件可以通 Watch窗口進行查看變量。通過添加觀察項菜單可以將用 戶希望觀察的變量添加到觀察窗口及數(shù)據(jù)窗口觀察。 在設(shè)計過程中常用觀察窗口 觀察程序中的變量,修改程序中的錯誤。4.3.2 系統(tǒng)整體調(diào)試將各個部分的硬件模塊合并成一個整體, 把軟件各個部分程序合并到一個主 程序中。通過偉福訪真器和偉福調(diào)試軟件 WAVE600開始整體調(diào)試,硬件部分用 萬用表來測試硬件每部

33、分的接通性。軟件部分的測試主要方法是通過設(shè)置斷點、 單步執(zhí)行等方法來測試程序的正確性。 在確定軟硬件無問題后, 將程序通過燒寫 器把程序燒到單片機中。將程序燒寫到控制芯片AT89C52打開電源,電源指示燈亮,整個系統(tǒng)啟動。 運行上位機,向下位機發(fā)送讀卡命令,下位機接收到讀卡命令后,當有 RFID 卡 進入到讀卡器的讀卡范圍內(nèi)時,若 RFID 卡為有效卡便會在執(zhí)行開門操作的同時 在液晶上顯示正確信息;若不是有效卡則在報警的同時在液晶上顯示錯誤信息。 當通過鍵盤輸入密碼后, 系統(tǒng)會判斷密碼的有效性, 若是有效密碼則開門并在液 晶上顯示正確信息;若無效則報警并顯示錯誤信息。整個系統(tǒng)完成。本系統(tǒng)能在打

34、開電源并運行上位機后, 能自動向下位機發(fā)送讀卡命令, 當有 RFID 卡進入到讀卡器的讀卡范圍內(nèi)時,則會自動讀取卡序列號,并將卡序列號 傳送給上位機,上位機判斷卡的有效性。 若該卡是有效卡, 系統(tǒng)會執(zhí)行開門并在 液晶上顯示正確的信息;若該卡是非法卡, 則會報警并顯示錯誤的信息。 本系統(tǒng) 能夠有效、方便、安全地控制重要場所的出入訪問,具有可靠性高、保密性強、 方便快捷等特點。整個系統(tǒng)中數(shù)據(jù)傳輸?shù)倪^程:發(fā)送到SDA線上的每個字節(jié)必須為8位。每次 傳輸可以發(fā)送的字節(jié)數(shù)量不受限制, 每個字節(jié)的后面必須跟一個響應位。 首先傳 輸?shù)氖菙?shù)據(jù)的最高位(MSB。如果從機要完成一些其他功能后(例如一個內(nèi)部中 斷服務程序)才能接收或發(fā)送下一個完整的數(shù)據(jù)字節(jié)??梢允褂脮r鐘線SCL保持 低電平迫使主機進入等待狀態(tài)。當從機準備好接收下一個數(shù)據(jù)字節(jié)釋放時鐘線SCL后,數(shù)據(jù)傳輸繼續(xù)。在一些情況下,可以用與I2C總線格式不一樣的格式(例如兼容 CBUS勺器 件)。甚

溫馨提示

  • 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

提交評論