Nfc eeprom

Смартфон как способ оплаты

NFC совместима со стандартом ISO 14443 и объединяет множество бесконтактных карт, в том числе банковские карты, поддерживающее MasterCard PayPass или VISA PayWave. Пластиковая карта содержит микропроцессор с ОС и платежным приложением для взаимодействия с данными конкретного клиента. Как только карту вставляют в терминал или проводят по нему, она получает энергию для запуска операционной системы. В случае с бесконтактными картами питание, как мы уже говорили, получается при помощи электромагнитного поля считывателя.

С появлением бесконтактных карт платежным инструментом по сути может выступать не обязательно карта, а смартфон, часы, брелок и так далее — важна не форма, а наличие необходимого набора функций. Ведь в смартфонах с поддержкой NFC так же, как и в пластиковых картах, есть микропроцессор. Начиная с Android 4.

Чтобы управлять бесконтактными приложениями удаленно, производители смартфонов и поставщики услуг подключаются к TSM — службе, которая обеспечивает доступ к защищенным данным на терминалах с поддержкой NFC. Она удаленно управляет чипами Secure Element в смартфонах, сам смартфон при этом является своего рода модемом, работающим через безопасный канал связи.

При совершении покупок свыше 1000 рублей вас могут попросить ввести PIN-код или поставить подпись на чеке — здесь уже все зависит от банка.

Подключение и настройка

RFID/NFC сканер подключается по протоколу I²C/TWI и использует пин прерывания IRQ. Для сборки модуля используются три трёхпроводных шлейфа.

При подключении к Arduino или Iskra JS удобно использовать Troyka Shield.

Метки NFC

Это еще один распространенный способ применения NFC в смартфоне. Метки NFC получили большую популярность в торговых и рекламных зонах: их встраивают в афиши, рекламные щиты, помещают на товары в магазинах. Обычно это небольшие стикеры, стоимость которых не превышает 50 рублей. Затраты минимальные, зато какой эффект! От получения более подробной информации о концерте или товаре до ссылки на трейлер нового фильма.

Nfc eeprom

Вы можете создавать собственные NFC-метки, модернизировать их и затем использовать в повседневной жизни. Как правило, для этого используется сторонний софт вроде NFC TagWriter. Приложение довольно простое и позволяет записать на метку множество типов данных — от контакта и телефонного номера до закладки веб-браузера.

На самом деле NFC-метки — настоящий подарок, когда речь заходит об автоматизации. Например, можно наклеить метку на ноутбук и при помощи приложения Trigger настроить включение точки доступа, выбрав в качестве действия «Беспроводные и локальные сети». Решение попроще — записать пароль от Wi-Fi на метку, наклеить ее на роутер, и потом всякий раз, когда гости спросят пароль, отправлять их к NFC-метке. Или еще: установить метку около кровати и сделать так, чтобы при прикосновении на смартфоне включался авиарежим (опять же с помощью Trigger).

Полезно будет и автомобилистам — записали на метку алгоритм запуска навигатора, наклеили ее на держатель для смартфона, и всякий раз, когда вы будете устанавливать устройство на это место, навигатор будет запускаться автоматически.

И таких примеров применения NFC-меток еще очень и очень много. Зачастую появление новых кейсов ограничивается вовсе не технологией, а фантазией пользователя.

Примеры работы

Рассмотрим несколько примеров с работой NFC-сканера.

Для работы сканера с Arduino используйте библиотеку Adafruit PN532.

nfc.ino
#include {amp}lt;Wire.h{amp}gt;#include {amp}lt;SPI.h{amp}gt;// библиотека для работы с RFID/NFC#include {amp}lt;Adafruit_PN532.h{amp}gt;
 
// пин прерывания#define PN532_IRQ   9// создаём объект для работы со сканером и передаём ему два параметра// первый — номер пина прерывания// вторым — число 100// от Adafruit был программный сброс шилда // в cканере RFID/NFC 13,56 МГц (Troyka-модуль) этот пин не используется// поэтому передаём цифру, большая чем любой пин Arduino
Adafruit_PN532 nfc(PN532_IRQ,100);
 
void setup(void){
  Serial.begin(9600);// инициализация RFID/NFC сканера
  nfc.begin();int versiondata = nfc.getFirmwareVersion();if(!versiondata){
    Serial.print("Didn't find RFID/NFC reader");while(1){}}
 
  Serial.println("Found RFID/NFC reader");// настраиваем модуль
  nfc.SAMConfig();
  Serial.println("Waiting for a card ...");}
 
void loop(void){uint8_t success;// буфер для хранения ID картыuint8_t uid[8];// размер буфера картыuint8_t uidLength;// слушаем новые метки
  success = nfc.readPassiveTargetID(PN532_MIFARE_ISO14443A, uid,{amp}amp;uidLength);// если найдена картаif(success){// выводим в консоль полученные данные
    Serial.println("Found a card");
    Serial.print("ID Length: ");
    Serial.print(uidLength, DEC);
    Serial.println(" bytes");
    Serial.print("ID Value: ");
    nfc.PrintHex(uid, uidLength);
    Serial.println("");
    delay(1000);}}

Откройте Serial-порт и прикладывайте по очереди карты к считывателю. В строке ID Value выводится уникальный номер карты.

Прочитаем и выведем ID карты в Serial-порт. Для работы RFID/NFC сканера с Iskra JS используйте библиотеку @amperka/nfc. Она обеспечивает простую работу с модулем и прячет в себе все тонкости протокола обмена данными между сканером и управляющей платой.

nfc-test.js
// настраиваем I2C1 для работы модуля
I2C1.setup({sda: SDA, scl: SCL, bitrate:400000});
 
// подключаем модуль к I2C1 и пину прерыванияvar nfc = require('@amperka/nfc').connect({i2c: I2C1, irqPin: P9});
 
// активируем модуль
nfc.wakeUp(function(error){if(error){
    print('NFC wake up error', error);}else{
    print('NFC wake up OK');// слушаем новые метки
    nfc.listen();}});
 
nfc.on('tag',function(error, data){if(error){
    print('tag read error');}else{// выводим в консоль полученные данные
    print(data);}
 
  // каждые секунду слушаем новую метку
  setTimeout(function(){
    nfc.listen();},1000);});

После загрузки кода, приложим по очереди карты к сканеру. В строке uid выведен уникальный номер карты

Открываем все двери

Кто-то реализовывает подобное и в домашних условиях, но в основном использование NFC для идентификации и контроля пользователя характерно для предприятий и организаций. Турникеты и замки настраиваются таким образом, что при помощи метки, которая является пропуском, решают, стоит давать ее обладателю разрешение на вход или нет.

С NFC в смартфоне действительно открываются все двери — если не в буквальном смысле, то в переносном точно. Фактически пользователь получает универсальный инструмент, который, несмотря на скоростные ограничения, находит себе применение в самых разных ситуациях. Здесь мы сталкиваемся с другой проблемой — степенью распространенности технологии среди поставщиков услуг. Единственное, что в данном случае может сделать обычный пользователь — как можно чаще задействовать NFC, чтобы показать ее востребованность.

NFC-пульт

Попробуем управлять тремя светодиодами с помощью RFID/NFC-сканера, каждому светодиоду будет соответствовать своя карта. При поднесении известной карты будет переключаться светодиод. Для удобства контроля работы будем отправлять в Serial-порт название считанной карты.

Схема подключения

Nfc eeprom

К ранее собранной схеме добавим три светодиода Пиранья.

Вместо заключения

Пожалуй, самое приятное в NFC — то, что эта технология доступна широкому кругу пользователей. Все больше производителей не оставляют свои смартфоны без NFC, поэтому она есть как в устройствах типа

(за $321.99 по коду Mi5SGBS до 31.12) и

, так и во флагманах вроде

. Радует также разнообразие

Nfc eeprom

Что с Apple и ее iPhone 7, спросите вы? Увы, но компания-производитель ограничивает работу чипа NFC в своем смартфоне, и его можно использовать только для платежной системы Apple Pay. Осенью, впрочем, она запустилась в России, так что хоть какой-то плюс.

А как вы используете NFC в повседневной жизни? Поделитесь с нами своим опытом в комментариях.

Технология RFID/NFC

RFID и NFC — это две тесно связанные технологии беспроводной связи, которые используются во всем мире для контроля доступа, отслеживания грузов, в системах безопасности и бесконтактных платежей. NFC является продолжением технологии RFID.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *