Каталог

Примеры Pyscan

Этот базовый пример показывает, как считать карту NFC и аутентифицировать ее, используя предварительно определенный список доступа.

from pyscan import Pyscan

from MFRC630 import MFRC630

import time

import pycom

import _thread

VALID_CARDS = [[0x43, 0x95, 0xDD, 0xF8],

               [0x43, 0x95, 0xDD, 0xF9]]

py = Pyscan()

nfc = MFRC630(py)

RGB_BRIGHTNESS = 0x8

RGB_RED = (RGB_BRIGHTNESS << 16)

RGB_GREEN = (RGB_BRIGHTNESS << 8)

RGB_BLUE = (RGB_BRIGHTNESS)

# Перед установкой индикатора RGB убедитесь, что сердцебиение отключено 

pycom.heartbeat(False)

# Инициализируйте MFRC630 с некоторыми настройками

nfc.mfrc630_cmd_init()

 

def check_uid(uid, len):

    return VALID_CARDS.count(uid[:len])

 

def discovery_loop(nfc, id):

    while True:

        # Отправить REQA для типа карты ISO14443A

        atqa = nfc.mfrc630_iso14443a_WUPA_REQA(nfc.MFRC630_ISO14443_CMD_REQA)

        if (atqa != 0):

            # Карта обнаружена, считать UID

            uid = bytearray(10)

            uid_len = nfc.mfrc630_iso14443a_select(uid)

            if (uid_len > 0):

                if (check_uid(list(uid), uid_len)) > 0:

                    pycom.rgbled(RGB_GREEN)

                else:

                    pycom.rgbled(RGB_RED)

        else:

            # Карта не обнаружена

            pycom.rgbled(RGB_BLUE)

        nfc.mfrc630_cmd_reset()

        time.sleep(.5)

        nfc.mfrc630_cmd_init()

# Начало основной части: запуск thread

_thread.start_new_thread (discovery_loop, (nfc, 0))

Вы можете найти этот и другие примеры в нашем репозитории GitHub для pycom-библиотек.

footer shadow
Контакты

г. Москва, Пятницкое ш. д. 18, пав. 566

zakaz@compacttool.ru

8-495-752-55-22

compacttool logoadaptive site

accepted payment systems

Информация представленная на данном информационном ресурсе преследует исключительно рекламные цели и не является договором-офертой !

© Все права защищены 2015 - 2024г https://compacttool.ru