Logo ST

Pacchetto ST UM2766 X-LINUX-NFC5 per lo sviluppo di lettori NFC/RFID

Pacchetto ST UM2766 X-LINUX-NFC5 per lo sviluppo di lettori RFID NFC

Introduzione

Questo pacchetto di espansione del software STM32 MPU OpenSTLinux dimostra come è possibile sviluppare la comunicazione NFC/RF per un sistema Linux standard utilizzando la nostra libreria di astrazione di frequenze radio (RFAL). Il driver dell'interfaccia comune RFAL garantisce che la funzione utente e il software applicativo siano compatibili con qualsiasi CI del lettore NFC/RFID ST25R.
Il pacchetto X-LINUX-NFC5 porta l'RFAL su un Discovery Kit con microprocessore serie STM32MP1 che esegue Linux per pilotare un front-end NFC ST25R3911B su una scheda di espansione STM32 Nucleo. Il pacchetto include comeampl'applicazione per aiutarti a capire il rilevamento di diversi tipi di NFC tags e telefoni cellulari che supportano il P2P.
Il codice sorgente è progettato per la portabilità su un'ampia gamma di unità di elaborazione che eseguono Linux e supporta tutti i livelli inferiori e alcuni protocolli di livello superiore dei circuiti integrati ST25R per astrarre la comunicazione RF.

Libreria di astrazione di radiofrequenza per LinuxLibreria di astrazione di radiofrequenza per Linux

RFAL

Protocolli DIP. ISO NFC DIP
Tecnologie NFC-A NFC-B NFC-F NFC-V T1T

ST25TB

SALVEZZA

RF

Configurazioni RF

ST25R3911B

X-LINUX-NFC5 Fineview

Caratteristiche principali

Il pacchetto di espansione software X-LINUX-NFC5 include le seguenti funzionalità:

  • Driver dello spazio utente Linux completo (livello di astrazione RF) per creare applicazioni abilitate per NFC utilizzando i front-end NFC ST25R3911B/ST25R391x con potenza di uscita fino a 1.4 W.
  • Comunicazione host Linux con ST25R3911B/ST25R391x tramite interfaccia SPI ad alta velocità.
  • Astrazione RF/NFC completa (RFAL) per tutte le principali tecnologie e protocolli di livello superiore:
    • NFC-A (ISO14443-A)
    • NFC-B (ISO14443-B)
    • NFC-F (Felica)
    • NFC-V (ISO15693)
    • P2P (ISO18092)
    • ISO-DEP (protocollo di scambio dati ISO, ISO14443-4)
    • NFC-DEP (protocollo di scambio dati NFC, ISO18092)
    • Tecnologie proprietarie (Kovio, B', iClass, Calypso, ecc.)
  • Sampimplementazione disponibile con scheda di espansione X-NUCLEO-NFC05A1 collegata a un STM32MP157F-DK2
  • Sample applicazione per rilevare diversi NFC tags tipi
Architettura del pacchetto

Il pacchetto software funziona sul core A7 della serie STM32MP1. X-LINUX-NFC5 interagisce con le librerie dei livelli inferiori e le linee SPI esposte dal framework software Linux.

Architettura dell'applicazione X-LINUX-NFC5 in ambiente Linux
Architettura dell'applicazione X-LINUX-NFC5 in ambiente Linux

Configurazione hardware

Requisiti hardware:

  • PC/macchina virtuale basato su Ubuntu versione 16.04 o successiva
  • Scheda STM32MP157F-DK2 (kit di rilevamento)
  • X-NUCLEO-NFC05A1
  • Scheda micro SD da 8 GB per avviare STM32MP157F-DK2
  • Lettore di schede SD / connettività LAN
  • Cavo USB da tipo A a tipo micro B USB
  • Cavo USB da tipo A a USB di tipo C
  • Alimentatore 5V 3A conforme a USB PD

Il PC/macchina virtuale costituisce la piattaforma di sviluppo incrociato per creare la libreria RFAL e il codice dell'applicazione per rilevare e comunicare con i dispositivi NFC tramite l'IC ST25R3911B.

Come collegare l'hardware

Fase 1. Collega la scheda di espansione X-NUCLEO-NFC05A1 ai connettori Arduino sul lato inferiore della scheda discovery STM32MP157F-DK2.

Connettori Arduino per scheda Nucleo e scheda Discovery

  1. Scheda di espansione X-NUCLEO-NFC05A1
  2. Scheda di scoperta STM32MP157F-DK2
  3. Connettori Arduino

Collega il debugger del programmatore ST-LINK integrato nella scheda di rilevamento al PC host

Fase 2. Collega il programmatore/debugger ST-LINK integrato nella scheda di rilevamento al PC host tramite la porta USB micro B di tipo (CN11).

Fase 3. Alimentare la scheda di rilevamento tramite la porta USB di tipo C (CN6).

Configurazione completa della connessione hardware
Configurazione completa della connessione hardware

LINK CORRELATI
Fare riferimento a questo wiki per maggiori dettagli relativi all'alimentazione e alle porte di comunicazione

Installazione del software

Prima di iniziare, alimentare il kit Discovery STM32MP157F-DK2 tramite un alimentatore da 5 V, 3 A conforme a USB PD e installare il pacchetto di avvio secondo le istruzioni nella wiki introduttiva. Avrai bisogno di una scheda microSD da almeno 2 GB per eseguire il flashing delle immagini avviabili.
Per eseguire l'applicazione, è necessario aggiornare la configurazione della piattaforma aggiornando l'albero dei dispositivi per abilitare le relative periferiche. Puoi farlo rapidamente utilizzando le immagini predefinite disponibili, oppure puoi sviluppare l'albero dei dispositivi e creare le tue immagini del kernel.
Puoi anche (facoltativamente) creare questo pacchetto software includendo il livello Yocto (meta-nfc5 ) nel pacchetto di distribuzione ST. Questa operazione crea il codice sorgente e include le modifiche dell'albero dei dispositivi insieme ai binari compilati nelle immagini flash finali. Per i passaggi dettagliati che descrivono il processo, vedere la Sezione 3.5.
È possibile connettersi al Discovery Kit dal PC host tramite rete TCP/IP utilizzando i comandi ssh e scp o tramite collegamenti seriali UART o USB utilizzando strumenti come minicom per Linux o Tera Term per Windows.

Passaggi per una rapida valutazione del software
  • Passaggio 01: eseguire il flashing del pacchetto iniziale sulla scheda SD.
  • Passaggio 02: avviare la scheda con il pacchetto Starter.
  • Passaggio 03: abilitare la connettività Internet sulla scheda tramite Ethernet o Wi-Fi. Fare riferimento alle pagine wiki pertinenti per assistenza.
  • Passaggio 04: scarica le immagini predefinite da X-LINUX-NFC5 web pagina sulla ST websito
  • Passaggio 05: utilizzare i comandi seguenti per copiare il BLOB della struttura ad albero dei dispositivi e aggiornare la nuova configurazione della piattaforma:
    Se la connettività di rete non è disponibile, è possibile trasferire il files localmente dal tuo PC Windows al Discovery Kit utilizzando Tera Term.
    Per maggiori dettagli sul trasferimento dei dati filesta usando Tera Term.
    Passaggi per una rapida valutazione del software 01
  • Passaggio 06: dopo l'avvio della scheda, copiare il binario dell'applicazione e la libreria condivisa sulla scheda di rilevamento.
    Passaggi per una rapida valutazione del software 02L'applicazione verrà avviata una volta eseguiti questi comandi.
Come aggiornare la configurazione della piattaforma nel pacchetto per sviluppatori

I passaggi seguenti ti permetteranno di configurare l'ambiente di sviluppo.

  • Passaggio 01: scarica il pacchetto per sviluppatori e installa l'SDK nella struttura di cartelle predefinita sul tuo computer Ubuntu.
    Puoi trovare le istruzioni qui: Installa SDK
  • Passaggio 02: aprire l'albero dei dispositivi file 'stm32mp157f-dk2.dts' nel codice sorgente del pacchetto per sviluppatori e aggiungere lo snippet di codice di seguito al file:
    Questo aggiorna la struttura dei dispositivi per abilitare e configurare l'interfaccia del driver SPI4.
    Passaggi per una rapida valutazione del software 03
  • Passaggio 03: compilare il pacchetto Developer per ottenere stm32mp157f-dk2.dtb file.
Come creare il codice dell'applicazione Linux RFAL

Prima di iniziare, l'SDK deve essere scaricato, installato e abilitato. Scarica l'applicazione dal link: X-LINUX-NFC5

  • Passaggio 1. Eseguire i comandi seguenti per eseguire la compilazione incrociata del codice:
    Questi comandi creeranno il seguente files:
    • L'example applicazione: nfc_poller_st25r3911
    • libreria condivisa per eseguire l'example applicazione: librfal_st25r3911.so
      Come creare il codice dell'applicazione RFAL Linux 01
Come eseguire l'applicazione RFAL Linux su STM32MP157F-DK2
  • Passaggio 01: copia i file binari generati sul Discovery Kit utilizzando i comandi seguenti
    Come eseguire l'applicazione RFAL Linux su STM32MP157F-DK2 01
  • Passaggio 02: aprire il terminale sulla scheda Discovery Kit o utilizzare il login ssh ed eseguire l'applicazione utilizzando i seguenti comandi.
    Come eseguire l'applicazione RFAL Linux su STM32MP157F-DK2 02L'utente vedrà il seguente messaggio sullo schermo:
    Come eseguire l'applicazione RFAL Linux su STM32MP157F-DK2 03
  • Passaggio 03: quando un NFC tag viene avvicinato al ricevitore NFC, all'UID e all'NFC tag tipo viene visualizzato sullo schermo.

Discovery Kit che esegue l'applicazione nfcPoller
Discovery Kit che esegue l'applicazione nfcPoller

Come includere il livello Meta-nfc5 nel pacchetto di distribuzione
  • Passaggio 01: scarica e compila il pacchetto di distribuzione sulla tua macchina Linux.
  • Passaggio 02: seguire la struttura di directory predefinita suggerita dalla pagina wiki di ST per seguire questo documento in modo sincrono.
  • Passaggio 03: scaricare il pacchetto dell'applicazione X-LINUX-NFC5:
    Come includere il livello meta-nfc5 nel pacchetto di distribuzione 01
  • Passaggio 04: impostare la configurazione della build.
    Come includere il livello meta-nfc5 nel pacchetto di distribuzione 02
  • Passaggio 05: aggiungere il livello meta-nfc5 alla configurazione di build della configurazione del pacchetto di distribuzione.
    Come includere il livello meta-nfc5 nel pacchetto di distribuzione 03
  • Passaggio 06: aggiorna la configurazione per aggiungere nuovi componenti nell'immagine.
    Come includere il livello meta-nfc5 nel pacchetto di distribuzione 04
  • Passaggio 07: crea il tuo livello separatamente e quindi crea il livello di distribuzione completo.
    Come includere il livello meta-nfc5 nel pacchetto di distribuzione 05Nota: La creazione della pagina di distribuzione per la prima volta potrebbe richiedere diverse ore. Tuttavia, ci vogliono solo pochi minuti per creare il livello meta-nfc5 e installare gli eseguibili nelle immagini finali. Una volta completata la build, le immagini sono presenti nella seguente directory: build- - /tmp-glibc/deploy/images/stm32mp1.
  • Passaggio 08: seguire le istruzioni sulla pagina wiki di ST: lampeggiare l'immagine creata per far lampeggiare le nuove immagini create sul
    kit di scoperta.
  • Passaggio 09: eseguire l'applicazione come indicato nel passaggio 2 della sezione 3.4.

Come trasferire Files Utilizzo del termine Tera

Puoi utilizzare un'applicazione di emulazione di terminale Windows come Tera Term per trasferire files dal tuo PC al Discovery Kit.

  • Passaggio 01: fornire alimentazione USB al Discovery Kit.
  • Passaggio 02: collegare il Discovery Kit al PC tramite il connettore USB micro B (CN11).
  • Passaggio 03: controllare il numero della porta COM virtuale in Gestione dispositivi.
    Nello screenshot qui sotto, il numero della porta COM è 14.
    Schermata di Gestione dispositivi che mostra la porta COM virtuale
    Screenshot di Gestione dispositivi che mostra la porta COM virtuale
  • Passaggio 04: aprire Tera Term sul PC e selezionare la porta COM identificata nel passaggio precedente. La velocità di trasmissione dovrebbe essere 115200 baud.
    Istantanea del terminale remoto tramite Tera Term
    Istantanea del terminale remoto tramite Tera Term
  • Passaggio 05: trasferire a file dal PC host a Discovery Kit, selezionare [File]>[Trasferisci]>[ZMODEM]>[Invia] nell'angolo in alto a sinistra della finestra di Tera Term.
    Termine Tera File Menu di trasferimento
    Termine Tera file menu di trasferimento
  • Passaggio 06: selezionare il file da trasferire in file browser e selezionare [Apri].
    File Finestra del browser per l'invio Files
    File finestra del browser per l'invio files
    .
  • Passaggio 07: una barra di avanzamento mostrerà lo stato di file trasferimento.
    File Barra di avanzamento del trasferimento
    File barra di avanzamento del trasferimento

Cronologia delle revisioni

Cronologia delle revisioni del documento

Data

Versione

Cambiamenti

30-Ott-2020

1

Versione iniziale.

 15-lug-2021

2

Aggiornato Sezione 1.1 Caratteristiche principali, Sezione 2 Configurazione hardware, Sezione 2.1 Come fare collegare l'hardware, Sezione 3 Configurazione del software, Sezione 3.1 Passaggi per una rapida valutazione di software, Sezione 3.2 Come aggiornare la configurazione della piattaforma nel pacchetto per sviluppatori E Sezione 3.3 Come creare il codice dell'applicazione RFAL Linux.

Aggiunto Sezione 3.5 Come includere il livello meta-nfc5 nel pacchetto di distribuzione. Aggiunte informazioni sulla compatibilità del kit di rilevamento STM32MP157F-DK2.

Documenti / Risorse

Pacchetto ST UM2766 X-LINUX-NFC5 per lo sviluppo di lettori NFC/RFID [pdf] Manuale d'uso
UM2766, pacchetto X-LINUX-NFC5 per lo sviluppo di lettori NFC-RFID, sviluppo di lettori NFC-RFID, lettore NFC-RFID, pacchetto X-LINUX-NFC5, X-LINUX-NFC5

Riferimenti

Lascia un commento

Il tuo indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati *