Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env python
- # -*- coding: utf8 -*-
- import RPi.GPIO as GPIO
- import MFRC522
- import signal
- import MySQLdb
- # Verbindung zum MySQL Server herstellen
- db = MySQLdb.connect(host="localhost", # your host, usually localhost
- user="root", # your username
- passwd="abcD123", # your password
- db="lf6") # name of the data base
- cur = db.cursor()
- continue_reading = True
- # Capture SIGINT for cleanup when the script is aborted
- def end_read(signal,frame):
- global continue_reading
- print "Ctrl+C captured, ending read."
- continue_reading = False
- GPIO.cleanup()
- # Hook the SIGINT
- signal.signal(signal.SIGINT, end_read)
- # Create an object of the class MFRC522
- MIFAREReader = MFRC522.MFRC522()
- # Welcome message
- print "Welcome to the MFRC522 data read example"
- print "Press Ctrl-C to stop."
- # This loop keeps checking for chips. If one is near it will get the UID and authenticate
- while continue_reading:
- # Scan for cards
- (status,TagType) = MIFAREReader.MFRC522_Request(MIFAREReader.PICC_REQIDL)
- # If a card is found
- if status == MIFAREReader.MI_OK:
- print "Card detected"
- # Get the UID of the card
- (status,uid) = MIFAREReader.MFRC522_Anticoll()
- # If we have the UID, continue
- if status == MIFAREReader.MI_OK:
- cur.execute("SELECT * FROM rfid WHERE rfid = '" + str(uid[0]) + str(uid[1]) + str(uid[2]) + str(uid[3]) + "'")
- if(cur.rowcount == 0):
- print "not welcome"
- else:
- print "welcome"
- # This is the default key for authentication
- key = [0xFF,0xFF,0xFF,0xFF,0xFF,0xFF]
- # Select the scanned tag
- MIFAREReader.MFRC522_SelectTag(uid)
- # Authenticate
- status = MIFAREReader.MFRC522_Auth(MIFAREReader.PICC_AUTHENT1A, 8, key, uid)
- # Check if authenticated
- if status == MIFAREReader.MI_OK:
- MIFAREReader.MFRC522_Read(8)
- MIFAREReader.MFRC522_StopCrypto1()
- else:
- print "Authentication error"
Advertisement
Add Comment
Please, Sign In to add comment