亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

畢業(yè)設(shè)計(jì) - 題目:基于RFID的門禁系統(tǒng) - 單片機(jī) 物聯(lián)網(wǎng) 嵌入式

dingda / 1640人閱讀

摘要:門禁系統(tǒng)可有效管理門的開啟關(guān)閉對出入人員進(jìn)行監(jiān)控管理?;诘拈T禁系統(tǒng)通過對射頻卡的識別,保證那些持有相應(yīng)證件的人員能自由進(jìn)出,阻止外來人員或無法提供證件的人員進(jìn)入。


1 簡介

Hi,大家好,這里是丹成學(xué)長,今天向大家介紹一個(gè) 如何使用RFID技術(shù)構(gòu)建一個(gè)單片機(jī)門禁系統(tǒng)

基于RFID的門禁系統(tǒng)

大家可用于 課程設(shè)計(jì) 或 畢業(yè)設(shè)計(jì)

技術(shù)解答、畢設(shè)幫助、開題指導(dǎo)print("Q 746876041") 

本篇博客,學(xué)長先向大家介紹射頻識別技術(shù)的概念、 分類及工作原。然后介紹 本次使用的射頻芯片 MFRC522。

RFID 系統(tǒng)設(shè)計(jì)可分為硬件部分和軟件部分。

硬件部分以 MFRC522 射頻識別模塊為核心, 結(jié)合主控模塊 STC89C52 設(shè)計(jì)系統(tǒng)的外圍硬件電路, 實(shí)現(xiàn)對射頻卡的控制與 MCU 之間的互通。 軟件部分采用 C 語言進(jìn)行系統(tǒng)的下位機(jī)程序的開發(fā), 完成與 IC 卡之間的通信, 實(shí)現(xiàn)數(shù)據(jù)交換功能。

2 緒論

2.1 課題背景與目的

門禁安全管理系統(tǒng)是新型現(xiàn)代化安全管理系統(tǒng), 它集自動(dòng)識別技術(shù)和現(xiàn)代安全管理措施為一體。 門禁系統(tǒng)可有效管理門的開啟關(guān)閉, 對出入人員進(jìn)行監(jiān)控管理。 基于RFID的門禁系統(tǒng)通過對射頻IC卡的識別, 保證那些持有相應(yīng)證件的人員能自由進(jìn)出, 阻止外來人員或無法提供證件的人員進(jìn)入。 還有些門禁是利用生物識別的技術(shù), 通過對人體某些部位(如眼睛、 指紋) 的識別來確認(rèn)來人是否經(jīng)過授權(quán)。 這種門禁系統(tǒng)相對射頻識別的系統(tǒng)安全系數(shù)有很大提高, 但其成本較高, 在日 常生活中還未廣泛應(yīng)用。

3 射頻識別

3.1 射頻識別技術(shù)

射頻識別(Radio Frequency Identification, RFID) 技術(shù)是從八十年代逐漸走向成熟的一種自 動(dòng)識別技術(shù), 它 是一項(xiàng)利用 射頻信號通過空間耦合(交變磁場或電磁場)實(shí)現(xiàn)無接觸信息傳遞并通過所傳遞的信息達(dá)到識別目 的的技術(shù)。

根據(jù)射頻卡讀寫方式的不同可分成可讀寫(RW) 卡、 一次寫入多次讀出(WORM) 卡和只讀(RO) 卡。 RW 卡成本較 WORM 卡和 RO 卡相比要高, 而且寫入數(shù)據(jù)所花費(fèi)的時(shí)間要遠(yuǎn)大于讀取數(shù)據(jù)所花費(fèi)的時(shí)間。 用戶可以一次性將信息寫入 WORM 卡, 寫入后數(shù)據(jù)不能改變。 RO 卡存有一個(gè)唯一的號碼。 只可讀取, 不能修改, 雖然安全性較高, 但用途有限。

3.2 射頻識別模塊

3.2.1 RFID模塊

射頻識別「Radio Frequency IDentification,簡稱RFID」技術(shù),又稱為無線射頻識別,是一種通信技術(shù),可通過無線電訊號識別特定目標(biāo)并讀寫相關(guān)數(shù)據(jù),而無需識別系統(tǒng)與特定目標(biāo)之間建立機(jī)械或光學(xué)接觸,普遍應(yīng)用于企業(yè)/校園一卡通、公交儲值卡、高速公路收費(fèi)、停車場、小區(qū)管理等。

RFID 技術(shù)利用無線射頻方式在閱讀器和射頻卡之間進(jìn)行非接觸雙向數(shù)據(jù)傳輸,以達(dá)到目標(biāo)識別和數(shù)據(jù)交換的目的。

3.2.2 RFID模塊組成

  • 標(biāo)簽(Tag,即射頻卡),耦合元件及芯片組成,標(biāo)簽含有內(nèi)置天線,用于和射頻天線間進(jìn)行通信。
  • 閱讀器:讀取(在讀寫卡中還可以寫入)標(biāo)簽信息的設(shè)備。
  • 天線:在標(biāo)簽和讀取器間傳遞射頻信號。

這里使用的RFID-RC522模塊采用MFRC522芯片,SPI通訊方式,支持Mifarel S50、S70 、Pro、Desfire等類型的卡,附帶的白卡和鑰匙扣是S50卡,每張卡都有自己的標(biāo)識(UID)。

4 系統(tǒng)設(shè)計(jì)

本系統(tǒng)的主要電路包括: 讀卡器數(shù)據(jù)采集電路、 串行 E 2 PROM 存儲電路、 LCD1602 顯示電路、 串口通訊電路、 報(bào)警電路、 門控電路、 鍵盤電路。

器件列表

    1. 主控芯片: AT89C52。
    1. 讀卡器: YHY502ATG。
    1. E 2 PROM: AT24C04。
    1. LCD 液晶: ZL1602C2。
    1. 串口通訊芯片: MAX232。
    1. 報(bào)警器: 1 個(gè)蜂鳴器加一個(gè) LED 紅燈。
    1. 門控器件: 一個(gè) LED 綠燈。

4.1 系統(tǒng)架構(gòu)

4.1.1 硬件部分

LCD1602 顯示電路設(shè)計(jì)

串口通訊電路設(shè)計(jì)

報(bào)警電路設(shè)計(jì)

4.1.2 軟件部分

在本系統(tǒng)中, 軟件的設(shè)計(jì)主要包括: 數(shù)據(jù)采集模塊、 存儲模塊、 顯示模塊、 門控模塊、 報(bào)警模塊、 鍵盤模塊和上位機(jī)軟件的設(shè)計(jì)幾個(gè)方面。 本系統(tǒng)的軟件結(jié)構(gòu)框圖如圖 4-1 所示。

    1. 數(shù)據(jù)采集模塊: 讀卡器 YHY502ATG 通過天線讀取 RFID 卡的數(shù)據(jù),然后將數(shù)據(jù)傳送出去。
    1. 存儲模塊: AT89C52 接收到數(shù)據(jù)后, 將數(shù)據(jù)傳送給 AT24C04 進(jìn)行存儲。
    1. 顯示模塊: AT89C52 接收到數(shù)據(jù)后, 將數(shù)據(jù)與 AT24C04 里存儲的數(shù)據(jù)進(jìn)行對比, 若兩者完全相同, 則液晶顯示正確的信息; 若不相同, 則液晶顯示錯(cuò)誤的信息。
    1. 門控模塊: AT89C52 接收到數(shù)據(jù)后, 將數(shù)據(jù)與 AT24C04 里存儲的數(shù)據(jù)進(jìn)行對比, 若兩者完全相同, 則進(jìn)行開門操作; 若不相同, 則不開門。
    1. 報(bào)警模塊: AT89C52 接收到數(shù)據(jù)后, 將數(shù)據(jù)與 AT24C04 里存儲的數(shù)據(jù)進(jìn)行對比, 若不相同則報(bào)警。
    1. 鍵盤模塊: 通過鍵盤輸入密碼, 并根據(jù)輸入密碼的有效性做相應(yīng)的操作。

4.2 軟件總體流程圖

系統(tǒng)的軟件總體流程圖如圖

4.3 密碼子程序

當(dāng)程序運(yùn)行時(shí), 會(huì)一直判斷是否有按鍵被按下, 當(dāng)有按鍵被按下時(shí), 系統(tǒng)會(huì)確定鍵值, 關(guān)將鍵值存入到密碼數(shù)組里, 然后將輸入的密碼與本身的密碼做比較, 若相同, 則執(zhí)行開門和顯示正確信息的操作; 若不相同, 則執(zhí)行報(bào)警和顯示錯(cuò)誤信息的操作。

核心代碼:

P1=0x0f;if(P1!=0x0f) compare(P1);for(n=0;n<10;n++)if(input[n]!=password[n]) break;if(n==10){ if(m<10) continue;WriteLcdCom(0x01);   //清屏WriteLcdCom(0x80);  //第一行數(shù)據(jù)指針地址for(s=0;s<16;s++) WriteLcdDat(str2[s]);LEDG=0;BUZ=0;delay_10ms(20);LEDG=1;BUZ=1;WriteLcdCom(0x01);input[0]=" "; }else if((n<10)&&(P1==0xbd)){ WriteLcdCom(0x01);   //清屏WriteLcdCom(0x80);  //第一行數(shù)據(jù)指針地址for(s=0;s<16;s++)WriteLcdDat(str4[s]);LEDR=0;for(s=0;s<5;s++){ BUZ=0;delay_10ms(20);BUZ=1;delay_10ms(20); }LEDR=1; }

4.4 數(shù)據(jù)采集子程序

執(zhí)行程序之前, 首先要設(shè)置串口波特率等相關(guān)串口參數(shù), 然后上位機(jī)通過串口向下位機(jī)發(fā)送命令, 并進(jìn)入串口中斷。 下位機(jī)根據(jù)接收 SBUF 的值做相應(yīng)的處理。

核心程序

uchar uart_process(void){uchar cmd;uchar cStatus;cmd = g_cReceBuf[1];switch(cmd){case 0x20: // 尋卡, 防沖突, 選擇卡返回卡系列號(4 bytes)cStatus =IicSendHY502(g_cReceBuf);  // 發(fā)送尋卡命令cStatus =IicReadHY502(cp);   // 讀取卡號并存入到 cPif((cStatus==SUCCESS)&&(cp[1]==CARD_SN)){memcpy(&g_cReceBuf[0],&cp[2],4);eeprom();}}//將讀取到的卡序列號與 E 2 PROM 里存儲的進(jìn)行比較return cStatus;}開始上位機(jī)發(fā)送讀卡命令YYNN有感應(yīng)卡 ?驗(yàn)證感應(yīng)卡權(quán)限權(quán)限滿足?開門, 顯示正確信息報(bào)警, 顯示錯(cuò)誤信息延時(shí)后, 自動(dòng)關(guān)門結(jié)束

4.5 顯示子程序

顯示子程序的主要功能是對當(dāng)前的門控狀態(tài)進(jìn)行顯示, 顯示函數(shù)首先判斷是寫命令操作還是寫數(shù)據(jù)操作, 若是寫命令操作, 則根據(jù)命令進(jìn)行相應(yīng)的操作, 如清屏、 設(shè)置顯示模式等; 若是寫數(shù)據(jù)操作, 則在顯示器上顯示相應(yīng)數(shù)據(jù)。

核心程序

void LcdShowError(){ WriteLcdCom(0x38);  //顯示模式設(shè)置WriteLcdCom(0x0c);  //開顯示, 無光標(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 存儲子程序

本設(shè)計(jì)中數(shù)據(jù)的存儲芯片選用的是 AT24C04, 該芯片是串行的 E 2 PROM,支持 I 2 C 總線數(shù)據(jù)傳送協(xié)議。

核心程序

void eeprom(){write_byte(0,0x1e);write_byte(1,0xda); write_byte(2,0x62); write_byte(3,0xb6);write_byte(4,0x25); write_byte(5,0xee); write_byte(6,0xde);write_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ù)到 AT24C04{uchar i; bit ack_bit;for(i = 0; i < 8; i++) // 循環(huán)移入 8 個(gè)位{SDA1 = (bit)(write_data & 0x80);_nop_();SCL1 = 1;delayNOP();SCL1 = 0;write_data <<= 1; }SDA1 = 1;  // 讀取應(yīng)答delayNOP();SCL1 = 1;delayNOP();ack_bit = SDA1;SCL1 = 0;return ack_bit;  // 返回 AT24C04 應(yīng)答位}void  write_byte(uchar  addr,  uchar write_data)  //  在 指 定 地 址 addr 處寫入數(shù)據(jù) write_data{ start();shout(OP_WRITE);shout(addr);shout(write_data);stop();delay_10ms(1); }

5 實(shí)現(xiàn)效果

我們還可以把系統(tǒng)裝到盒子里

6 最后

單片機(jī)畢設(shè)項(xiàng)目大全:
https://blog.csdn.net/huawei123444/article/details/119822845

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/123449.html

相關(guān)文章

發(fā)表評論

0條評論

最新活動(dòng)
閱讀需要支付1元查看
<