ST logoCUBE-NFC6 højtydende HF-læser
Brugermanual

UM2616 X-CUBE-NFC6 højtydende HF-læser

Kom godt i gang med X-CUBE-NFC6 højtydende HF-læser/NFC-initiator IC-softwareudvidelse til STM32Cube
Indledning
X-CUBE-NFC6-softwareudvidelsen til STM32Cube giver komplet middleware til STM32 til at styre applikationer ved hjælp af ST25R3916/ST25R3916B højtydende NFC front-end IC, der understøtter NFC-initiator-, mål-, læser- og kortemuleringstilstande.
Udvidelsen er bygget oven på STM32Cube softwareteknologi for at lette portabiliteten på tværs af forskellige STM32 mikrocontrollere. Softwaren leveres med sample implementeringer af driverne, der kører på X-NUCLEO-NFC06A1/X-NUCLEO-NFC08A1 udvidelseskort sat oven på et NUCLEO-L053R8 eller NUCLEO-L476RG udviklingskort.
Relaterede links: Besøg STM32Cube-økosystemet web side på www.st.com for yderligere information

Akronymer og forkortelser

Tabel 1. Liste over akronymer

Akronym Beskrivelse
NFC Nærfeltskommunikation
ÆGTE RF abstrakt lag
P2P Peer-to-peer
MCU Mikrocontroller enhed
BSP Bestyrelsesstøttepakke
HAL Hardwareabstraktionslag
LED Lysdiode
SPI Seriel perifert interface
SMS Arm Cortexmicrocontroller software interface standard

X-CUBE-NFC6 softwareudvidelse til STM32Cube
2.1 Overview
X-CUBE-NFC6-softwarepakken udvider STM32Cube-funktionaliteten. Pakkens nøglefunktioner er:

  • Komplet middleware til at bygge applikationer ved hjælp af ST25R3916/ST25R3916B højtydende HF-læser/NFC front-end IC.
  • Sampapplikationen til at detektere NFC tags af forskellige typer og mobiltelefoner, der understøtter P2P, kortemuleringstilstand og læse/skrive.
  • Sample applikation til at læse og skrive NDEF-meddelelser.
  • Sample-implementeringer tilgængelige for X-NUCLEO-NFC06A1/X-NUCLEO-NFC08A1 udvidelseskort tilsluttet et NUCLEO-L053R8 eller NUCLEO-L476RG udviklingskort.
  • Nem bærbarhed på tværs af forskellige MCU-familier takket være STM32Cube.
  • Komplet RF/NFC-abstraktion (RFAL) til alle større teknologier, inklusive komplette ISO-DEP- og NFCDEP-lag.
  • Gratis, brugervenlige licensvilkår.

Denne software indeholder højtydende HF-læser/NFC front-end IC-drivere til ST25R3916/ST25R3916B-enheden, der kører på STM32. Den er bygget oven på STM32Cube softwareteknologi for at lette portabiliteten på tværs af forskellige STM32 mikrocontrollere. Denne firmwarepakke inkluderer komponentenhedsdrivere, en board supportpakke og somampen applikation, der demonstrerer brugen af ​​X-NUCLEO-NFC06A1/X-NUCLEO-NFC08A1 udvidelseskort med STM32 Nucleo-kort.
A sample-applikationen konfigurerer ST25R3916/ST25R3916B i en polling-loop til aktiv og passiv enhedsdetektion. Når en passiv tag eller aktiv enhed detekteres, signalerer læserfeltet den detekterede teknologi ved at tænde en tilsvarende LED. Det er også muligt at indstille ST25R3916/ST25R3916B i en induktiv opvågningstilstand ved at trykke på brugerknappen. Under denne afstemningsløkke er sample-applikationen indstiller også ST25R3916/ST25R3916B i kortemuleringstilstand for at registrere tilstedeværelsen af ​​en læser. Demoen logger alle aktiviteter med ST-LINK virtuel COM-port til værten for systemet.
De understøttede RFID-teknologier i denne demo er:

  • ISO14443A/NFCA
  • ISO14443B/NFCB
  • Felica/NFCF
  • ISO15693/NFCV
  • Aktiv P2P
  • Kortemulering Type A og F

2.2 Arkitektur
Denne fuldt kompatible softwareudvidelse til STM32Cube lader dig udvikle applikationer ved hjælp af ST25R3916/ST25R3916B højtydende HF-læser/NFC-initiator-IC. Den er baseret på STM32CubeHAL-hardwareabstraktionslaget til STM32-mikrocontrolleren og udvider STM32Cube med en bordstøttepakke (BSP) til X-NUCLEO-FC06A1/X-NUCLEO-NFC08A1 udvidelseskortet. Applikationssoftware kan få adgang til og bruge X-NUCLEO-NFC06A1/X-NUCLEO-NFC08A1 udvidelseskort gennem følgende lag:
STM32Cube HAL lag: HAL-driverlaget giver et simpelt sæt generiske, multi-instans API'er (applikationsprogrammeringsgrænseflader) til at interagere med de øverste lag (applikation, biblioteker og stakke). Disse generiske API'er og udvidelses-API'er er direkte bygget på en fælles arkitektur og gør det muligt for overliggende lag som middleware at implementere deres funktioner uden at være afhængige af specifikke hardwareoplysninger om mikrocontrollerenhed (MCU). Denne struktur forbedrer genbrugbarheden af ​​bibliotekskoden og garanterer nem portabilitet på tværs af andre enheder.

  • Board Support Package (BSP) lag: giver understøttelse af periferiudstyret på STM32 Nucleo-kortet (bortset fra MCU'en). Dette sæt API'er giver en programmeringsgrænseflade til visse kortspecifikke perifere enheder som LED'en, brugerknappen osv. Denne grænseflade hjælper dig også med at identificere den specifikke kortversion.
  • Middleware NRF-abstraktionslag (RFAL): RFAL giver flere funktioner til RF/NFC-kommunikation. Den grupperer de forskellige RF IC'er (eksisterende ST25R3911B produktfamilie og fremtidige ST25R391x enheder) under en fælles og brugervenlig grænseflade.

Protokollerne leveret af RFAL er:

  • ISO-DEP (ISO14443-4 Data Link Layer, T=CL)
  • NFC-DEP (ISO18092 Data Exchange Protocol)
  • NFC-A \ ISO14443A (T1T, T2T, T4TA)
  • NFC-B \ ISO14443B (T4TB)
  • NFC-F \ FeliCa (T3T)
  • NFC-V \ ISO15693 (T5T)
  • P2P \ ISO18092 (NFCIP1, passiv-aktiv P2P)
  • ST25TB (ISO14443-2 Type B med proprietær protokol) Internt,

RFAL er opdelt i tre underlag:

  • RF HL – RF højere lag
  • RF HAL- RF hardwareabstraktionslag
  • RF AL – RF-abstraktionslag

Figur 1. RFAL-blokdiagram

RF HL RFAL NFC
RFAL protokol ISO DEP NFC DEP
teknologier NFC-A NFC-B NFC•F NFC-V TIT T2T TAT ST25TB
RF HAL RF
RF-konfigurationer
ST25R3911 ST25R3916 ST25R95

Modulerne i RF HAL er chip-afhængige, de implementerer RF IC-driveren, konfigurationstabeller og specifikke instruktioner til HW'en til at udføre de fysiske RF-funktioner. Grænsefladen for den, der ringer, er en delt RF-header file som giver den samme grænseflade til de øverste lag (for alle chips). RFAL kan opdeles i yderligere to underlag:

  • Teknologier: teknologimoduler, der implementerer alle detaljer, rammer, timings osv
  •  Protokoller: protokolimplementering inklusive alle rammer, timings, fejlhåndtering osv.

Oven i disse bruger applikationslaget RFAL-funktioner som NFC Forum Activities (NFCC), EMVCo, DISCO/NUCLEO-demo osv. RFAL NFC-modulet giver en grænseflade til at udføre almindelige aktiviteter som poller-/lytterenheder. Adgang til de laveste funktioner af IC'erne gives af RF-modulet. Den, der ringer, kan gøre direkte brug af enhver af RF-teknologien eller protokollagene uden at kræve nogen specifikke hardwarekonfigurationsdata.
Figur 2. X-CUBE-NFC6 softwarearkitektur

ST UM2616 X-CUBE-NFC6 højtydende HF-læser - Fig

2.3 Mappestruktur

ST UM2616 X-CUBE-NFC6 højtydende HF-læser - Fig1

Følgende mapper er inkluderet i softwarepakken:

  • Dokumentation: denne mappe indeholder en kompileret HTML file genereret fra kildekoden, som beskriver softwarekomponenterne og API'erne.
  • Drivere: denne mappe indeholder HAL-driverne, de kortspecifikke drivere for hvert understøttet kort eller hardwareplatform, inklusive de indbyggede komponenter, og det CMSIS-leverandøruafhængige hardwareabstraktionslag til Cortex-M-processorserien.
  • Middlewares: denne mappe indeholder RFAL (RF-abstraktionslag). RFAL giver flere funktioner, der kræves for at udføre RF/NFC-kommunikation. RFAL grupperer de forskellige RF IC'er (ST25R3911/ST25R3916/ST25R3916B og fremtidige ST25R391x enheder) under en fælles og brugervenlig grænseflade.
  • Projekter: denne mappe indeholder to sample ansøgning examples:
    – Tag Detect-Card emulering
    – Læs og skriv NDEF-meddelelser

De leveres til NUCLEO-L476RG eller NUCLEO-L053R8 platformen til tre udviklingsmiljøer (IAR Embedded Workbench til ARM, Keil Microcontroller Development Kit (MDK-ARM) og STM32CubeIDE.
2.4 API'er
Detaljerede tekniske oplysninger om de tilgængelige API'er for brugeren kan findes i en kompileret CHM file placeret inde i "RFAL"-mappen i softwarepakken, hvor alle funktioner og parametre er fuldstændigt beskrevet. Detaljerede tekniske oplysninger om NDEF API'erne er tilgængelige i .chm file gemt i mappen "doc".
2.5 Sample ansøgning
A sampEn applikation, der bruger X-NUCLEO-NFC06A1/X-NUCLEO-NFC08A1 udvidelseskortet med NUCLEOL476RG eller NUCLEO-L053R8 udviklingskortet, findes i biblioteket "Projekter". Byggeklare projekter er tilgængelige for flere IDE'er. I denne applikation, NFC tags forskellige typer mobiltelefoner, der understøtter P2P, detekteres af ST25R3916/ST25R3916B højtydende HF-læser/NFC front-end IC (se CHM-dokumentationen for yderligere detaljer file genereret fra kildekoden). Efter systeminitialisering og urkonfiguration blinker LED101, LED102, LED103, LED104, LED105 og LED106 i 3 gange. Så lyser LED106 for at angive, at læsefeltet er blevet aktiveret. Når en tag registreres i nærheden, tændes en LED som angivet nedenfor.
Tabel 2. LED tændt tag opdagelse

NFC tag type LED tændt tag opdagelse
NFC TYPE F LED101/Type F
NFC TYPE B LED102/Type B
NFC TYPE A LED103/Type A
NFC TYPE V LED104/Type V
NFC TYPE AP2P LED105/Type AP2P

Hvis en læser nærmer sig X-NUCLEO-NFC06A1/X-NUCLEO-NFC08A1 udvidelseskortet, går softwaren i kortemuleringstilstand, og afhængigt af kommandotypen ent tænder den NFC TYPE A og/eller NFC TYPE FLED.
Som standard skriver X-NUCLEO-NFC06A1/X-NUCLEO-NFC08A1 ingen data til tag, men denne mulighed kan aktiveres af en præprocessor defineret i file demo.h.
Kortemulering og pollertilstand kan også aktiveres/deaktiveres med samme procedure.
Den virtuelle ST-kommunikationsport-grænseflade er også inkluderet i pakken. Når kortet er tændt, initialiseres kortet og opregnes som en STLink virtuel COM-port.
Figur 4. Opregning af virtuelle COM-porte

ST UM2616 X-CUBE-NFC6 højtydende HF-læser - Fig2

Efter at have kontrolleret det virtuelle COM-portnummer, skal du åbne en Windows-terminal (HyperTerminal eller lignende) med konfigurationen vist nedenfor (aktiver mulighed: Implicit CR på LF, hvis tilgængelig).

ST UM2616 X-CUBE-NFC6 højtydende HF-læser - Fig3

Terminalvinduet returnerer flere meddelelser svarende til dem, der er vist nedenfor, for at bekræfte den vellykkede forbindelse.
Figur 6. X-NUCLEO-NFC06A1 udvidelseskort vellykket initialisering

ST UM2616 X-CUBE-NFC6 højtydende HF-læser - Fig4

Den anden sampapplikationen er tilgængelig ved at vælge det andet projektmål kaldet "STM32L476RGNucleo_PollingTagDetectNdef". Denne applikation administrerer NDEF-meddelelser på tags.

  • Når firmwaren starter, vises en menu i konsolloggen.
  • Brugerknappen giver dig mulighed for at bladre gennem flere muligheder, herunder at læse NDEF-indhold, skrive en tekstpost,
  • skrivning af en URI-post og formatering tag for NDEF-indhold.
  • Når du har valgt demoen, skal du trykke på a tag for at se demoen køre.

Figur 7. X-NUCLEO-NFC06A1 udvidelseskort brugerknapmuligheder

ST UM2616 X-CUBE-NFC6 højtydende HF-læser - Fig5

Vejledning til opsætning af systemet

3.1 Hardwarebeskrivelse
3.1.1STM32 Nucleo
STM32 Nucleo-udviklingskort giver en overkommelig og fleksibel måde for brugere at teste løsninger og bygge prototyper med enhver STM32-mikrocontrollerlinje. Arduino-tilslutningsstøtten og ST morpho-stik gør det nemt at udvide funktionaliteten af ​​STM32 Nucleo åbne udviklingsplatform med en bred vifte af specialiserede udvidelseskort at vælge imellem. STM32 Nucleo-kortet kræver ikke separate prober, da det integrerer ST-LINK/V2-1 debugger/programmør. STM32 Nucleo-kortet leveres med det omfattende STM32-software HAL-bibliotek sammen med diverse pakket software f.eks.amples til forskellige IDE'er (IAR EWARM, Keil MDK-ARM, STM32CubeIDE, mbed og GCC/ LLVM). Alle STM32 Nucleo-brugere har gratis adgang til mbed-onlineressourcerne (kompilator, C/C++ SDK og udviklerfællesskab) på www.mbed.org for nemt at bygge komplette applikationer.
Figur 8. STM32 Nucleo-kort

ST UM2616 X-CUBE-NFC6 højtydende HF-læser - Fig6

X-NUCLEO-NFC06A1 udvidelseskort X-NUCLEO-NFC06A1
NFC-kortlæserens udvidelseskort er baseret på ST25R3916-enheden. Udvidelseskortet er konfigureret til at understøtte ISO14443A/B, ISO15693, FeliCa™ og AP2P kommunikation. ST25R3916 administrerer rammekodning og afkodning i læsetilstand til standardapplikationer, såsom NFC, nærhed og nærhed HF RFID-standarder. Den understøtter ISO/IEC 14443 Type A og B, ISO/IEC 15693 (kun enkelt underbærer) og ISO/IEC 18092 kommunikationsprotokoller samt registrering, læsning og skrivning af NFC Forum Type 1, 2, 3, 4 og 5 tags. Den indbyggede lav-effekt kapacitive sensor udfører ultra-lav effekt wake-up uden at tænde for læsefeltet og traditionel induktiv wake-up for at vælge amplitude- eller fasemåling. Den automatiske antennetuning (AAT) teknologi muliggør drift tæt på metaldele og/eller i skiftende miljøer.
Figur 9. X-NUCLEO-NFC06A1 udvidelseskort

ST UM2616 X-CUBE-NFC6 højtydende HF-læser - Fig7

3.1.3X-NUCLEO-NFC08A1 udvidelseskort
X-NUCLEO-NFC08A1 NFC-kortlæserudvidelseskortet er baseret på ST25R3916B-enheden. Udvidelseskortet er konfigureret til at understøtte ISO14443A/B, ISO15693, FeliCa™ og AP2P-kommunikation. ST25R3916B administrerer rammekodning og afkodning i læsetilstand til standardapplikationer, såsom NFC, nærheds- og HF RFID-standarder. Den understøtter ISO/IEC 14443 type A og B, ISO/IEC 15693 (kun enkelt underbærer) og ISO/IEC 18092 kommunikationsprotokoller samt registrering, læsning og skrivning af NFC-forum type 1, 2, 3, 4 og 5 tags. Den indbyggede lav-effekt kapacitive sensor udfører ultra-lav effekt wake-up uden at tænde for læsefeltet og traditionel induktiv wake-up for at vælge amplitude- eller fasemåling. Den automatiske antennetuning (AAT) teknologi muliggør drift tæt på metaldele og/eller i skiftende miljøer.
Figur 10. X-NUCLEO-NFC08A1 udvidelseskort

ST UM2616 X-CUBE-NFC6 højtydende HF-læser - Fig8

3.2 Softwarebeskrivelse
Softwarebeskrivelse Følgende softwarekomponenter er nødvendige for at opsætte et passende udviklingsmiljø til at skabe applikationer til STM32 Nucleo udstyret med NFC-udvidelseskortet:

  • X-CUBE-NFC6: en udvidelse til STM32Cube dedikeret til udvikling af NFC-applikationer. X-CUBENFC6-firmwaren og relateret dokumentation er tilgængelig på www.st.com.
  • Udviklingsværktøjskæde og compiler. STM32Cube-udvidelsessoftwaren understøtter de tre følgende miljøer:
    – IAR Embedded Workbench til ARM ® (EWARM) værktøjskæde + ST-LINK
    – Keil Microcontroller Development Kit (MDK-ARM) værktøjskæde + ST-LINK
    – STM32CubeIDE + ST-LINK

3.3 Hardware setup
Følgende hardwarekomponenter er påkrævet:

  • Én STM32 Nucleo-udviklingsplatform (foreslået ordrekode: NUCLEO-L476RG eller NUCLEOL053R8)
  • Ét ST25R3916/ST25R3916B højtydende HF-læser/NFC frontend IC-udvidelseskort (bestillingskode: X-NUCLEO-NFC06A1/X-NUCLEO-NFC08A1)
  • Et USB type A til Mini-B USB-kabel til at forbinde STM32 Nucleo til pc'en

3.4 Softwareopsætning
3.4.1 Udviklingsværktøjskæder og compilere
Vælg et af de integrerede udviklingsmiljøer (IDE), der understøttes af STM32Cube-udvidelsessoftwaren, og læs systemkravene og opsætningsoplysningerne fra IDE-udbyderen.
3.5 Systemopsætning
3.5.1 STM32 Nucleo og X-NUCLEO-NFC06A1 udvidelseskort opsætning
STM32 Nucleo-kortet integrerer ST-LINK/V2-1 debugger/programmør. Du kan downloade ST-LINK/V2-1 USB-driveren på STSW-LINK009. X-NUCLEO-NFC06A1-udvidelseskortet sættes nemt på STM32 Nucleo-udviklingskortet gennem Arduino™ UNO R3-udvidelsesstikket. Den forbinder med STM32-mikrocontrolleren på STM32 Nucleo-kortet gennem SPI-transportlaget. I²C-kommunikation er også mulig, men det kræver følgende hardwareændringer:

  • lodde ST2 og ST4 jumpere
  • lodde R116 og R117 pull-up modstande
  • fjern SPI-loddebroen
  • sæt I²C-loddebroen. Du skal bruge præprocessorkompileringsflaget RFAL_USE_I2C og omdøbe USE_HAL_SPI_REGISTER_CALLBACKS med USE_HAL_I2C_REGISTER_CALLBACKS, hvis det er nødvendigt, for at aktivere I²C-driverkompileringen.

Figur 11. X-NUCLEO-NFC06A1 udvidelseskort plus NUCLEO-L476RG udviklingskort

ST UM2616 X-CUBE-NFC6 højtydende HF-læser - Fig9

3.5.2STM32 Nucleo og X-NUCLEO-NFC08A1 udvidelseskortopsætning
STM32 Nucleo-kortet integrerer ST-LINK/V2-1 debugger/programmør. Du kan downloade ST-LINK/V2-1 USB-driveren på STSW-LINK009. X-NUCLEO-NFC08A1-udvidelseskortet sættes nemt på STM32 Nucleo-udviklingskortet gennem Arduino™ UNO R3-udvidelsesstikket. Den forbinder med STM32-mikrocontrolleren på STM32 Nucleo-kortet gennem SPI-transportlaget. I²C-kommunikation er også mulig.

Revisionshistorie

Tabel 3. Dokumentrevisionshistorik

Dato Version Ændringer
18-jul-19 1 Første udgivelse.
19-okt-22 2 Opdateret introduktion, afsnit 2.1 Overview, Afsnit 2.2 Arkitektur, Afsnit 2.3 Mappestruktur, Afsnit 2.5 Sampapplikationen, Afsnit 3.2 Softwarebeskrivelse, Afsnit 3.3 Hardwareopsætning og Afsnit 3.5.1 STM32 Nucleo og X-NUCLEO-NFC06A1 udvidelseskortopsætning.
Tilføjet afsnit 3.1.3 X-NUCLEO-NFC08A1 udvidelseskort og afsnit 3.5.2 STM32 Nucleo og NUCLEO-NFC08A1 udvidelseskort opsætning.

VIGTIG MEDDELELSE – LÆS OMHYGGELIGT

STMicroelectronics NV og dets datterselskaber ("ST") forbeholder sig retten til at foretage ændringer, rettelser, forbedringer, modifikationer og forbedringer af ST-produkter og/eller dette dokument til enhver tid uden varsel. Købere bør indhente de seneste relevante oplysninger om ST-produkter, før de afgiver ordre. ST-produkter sælges i henhold til STs salgs- og salgsbetingelser på tidspunktet for ordrebekræftelse.
Købere er alene ansvarlige for valg, udvælgelse og brug af ST-produkter, og ST påtager sig intet ansvar for ansøgningsassistance eller design af købers produkter.
Ingen licens, hverken udtrykkelig eller underforstået, til nogen intellektuel ejendomsret er givet af ST heri. Videresalg af ST-produkter med andre bestemmelser end de oplysninger, der er angivet heri, annullerer enhver garanti givet af ST for et sådant produkt. ST og ST-logoet er varemærker tilhørende ST.
For yderligere information om ST-varemærker, se www.st.com/varemærker. Alle andre produkt- eller tjenestenavne tilhører deres respektive ejere. Oplysningerne i dette dokument erstatter og erstatter oplysninger, der tidligere er leveret i tidligere versioner af dette dokument.

ST logo© 2022 STMicroelectronics 
Alle rettigheder forbeholdes

Dokumenter/ressourcer

ST UM2616 X-CUBE-NFC6 højtydende HF-læser [pdfBrugermanual
UM2616 X-CUBE-NFC6 High Performance HF Reader, UM2616, X-CUBE-NFC6 High Performance HF Reader, X-CUBE-NFC6, High Performance HF Reader, High HF Reader, HF Reader, High Performance Reader, Reader, NFC Initiator IC Softwareudvidelse til STM32Cube

Referencer

Efterlad en kommentar

Din e-mailadresse vil ikke blive offentliggjort. Påkrævede felter er markeret *