import mfrc522
from utime import sleep
# sck=18, mosi=23, miso=19, rst=13, sda=15
rdr = mfrc522.MFRC522(18, 23, 19, 13, 15)
def read():
(stat, tag_type) = rdr.request(rdr.REQIDL)
if stat == rdr.OK:
(stat, raw_uid) = rdr.anticoll()
if stat == rdr.OK:
print("\n[!] Kartu Terdeteksi")
print(" - UID: %02x:%02x:%02x:%02x" % (raw_uid[0], raw_uid[1], raw_uid[2], raw_uid[3]))
if rdr.select_tag(raw_uid) == rdr.OK:
key = [0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF]
if rdr.auth(rdr.AUTHENT1A, 8, key, raw_uid) == rdr.OK:
data = rdr.read(8)
if data:
text = "".join([chr(x) for x in data])
print(" - Data Blok 8: %s" % text)
rdr.stop_crypto1()
else:
print(" - Error: Otentikasi Gagal")
def write(nama):
(stat, tag_type) = rdr.request(rdr.REQIDL)
if stat == rdr.OK:
(stat, raw_uid) = rdr.anticoll()
if stat == rdr.OK:
print("\n[!] Siap Menulis ke Kartu...")
if rdr.select_tag(raw_uid) == rdr.OK:
key = [0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF]
if rdr.auth(rdr.AUTHENT1A, 8, key, raw_uid) == rdr.OK:
stat = rdr.write(8, nama)
rdr.stop_crypto1()
if stat == rdr.OK:
print(" - Berhasil Menulis: %s" % nama)
else:
print(" - Gagal Menulis!")
print("--- SISTEM RFID AKTIF ---")
while True:
# Aktifkan salah satu sesuai tugas:
read()
# write("benni agung ngrh")
sleep(1)