nfc(near field communication,近場通信),屬於高頻,讀距為2cm左右,協議為14443a,15693,android/ios均支持nfc,目前在移動支付等場景得到一定的應用。樹莓派可以跟nfc模塊結合起來再掛個顯示屏(接hdmi接口),就可以做一個簡易的員工考勤機(員工考勤卡須含有高頻標簽)。
一、硬件接線
nfc模塊選用RC522,樹莓派跟nfc模塊通信方式采用SPI接口(SPI,Serial Peripheral Interface,串行外設接口,是一種主從式接口)。
接線示意圖:
實際接線圖:
二、軟件編程
-
安裝SPI-Py庫
開始編寫代碼之前,首先通過sudo raspi-config進入配置界面,打開SPI接口。
有個Python庫SPI-Py,可以操作SPI。通過git或者打開網頁下載zip包進行安裝。
git clone https://github.com/lthiery/SPI-Py.git
然后安裝
sudo python3 setup.py install
如果你配置了python3為默認python環境,則sudo python setup.py install
-
安裝RC522的Python庫
git clone https://github.com/kangaroo711/MFRC522-python.git
這個庫依賴於SPI-Py庫,請保證正確安裝。 -
運行RC522的Python庫中的示例代碼
cd MFRC522-python
python Read.py
當將nfc卡片靠近nfc模塊時,打印讀取到的nfc卡片的uid(只讀,唯一id)。程序中就可以根據這個uid到數據庫中檢索比對員工信息,完成打卡動作。
參考資料:
https://blog.csdn.net/qq_40259641/article/details/108749501