UM3526
Upute za upotrebu
Početak rada s X-CUBE-NFC12 visokoučinkovitim NFC čitačem/inicijatorom IC-a za STM32Cube
Uvod
The X-CUBE-NFC12 software expansion for STM32Cube provides complete middleware for STM32 to control payment, consumer and industrial applications using the ST25R300 high performance NFC front-end IC, supporting NFC initiator, target, reader, and card emulation modes.
The expansion is built on top of STM32Cube software technology to ease portability across different STM32 microcontrollers.
Softver dolazi sa sampimplementacije upravljačkih programa koji se izvode na ploči za proširenje X-NUCLEO-NFC12A1, priključenoj na razvojnu ploču NUCLEO-G0B1RE ili NUCLEO-L476RG ili NUCLEO-C071RB.
Povezani linkovi
Posjetite ekosustav STM32Cube web stranica na www.st.com za daljnje informacije
Akronimi i kratice
Tablica 1. Popis akronima
| Akronim | Opis |
| NFC | Komunikacija bliskog polja |
| RFAL | RF apstraktni sloj |
| P2P | Peer-to-peer |
| MCU | Jedinica mikrokontrolera |
| BSP | Paket podrške za ploču |
| HAL | Sloj hardverske apstrakcije |
| LED | Dioda koja emitira svjetlo |
| SPI | Serijsko periferno sučelje |
| CMSIS | Arm® Cortex® microcontroller software interface standard |
X-CUBE-NFC12 softversko proširenje za STM32Cube
2.1 Krajview
Softverski paket X-CUBE-NFC12 proširuje funkcionalnost STM32Cube-a. Ključne značajke paketa su:
- Complete middleware to build applications using the ST25R300 high performance NFC reader, initiator, target, and card emulation front-end IC.
- Sample aplikacija za otkrivanje NFC-a tags različitih vrsta.
- Sample implementations available for the X-NUCLEO-NFC12A1 expansion board plugged onto a NUCLEO-G0B1RE or NUCLEO-L476RG or NUCLEO-C071RB development board.
- Jednostavna prenosivost kroz različite MCU obitelji, zahvaljujući STM32Cube.
- Complete RF/NFC abstraction (RFAL) for all major technologies, including complete ISO-DEP and NFC- DEP layers.
- Besplatni licencni uvjeti jednostavni za korištenje.
Ovaj softver sadrži visokoučinkovite NFC čitače/inicijatore za prednji dio integriranog kola za ST25R300 uređaj, koji radi na STM32. Izgrađen je na STM32Cube softverskoj tehnologiji kako bi se olakšala prenosivost između različitih STM32 mikrokontrolera.
Ovaj paket firmvera uključuje upravljačke programe komponentnih uređaja, paket podrške za matičnu ploču i kaoampaplikacija koja demonstrira korištenje ploče za proširenje X-NUCLEO-NFC12A1 s STM32 Nucleo pločama.
A sampAplikacija konfigurira ST25R300 u petlji ispitivanja za detekciju aktivnog i pasivnog uređaja. Kada je pasivni tag ili se detektira aktivni uređaj, polje čitača signalizira detektiranu tehnologiju paljenjem odgovarajuće LED diode. Također je moguće postaviti ST25R300 u induktivni način buđenja pritiskom na korisnički gumb. Tijekom ove petlje ispitivanja, sampAplikacija također postavlja ST25R300 u način emulacije kartice kako bi otkrila prisutnost čitača.
Demo bilježi sve aktivnosti na host sustavu putem ST-LINK virtualnog COM porta.
Podržane RFID tehnologije u ovoj demonstraciji su:
- ISO14443A/NFCA.
- ISO14443B/NFCB.
- Felica/NFCF.
- ISO15693/NFCV.
- Emulacija kartice tipa A i F.
2.2 Arhitektura
Ovo potpuno kompatibilno softversko proširenje za STM32Cube omogućuje vam razvoj aplikacija pomoću visokoučinkovitog NFC čitača/inicijatora ST25R300. Temelji se na sloju apstrakcije hardvera STM32CubeHAL za mikrokontroler STM32 i proširuje STM32Cube paketom podrške za ploču (BSP) za ploču za proširenje X-NUCLEONFC12A1.
Aplikacijski softver može pristupiti i koristiti ploču za proširenje X-NUCLEO-NFC12A1 putem sljedećih slojeva:
- STM32Cube HAL layer: the HAL driver layer provides a simple set of generic, multi-instance application programming interfaces (APIs) to interact with the upper layers (application, libraries, and stacks). These generic and extension APIs are directly built on a common architecture and allow overlying layers like middleware to implement their functions without depending on specific microcontroller unit (MCU) hardware information. This structure improves the library code reusability and guarantees easy portability across other devices.
- Board support package (BSP) layer: the BSP provides support for the peripherals on the STM32 Nucleo board, apart from the MCU. This set of APIs provides a programming interface for certain board-specific peripherals like the LED, the user button etc. This interface also helps you identify the specific board version.
- Middleware NRF abstraction layer (RFAL): the RFAL provides several functions for RF/NFC communication. It possesses RF IC (existing ST25R300 device) under a common and easy to use interface.
Protokoli koje pruža RFAL su:
- ISO-DEP (ISO14443-4 sloj podatkovne veze, T = CL).
- NFC-DEP (ISO18092 protokol za razmjenu podataka).
- NFC-A\ISO14443A (T1T, T2T, T4TA).
- NFC-B\ISO14443B (T4TB).
- NFC-F\FeliCa (T3T).
- NFC-V\ISO15693 (T5T).
- P2P\ISO18092 (NFCIP1, Passive-Active P2P).
- ST25TB (ISO14443-2 tip B s vlasničkim protokolom).
Interno, RFAL je podijeljen u tri podsloja:
- RF viši sloj (RF HL).
- Sloj apstrakcije RF hardvera (RF HAL).
- Sloj RF apstrakcije (RF AL).

Moduli u RF HAL-u ovise o čipu. Oni implementiraju RF IC upravljački program, konfiguracijske tablice i specifične upute za hardver za izvršavanje fizičkih RF funkcija.
Sučelje za pozivatelja je zajednički RF zaglavlje file, koji pruža isto sučelje za gornje slojeve (za sve čipove).
RFAL se može podijeliti na dva daljnja podsloja:
- Tehnologije: tehnološki moduli koji implementiraju sve specifičnosti, kadriranje, tajming itd.
- Protokoli: implementacija protokola uključujući sve okvire, vremena, rukovanje pogreškama itd.
Uz to, aplikacijski sloj koristi RFAL funkcije poput NFC Forum Activities (NFCC), EMVCo®, DISCO/NUCLEO demo itd.
RFAL NFC modul pruža sučelje za obavljanje uobičajenih aktivnosti kao uređaj za ispitivanje/slušanje.
Pristup najnižim funkcijama integriranih krugova omogućuje RF modul. Pozivatelj može izravno koristiti bilo koji od RF tehnoloških ili protokolnih slojeva bez potrebe za specifičnim podacima o konfiguraciji hardvera.

2.3 Struktura mape

Sljedeće mape uključene su u softverski paket:
- Dokumentacija: sadrži kompilirani HTML file generiran iz izvornog koda, koji detaljno opisuje komponente softvera i API-je.
- Drivers: it contains HAL drivers, board-specific drivers for each supported board or hardware platform, including the on-board components, and the CMSIS vendor-independent hardware abstraction layer for the Cortex®-M processor series.
- Middlewares: it contains RF abstraction layer (RFAL). RFAL provides several functions required to perform RF/NFC communication.
RFAL posjeduje RF IC (ST25R300) pod zajedničkim i jednostavnim sučeljem. - Projekti: sadrži jedan sample aplikacija prampnaime, NFC12A1_PollingTagOtkriti.
Namijenjeni su za platformu NUCLEO-L476RG, NUCLEO-G0B1RE ili NUCLEO-C071RB za tri razvojna okruženja: IAR Embedded Workbench® za Arm, Keil® Microcontroller Development Kit (MDKARM) i STM32CubeIDE.
2.4 API-ji
Detaljne tehničke informacije o API-jima dostupnim korisniku mogu se pronaći u sastavljenom CHM-u file nalazi se unutar mape „RFAL“ softverskog paketa gdje su sve funkcije i parametri u potpunosti opisani.
Detaljne tehničke informacije o NDEF API-jima dostupne su u .chm datoteci. file pohranjen u mapi “doc”.
2.5 Sample aplikacija
A sampAplikacija koja koristi ploču za proširenje X-NUCLEO-NFC12A1 s razvojnom pločom NUCLEO-L476RG, NUCLEOG0B1RE ili NUCLEO-C071RB nalazi se u direktoriju „Projekti“. Projekti spremni za izradu dostupni su za više IDE-ova.
U ovoj aplikaciji, NFC tags različitih tipova detektira visokoučinkoviti NFC čitač/inicijator ST25R300 prednji IC (za više detalja pogledajte CHM dokumentaciju) file generirano iz izvornog koda).
After system initialization and clock configuration, LED1, LED2, LED3, LED4, LED5, and LED6 blink three times.
Then LED6 glows to indicate the reader field has been activated.
Kada je a tag se otkrije u blizini, LED se pali kao što je dolje navedeno.
Tablica 2. LED dioda svijetli tag otkrivanje
| NFC tag tip | LED svijetli tag otkrivanje |
| NFC TIP A | LED2/Tip A |
| NFC VRSTA B | LED3/Tip B |
| NFC VRSTA V | LED4/Tip V |
| NFC VRSTA F | LED5/Tip F |
If a reader approaches the X-NUCLEO-NFC12A1 expansion board, the software enters into card emulation mode and, depending on the command type sent, it switches the respective NFC TYPE LED on.
By default, the X-NUCLEO-NFC12A1 does not write any data to the tag, ali tu mogućnost može omogućiti predprocesor definiran u file demo.h.
Istim se postupkom također može omogućiti/onemogućiti emulacija kartice i način rada anketara.
The ST virtual communication port interface is also included in the package. Once the board is powered on, the board is initialized and enumerated as ST-LST-LINK virtual COM port.

Nakon provjere broja virtualnog COM porta, otvorite Windows terminal (HyperTerminal ili sličan) s konfiguracijom prikazanom u nastavku (omogućite opciju: Implicitni CR na LF, ako je dostupan).

The terminal window returns several messages similar to those shown below to confirm a successful connection.

Vodič za postavljanje sustava
3.1 Opis hardvera
3.1.1 STM32 Nucleo
STM32 Nucleo razvojne ploče pružaju pristupačan i fleksibilan način za korisnike da testiraju rješenja i izgrade prototipe s bilo kojom linijom STM32 mikrokontrolera.
Arduino podrška za povezivanje i ST morpho konektori olakšavaju proširenje funkcionalnosti STM32 Nucleo otvorene razvojne platforme sa širokim rasponom specijaliziranih ploča za proširenje koje možete izabrati.
The STM32 Nucleo board does not require separate probes as it integrates the ST-LINK/V2-1 debugger/ programmer.
STM32 Nucleo ploča dolazi sa opsežnom bibliotekom STM32 softvera HAL zajedno s raznim pakiranim softverom npr.ampdatoteke za različite IDE (IAR EWARM, Keil MDK-ARM, STM32CubeIDE, mbed i GCC/ LLVM).
Svi korisnici STM32 Nucleo imaju besplatan pristup mbed online resursima (kompilator, C/C++ SDK i zajednica razvojnih programera) na www.mbed.org za jednostavnu izradu kompletnih aplikacija.

3.1.2 X-NUCLEO-NFC12A1 expansion board
The X-NUCLEO-NFC12A1 NFC card reader expansion board is based on the ST25R300 device.
The expansion board is configured to support ISO14443A/B, ISO15693, FeliCa™ communication.
ST25R300 upravlja kodiranjem i dekodiranjem okvira u načinu rada čitača za standardne aplikacije, kao što su NFC, standardi za blizinu i blizinu HF RFID. Podržava komunikacijske protokole ISO/IEC 14443 tipa A i B, ISO/IEC 15693 (samo jedan podnosilac) i ISO/IEC 18092, kao i detekciju, čitanje i pisanje NFC Forum tipova 1, 2, 3, 4 i 5. tags.
Također podržava sve uobičajene protokole kao što su Kovio, CTS i B'.
ST25R300 ima prijemnik za suzbijanje šuma (NSR), što omogućuje prijem u bučnom okruženju.

3.2 Opis softvera
Za postavljanje odgovarajućeg razvojnog okruženja za izradu aplikacija za STM32 Nucleo opremljen NFC pločom za proširenje potrebne su sljedeće softverske komponente:
- X-CUBE-NFC12: to je softver za proširenje STM32Cube-a, namijenjen razvoju NFC aplikacija.
Firmver za X-CUBE-NFC12 i povezana dokumentacija dostupni su na www.st.com. - Development tool chain and Compiler: the STM32Cube expansion software supports the three following environments:
– IAR Embedded Workbench for ARM® (EWARM) toolchain + ST-LINK.
– Keil® Microcontroller Development Kit (MDK-ARM) toolchain + ST-LINK.
– STM32CubeIDE + ST-LINK.
3.3 Postavljanje hardvera
Potrebne su sljedeće hardverske komponente:
- One STM32 Nucleo development platform (suggested order code: NUCLEO-L476RG, NUCLEO-G0B1RE, or NUCLEO-C071RB).
- One ST25R300 high performance NFC reader/initiator IC expansion board (order code: X-NUCLEO- NFC12A1).
- Jedan USB kabel tipa A na Mini-B za spajanje STM32 Nucleo uređaja na računalo.
3.4 Postavljanje softvera
3.4.1 Lanci razvojnih alata i prevoditelji
Odaberite jedno od integriranih razvojnih okruženja (IDE) koje podržava softver za proširenje STM32Cube i pročitajte sistemske zahtjeve i informacije o postavljanju koje pruža dobavljač IDE.
3.5 Postavljanje sustava
3.5.1 Postavljanje ploče za proširenje STM32 Nucleo i X-NUCLEO-NFC12A1
The STM32 Nucleo board integrates the ST-LINK/V2-1 debugger/programmer. You can download the ST-LINK/ V2-1 USB driver at STSW-LINK009.
The X-NUCLEO-NFC12A1 expansion board is easily plugged onto the STM32 Nucleo development board through the Arduino™ UNO R3 extension connector.
It interfaces with the STM32 microcontroller on STM32 Nucleo board through the SPI transport layer.
The default hardware configuration is set up for SPI communication.

Povijest revizija
Tablica 3. Povijest revizija dokumenta
| Datum | Revizija | Promjene |
| 11. lipnja 2025 | 1 | Početno izdanje. |
VAŽNA OBAVIJEST – PAŽLJIVO PROČITAJTE
STMicroelectronics NV i njegove podružnice ("ST") zadržavaju pravo izmjene, ispravke, poboljšanja, preinake i poboljšanja ST proizvoda i/ili ovog dokumenta u bilo koje vrijeme bez prethodne najave. Kupci bi trebali dobiti najnovije relevantne informacije o ST proizvodima prije narudžbe. Proizvodi ST-a prodaju se u skladu s odredbama i uvjetima prodaje ST-a koji su na snazi u trenutku potvrde narudžbe.
Kupci su isključivo odgovorni za izbor, izbor i korištenje ST proizvoda i ST ne preuzima nikakvu odgovornost za pomoć pri primjeni ili dizajn proizvoda kupaca.
ST ovdje ne daje nikakvu licencu, izričitu ili implicitnu, za bilo koje pravo intelektualnog vlasništva.
Preprodaja ST proizvoda s odredbama različitim od ovdje navedenih informacija poništit će svako jamstvo koje je ST dao za takav proizvod.
ST i ST logotip su zaštitni znakovi ST. Za dodatne informacije o ST zaštitnim znakovima, pogledajte www.st.com/trademarks. Svi ostali nazivi proizvoda ili usluga vlasništvo su njihovih vlasnika.
Informacije u ovom dokumentu nadziru i zamjenjuju informacije prethodno navedene u bilo kojoj od prethodnih verzija ovog dokumenta.
© 2025 STMicroelectronics – Sva prava pridržana
UM3526 – Rev. 1
Dokumenti / Resursi
![]() |
ST UM3526 Proširenje softvera IC-a za inicijalizaciju NFC čitača visokih performansi [pdf] Korisnički priručnik NUCLEO-G0B1RE, NUCLEO-L476RG, NUCLEO-C071RB, UM3526 Proširenje softvera IC-a inicijatora NFC čitača visokih performansi, UM3526, Proširenje softvera IC-a inicijatora NFC čitača visokih performansi, Proširenje softvera IC-a inicijatora čitača, Proširenje softvera IC-a, Proširenje softvera |
