Page 573 - 3-2
P. 573

import signal
            continue_reading = True
            a = ""
            # 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
            def f():
                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:
                        # Print UID
                        print "Card read UID: "+str(uid[0])+","+str(uid[1])+","+str(uid[2])+","+str(uid[3])
                        #a = [str(uid[0]),str(uid[1]),str(uid[2]),str(uid[3])]
                        a = str(uid[0])+str(uid[1])+str(uid[2])+str(uid[3])
                        break
                        # 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:


                                                         - 573 -
   568   569   570   571   572   573   574   575   576   577   578