RFID可應(yīng)用于門(mén)禁系統(tǒng),我們可以把數(shù)據(jù)寫(xiě)入標(biāo)簽,然后將有權(quán)限的標(biāo)簽進(jìn)行記錄保存,當(dāng)有用戶(hù)標(biāo)簽被掃描時(shí),進(jìn)行身份信息讀取比對(duì),然后根據(jù)權(quán)限進(jìn)行相應(yīng)的操作。
本篇配合OLED屏幕來(lái)模擬門(mén)禁系統(tǒng),只對(duì)標(biāo)簽的UID進(jìn)行簡(jiǎn)單對(duì)比判斷,當(dāng)然你也可以設(shè)置好自己的密鑰,然后將數(shù)據(jù)寫(xiě)入到標(biāo)簽,進(jìn)行更加嚴(yán)謹(jǐn)?shù)纳矸葑R(shí)別。
1
實(shí)驗(yàn)材料
2
實(shí)驗(yàn)步驟
1.根據(jù)原理圖搭建電路圖。
RC522模塊的3.3V、GND分別對(duì)應(yīng)連接開(kāi)發(fā)板的3.3V、GND,模塊的MOSI、MISO、SCK分別連接開(kāi)發(fā)板的SPI接口11、12、13,模塊的SDA、RST分別連接開(kāi)發(fā)板數(shù)字管腳10、9。OLED屏的VCC和GND分別連接開(kāi)發(fā)板的3.3V和GND,OLED屏的SDA和SCL分別連接開(kāi)發(fā)板A4和A5。
實(shí)驗(yàn)原理圖如下圖所示:
實(shí)驗(yàn)原理圖
2.代碼較長(zhǎng),部分截取如下,全部代碼文末獲取。
...
if (nuidPICC[0] == cardID[0] && nuidPICC[1] == cardID[1]
&& nuidPICC[2] == cardID[2] && nuidPICC[3] == cardID[3])
{
oled.clearDisplay();//清屏
oled.setCursor(15, 2);//設(shè)置顯示位置
oled.println("--RFID--");
oled.setCursor(25, 40);//設(shè)置顯示位置
oled.println("CHECK OK");
oled.display(); // 開(kāi)顯示
delay(1000);
oled.clearDisplay();//清屏
oled.setCursor(15, 2);//設(shè)置顯示位置
oled.println("--RFID--");
oled.setCursor(25, 40);//設(shè)置顯示位置
oled.println("OPEN...");
oled.display(); // 開(kāi)顯示
} else {
oled.clearDisplay();//清屏
oled.setCursor(15, 2);//設(shè)置顯示位置
oled.println("--RFID--");
oled.setCursor(15, 40);//設(shè)置顯示位置
oled.println("CHECK ERR");
oled.display(); // 開(kāi)顯示
}
// 使放置在讀卡區(qū)的IC卡進(jìn)入休眠狀態(tài),不再重復(fù)讀卡
rfid.PICC_HaltA();
...
3. 連接開(kāi)發(fā)板,設(shè)置好對(duì)應(yīng)端口號(hào)和開(kāi)發(fā)板類(lèi)型,進(jìn)行程序下載。
程序下載
3
實(shí)驗(yàn)現(xiàn)象
有權(quán)限的標(biāo)簽卡事先保存記錄了UID,讀卡對(duì)比可以開(kāi)門(mén),而另外的卡則不能開(kāi)門(mén)操作。
-
RFID
+關(guān)注
關(guān)注
388文章
6152瀏覽量
237899 -
OLED屏
+關(guān)注
關(guān)注
0文章
162瀏覽量
20848 -
SPI接口
+關(guān)注
關(guān)注
0文章
258瀏覽量
34383 -
SDA
+關(guān)注
關(guān)注
0文章
124瀏覽量
28137 -
GND
+關(guān)注
關(guān)注
2文章
539瀏覽量
38721
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論