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

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 10675|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

基于射頻識(shí)別技術(shù)的門禁系統(tǒng)設(shè)計(jì)

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:304293 發(fā)表于 2018-4-9 16:20 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式

業(yè)


基于射頻識(shí)別技術(shù)的門禁系統(tǒng)設(shè)計(jì)















作 者 姓 名 :
專 業(yè)、班 級(jí):
學(xué)        號(hào):
校內(nèi)指導(dǎo)教師:
校外指導(dǎo)教師:
完 成 日 期 :



     黃河水利職業(yè)技術(shù)學(xué)院自動(dòng)化工程系


摘    要
本文研究一種基于射頻識(shí)別(RFID)技術(shù)的門禁系統(tǒng)。(1)研究了基于射頻識(shí)別技術(shù)的門禁系統(tǒng)的總體設(shè)計(jì),設(shè)計(jì)了射頻IC讀卡器的電路原理圖。讀卡器主要由射頻天線、讀卡模塊、RS485通信接口及單片機(jī)控制系統(tǒng)組成,(2) 深入研究RFID 天線的EMC過(guò)濾器、接收電路以及天線匹配電路等構(gòu)成并設(shè)計(jì)優(yōu)化了天線耦合電路。(3)門禁終端通信采用RS485總線,同時(shí)結(jié)合門禁讀卡器研究了RS485的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),通過(guò)RS485接口與PC機(jī)組成通信網(wǎng)絡(luò)系統(tǒng)。(4)設(shè)計(jì)單片機(jī)的包看門狗、液晶顯示、數(shù)據(jù)存儲(chǔ)和實(shí)時(shí)時(shí)鐘等在內(nèi)的外圍模塊電路。(5)采用模塊化軟件設(shè)計(jì)方法,根據(jù)MF RC500的特性,系統(tǒng)地對(duì)MF RC500芯片的操作流程進(jìn)行研究,設(shè)計(jì)主程序的流程圖和各個(gè)模塊子程序。(6)并建立一個(gè)Access數(shù)據(jù)庫(kù)用來(lái)存儲(chǔ)用戶信息。上位機(jī)與下位機(jī)之間的通信采用串口通信,選用MAX232CPE芯片完成上、下位機(jī)之間的通信。

關(guān)鍵詞:門禁系統(tǒng);射頻識(shí)別;MF RC500;非接觸式IC卡;串口通信


目    錄
摘    要..................................................................................................................................... I
引言............................................................................................................................................ 1
第1章門禁系統(tǒng)總體設(shè)計(jì)方案.............................................................................................. 2
1.1 門禁系統(tǒng)總體系統(tǒng)設(shè)計(jì)............................................................................................. 2
1.2 門禁系統(tǒng)硬件設(shè)計(jì)..................................................................................................... 2
1.3門禁系統(tǒng)軟件設(shè)計(jì)...................................................................................................... 3
第2章門禁系統(tǒng)主要硬件電路設(shè)計(jì)...................................................................................... 3
2.1 門禁主控器................................................................................................................. 3
2.2源模塊設(shè)計(jì).................................................................................................................. 5
2.3射頻控制模塊設(shè)計(jì)...................................................................................................... 6
2.3.1 射頻識(shí)別系統(tǒng)的典型結(jié)構(gòu).............................................................................. 6
2.3.2射頻識(shí)別系統(tǒng)原理........................................................................................... 7
2.4 RS485通信模塊設(shè)計(jì).................................................................................................. 9
2.4.1           RS485接口............................................................................................. 9
2.4.2           RS485網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)........................................................................... 11
2.5 液晶顯示模塊設(shè)計(jì)................................................................................................... 13
2.5.1 LCD1602介紹................................................................................................ 13
2.5.2 引腳功能介紹................................................................................................ 14
2.5.3 寄存器選擇功能及指令功能........................................................................ 14
2.6實(shí)時(shí)時(shí)鐘的硬件設(shè)計(jì)................................................................................................ 15
2.6.1 實(shí)時(shí)時(shí)鐘的接口............................................................................................ 15
2.6.2 時(shí)鐘數(shù)據(jù)傳輸?shù)目刂?................................................................................... 16
2.6.3 時(shí)鐘數(shù)據(jù)傳送方式........................................................................................ 17
2.7電平轉(zhuǎn)換電路設(shè)計(jì).................................................................................................... 17
2.7.1電平轉(zhuǎn)換芯片................................................................................................. 17
2.7.2 MAX232芯片................................................................................................. 18
2.7.3電路連接圖..................................................................................................... 19
2.8報(bào)警電路設(shè)計(jì)............................................................................................................ 19
第3章IC卡與門禁主控器的選擇........................................................................................ 20
3.1非接觸式IC卡的選擇.............................................................................................. 20
3.2門禁控制電路............................................................................................................ 21
3.3 讀卡器選擇............................................................................................................... 22
第4章門禁系統(tǒng)軟件設(shè)計(jì).................................................................................................... 24
4.1系統(tǒng)總體程序流程設(shè)計(jì)............................................................................................ 24
4.2 射頻控制模塊........................................................................................................... 24
4.4 通訊模塊................................................................................................................... 27
4.5顯示模塊.................................................................................................................... 31
4.6上位機(jī)設(shè)計(jì)................................................................................................................ 32
4.6.1 上位機(jī)程序流程圖........................................................................................ 32
4.6.2用戶登錄界面設(shè)計(jì)......................................................................................... 33
4.6.3門禁系統(tǒng)界面設(shè)計(jì)......................................................................................... 35
第5章系統(tǒng)調(diào)試及結(jié)果分析.................................................................................................. 37
5.1 系統(tǒng)調(diào)試................................................................................................................... 37
5.2 結(jié)論分析................................................................................................................... 37
參 考文 獻(xiàn)............................................................................................................................ 38
附錄 部分電路原理圖及PCB圖........................................................................................... 39
致    謝.................................................................................................................................. 41


引言
隨著我國(guó)社會(huì)主義市場(chǎng)經(jīng)濟(jì)的深入發(fā)展和未來(lái)知識(shí)經(jīng)濟(jì)時(shí)代的臨近,門禁系統(tǒng)作為一項(xiàng)安防措施,將會(huì)形成更大規(guī)模的產(chǎn)業(yè)。這方面的社會(huì)需求已在逐步升溫。作為政府職能的重要組成部分,保障公民生命財(cái)產(chǎn)安全和社會(huì)的安定,實(shí)施綜合安全服務(wù)工程將會(huì)像環(huán)保工程、生態(tài)農(nóng)業(yè)工程一樣,受到社會(huì)的關(guān)注和公眾的歡迎。
出入口門禁安全管理系統(tǒng)是新型現(xiàn)代化安全管理系統(tǒng),它集微機(jī)自動(dòng)識(shí)別技術(shù)和現(xiàn)代安全管理措施為一體,它涉及電子,機(jī)械,光學(xué),計(jì)算機(jī)技術(shù),通訊技術(shù),生物技術(shù)等諸多新技術(shù)。它是解決重要部門出入口實(shí)現(xiàn)安全防范管理的有效措施。適用各種機(jī)要部門,如銀行、賓館、機(jī)房、軍械庫(kù)、機(jī)要室、辦公間、智能化小區(qū)、工廠等。

















第1章 門禁系統(tǒng)總體設(shè)計(jì)方案1.1 門禁系統(tǒng)總體系統(tǒng)設(shè)計(jì)
基于MF RC500射頻識(shí)別門禁系統(tǒng)是以射頻識(shí)別讀寫器為核心,系統(tǒng)的總體結(jié)構(gòu)見圖,門鎖繼電器以及其他一些輔助器件而組成的系統(tǒng)。系統(tǒng)的工作原理是先由微處理器ATmega16控制射頻識(shí)別讀寫器讀取非接觸式IC卡的信號(hào),接著,ATmega16根據(jù)所得數(shù)據(jù)輸出四個(gè)開關(guān)量信號(hào)(門閥繼電器有兩個(gè),分別控制進(jìn)出),經(jīng)放大后分別用于控制門鎖繼電器和讀取門磁信號(hào),并且整個(gè)系統(tǒng)與上位PC機(jī)之間進(jìn)行通訊,獲得指令以及傳輸系統(tǒng)狀態(tài)等,最后,對(duì)系統(tǒng)的輔助設(shè)備,如液晶屏、E2PROM等進(jìn)行操作。
file:///C:/Temp/Temp/msohtmlclip1/01/clip_image002.png
圖3.1 系統(tǒng)的總體結(jié)構(gòu)圖
1.2 門禁系統(tǒng)硬件設(shè)計(jì)
系統(tǒng)硬件設(shè)計(jì)主要由ATmega16主控芯片和非接觸式IC卡模塊構(gòu)成。硬件電路由八部分構(gòu)成:微控制器ATmega16、讀卡器模塊非接觸式IC卡、LCD1602顯示、串口通信MAX232、按鍵電路、AT24C04存儲(chǔ)、報(bào)警電路、門控電路。微控制器ATmega16負(fù)責(zé)非接觸式IC卡的初始化,上位機(jī)通過(guò)串口向非接觸式IC卡發(fā)送命令,非接觸式IC卡根據(jù)上位機(jī)發(fā)送的命令做相應(yīng)的操作,然后將得到的信息傳送給微控制器ATmega16,然后微控制器控制其它模塊完成顯示、報(bào)警、判斷和門控操作。上位機(jī)與下位機(jī)之間的連接主要是通過(guò)串口進(jìn)行通信,采用MAX232芯片并將芯片的輸入和輸出管腳連接到ATmega16的I/O口,在MAX232的引腳上連接10μF的電解電容用來(lái)濾波。讀卡器模塊非接觸式IC卡與微控制器ATmega16之間的通信是通過(guò)I2C總線進(jìn)行的,由于ATmega16單片機(jī)本身并沒(méi)有I2C總線,所以將非接觸式IC卡模塊的串行時(shí)鐘線與數(shù)據(jù)線接到ATmega16的兩個(gè)I/O口,然后通過(guò)模擬I2C時(shí)序來(lái)完成ATmega16與非接觸式IC卡之間的通信,為了防止出現(xiàn)三態(tài),在非接觸式IC卡的串行時(shí)鐘線和數(shù)據(jù)線上分別上拉10k電阻。而非接觸式IC卡與RFID卡之間的數(shù)據(jù)通信主要是通過(guò)天線進(jìn)行的。AT24C04與ATmega16之間的通信也是通過(guò)模擬I2C時(shí)序進(jìn)行,同時(shí)為了防止出現(xiàn)三態(tài),在時(shí)鐘線與數(shù)據(jù)線上分別連接5.1 k的上拉電阻。LCD1602與ATmega16之間的通信是通過(guò)將LCD1602的3條控制線和8條數(shù)據(jù)線與ATmega16的I/O口相連。對(duì)于按鍵電路的設(shè)計(jì)是將3*4按鍵直接連接到ATmega16的7位I/O口,采用線反轉(zhuǎn)法通過(guò)查詢方式進(jìn)行工作。
1.3門禁系統(tǒng)軟件設(shè)計(jì)
軟件主要實(shí)現(xiàn)數(shù)據(jù)的采集,數(shù)據(jù)的分析,模塊之間的通信,以及相應(yīng)的數(shù)據(jù)處理。
數(shù)據(jù)采集:非接觸式IC卡通過(guò)天線讀取RFID卡的數(shù)據(jù),然后將數(shù)據(jù)傳送出去。
數(shù)據(jù)分析:ATmega16接收到數(shù)據(jù)后,將數(shù)據(jù)傳送給AT24C04或上位機(jī),AT24C04或上位機(jī)對(duì)數(shù)據(jù)進(jìn)行分析,從而判斷數(shù)據(jù)的有效性。
模塊之間的通信:ATmega16與AT24C04之間的通信都是通過(guò)模擬I2C總線進(jìn)行的, I2C總線的高效性、高實(shí)用性、高可靠性數(shù)據(jù)傳輸增強(qiáng)了系統(tǒng)的實(shí)時(shí)性和可靠性。
數(shù)據(jù)處理:針對(duì)數(shù)據(jù)的采集和分析的結(jié)果做出相應(yīng)的處理,例如顯示、報(bào)警、門控等。
第2章 門禁系統(tǒng)主要硬件電路設(shè)計(jì)2.1 門禁主控器
門禁系統(tǒng)的主控設(shè)備采用ATmega16單片機(jī)。AVR系列單片機(jī)是ATMEL公司開發(fā)的新一代單片機(jī),在設(shè)計(jì)上打破常規(guī),采用了全新的概念,突出的優(yōu)點(diǎn)是高性能、低功耗的 8 位AVR 微處理器,并且具有先進(jìn)的RISC結(jié)構(gòu),方便設(shè)計(jì)者使用。一般而言ATmega16在1 MHz,3V, 25°C 時(shí)的功耗正常模式時(shí)的工作電流為 1.1mA ,空閑模式時(shí)的工作電流為 0.35mA,掉電模式時(shí)的工作電流 < 1 μA。此外,該系列單片機(jī)擁有各種流行接口,方便與目前許多種類的外圍設(shè)備連接通信,操作方便快捷,非常適合于低功耗、混合信號(hào)處理的產(chǎn)品與應(yīng)用。ATmega16的硬件設(shè)計(jì)特點(diǎn)如下:
(1)CPU設(shè)計(jì)
ATmega16單片機(jī)的CPU采用8位的RISC結(jié)構(gòu)。擁有32個(gè)8位通用工作寄存器,其中X、Y、Z 特殊寄存器可以用作3 個(gè)16 位的間接尋址寄存器指針以尋址數(shù)據(jù)空間,實(shí)現(xiàn)高效的地址運(yùn)算。
(2)內(nèi)部存儲(chǔ)器分為程序存儲(chǔ)器(FLASH)和數(shù)據(jù)存儲(chǔ)器(RAM)
ATmega16具有豐富的內(nèi)部存儲(chǔ)單元,包括16K字節(jié)的程序存儲(chǔ)器FLASH,512 字節(jié)EPROM和1K字節(jié)SRAM。
(3)輸入/輸出(I/O)口
ATmega16單片機(jī)32 個(gè)通用I/O 口線,作為通用數(shù)字I/O 使用時(shí),所有AVR I/O 端口都具有真正的讀- 修改- 寫功能。這意味著用SBI 或CBI 指令改變某些管腳的方向( 或者是端口電平、禁止/ 使能上拉電阻) 時(shí)不會(huì)無(wú)意地改變其他管腳的方向( 或者是端口電平、禁止/ 使能上拉電阻)。有些引腳還具有特殊功能,包括可工作于主機(jī)/ 從機(jī)模式的SPI 串行接口。
(4)定時(shí)/計(jì)數(shù)器
ATmega16系列單片機(jī)有2個(gè)兩個(gè)具有獨(dú)立預(yù)分頻器和比較器功能的8位定時(shí)器/計(jì)數(shù)器一個(gè)具有預(yù)分頻器、比較功能和捕捉功能的16位定時(shí)器/計(jì)數(shù)器
(5)指令系統(tǒng)
ATmega16系列單片機(jī)具有先進(jìn)的RISC 結(jié)構(gòu),131條指令,并且大多數(shù)指令執(zhí)行時(shí)間為單個(gè)時(shí)鐘周期
(6)睡眠模式
空閑模式、ADC 噪聲抑制模式、省電模式、掉電模式、Standby 模式以及擴(kuò)展的Standby模式
綜上所述,ATmega16單片機(jī)是一款功能強(qiáng)大、集成資源豐富的智能型微控制器。
利用其上述特性,結(jié)合本系統(tǒng)的設(shè)計(jì)需求,主控設(shè)備需要實(shí)現(xiàn)以下的操作:
(1)控制無(wú)線傳輸平臺(tái)的傳輸過(guò)程,包括發(fā)送、接收模塊的配置與控制.
(2)控制電子鎖的開啟
(3)LCD輸出顯示的驅(qū)動(dòng)程序
(4)報(bào)警模塊的驅(qū)動(dòng)程序
針對(duì)以上需實(shí)現(xiàn)的功能,ATmega16單片機(jī)預(yù)留相應(yīng)的資源與之對(duì)應(yīng)。PB端口與無(wú)線傳輸系統(tǒng)的RF模塊相連接,PC端口與LCD顯示模塊相連接,PD口與讀卡模塊相連接,PA口用于電子鎖和報(bào)警模塊相連接。ATmega16單片機(jī)的引腳圖如圖2.1所示。
file:///C:/Temp/Temp/msohtmlclip1/01/clip_image004.jpg
圖2.1ATmega16單片機(jī)的引腳圖
2.2源模塊設(shè)計(jì)
門禁系統(tǒng)的電源電路如圖2-2所示
file:///C:/Temp/Temp/msohtmlclip1/01/clip_image006.png
圖2-2電源電路
如圖所示電路為輸出電壓+5V、輸出電流1.5A的穩(wěn)壓電源。它由電源變壓器T1,橋式整流電路D1,濾波電容C4、C6,防止自激電容C5、C13和一只固定式三端穩(wěn)壓器(LM7805)組成的。
220V交流市電通過(guò)電源變壓器變換成交流低壓,再經(jīng)過(guò)橋式整流電路D1和濾波電容C4的整流和濾波,在固定式三端穩(wěn)壓器LM7805的IN和GND兩端形成一個(gè)并不十分穩(wěn)定的直流電壓。此直流電壓經(jīng)過(guò)LM7805的穩(wěn)壓和C6的濾波便在穩(wěn)壓電源的輸出端產(chǎn)生了精度高、穩(wěn)定度好的直流輸出電壓。
2.3射頻控制模塊設(shè)計(jì)2.3.1 射頻識(shí)別系統(tǒng)的典型結(jié)構(gòu)
射頻識(shí)別系統(tǒng)的典型結(jié)構(gòu)見圖2.3主要是由兩部份組成:讀寫器和射頻卡。讀寫器同射頻卡之間通過(guò)無(wú)線方式通訊,因此它們都有無(wú)線收發(fā)模塊及天線(或感應(yīng)線圈)。射頻卡中有存儲(chǔ)器,內(nèi)存容量為幾個(gè)比特到幾十千比特?梢源鎯(chǔ)永久性數(shù)據(jù)和非永久性數(shù)據(jù)。永久性數(shù)據(jù)可以是射頻卡序列號(hào),它是用來(lái)作為射頻卡的唯一身份標(biāo)識(shí),不能更改;非永久性數(shù)據(jù)寫在E2PROM等可重寫的存儲(chǔ)器內(nèi),用以存儲(chǔ)用戶數(shù)據(jù)。射頻卡可以根據(jù)讀寫器發(fā)出的指令對(duì)這些數(shù)據(jù)進(jìn)行相應(yīng)的實(shí)時(shí)讀寫操作?刂颇K完成接收、譯碼及執(zhí)行讀寫器的命令,控制讀寫數(shù)據(jù),負(fù)責(zé)數(shù)據(jù)安全等功能。射頻卡分無(wú)源卡和有源卡兩種,有源卡內(nèi)置天線和電池,而無(wú)源卡只有內(nèi)置天線沒(méi)有電池,其能量由讀寫器提供,由于無(wú)源卡無(wú)需電池因此其尺寸較小且使用壽命長(zhǎng),應(yīng)用越來(lái)越廣泛。讀寫器內(nèi)的控制模塊往往具有很強(qiáng)的處理功能,除了完成控制射頻卡工作的任務(wù),還要實(shí)現(xiàn)相互認(rèn)證、數(shù)據(jù)加解密、數(shù)據(jù)糾錯(cuò)、出錯(cuò)報(bào)警及與計(jì)算機(jī)通信等功能。計(jì)算機(jī)的功能是向讀寫器發(fā)送指令,并與讀寫器之間進(jìn)行數(shù)據(jù)交換。
file:///C:/Temp/Temp/msohtmlclip1/01/clip_image008.png
圖2.3.1 RFID系統(tǒng)典型結(jié)構(gòu)

2.3.2射頻識(shí)別系統(tǒng)原理
圖2.4為RFID系統(tǒng)的工作過(guò)程,這是一個(gè)無(wú)源系統(tǒng),即射頻卡內(nèi)不含電池,射頻卡工作的能量是由射頻讀寫模塊發(fā)出的射頻脈沖提供[11-13]。
1射頻讀寫模塊在一個(gè)區(qū)域內(nèi)發(fā)射能量形成電場(chǎng),區(qū)域大小取決于發(fā)射功率、工作頻率和天線尺寸。
2射頻卡進(jìn)入這個(gè)區(qū)域時(shí),接收到射頻讀寫模塊的射頻脈沖,經(jīng)過(guò)橋式整流后給電容充電。電容電壓經(jīng)過(guò)穩(wěn)壓后作為工作電壓。
3 數(shù)據(jù)解調(diào)部分從接收到的射頻脈沖中解調(diào)出命令和數(shù)據(jù)并送到邏輯控制部分。邏輯控制部分接收指令完成存儲(chǔ)、發(fā)送數(shù)據(jù)或其它操作。
4 如果需要發(fā)送數(shù)據(jù),則將數(shù)據(jù)調(diào)制然后從收發(fā)模塊發(fā)送出去。
5 讀寫模塊接收到返回的數(shù)據(jù)后,解碼并進(jìn)行錯(cuò)誤校驗(yàn)來(lái)決定數(shù)據(jù)的有效性,然后進(jìn)行處理,必要時(shí)可以通過(guò)RS232或RS422或RS485或RJ45或無(wú)線接口將數(shù)據(jù)傳送到計(jì)算機(jī)。讀寫器發(fā)送的射頻信號(hào)除提供能量外,通常還提供時(shí)鐘信號(hào),使數(shù)據(jù)同步,從而簡(jiǎn)化了系統(tǒng)的設(shè)計(jì)。有源系統(tǒng)的工作原理與此大致相同,不同處只是卡的工作電源由電池提供。
file:///C:/Temp/Temp/msohtmlclip1/01/clip_image010.png
圖2.3.2射頻識(shí)別系統(tǒng)原理圖
系統(tǒng)主要由MCU、時(shí)鐘芯片、MF RC500、液晶屏、看門狗以及RS485通信模塊組成。系統(tǒng)的工作方式是先由MCU 控制MF RC500 驅(qū)動(dòng)天線Mifare卡,進(jìn)行讀寫操作,然后,根據(jù)所得的數(shù)據(jù)對(duì)其它接口器件,如液晶屏、E2PROM、時(shí)鐘芯片等,進(jìn)行響應(yīng)操作,最后,再與PC機(jī)之間進(jìn)行通信,把數(shù)據(jù)傳給上位機(jī)。MCU采用89C52,是因?yàn)?9C52開發(fā)簡(jiǎn)單,運(yùn)行穩(wěn)定。E2PROM 采用24C64,用于存儲(chǔ)系統(tǒng)的數(shù)據(jù)。24C64是串口操作方式,是一種性價(jià)比較高的存儲(chǔ)芯片。液晶屏采用帶字庫(kù)的ST7920,是因?yàn)樗遣⒖诓僮鞣绞降,操作方便。時(shí)鐘芯片采用DS1302。DS1302是Dallas公司生產(chǎn)的新型產(chǎn)品,內(nèi)置電池,可連續(xù)使用10 年,可以方便記錄事件的發(fā)生時(shí)間。為了防止系統(tǒng)“死機(jī)”,使用x5045作為看門狗。x5045是串口工作方式,內(nèi)置E2PROM,可用來(lái)存儲(chǔ)一些系統(tǒng)參數(shù)。與上位機(jī)的通信采用RS485 通信模式,通信距離可以達(dá)到1000m左右。整個(gè)系統(tǒng)由9V電源供電,再由穩(wěn)壓模塊7805 穩(wěn)壓成5V的電源。由于7805的工作熱量很高,故在7805上安置一個(gè)散熱片。
file:///C:/Temp/Temp/msohtmlclip1/01/clip_image012.jpg
圖2.5 MF RC500與89C52的接口電路
MF RC500是應(yīng)用于13.56 MHz非接觸式通信中高集成讀卡IC系列中的一員。該讀卡IC系列利用了先進(jìn)的調(diào)制和解調(diào)概念,完全集成了在13.56 MHz下所有類型的被動(dòng)非接觸式通信方式和協(xié)議。MF RC500支持IS014443A所有的層。內(nèi)部的發(fā)送器部分不需要增加有源電路就能夠直接驅(qū)動(dòng)近操作距離的天線(100mm)。接收器部分提供一個(gè)堅(jiān)固而有效的解調(diào)和解碼電路,用于ISO14443A兼容的應(yīng)答器信號(hào)。數(shù)字部分處理ISO14443A幀和錯(cuò)誤檢測(cè)(奇偶&CRC)。此外,它還支持快速CRYPTO1加密算法用于驗(yàn)證MIFARE系列產(chǎn)品。方便的并行接口可直接連接到任何8位微處理器,這樣給讀卡器/終端的設(shè)計(jì)提供了極大的靈活性。
2.4 RS485通信模塊設(shè)計(jì)2.4.1  RS485接口
RS485定義了一種平衡通訊接口,它允許在一條平衡線上同時(shí)接多個(gè)接收器。它的數(shù)據(jù)信號(hào)采用差分傳輸方式,也稱作平衡傳輸。它使用一對(duì)雙絞線,將其中一條線定義為A,另一條定義為B [13] 。
通常情況下,發(fā)送器A,B之間的電壓在-6~-2V表示邏輯‘0';在+2~+6V表示邏輯‘1',另外有一個(gè)信號(hào)地C。在RS485中還有一個(gè)使能端ENABLE;它用于控制發(fā)送器與傳送線A, B斷開與連接。當(dāng)ENABLE為‘0’時(shí),發(fā)送器處于高阻狀態(tài)并與平衡雙絞線A, B斷開;只有當(dāng)ENABLE為‘1’時(shí),RS485的發(fā)送器才工作。接收器通過(guò)平衡雙絞線將A與B分別對(duì)應(yīng)連接,當(dāng)接收器A, B之間的電壓在+200mV-+6V之間時(shí),輸出邏輯`1';在-6V ~-200mV時(shí),輸出邏輯‘0'。RS485 可以實(shí)現(xiàn)點(diǎn)對(duì)多通信和多對(duì)多通信,并可同時(shí)接32個(gè)發(fā)送器和32個(gè)接收器。RS485需要兩個(gè)終接電阻接在傳送總線的兩端(在傳送距離小于300米時(shí)可以不接),其阻值要求等于傳送電纜的特性阻抗。本文中PC機(jī)與門禁系統(tǒng)之間采用RS485接口實(shí)現(xiàn)點(diǎn)對(duì)多通訊,工作于半雙工方式 [15] 。
讀卡器在門禁系統(tǒng)中一般距離PC管理機(jī)比較遠(yuǎn),而RS232只能用于短距離通信,長(zhǎng)距離都用RS485串行通信芯片,數(shù)據(jù)傳輸距離一般達(dá)到1200m。 RS485是RS422的子集,以差分平衡方式傳輸信號(hào),具有很強(qiáng)的抗共模干擾的能力。SP485R芯片管腳及互連電路見圖3.7。 RS485收發(fā)器以半雙工方式、單一+5V電源工作,內(nèi)部一個(gè)接收器R,一個(gè)驅(qū)動(dòng)器D。 SP485R接口芯片是Sipex公司的一種RS485產(chǎn)品,8個(gè)管腳DIP封裝[14][15][16] 。
(1)A ,B 為RS485總線接口。A為非反相接收輸入或非反相驅(qū)動(dòng)輸出,B為反相接收輸入或反相驅(qū)動(dòng)輸出。A端電平高于B端,代表數(shù)據(jù)1;A 端電平低于B端 ,代表數(shù)據(jù)0。
(2)DI為發(fā)送器輸入端,RO為接收器輸出端。分別與單片機(jī)的TXD,RXD連接,單片機(jī)輸出的信號(hào)從TXD發(fā)送,由DI輸入經(jīng)過(guò)SP485R驅(qū)動(dòng)器轉(zhuǎn)變成A,B信號(hào)傳送出去; 外部輸送進(jìn)來(lái)的A,B 信號(hào)經(jīng)過(guò)SP485R接收器轉(zhuǎn)變成一個(gè)RO信號(hào) ,輸出給單片機(jī)RXD。
(3)RE, DE為收發(fā)使能端。RE是接收器輸出使能,低電平有效;DE是驅(qū)動(dòng)器輸出使能 ,高電平有效,SP485R與單片機(jī)接口時(shí),DI接單片機(jī)的發(fā)送端TXD,RO接單片機(jī)的接收端RXD,收發(fā)使能RE和DE兩個(gè)管腳接單片機(jī)的一個(gè)I/O口線P3.3。 當(dāng)P3.3= 1,DE滿足要求,SP485R處于發(fā)送狀態(tài),當(dāng)P3.3=0, RE滿足要求,SP485R處于接收狀態(tài)。單片機(jī)通過(guò)控制P3.3 實(shí)現(xiàn)與PC機(jī)數(shù)據(jù)交換的串行通信。
file:///C:/Temp/Temp/msohtmlclip1/01/clip_image014.png
圖 2.4.1 SP485R 管腳及互連電路
RS485總線型網(wǎng)絡(luò)系統(tǒng)連接。數(shù)據(jù)傳輸采用主從站的方式,主機(jī)為PC機(jī),從機(jī)為讀卡器單片機(jī)。每個(gè)從機(jī)擁有自己的固定的地址,由主機(jī)控制完成網(wǎng)上的每一次通信。R為平衡電阻,通常取為120歐。
開始所有從機(jī)處于監(jiān)聽狀態(tài),等待PC機(jī)的呼叫。當(dāng)PC機(jī)向網(wǎng)上發(fā)某一從機(jī)的地址時(shí),所有從機(jī)接收到該地址并與自己的地址相比較,如果相符說(shuō)明PC機(jī)在呼叫自己,應(yīng)發(fā)回應(yīng)答信號(hào),表示該從機(jī)已準(zhǔn)備好,可以接收后面的命令和數(shù)據(jù)。不是呼叫自己,則不予理睬,繼續(xù)監(jiān)聽呼叫地址。PC機(jī)收到從機(jī)的應(yīng)答后,則開始一次通信。通信完畢,從機(jī)繼續(xù)處于監(jiān)聽狀態(tài),等待呼叫。
由于PC機(jī)只有RS232通訊接口,因此必須經(jīng)過(guò)RS232/RS485轉(zhuǎn)換器轉(zhuǎn)換信號(hào), PC機(jī)才能同門禁系統(tǒng)通信。RS232/RS485轉(zhuǎn)換器原理見圖3.8。
file:///C:/Temp/Temp/msohtmlclip1/01/clip_image016.png
圖2.4.2  RS232/RS485轉(zhuǎn)換器原理圖
PC機(jī)的串口通訊接口經(jīng)過(guò)SP232芯片變成TTL電平,然后使用SP485R將TTL電平變成RS485電平。在SP232和SP485之間采用了高速光電隔離器PS2501以提高抗干擾能力。SP485R是低功耗、半雙工RS485收發(fā)器,它包含1個(gè)發(fā)送器和1個(gè)接收器。SP485R芯片與單片機(jī)的接口原理圖見圖2.4.3。
在電路設(shè)計(jì)時(shí),注意A和B端要接一個(gè)終端電阻,本系統(tǒng)接的是120歐姆。SP485R芯片有8個(gè)引腳,其中需要一個(gè)I/O口(本系統(tǒng)采用P3.4) 來(lái)控制SP485R的發(fā)送數(shù)據(jù)。當(dāng)該I/O口為‘1’時(shí),SP485R能發(fā)送數(shù)據(jù),當(dāng)為‘0’時(shí),SP485R處于監(jiān)聽狀態(tài),只能接收數(shù)據(jù)。

file:///C:/Temp/Temp/msohtmlclip1/01/clip_image018.png圖2.4.3 SP485R芯片與單片機(jī)的接口原理圖
2.4.2  RS485網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)
網(wǎng)絡(luò)中一個(gè)或多個(gè)功能與傳輸線路互連的點(diǎn)稱為節(jié)點(diǎn)。節(jié)點(diǎn)可以定義為網(wǎng)絡(luò)中通向任何一個(gè)分支的端點(diǎn),或通向兩個(gè)或兩個(gè)以上分支的公共點(diǎn)。節(jié)點(diǎn)間的物理連接結(jié)構(gòu)稱為拓?fù),分布式系統(tǒng)中有以下三種網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu):
星形:是中央控制型結(jié)構(gòu),一切通信經(jīng)由中央控制節(jié)點(diǎn)。這種結(jié)構(gòu)的控制方式簡(jiǎn)單、便宜,缺點(diǎn)是中央控制點(diǎn)有故障時(shí),整個(gè)系統(tǒng)就會(huì)癱瘓,當(dāng)通信量增加并要求高速通信時(shí),中央控制單元的功能必須擴(kuò)充,以克服“瓶頸阻塞”問(wèn)題;如果采用冗余裝置和自動(dòng)切換技術(shù)來(lái)改善可靠性,又會(huì)大大增加系統(tǒng)的復(fù)雜程度和成本。
總線形:所有節(jié)點(diǎn)共享一個(gè)公共物理通道— 總線。這種結(jié)構(gòu)的特點(diǎn)是:網(wǎng)絡(luò)不封閉,容易加擴(kuò)新節(jié)點(diǎn),甚至用中繼器連接多個(gè)總線,形成無(wú)根樹結(jié)構(gòu);節(jié)點(diǎn)間通過(guò)總線直接通信,速度快、延遲和開銷小;某個(gè)節(jié)點(diǎn)故障對(duì)整個(gè)系統(tǒng)的影響相對(duì)較小;若采用令牌(Token)傳遞的控制協(xié)議,則可保證該網(wǎng)絡(luò)有確定的較好的實(shí)時(shí)響應(yīng)性。
環(huán)形:相鄰節(jié)點(diǎn)順序連接形成的環(huán)路結(jié)構(gòu),信息一般僅以一個(gè)方向在環(huán)上從源節(jié)點(diǎn)傳送到目的節(jié)點(diǎn),控制方式簡(jiǎn)單,節(jié)點(diǎn)間可采用不同傳輸介質(zhì),速度也不同,缺點(diǎn)是某個(gè)環(huán)節(jié)故障會(huì)阻塞信息通路,可靠性差。
RS485 的網(wǎng)絡(luò)拓?fù)湟话阒荒懿捎媒K端匹配的總線型結(jié)構(gòu),它不支持環(huán)形或星形網(wǎng)絡(luò),并且在構(gòu)建網(wǎng)絡(luò)時(shí),應(yīng)注意如下幾點(diǎn):1從總線到每個(gè)節(jié)點(diǎn)的引出線長(zhǎng)度應(yīng)盡量短,以便使引出線中的反射信號(hào)對(duì)總線信號(hào)的影響最低。因?yàn)樾盘?hào)在各支路末端反射后與原信號(hào)疊加,會(huì)造成信號(hào)質(zhì)量下降,并且隨著通信距離的延長(zhǎng)或通信速率的提高,其不良影響會(huì)越來(lái)越嚴(yán)重。2應(yīng)注意總線特性阻抗的連續(xù)性,在阻抗不連續(xù)點(diǎn)就會(huì)發(fā)生信號(hào)的反射。下列幾種情況易產(chǎn)生這種不連續(xù)性:總線的不同區(qū)段采用了不同電纜,或某一段總線上有過(guò)多收發(fā)器緊靠在一起安裝,再者是過(guò)長(zhǎng)的分支線引出到總線?傊,RS485網(wǎng)絡(luò)應(yīng)該提供一條單一、連續(xù)的信號(hào)通道作為總線。
門禁控制上位機(jī)與讀卡器的底層控制結(jié)構(gòu)采用了基于RS485小型局域網(wǎng)的分布式結(jié)構(gòu)。由于要進(jìn)行遠(yuǎn)距離傳輸數(shù)據(jù),所以線路應(yīng)接終端電阻進(jìn)行阻抗匹配,以抑制數(shù)據(jù)傳輸?shù)慕K端反射,避免信號(hào)失真。結(jié)構(gòu)見圖2.4.2。
file:///C:/Temp/Temp/msohtmlclip1/01/clip_image020.png
圖2.4.2 上位機(jī)與讀卡器的底層控制結(jié)構(gòu)圖
由于沖突檢測(cè)和同步通信功能無(wú)法由軟件實(shí)現(xiàn),因而RS485總線通常采用二線制主從、異步通信方式。物理層采用帶有屏蔽層的雙絞線,通信方式為半雙工方式,要經(jīng)過(guò)RS232/RS485轉(zhuǎn)換器才能實(shí)現(xiàn)RS232和RS485之間的通信規(guī)約以及相應(yīng)的數(shù)據(jù)傳輸。
      RS485總線可以連接若干個(gè)節(jié)點(diǎn),節(jié)點(diǎn)的個(gè)數(shù),取決于所選用的RS485接口芯片的驅(qū)動(dòng)器能驅(qū)動(dòng)多少個(gè)標(biāo)準(zhǔn)的RS485負(fù)載。根據(jù)規(guī)定,標(biāo)準(zhǔn)RS485接口的輸入阻抗為大于等于12千歐 ,相應(yīng)的標(biāo)準(zhǔn)驅(qū)動(dòng)節(jié)點(diǎn)數(shù)為32。為適應(yīng)更多節(jié)點(diǎn)的通信場(chǎng)合,有些芯片的輸入阻抗設(shè)計(jì)成1/2負(fù)載大于等于24千歐, 1/4負(fù)載大于等于48千歐,甚至1/8負(fù)載大于等于96千歐,相應(yīng)的節(jié)點(diǎn)數(shù)可增加到64、128和256。
在RS485網(wǎng)絡(luò)中,信號(hào)在傳輸線上傳送,若遇到阻抗不連續(xù)的情況時(shí),就會(huì)出現(xiàn)反射現(xiàn)象,從而影響信號(hào)的遠(yuǎn)距離傳送。因此必須采用阻抗匹配的方法來(lái)消除反射。為了與電纜特性阻抗進(jìn)行匹配,通常在總線的開始和末端都并接120歐電阻。此外,在系統(tǒng)安裝過(guò)程中,傳輸線最好采用屏蔽線,而且應(yīng)盡量做到信號(hào)傳輸線單獨(dú)鋪設(shè),并且強(qiáng)信號(hào)線和弱信號(hào)線應(yīng)盡量避免平行走向,盡量使二者正交,以使電磁耦合干擾減到最小。如果難以做到正交,也可以平行布線,但兩者距離應(yīng)足夠大。
2.5 液晶顯示模塊設(shè)計(jì)
液晶顯示器(LCD),具有功耗小,體積小,重量輕,超薄等許多其它顯示器無(wú)法比擬的優(yōu)點(diǎn),近年來(lái)被廣泛用于單片機(jī)控制的智能儀器、儀表和低功耗電子系統(tǒng)中,LCD可分為段位式LCD、字符式LCD和點(diǎn)陣式LCD。其中段位式LCD和字符式LCD只能用于字符和數(shù)字的簡(jiǎn)單顯示,點(diǎn)陣式LCD不僅可以顯示字符、數(shù)字,還可以顯示各種圖形、曲線以及漢字,并且可以實(shí)現(xiàn)屏幕上下左右滾動(dòng)、動(dòng)畫功能等功能,用途十分廣泛。本次設(shè)計(jì)主要是用于顯示正確及錯(cuò)誤信息,因此從性價(jià)比上考慮,選擇了字符式LCD顯示器1602,該顯示器的顯示容量是16×2個(gè)字符。
本系統(tǒng)顯示電路設(shè)計(jì)如圖2.5.1所示。
file:///C:/Temp/Temp/msohtmlclip1/01/clip_image022.jpg
圖2.5.1 LCD1602顯示電路原理圖
2.5.1 LCD1602介紹
如表3-2所示。VEE為液晶顯示器對(duì)比度調(diào)整端,接正電源時(shí)對(duì)比度最弱,接地電源時(shí)對(duì)比度最高,對(duì)比度過(guò)高時(shí)會(huì)產(chǎn)生“鬼影”,使用時(shí)可以通過(guò)一個(gè)10k的電位器調(diào)整對(duì)比度。RS為寄存器選擇信號(hào),高電平時(shí)選擇數(shù)據(jù)寄存器,低電平時(shí)選擇指令寄存器。R/W為讀/寫信號(hào),高電平時(shí)進(jìn)行讀操作,低電平時(shí)進(jìn)行寫操作。當(dāng)RS和R/W共同為低電平時(shí)可以寫入指令或者顯示地址,當(dāng)RS為低電平R/W為高電平時(shí)可以讀忙信號(hào),當(dāng)RS為高電平R/W為低電平時(shí)可以寫入數(shù)據(jù)。E端為使能端,當(dāng)E端由高電平跳變成低電平時(shí),液晶模塊執(zhí)行命令。
2.5.2 引腳功能介紹
表2.5.2 LCD1602引腳功能介紹
[td]  
引線號(hào)
符號(hào)
名稱
功能
1
VSS
接地
0V
2
VDD
電路電源
5±10%
3
VEE
液晶驅(qū)動(dòng)電壓
保證VDD-VEE=4.5~5V電壓差
4
RS
寄存器選擇信號(hào)
H:數(shù)據(jù)寄存器 L:指令寄存器
5
R/W
讀/寫信號(hào)
H:讀      L:寫
6
E
片選信號(hào)
下降沿觸發(fā),鎖存數(shù)據(jù)
續(xù)表2.5.2 LCD1602引腳功能介紹
  
引線號(hào)
  
符號(hào)
名稱
功能
7
  
|
  
14
DB0
  
|
  
DB7
  
數(shù)據(jù)線
  
數(shù)據(jù)傳輸
15
LEDA
背光源正極
——
16
LEDK
背光源負(fù)極
——
2.5.3 寄存器選擇功能及指令功能
如表2.5.3寄存器選擇功能描述,應(yīng)當(dāng)注意的是當(dāng)忙標(biāo)志為“1”時(shí),表明正在進(jìn)行內(nèi)部操作,此時(shí)不能輸入指令或數(shù)據(jù),要等內(nèi)部操作結(jié)束,忙標(biāo)志為“0”時(shí)。
表2.5.4寄存器選擇功能描述
RS
R/W
操作
0
0
指令寄存器(IR)寫入
0
1
忙標(biāo)志和地址計(jì)數(shù)器讀出
1
0
數(shù)據(jù)寄存器(DR)寫入
1
1
數(shù)據(jù)寄存器讀出
指令格式:RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
LCD1602共有11種指令:清除,返回,輸入方式設(shè)置,顯示開關(guān),控制,移位,功能設(shè)置,CGRAM(可自編數(shù)據(jù)區(qū))地址設(shè)置,DDRAM(顯示緩沖區(qū))地址設(shè)置,讀忙標(biāo)志,寫數(shù)據(jù)到CG/DDRAM,讀數(shù)據(jù)由CG/DDRAM。
2.6實(shí)時(shí)時(shí)鐘的硬件設(shè)計(jì)
刷卡時(shí)要記錄刷卡的時(shí)間,可以用單片機(jī)的定時(shí)器實(shí)現(xiàn),這叫軟件時(shí)鐘。它有一定的局限性,設(shè)置時(shí)間間隔不當(dāng)、CPU掉電等都會(huì)影響時(shí)鐘的正常運(yùn)行。用外接實(shí)時(shí)時(shí)鐘芯片的辦法,不僅能為系統(tǒng)提供一個(gè)準(zhǔn)確可靠的時(shí)鐘,而且節(jié)省CPU的資源,用備用電池供電能保證在CPU掉電時(shí)也不影響它的正常運(yùn)行,這叫硬件時(shí)鐘。在聯(lián)網(wǎng)的情況下,為了保證刷卡的時(shí)間與PC機(jī)上的時(shí)鐘一致,PC機(jī)會(huì)每隔一定時(shí)間校核單片機(jī)內(nèi)的時(shí)間。校核辦法是由PC機(jī)將時(shí)間數(shù)據(jù)通過(guò)串口傳送給單片機(jī),單片機(jī)將該時(shí)間寫入時(shí)鐘芯片的內(nèi)部時(shí)鐘單元,以新的時(shí)鐘為準(zhǔn)計(jì)時(shí)。硬件實(shí)時(shí)時(shí)鐘根據(jù)數(shù)據(jù)傳送方式分為兩種,一種是并行接口方式的,如DS12887, DS1387。并行接口方式數(shù)據(jù)傳送快,但管腳多,與CPU的接口連線多,而且體積大。另一種是串行接口方式的,如DS1302, Philips公司的PCF8583等。這種芯片通常為8腳DIP封裝,占用空間小,連線簡(jiǎn)單,一般只需占用CPU的2-3條I/O口線。我們采用體積小、接口簡(jiǎn)單的串行實(shí)時(shí)時(shí)鐘DS1302芯片作硬件時(shí)鐘。DS1302是美國(guó)DALLAS公司推出的低功耗串行通信接口專用芯片,采用3線串行方式與單片機(jī)通信。片內(nèi)有31字節(jié)的靜態(tài)RAM,日歷時(shí)鐘可自動(dòng)進(jìn)行閏年補(bǔ)償。時(shí)鐘的運(yùn)行可采用24h或帶AM(上午)和PM (下午)的12h格式。數(shù)據(jù)可按單字節(jié)方式或多字節(jié)突發(fā)方式傳送。DS1302是DS1202的升級(jí)產(chǎn)品,除保持DS 1202的實(shí)時(shí)時(shí)鐘功能外,增加了雙電源管腳。
2.6.1 實(shí)時(shí)時(shí)鐘的接口
DS1302時(shí)鐘芯片為8引腳DIP封裝,引腳及與單片機(jī)的接口方式見圖2. 6.1。管腳的含義 [35][36] :
file:///C:/Temp/Temp/msohtmlclip1/01/clip_image024.jpg
圖2. 6.1 實(shí)時(shí)時(shí)鐘的接口電路設(shè)計(jì)
(1)X1, X2外接32768Hz的石英晶振;
(2) Vcc1,Vcc2是電源引腳,單電源供電時(shí)接Vcc1腳,雙電源供電時(shí)主電源接Vcc2,備份電源接Vcc1,
(3)SCLK是串行時(shí)鐘輸入線;
(4)I/O是雙向串行數(shù)據(jù)傳送線,串行數(shù)據(jù)在時(shí)鐘SCLK的上升沿輸入;
(5) RST為串行通信允許信號(hào),RST=1允許通信,RST=0禁止通信。
它與AT89C52的連接見圖3. 14 [34] ,DS1302與AT89C52連接的3根線是:
(1) SCLK接CPU的P1.4, 同步時(shí)鐘輸入;
(2) RST接CPU的P1.5,通信允許信號(hào);
(3) IO接 CPU的P1.4,串行數(shù)據(jù)輸入輸出。
DS1302其它管腳的連接:
(1) X1,X2接32768Hz的石英晶振
(2) Vccl接3.6V,60mAh備用理電池,為時(shí)鐘的不間斷運(yùn)行提供電源。
2.6.2 時(shí)鐘數(shù)據(jù)傳輸?shù)目刂?/strong>
每個(gè)數(shù)據(jù)傳輸都是以先送命令字節(jié)開始,隨后才是數(shù)據(jù)。命令字節(jié)又叫地址命令字節(jié),其中包含要訪問(wèn)的地址及訪問(wèn)控制方式。格式如下:
D7
D6
D5
D4
D3
D2
D1
D0
1
DRAM/CK
A4
A3
A2
A1
A0
R/W
最高位必須是邏輯1,如果是0,則DS1302不允許寫。D6位為邏輯0是操作時(shí)鐘,邏輯1是內(nèi)部RAM操作。D1到D5指出要操作的寄存器地址。D0是讀/寫操作控制,邏輯0是寫,邏輯1是讀。命令字節(jié)本身總是輸入,低位D0在前 [1] 。
2.6.3 時(shí)鐘數(shù)據(jù)傳送方式
DS1302有單字節(jié)傳送方式和多字節(jié)傳送方式。在RST=1期間(RST必須為1數(shù)據(jù)傳送才有效),先送命令,緊接著發(fā)送一個(gè)字節(jié)的數(shù)據(jù)。DS1302在接收到命令后自動(dòng)將數(shù)據(jù)寫入指定的內(nèi)部地址或從該地址讀取數(shù)據(jù)!岸䲠(shù)據(jù)在SCLK的上升沿有效,讀數(shù)據(jù)是在SCLK的下降沿有效。如果有額外的SCLK,會(huì)重新發(fā)送數(shù)據(jù)字節(jié)。多字節(jié)突發(fā)(burst)方式傳送與單字節(jié)傳送方式相似,在命令字節(jié)后,是多個(gè)字節(jié)的數(shù)據(jù)。但命令字節(jié)中的地址A0-A4必須全為1。在RST=1期間,DS1302接收到命令后,接著進(jìn)行8個(gè)字節(jié)時(shí)鐘或31個(gè)字節(jié)內(nèi)部RAM數(shù)據(jù)的讀寫操作。時(shí)鐘操作時(shí),A0-A4表示的時(shí)鐘寄存器地址中,00H-06H分別對(duì)應(yīng)存放秒、分、時(shí)、日、月、星期、和年信息的寄存器,07H為寫保護(hù)控制寄存器,08H為電池充電控制寄存器。時(shí)鐘數(shù)據(jù)以BCD碼格式存放在00H-06H這7個(gè)寄存器中 [1][2] 。
(1) 秒寄存器地址是00H,低4位為秒的個(gè)位。最高位為時(shí)鐘控制位,該位為1時(shí)鐘振蕩器暫停,時(shí)鐘停,為0時(shí)鐘正常運(yùn)行。高三位為秒的十位。
(2)分鐘寄存器地址是01H,低4位為分的個(gè)位,最高位為0,高三位為分的十位。
(3)小時(shí)寄存器地址為02H,D7位為12/24小時(shí)選擇位,D7=1是12小時(shí)制,此時(shí)D5表示上午/下午 ,D5=1是下午;24小時(shí)制時(shí),D5是小時(shí)十位的另一位,即此 時(shí) 要用兩位來(lái)表示小時(shí)的十位,D6位固定為0。
(4)寫保護(hù)寄存器為地址07H,也叫控制寄存器。最高位為寫保護(hù)控制位WP,其它位為0。 WP =1,不能向其它寄存器寫。因此,在向DS1302進(jìn)行寫入操作之前必須先使寫保護(hù)寄存器的最高位為0,然后才能寫入其它單元。
2.7電平轉(zhuǎn)換電路設(shè)計(jì)2.7.1電平轉(zhuǎn)換芯片
如果兩個(gè)51系列單片機(jī)系統(tǒng)之間距離很短,可以通過(guò)將它們的自帶串口直接連接的方法實(shí)現(xiàn)雙機(jī)通信[15]。但若通信距離較遠(yuǎn),就可使用RS-232C接口延長(zhǎng)通信距離。RS-232C標(biāo)準(zhǔn)是美國(guó)EIA與BELL等公司一起開發(fā)的,1969年公布的通信協(xié)議[7]。由于RS-232C標(biāo)準(zhǔn)規(guī)定的邏輯電平與TTL等數(shù)字電路的邏輯電平不兼容,因此二者之間進(jìn)行相互連接時(shí)必須先進(jìn)行串口電平的轉(zhuǎn)換,即必須將單片機(jī)的TTL電平和RS-232C標(biāo)準(zhǔn)電平進(jìn)行轉(zhuǎn)換。
能夠?qū)崿F(xiàn)RS-232C電平轉(zhuǎn)換的專用芯片有很多種,如MC1488、SN75150芯片可完成TTL到EIA電平的轉(zhuǎn)換,而MC1489、SN75154可實(shí)現(xiàn)EIA到TTL電平的轉(zhuǎn)換。常用的是Maxim公司的MAX232集成芯片,它能完成TTL和RS-232C的雙向轉(zhuǎn)換。
2.7.2 MAX232芯片
(1) MAX232的電路原理圖如圖2.7.1所示。
file:///C:/Temp/Temp/msohtmlclip1/01/clip_image026.pngfile:///C:/Temp/Temp/msohtmlclip1/01/clip_image028.png
                              
                              
       圖2.7.1 MAX232的電路原理圖          圖2.7.2 MAX232的引腳圖
(2) MAX232的引腳圖如圖2.7.2 MAX232的引腳主要分為5個(gè)部分
外接電容:有5個(gè)外接電容,進(jìn)行電壓匹配[8]和電源去藕。
TTL的輸入:兩路TTL電平的輸入引腳——11和10引腳,連接單片機(jī)的TXD的輸出端口。
TTL的輸出:兩路TTL 電平的輸出引腳——12和9引腳,連接單片機(jī)的RXD輸出端口。
RS-232的輸入:兩路RS-232電平的輸入引腳——13和8引腳,連接RS-232的TXD的輸出端口。
RS-232的輸出:兩路RS-232電平的輸出引腳——13和8引腳,連接RS-232的RXD的輸出端口。
2.7.3電路連接圖
MAX232的電路連接圖如圖2.7.3所示。
file:///C:/Temp/Temp/msohtmlclip1/01/clip_image030.png
圖2.7.3 MAX232的電路連接圖
MAX232有兩組通信串口,本系統(tǒng)只用到一組,其中T1IN連接單片機(jī)的P3.1,R1OUT連接單片機(jī)的P3.0,而T1OUT連接九針串口的2端,R1IN連接九針串口的3端。這樣單片機(jī)與PC機(jī)的串口連接起來(lái)了。
2.8報(bào)警電路設(shè)計(jì)
在本設(shè)計(jì)中,需要用到報(bào)警電路,當(dāng)出現(xiàn)非法卡或輸入的密碼不正確時(shí),就會(huì)進(jìn)行報(bào)警。采用蜂鳴器和LED燈(紅)作為報(bào)警電路的主要器件,將蜂鳴器的正端連接到+5V電源上,負(fù)端連接到三級(jí)管的發(fā)射極,集電極連接到地端,基極連接到1k電阻的一端另一端連接到單片機(jī)的26引腳上。當(dāng)給0時(shí)蜂鳴器響,當(dāng)給1時(shí)蜂鳴器不響。將LED(紅)燈的正端通過(guò)300Ω的電阻連接到+5V電源上,負(fù)端連接到單片機(jī)的17引腳上。當(dāng)給17引腳送0時(shí),LED(紅)燈亮,送1時(shí)LED(紅)燈滅。在本設(shè)計(jì)中,三級(jí)管起到開關(guān)作用,與三級(jí)管相連的1k電阻是為了保護(hù)三級(jí)管,防止電流過(guò)大而燒毀三級(jí)管。與LED燈相連的300Ω電阻也是起保護(hù)LED燈的作用。報(bào)警電路原理圖如圖2.8所示。
file:///C:/Temp/Temp/msohtmlclip1/01/clip_image032.jpg
圖2.8報(bào)警電路原理圖
第3章IC卡與門禁主控器的選擇3.1非接觸式IC卡的選擇
基于MFRC500的射頻模塊可以采用Mifare1卡和MifareLight卡,它們都是Philips公司的Mifare系列產(chǎn)品。Mifare Light是一種小容量卡,其特性有:
(1)容量為384位;
(2)16位的數(shù)值計(jì)算;
(3)128位的數(shù)據(jù)區(qū);
(4)用戶可自定義控制權(quán)限;
(5)唯一的32位序列號(hào);
(6)工作頻率:13.56MHZ;
(7)通信速率:106KB波特率;
(8)防沖突:同一時(shí)間可處理多張卡;
(9)讀寫距離:在10cm以內(nèi)(與天線有關(guān));
(10)卡內(nèi)無(wú)需電源:
而 Mifare1 卡是較新的Mifare系列產(chǎn)品,其主要特性有:
(1)容量為8K位E2PROM;
(2)分為16個(gè)扇區(qū),每個(gè)扇區(qū)為4塊,每塊16個(gè)字節(jié),以塊為存取單位;
(3)每個(gè)扇區(qū)有獨(dú)立的一組密碼及訪問(wèn)控制;
(4)每張卡有唯一序列號(hào),為32位;   
(5)具有防沖突機(jī)制,支持多卡操作;
(6)無(wú)電源,自帶天線,內(nèi)含加密控制邏輯和通訊邏輯電路;
(7)工作溫度:-20℃∽50℃
(8)工作頻率:13.56MHZ;
(9)通信速率:106KB波特率;
(10)讀寫距離:10mm以內(nèi)(與讀寫器有關(guān));
(11)數(shù)據(jù)保存期為10年,可改寫10萬(wàn)次,讀不限次數(shù);
從上面的特性可以看出,Mifare 1存儲(chǔ)量更大,分區(qū)的存儲(chǔ)結(jié)構(gòu)適用于“一卡通”的系統(tǒng),為了方便系統(tǒng)以后的升級(jí),本系統(tǒng)采用Mifare 1卡。
3.2門禁控制電路
系統(tǒng)中門禁控制電路是系統(tǒng)一個(gè)動(dòng)作執(zhí)行部分,主要是由微處理器ATmega16根據(jù)射頻讀寫器讀得的數(shù)據(jù)對(duì)外部門磁開關(guān)、指示燈等進(jìn)行操作。對(duì)門磁開關(guān)控制是由單片機(jī)對(duì)繼電器的控制完成的,見圖3.10
file:///C:/Temp/Temp/msohtmlclip1/01/clip_image034.png
圖3.10門禁控制電路
在門禁讀卡控制器內(nèi)設(shè)有CPU、RS485通信電路、電子實(shí)時(shí)時(shí)鐘電路、射頻ID卡讀卡解碼電路,同時(shí)具備卡片資料存儲(chǔ)器與進(jìn)出數(shù)據(jù)緩沖器,它通過(guò)RS485通信轉(zhuǎn)換器與計(jì)算機(jī)連接,計(jì)算機(jī)上安裝上位機(jī)門禁系統(tǒng)軟件平臺(tái),可用于對(duì)讀寫器進(jìn)行參數(shù)設(shè)置、卡片授權(quán)、門口監(jiān)控、人員考勤、出入數(shù)據(jù)等管理。當(dāng)有讀卡出入時(shí),自動(dòng)將該卡片信息進(jìn)行校驗(yàn),校驗(yàn)合法后將該卡數(shù)據(jù)、使用者、當(dāng)前時(shí)間存入進(jìn)出數(shù)據(jù)緩沖器內(nèi),并發(fā)出開門指令,通過(guò)電源線傳送開門指令到電源端,電源啟動(dòng)繼電器切換電源內(nèi)部供電方向,使電鎖自動(dòng)打開,整個(gè)過(guò)程無(wú)須通過(guò)計(jì)算機(jī),讀卡機(jī)即可自行完成。非法卡被禁止訪問(wèn),出門時(shí)只要按動(dòng)出門按鈕,
電鎖自動(dòng)打開。當(dāng)非正常或暴力開門時(shí),門磁輸出報(bào)警信號(hào),將報(bào)警信號(hào)傳送到讀卡機(jī)內(nèi),系統(tǒng)以彈出報(bào)警對(duì)話框提示報(bào)警。通過(guò)門禁系統(tǒng)軟件平臺(tái)對(duì)讀卡器設(shè)置出入管理功能后,進(jìn)出數(shù)據(jù)通過(guò)計(jì)算機(jī)處理可作為考勤數(shù)據(jù)。配件如下:
門禁電源可以采用EA公司EA-901門禁專用電源,它可提供DC12V3A電源,帶一路電鎖驅(qū)動(dòng)接口、延時(shí)0-15秒。
輸出電壓:DC12V。
輸出最大電流:3A。
驅(qū)動(dòng)輸出:COM、NC、NO。
外形尺寸:185mm x 80mm x 65mm。
電鎖的種類很多,使用IBA 1555電插鎖,它可支持木門、玻璃門等。
輸入電壓: 12VDC。
輸入電流:450 mA。
重量:0.9kg。
主要性能:通電上鎖,(斷電開鎖)。
外形尺寸:200mm x 34mm x 30mm 。
出門開關(guān)一般使用IBA-K10出門開關(guān),它采用標(biāo)準(zhǔn)電工開關(guān)外型,按鍵是大板指甲按鍵靈敏度高。
3.3 讀卡器選擇
目前定義RFID產(chǎn)品的工作頻率有低頻、高頻、和超高頻三種頻率范圍,不同頻段的RFID產(chǎn)品有不同的特性[13]。
1.低頻(從125KHz到134KHz)
該頻段主要是通過(guò)電感耦合的方式進(jìn)行工作,也就是在讀寫器線圈和感應(yīng)器線圈件存在著變壓器耦合作用。通過(guò)讀寫器交變場(chǎng)的作用在感應(yīng)器天線中感應(yīng)的而典雅被蒸餾,可作供電電壓使用。磁場(chǎng)區(qū)域能夠很好的被定義,但是場(chǎng)強(qiáng)下降的太快,且傳輸速率慢,價(jià)格高。
2.高頻(工作頻率為13.56MHz)
在該頻率的感應(yīng)器不再需要線圈進(jìn)行繞制,可以通過(guò)腐蝕活著的方式制作天線。感應(yīng)器一般通過(guò)負(fù)載調(diào)制的方式進(jìn)行工作。也就是通過(guò)感應(yīng)器上的負(fù)載電阻的接通和斷開促使讀寫器天線上的電壓發(fā)生變化,實(shí)現(xiàn)用遠(yuǎn)距離感應(yīng)器對(duì)天線電壓進(jìn)行振幅調(diào)制。如果通過(guò)數(shù)據(jù)控制負(fù)載電壓的接通和斷開,那么這些數(shù)據(jù)就能夠從感應(yīng)器傳輸?shù)阶x寫器。它的感應(yīng)器一般是電子標(biāo)簽的形式,可以把某些數(shù)據(jù)信息寫入標(biāo)簽中。傳輸速率高,價(jià)格合理。
3. 超高頻(工作頻率為860MHz到960MHz)
超高頻系統(tǒng)通過(guò)電場(chǎng)來(lái)傳輸能量。電場(chǎng)的能量下降的不是很快,但是讀取的區(qū)域不是很好進(jìn)行定義。該頻段讀取距離比較遠(yuǎn),無(wú)源可達(dá)10m左右。這要是通過(guò)電容耦合的方式進(jìn)行實(shí)現(xiàn)。
目前使用較多的是ISO14443協(xié)議,而ISO15693是對(duì)于ISO14443對(duì)應(yīng)于高頻范圍的一種協(xié)議。因?yàn)镮SO15693疏耦合卡在高頻時(shí)讀取距離可達(dá)1m,所以本系統(tǒng)采用基于ISO15693協(xié)議的高頻讀寫器,它可以對(duì)13.56MHz高頻電子標(biāo)簽進(jìn)行數(shù)據(jù)讀、寫、鎖操作[14]。它的功能特點(diǎn)如下:
l  工作頻率:13.56MHz
l  閱讀距離:6-10cm
l  電子標(biāo)簽標(biāo)準(zhǔn):ISO15693(Tag-IT HF-I、IcodeⅡ)
l  對(duì)電子標(biāo)簽多個(gè)數(shù)據(jù)塊的內(nèi)容進(jìn)行讀、寫、鎖操作
l  具有防沖撞讀寫功能,最多可檢測(cè)16張電子標(biāo)簽
l  具有RS232、RS485、USB2.0多種通訊接口
它的卡結(jié)構(gòu)為64位ID號(hào),共計(jì)64個(gè)數(shù)據(jù)塊,每個(gè)塊都可讀,沒(méi)被鎖的快可寫。
串口通訊,默認(rèn)波特率為19200bps,8位數(shù)據(jù)位,1位起始位,1位停止位,無(wú)校驗(yàn)。讀卡模塊引腳圖見圖3-4
file:///C:/Temp/Temp/msohtmlclip1/01/clip_image035.png
圖3.3讀卡模塊引腳圖
第4章 門禁系統(tǒng)軟件設(shè)計(jì)4.1系統(tǒng)總體程序流程設(shè)計(jì)
系統(tǒng)一共有三種開門方式:按鈕、PC機(jī)指令、非接觸式IC卡。其中按鈕開門方式需要密碼。非接觸式IC卡開門方式是最主要的方式,這里主要對(duì)這種方式的系統(tǒng)工作流程進(jìn)行介紹。流程圖見圖4.1,整個(gè)過(guò)程中系統(tǒng)都與PC機(jī)之間進(jìn)行數(shù)據(jù)交換。
file:///C:/Temp/Temp/msohtmlclip1/01/clip_image037.png
圖4.1 系統(tǒng)感應(yīng)卡開門方式工作流程圖
4.2 射頻控制模塊
射頻控制模塊就是對(duì)MFRC500的控制模塊,本部分是系統(tǒng)最關(guān)鍵的部分。
(1)MF RC500復(fù)位操作
在上電之后一定要對(duì)MF RC500進(jìn)行復(fù)位操作,MF RC500是高電平復(fù)位有效的,可以由ATmega16的I/O口直接復(fù)位,要注意的是:
1必須在ATmega16成功復(fù)位150ms以后,再對(duì)MF RC500進(jìn)行復(fù)位操作;
2復(fù)位高電平必須保持200us以上。
3如果復(fù)位成功,MF RC500內(nèi)部的Command寄存器的值為0,如果不為0,必須重新復(fù)位。
(2)初始化MF RC500內(nèi)部寄存器
在復(fù)位成功后,再對(duì)MF RC500的內(nèi)部寄存器進(jìn)行初始化,只有在正確的初始化之后,MF RC500才能正常工作。
成功進(jìn)行上兩步操作之后,MF RC500的引腳TXl同引腳TX2之間有2.2v 左右的壓差。
(3)對(duì)非接觸式IC卡進(jìn)行操作,MFRC500支持Mifare1卡和Mifarelight卡,本系統(tǒng)采用的是Mifare 1卡。射頻模塊的工作流程見圖4.3,對(duì)Mifare 1卡的操作包括:
1 請(qǐng)求操作
在成功復(fù)位和初始化之后,MF RC500控制天線向工作范圍內(nèi)的卡進(jìn)行請(qǐng)求,請(qǐng)求有Request all和Request std兩種,當(dāng)一張Mifare卡片處在卡片讀寫器的天線的工作范圍之內(nèi),該卡片的ATR將啟動(dòng),將卡片內(nèi)部數(shù)據(jù)塊0中的卡片類型(TagType)號(hào)共2個(gè)字節(jié)(Mifare1卡的返回值為00H、08H),傳送給MF RC500,建立卡片與讀寫器的第一步通信聯(lián)絡(luò)。
Request all指令是非連續(xù)性的讀卡指令。只讀一次。但是當(dāng)某一次Request all指令讀卡失敗時(shí),比如,卡片沒(méi)能通過(guò)密鑰認(rèn)證或其他原因而出錯(cuò)時(shí),Requestall指令將連續(xù)地讀卡,直到讀卡成功才進(jìn)入非連續(xù)性的讀卡模式。
Request all指令適用于那些需要有人工干預(yù)的場(chǎng)合。
Request std指令的使用和Request all指令剛巧相反,Request std指令是連續(xù)性的讀卡指令。當(dāng)某一張卡片在讀寫器天線的有效的工作范圍內(nèi),Request std指令在成功地讀取這一張卡片之后,進(jìn)入讀寫器對(duì)卡片的其他操作。如果其他操作完成之后,程序員又將讀寫器進(jìn)入Request std指令操作,則Request std指令將連續(xù)性地再次進(jìn)行讀卡操作,而不管這張卡片是否被拿走。只要有一張卡片進(jìn)入天線的有效的工作范圍內(nèi),Request std指令將始終連續(xù)性地再次進(jìn)行讀卡操作Request std指令適用于那些不需要有人工干預(yù)的場(chǎng)合,即全自動(dòng)的場(chǎng)合。例如,賓館,酒店,高級(jí)寫字樓等場(chǎng)所的門禁控制系統(tǒng)(Door Access Control)高速公路,停車場(chǎng)等的不停車收費(fèi)系統(tǒng)(Non-StopRoad Tolling),等等。要注意的是,對(duì)于收費(fèi)系統(tǒng),在成功讀卡之后一定要使用Halt指令停止該卡,否則,卡上的值會(huì)全部被減掉。
file:///C:/Temp/Temp/msohtmlclip1/01/clip_image039.png
圖4.3 射頻模塊的工作流程圖
本系統(tǒng)采用Request std請(qǐng)求指令。在成功進(jìn)行請(qǐng)求操作后,系統(tǒng)就可進(jìn)行下一步操作。
2  反碰撞操作
如果有多張Mifare卡處在系統(tǒng)天線的工作范圍之內(nèi)時(shí),MFRC500將保證一 次只與一張卡片進(jìn)行通信,取得該卡片的系列號(hào)。由于Mifare卡片每一張都具有其唯一的序列號(hào),決不會(huì)相同,因此保證MF RC500一次只對(duì)一張卡操作。該操作的返回值為卡的序列號(hào)。
3  卡的選擇操作
接下來(lái)的操作就是選擇某一張卡,此操作MF RC500得到返回值80 H 。
4 密鑰認(rèn)證操作
在允許對(duì)卡進(jìn)行讀寫操作之前,必須對(duì)卡進(jìn)行三輪密鑰認(rèn)證。首先,指定要訪問(wèn)的區(qū),并選擇密鑰A或密鑰B。本系統(tǒng)采用密鑰A。在更改密鑰A時(shí)要設(shè)置訪問(wèn)條件(如表4.1),注意,密鑰設(shè)置最好設(shè)成可逆的。接著把用戶密碼加密,并加載到MF RC500的密鑰緩存中。接下來(lái)就是三輪密鑰認(rèn)證 。
表4.1 卡的訪問(wèn)條件
訪問(wèn)位
有效命令
C13C23C33
讀,寫
C12C22C32
讀,寫,增,減,傳送,恢復(fù)
C11C21C31
讀,寫,增,減,傳送,恢復(fù)
C10C20C30
讀,寫,增,減,傳送,恢復(fù)

描述
3
區(qū)尾
2
數(shù)據(jù)段
1
數(shù)據(jù)段
0
數(shù)據(jù)段
   5卡的數(shù)據(jù)操作
在成功密鑰認(rèn)證之后,就可以對(duì)卡進(jìn)行讀、寫、增值、減值、存儲(chǔ)、傳送等操作了以上的每步操作都被寫成一個(gè)函數(shù),最后在主函數(shù)中調(diào)用,這樣方便系統(tǒng)的升級(jí)并增強(qiáng)了程序的可讀性。
4.4 通訊模塊
整個(gè)通訊程序分為3個(gè)部分:數(shù)據(jù)接收部分、命令執(zhí)行部分、數(shù)據(jù)發(fā)送部分。
1數(shù)據(jù)接收部分
數(shù)據(jù)接收程序主要接收一幀正確的數(shù)據(jù),數(shù)據(jù)幀錯(cuò)誤的判斷符合以下原則:  有一個(gè)字節(jié)偶校驗(yàn)錯(cuò)誤,數(shù)據(jù)幀錯(cuò)誤。數(shù)據(jù)幀格式不正確,數(shù)據(jù)幀錯(cuò)誤。  數(shù)據(jù)幀校驗(yàn)碼不正確,數(shù)據(jù)幀錯(cuò)誤。
整個(gè)程序是在接收中斷服務(wù)程序中執(zhí)行的,見圖4.7。
file:///C:/Temp/Temp/msohtmlclip1/01/clip_image041.png
圖4.7 接收中斷服務(wù)程序
2命令執(zhí)行部分
這一部分是通訊主程序執(zhí)行部分,見圖4.8,是從機(jī)接收一幀正確數(shù)據(jù)后,通過(guò)地址域判斷 RS-485 總線中主控器是否呼叫本從機(jī),如果是廣播地址則所有接收到的從機(jī)都應(yīng)響應(yīng)命令,同時(shí)通過(guò)密碼的方式,可以設(shè)置權(quán)限,密碼和地址是保存在 E2PROM 中。
在地址和密碼判斷正確的時(shí)候,程序進(jìn)行命令譯碼,對(duì)要求的命令執(zhí)行相應(yīng)的操作,同時(shí)如果要通過(guò)總線發(fā)送數(shù)據(jù),應(yīng)準(zhǔn)備好發(fā)送數(shù)據(jù)緩存器的內(nèi)容,啟動(dòng)發(fā)送程序,發(fā)送完畢時(shí)清除接收事件發(fā)生標(biāo)志。
file:///C:/Temp/Temp/msohtmlclip1/01/clip_image043.png圖4.8 命令執(zhí)行部分
3數(shù)據(jù)發(fā)送部分
本程序的數(shù)據(jù)發(fā)送部分是在主程序中執(zhí)行的,見圖4.9。
(4) 通信可靠性設(shè)計(jì)由于在實(shí)際應(yīng)用系統(tǒng)中現(xiàn)場(chǎng)存在各種干擾,并且各讀寫器分布較遠(yuǎn)、數(shù)量較多,通信可靠性經(jīng)常得不到保證。本文從硬件和軟件兩方面就提高RS485總線通信可靠性提出些具體措施。
首先,從硬件上來(lái)說(shuō)。在實(shí)際應(yīng)用系統(tǒng)中,PC機(jī)和門禁系統(tǒng)一般相隔較遠(yuǎn),通信線路比較長(zhǎng),而各門禁系統(tǒng)上電或復(fù)位又常常不在同一時(shí)刻完成,如果此時(shí)某個(gè)門禁系統(tǒng)處于發(fā)送階段,將會(huì)占用RS485通信總線,這樣其他讀寫器就無(wú)法使用RS485通信總線與PC機(jī)通信。因?yàn)锳Tmega16初始化后,其I/O口處于狀態(tài)‘1',這樣RS485將處于發(fā)送狀態(tài),這樣會(huì)占據(jù)整個(gè)總線。為了解決這個(gè)問(wèn)題,在設(shè)計(jì)通信接口電路時(shí),將ATmega16的P3.4 經(jīng)過(guò)反向器后再接在SP485R上。當(dāng)RS485總線處于空載狀態(tài)時(shí),RS232/RS485轉(zhuǎn)換器上的發(fā)送器和所有門
file:///C:/Temp/Temp/msohtmlclip1/01/clip_image045.png
圖4.9 數(shù)據(jù)發(fā)送部分
禁系統(tǒng)通信接口上的發(fā)送器均呈高阻態(tài),傳送線A, B上的電平未知,各門禁系統(tǒng)接口上的接收器保持為最后一次接收的邏輯狀態(tài)。為了保證RS485總線處于空載狀態(tài)時(shí)各門禁系統(tǒng)通信接口上的接收器輸出邏輯‘1',在RS232/RS485轉(zhuǎn)換器和門禁系統(tǒng)RS485總線通信接口電路設(shè)計(jì)時(shí)分別將傳送線A上拉和傳送線B下拉,上拉電阻等于下拉電阻并且根據(jù)實(shí)際應(yīng)用中RS485通信系統(tǒng)包括的門禁系統(tǒng)的臺(tái)數(shù)以及匹配電阻的連接情況來(lái)計(jì)算。另外,為了防止RS232/RS485轉(zhuǎn)換器和門禁系統(tǒng)RS485通信接口上接收器的共模電壓超過(guò)RS485接收器的極限接收電壓,即大于+12V或小于-7V,將門禁系統(tǒng)工作電源和讀寫器RS485收發(fā)器的電源隔離,并且使用光耦NEC2501實(shí)現(xiàn)隔離,徹底消除共模電壓的影響:最后在PC機(jī)相連的RS232/RS485轉(zhuǎn)換器上和距離PC機(jī)最遠(yuǎn)的門禁系統(tǒng)RS485總線通信接口上均連接匹配電阻以吸收RS485總線上的反射信號(hào),保證傳輸信號(hào)的準(zhǔn)確。匹配電阻的大小等于傳送電纜的特性阻抗,本系統(tǒng)為120歐姆。對(duì)于軟件上來(lái)說(shuō)。由于RS485總線通信是異步半雙工的通信,在某一時(shí)刻通信總線上只允許呈現(xiàn)一種狀態(tài)。為了可靠通信,在RS485總線狀態(tài)切換時(shí)需要適當(dāng)延時(shí)后再進(jìn)行數(shù)據(jù)發(fā)送或者接收。在軟件編制時(shí)要注意保護(hù)現(xiàn)場(chǎng),即在串口通信的下位機(jī)收發(fā)程序的起始部分對(duì)ATmega16的內(nèi)部寄存器ACC, PSW, B等壓入堆棧進(jìn)行保護(hù),而在子程序結(jié)束時(shí)再?gòu)亩褩V嗅尫懦鰜?lái)。這樣可以保證串口通信工作不對(duì)系統(tǒng)其他功能模塊產(chǎn)生影響。在通信協(xié)議設(shè)計(jì)中,每一幀數(shù)據(jù)傳送采用異或校驗(yàn),數(shù)據(jù)發(fā)送完畢后利用累加和校驗(yàn)來(lái)確保通信的可靠性。
4.5顯示模塊
顯示子程序的主要功能是對(duì)當(dāng)前的門控狀態(tài)進(jìn)行顯示,顯示函數(shù)首先判斷是寫命令操作還是寫數(shù)據(jù)操作,若是寫命令操作,則根據(jù)命令進(jìn)行相應(yīng)的操作,如清屏、設(shè)置顯示模式等;若是寫數(shù)據(jù)操作,則在顯示器上顯示相應(yīng)數(shù)據(jù)。程序流程圖如圖4-5所示。
file:///C:/Temp/Temp/msohtmlclip1/01/clip_image046.png
圖4-5 顯示子程序流程圖
顯示程序核心程序代碼如下所示:
void LcdShowError()
{    WriteLcdCom(0x38); //顯示模式設(shè)置
     WriteLcdCom(0x0c); //開顯示,無(wú)光標(biāo),光標(biāo)不閃爍
     WriteLcdCom(0x06); //讀寫字符后地址指針加一設(shè)置
     WriteLcdCom(0x80);   //第一行數(shù)據(jù)指針地址
     for(k=0;k<16;k++)
      {WriteLcdDat(str3[k]);
       delay(20);}
     WriteLcdCom(0xc0);     //第二行數(shù)據(jù)指針地址
     for(k=0;k<16;k++)
      {WriteLcdDat(str4[k]);
       delay(20);}
WriteLcdCom(0x01);      }
void WriteLcdCom(unsigned char c)
{      LCDRW =00;
       LCDRS=0;             //切換到寫命令
       P0=c;
       LCDE=1;
       LCDE=0;
  for(a=0;a<20;a++);}
void WriteLcdDat(unsigned char d)
{      LCDRW =00;
       LCDRS=1;             //切換到寫數(shù)據(jù)
       P0=d;
       LCDE=1;
       LCDE=0;
    for(a=0;a<20;a++);}
4.6上位機(jī)設(shè)計(jì)4.6.1 上位機(jī)程序流程圖
在本系統(tǒng)中,上位機(jī)主要完成管理人員登錄、向下位機(jī)發(fā)送命令、接收下位機(jī)返回?cái)?shù)據(jù)、判斷數(shù)據(jù)有效性和顯示用戶信息。上位機(jī)程序流程圖如圖4.6所示。
file:///C:/Temp/Temp/msohtmlclip1/01/clip_image047.png
圖4.6.1 上位機(jī)程序流程圖
4.6.2用戶登錄界面設(shè)計(jì)
本設(shè)計(jì)中,由于用戶信息是用戶的隱私,并不是所有人員都對(duì)用戶信息有管理權(quán)限,因此設(shè)計(jì)了用戶登錄界面,只有對(duì)用戶信息有管理權(quán)限的管理者才能對(duì)用戶做相關(guān)操作,如修改、查詢等。用戶登錄界面如圖4.6.2所示。
file:///C:/Temp/Temp/msohtmlclip1/01/clip_image049.jpg
圖4.6.2 用戶登錄界面
   用戶登錄界面核心程序代碼如下所示:
procedure TForm2.Button1Click(Sender: TObject);
var mUser,mPasword:string;
begin
mUser:=Edit1.Text; mPasword:=Edit2.Text;
if(Edit1.Text='') then  begin
     ShowMessage('用戶名不能為空,請(qǐng)輸入用戶名!');
      Exit;
    end;
if(Edit2.Text='') then
    begin
      ShowMessage('密碼不能為空,請(qǐng)輸入密碼!');
      Exit;
    end;
if(ADOTable1.Locate('UserName',mUser,[])) then
    begin     if(ADOTable1.FieldByName('Pasword').AsString=mPasword) then
        begin
          Close;
        end
      else
        begin
         ShowMessage('密碼錯(cuò)誤,請(qǐng)重新輸入!');
         Edit2.Clear;
        end;
      end
  else
    begin
     ShowMessage('此用戶不存在!');
      Edit1.Clear;
      Edit2.Clear;
    end;
end;
4.6.3門禁系統(tǒng)界面設(shè)計(jì)
在本設(shè)計(jì)中,門禁系統(tǒng)主要負(fù)責(zé)向下位機(jī)發(fā)送讀卡命令、接收下位機(jī)傳送的RFID卡序列號(hào)、將接收的卡序列號(hào)與Access數(shù)據(jù)庫(kù)里存儲(chǔ)的卡序列號(hào)做比較,若相同則在門禁界面顯示用戶信息;若不相同則顯示非法卡。如圖4.6.3所示為門禁系統(tǒng)界面。
file:///C:/Temp/Temp/msohtmlclip1/01/clip_image050.png
圖4.6.3 門禁系統(tǒng)界面
門禁系統(tǒng)核心程序代碼如下所示:
procedure TForm1.Timer2Timer(Sender: TObject);
begin
ka:=MSComm1.Input;
  if(ka='') or(ka='AABB022022') then
    begin
     ka:=MSComm1.Input;
    end;
if(ADOTable1.Locate('卡序列號(hào)',ka,[]))then
    begin
     Edit1.Text:=ka;
     Edit2.Text:=ADOTable1.FieldByName('用戶名').AsString;
     Edit3.Text:=ADOTable1.FieldByName('住址').AsString;
     Edit4.Text:=ADOTable1.FieldByName('電話').AsString;
     MSComm1.InBufferCount:=0;
      MSComm1.Output:=char(sendtrue[0]);
     MSComm1.OutBufferCount:=0;
    end
  else
    begin
     if((ka<>'')and(ka<>'AABB022022'))  then
        begin
         ShowMessage('非法卡');
         Edit1.Clear;
         Edit2.Clear;
         Edit3.Clear;
          Edit4.Clear;
         MSComm1.Output:=char(sendfalse[0]);
        MSComm1.OutBufferCount:=0;
        end;
    end;
end;
procedure TForm1.Button1Click(Sender: TObject);
第5章系統(tǒng)調(diào)試及結(jié)果分析5.1 系統(tǒng)調(diào)試
將各個(gè)部分的硬件模塊合并成一個(gè)整體,把軟件各個(gè)部分程序合并到一個(gè)主程序中。通過(guò)偉福訪真器和偉福調(diào)試軟件WAVE6000開始整體調(diào)試,硬件部分用萬(wàn)用表來(lái)測(cè)試硬件每部分的接通性。軟件部分的測(cè)試主要方法是通過(guò)設(shè)置斷點(diǎn)、單步執(zhí)行等方法來(lái)測(cè)試程序的正確性。在確定軟硬件無(wú)問(wèn)題后,將程序通過(guò)燒寫器把程序燒到單片機(jī)中。
將程序燒寫到控制芯片ATmega16,打開電源,電源指示燈亮,整個(gè)系統(tǒng)啟動(dòng)。運(yùn)行上位機(jī),向下位機(jī)發(fā)送讀卡命令,下位機(jī)接收到讀卡命令后,當(dāng)有RFID卡進(jìn)入到讀卡器的讀卡范圍內(nèi)時(shí),若RFID卡為有效卡便會(huì)在執(zhí)行開門操作的同時(shí)在液晶上顯示正確信息;若不是有效卡則在報(bào)警的同時(shí)在液晶上顯示錯(cuò)誤信息。當(dāng)通過(guò)鍵盤輸入密碼后,系統(tǒng)會(huì)判斷密碼的有效性,若是有效密碼則開門并在液晶上顯示正確信息;若無(wú)效則報(bào)警并顯示錯(cuò)誤信息。整個(gè)系統(tǒng)完成。
5.2 結(jié)論分析
本系統(tǒng)能在打開電源并運(yùn)行上位機(jī)后,能自動(dòng)向下位機(jī)發(fā)送讀卡命令,當(dāng)有RFID卡進(jìn)入到讀卡器的讀卡范圍內(nèi)時(shí),則會(huì)自動(dòng)讀取卡序列號(hào),并將卡序列號(hào)傳送給上位機(jī),上位機(jī)判斷卡的有效性。若該卡是有效卡,系統(tǒng)會(huì)執(zhí)行開門并在液晶上顯示正確的信息;若該卡是非法卡,則會(huì)報(bào)警并顯示錯(cuò)誤的信息。本系統(tǒng)能夠有效、方便、安全地控制重要場(chǎng)所的出入訪問(wèn),具有可靠性高、保密性強(qiáng)、方便快捷等特點(diǎn)。
本系統(tǒng)具體實(shí)現(xiàn)的功能如下:數(shù)據(jù)采集:讀卡器YHY502ATG通過(guò)天線讀取RFID卡的數(shù)據(jù),然后將數(shù)據(jù)傳送出去。數(shù)據(jù)分析:ATmega16接收到數(shù)據(jù)后,將數(shù)據(jù)傳送給AT24C04或上位機(jī),AT24C04或上位機(jī)對(duì)數(shù)據(jù)進(jìn)行分析,從而判斷數(shù)據(jù)的有效性。模塊之間的通信:ATmega16與YHY502ATG/AT24C04之間的通信都是通過(guò)模擬I2C總線進(jìn)行的, I2C總線的高效性、高實(shí)用性、高可靠性數(shù)據(jù)傳輸增強(qiáng)了系統(tǒng)的實(shí)時(shí)性和可靠性。數(shù)據(jù)處理:針對(duì)數(shù)據(jù)的采集和分析的結(jié)果做出相應(yīng)的處理,例如顯示、報(bào)警、門控等
參 考文 獻(xiàn)
[1]  李朝清.單片機(jī)原理及接口技術(shù)[M]:北京航空航天大學(xué)出版社, 2005
[2]  石東海.單片機(jī)數(shù)據(jù)通信技術(shù)從入門到精通[M]:西安電子科技大學(xué)出版社,2002
[3]  胡漢才.單片機(jī)原理及其接口技術(shù)[M]:清華大學(xué)出版社,1999
[4]  付家才.單片機(jī)控制工程實(shí)踐技術(shù)[M]:化學(xué)工業(yè)出版社,2001
[5]  何立民.單片機(jī)應(yīng)用技術(shù)選篇[M]:北京航空航天大學(xué)出版社
[6]  李勛,劉源,李新民.單片機(jī)適用教程[M]:北京航空航天大學(xué)出版社
[7] 萬(wàn)勝前. 基于KeilC51軟件的電子鐘設(shè)計(jì)與制作[J],鄂州大學(xué)學(xué)報(bào),2007年第2期
[8]  王衛(wèi)東.模擬電子電路基礎(chǔ)[M]:西安電子科技大學(xué)出版社
[9] 彭小軍. 用單片機(jī)實(shí)現(xiàn)電子時(shí)鐘[J].新余高專學(xué)報(bào),2004年4月第9卷第2期
[10]Alexander M.Meystel, James S.Albus. 1999. Intelligent Systems:Architecture,Design and Control. New York: John Wiley.
[11] Andrew S.Tanenbaum. The Test Technology of Single-chip SwitchingPower.ICEMI’2001
[12] 丁明亮,唐前輝. 51單片機(jī)應(yīng)用設(shè)計(jì)與仿真[M]. 北京:北京航空航天大學(xué)出版社,2009. 126~225
[13] 向繼文等.基于AT89C51的電子鐘系統(tǒng)設(shè)計(jì)[J],機(jī)電產(chǎn)片開發(fā)與創(chuàng)新,2007年第2期
[14] 張毅剛,彭喜元,董繼成. 單片機(jī)原理及應(yīng)用[M]. 北京:高等教育出版社,2008. 67~310
[15] 李曉靜等.液晶顯示控制器與單片機(jī)的接口及編程[J],電子技術(shù),2004年第6期
[16] 陳妙芳,胡曉東. 基于AT89S51單片機(jī)的溫度控制系統(tǒng)設(shè)計(jì)[J]. 機(jī)械工程師, 2009. 1:136~137
file:///C:/Temp/Temp/msohtmlclip1/01/clip_image052.png附錄 部分電路原理圖及PCB圖
門禁系統(tǒng)CPU原理圖
file:///C:/Temp/Temp/msohtmlclip1/01/clip_image054.jpg
門禁系統(tǒng)讀卡器
file:///C:/Temp/Temp/msohtmlclip1/01/clip_image056.jpg
讀卡器PCB圖
致    謝
時(shí)光飛逝,日月如梭,轉(zhuǎn)眼就站在了畢業(yè)的門檻上,回首往昔,除了對(duì)光陰一去不復(fù)返的感慨,更多的是對(duì)父母親人、對(duì)老師、對(duì)學(xué)校、對(duì)同學(xué)、對(duì)公司的感謝。在校的這三年時(shí)間里很感謝老師們對(duì)我的淳淳教誨,是你們教會(huì)了我們勤奮學(xué)習(xí),誠(chéng)實(shí)做人,踏實(shí)做事,以寬容之心面對(duì)生活。指引著我們沿著正確方向前進(jìn)。在點(diǎn)滴匯聚中使我逐漸形成正確、成熟的人生觀、價(jià)值觀。在此,特別要感謝我的指導(dǎo)老師。
感謝我的同學(xué)校友,我永遠(yuǎn)的支持者,正是在你們的陪伴下,我才一步步的完成了求學(xué)生涯。衷心感謝我的導(dǎo)師對(duì)我論文的悉心指導(dǎo),從論文的選題、研究計(jì)劃的制定、技術(shù)路線的選擇到系統(tǒng)的開發(fā)研制,各個(gè)方面都離不開老師熱情耐心的幫助和教導(dǎo)。
三年的大學(xué)生活已經(jīng)接近聞聲,也意味著我的學(xué)生時(shí)代也即將結(jié)束,但我的學(xué)習(xí)之路仍在繼續(xù),在今后的生活、工作中我一定會(huì)謹(jǐn)記老師對(duì)我們的教誨,繼續(xù)努力的學(xué)習(xí)專業(yè)知識(shí),掌握專業(yè)技能,提高自己的學(xué)習(xí)能力。


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

使用道具 舉報(bào)

本版積分規(guī)則

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

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 成人在线免费网站 | 毛片99| 午夜精品久久久久久久久久久久 | 国产夜恋视频在线观看 | 欧美一区二区三区精品免费 | 91精品久久久久久久久久入口 | 女同久久另类99精品国产 | 久久精品小视频 | 91精品国产欧美一区二区 | 伦理午夜电影免费观看 | 欧美高清成人 | 亚洲欧洲视频 | 国产精品欧美一区喷水 | 成人精品一区二区三区 | 五月激情婷婷在线 | 一区二区三区免费观看 | 一级美国黄色片 | 欧美全黄 | 99re66在线观看精品热 | 91精品国产乱码久久久久久 | 久久久久国产一区二区三区四区 | 久久精品国产亚洲一区二区 | 免费网站国产 | 国产成人高清在线观看 | 国产一级片 | 91xxx在线观看 | 午夜爱爱毛片xxxx视频免费看 | 欧美成人影院在线 | 成人精品啪啪欧美成 | 天天综合久久 | 成人精品久久久 | 桃花av在线 | 国产精品久久久久久婷婷天堂 | 狠狠天天 | 日韩欧美精品一区 | www.日韩在线 | 欧美一极视频 | 日韩中文字幕在线观看视频 | 欧美日韩在线观看一区二区三区 | 日本久久福利 | 国产精品久久av |