라즈베리파이에서 RFID리더기 사용하기

상현·2022년 11월 25일
1


RC522는 위와 같이 생긴 모듈로 RFID 값을 읽고 쓸 수 있다.

https://pimylifeup.com/raspberry-pi-rfid-rc522/
처음 공부할 당시 위의 내용을 참고했다.

위와 같이 RC522와 연결하면 되며, 아래의 표는 RC522와 Raspberry Pi의 Pin을 어디에 연결해야하는 지를 의미한다.

라즈베리파이의 핀번호는 보드 좌상단을 1로 하고 그 옆을 2로 하는 방식으로 세어진다.

RC522 PinRaspberry Pi Pin
SDA24
SCK23
MOSI19
MISO21
GND6
RST22
3.3V1

하지만 이렇게 연결했다고 RFID리더기를 사용할 수 있는 것은 아니다.
라즈베리파이에서 SPI통신을 켜줘야 한다.

먼저 sudo raspi-config를 터미널에 입력하여 아래의 창에 진입한다.

3번 Interface Options를 선택해준다.

4번 SPI를 선택하고 해당 내용을 enable해준다.

해당 상태에서

lsmod | grep spi

를 입력했을때 spi_bcm2835가 보이면 성공이다.

sudo apt-get install python3-dev python3-pip
sudo pip3 install spidev
sudo pip3 install mfrc522

위의 내용을 설치한 뒤

#!/usr/bin/env python

import RPi.GPIO as GPIO
from mfrc522 import SimpleMFRC522

reader = SimpleMFRC522()

try:
        id, text = reader.read()
        print(id)
        print(text)
finally:
        GPIO.cleanup()

의 코드를 작성하고 실행하면 아래와 같이 카드를 되었을 때 읽을 수 있다.

0개의 댓글