NFC: различия между версиями

Материал из Wiren Board
 
(не показаны 2 промежуточные версии 1 участника)
Строка 1: Строка 1:
==Hardware==
<languages/>
<translate>
 
==Hardware== <!--T:1-->
Используется чип NXP [[PN532]]. Чип подключен по SPI. Используется GPIO в качестве chip select.
Используется чип NXP [[PN532]]. Чип подключен по SPI. Используется GPIO в качестве chip select.


== Software ==
== Software == <!--T:2-->
Чип поддерживается библиотекой [http://nfc-tools.org/index.php?title=Libnfc libnfc], начиная с релиза 1.7.0.  
Чип поддерживается библиотекой [http://nfc-tools.org/index.php?title=Libnfc libnfc], начиная с релиза 1.7.0.  
Backport для Debian Wheezy: [https://github.com/contactless/wirenboard/tree/master/contrib/libnfc], по умолчанию установлен в стандартном образе.
Backport для Debian Wheezy: [https://github.com/contactless/wirenboard/tree/master/contrib/libnfc], по умолчанию установлен в стандартном образе.


<!--T:3-->
Работа производится через spidev в userspace. По-умолчанию при использовании стандартного dts файла используется устройство /dev/spidev1.4.
Работа производится через spidev в userspace. По-умолчанию при использовании стандартного dts файла используется устройство /dev/spidev1.4.
Конфиг по-умолчанию: [https://github.com/contactless/wirenboard/blob/master/rootfs/configs/etc/nfc/libnfc.conf].
Конфиг по-умолчанию: [https://github.com/contactless/wirenboard/blob/master/rootfs/configs/etc/nfc/libnfc.conf].


===Примеры=== <!--T:4-->


 
====Список карточек в области видимости==== <!--T:5-->
===Примеры===
 
====Список карточек в области видимости====
<pre>
<pre>
root@wirenboard:~# nfc-list  
root@wirenboard:~# nfc-list  
Строка 24: Строка 26:
       SAK (SEL_RES): 00   
       SAK (SEL_RES): 00   


<!--T:6-->
</pre>
</pre>


====Чтение Mifare Ultralight====
====Чтение Mifare Ultralight==== <!--T:7-->
Одноразовые билеты московского метро - карточки Mifare UL.
Одноразовые билеты московского метро - карточки Mifare UL.
<pre>
<pre>
Строка 37: Строка 40:
</pre>
</pre>


====Python====
====Python==== <!--T:8-->
Для работы с NFC из Python необходимо использовать биндинги для libnfc. См. пример https://github.com/contactless/wirenboard/tree/master/examples/nfc/python на гитхабе.
Для работы с NFC из Python необходимо использовать биндинги для libnfc. См. пример https://github.com/contactless/wirenboard/tree/master/examples/nfc/python на гитхабе.


====C/C++====
====C/C++==== <!--T:9-->
Примеры работы с libnfc в утилитах, поставляемых с libnfc: http://code.google.com/p/libnfc/source/browse/#git%2Fexamples
Примеры работы с libnfc в утилитах, поставляемых с libnfc: http://code.google.com/p/libnfc/source/browse/#git%2Fexamples
</translate>

Текущая версия на 15:11, 24 мая 2020

Другие языки:

Hardware

Используется чип NXP PN532. Чип подключен по SPI. Используется GPIO в качестве chip select.

Software

Чип поддерживается библиотекой libnfc, начиная с релиза 1.7.0. Backport для Debian Wheezy: [1], по умолчанию установлен в стандартном образе.

Работа производится через spidev в userspace. По-умолчанию при использовании стандартного dts файла используется устройство /dev/spidev1.4. Конфиг по-умолчанию: [2].

Примеры

Список карточек в области видимости

root@wirenboard:~# nfc-list 
nfc-list uses libnfc 1.7.0
NFC device: pn532_spi:/dev/spidev1.4 opened
1 ISO14443A passive target(s) found:
ISO/IEC 14443A (106 kbps) target:
    ATQA (SENS_RES): 00  44  
       UID (NFCID1): 04  f7  04  1a  0d  28  86  
      SAK (SEL_RES): 00  

Чтение Mifare Ultralight

Одноразовые билеты московского метро - карточки Mifare UL.

root@wirenboard:~# nfc-mfultralight r dump.mfd
NFC device: pn532_spi:/dev/spidev1.4 opened
Found MIFARE Ultralight card with UID: 04f7041a0d2886
Reading 16 pages |................|
Done, 16 of 16 pages readed.
Writing data to file: dump.mfd ... Done.

Python

Для работы с NFC из Python необходимо использовать биндинги для libnfc. См. пример https://github.com/contactless/wirenboard/tree/master/examples/nfc/python на гитхабе.

C/C++

Примеры работы с libnfc в утилитах, поставляемых с libnfc: http://code.google.com/p/libnfc/source/browse/#git%2Fexamples