UM11942
PN5190 ynstruksje laach
NFC Frontend Controller
Brûkershânlieding
PN5190 NFC Frontend Controller
Dokumint ynformaasje
Ynformaasje | Ynhâld |
Keywords | PN5190, NFC, NFC frontend, controller, ynstruksje laach |
Abstrakt | Dit dokumint beskriuwt de ynstruksje laach kommando's en antwurden te wurkjen fan in host controller, foar in evaluearje de wurking fan NXP PN5190 NFC frontend controller. PN5190 is in folgjende generaasje NFC frontend controller. De omfang fan dit dokumint is te beskriuwen de ynterface kommando's te wurkjen mei PN5190 NFC frontend controller. Foar mear ynformaasje oer de wurking fan PN5190 NFC frontend controller, ferwize nei it gegevens sheet en syn oanfoljende ynformaasje. |
Revision skiednis
Ds | Datum | Beskriuwing |
3.7 | 20230525 | • Dokumint type en titel feroare fan produkt data sheet addendum oan brûker hânlieding • Editorial cleanup • Updated redaksje betingsten foar SPI sinjalen • Tafoege kommando GET_CRC_USER_AREA yn tabel 8 yn seksje 4.5.2.3 • Ferskate differinsjearre details bywurke foar PN5190B1 en PN5190B2 yn seksje 3.4.1 • Updated antwurd fan Seksje 3.4.7 |
3.6 | 20230111 | Ferbettere kontrôle yntegriteit antwurd beskriuwing yn paragraaf 3.4.7 |
3.5 | 20221104 | Seksje 4.5.4.6.3 "Event": tafoege |
3.4 | 20220701 | • Kommando tafoege CONFIGURE_MULTIPLE_TESTBUS_DIGITAL yn tabel 8 yn seksje 4.5.9.3 • Updated Seksje 4.5.9.2.2 |
3.3 | 20220329 | Hardwarebeskriuwing ferbettere yn seksje 4.5.12.2.1 "Kommando" en seksje 4.5.12.2.2 "Antwurd" |
3.2 | 20210910 | Firmware ferzjenûmers bywurke fan 2.1 nei 2.01 en 2.3 nei 2.03 |
3.1 | 20210527 | RETRIEVE_RF_FELICA_EMD_DATA kommandobeskriuwing tafoege |
3 | 20210118 | Earste offisjele útbrocht ferzje |
Ynlieding
1.1 Ynlieding
Dit dokumint beskriuwt de PN5190 Host Interface en de API's. De fysike hostynterface brûkt yn 'e dokumintaasje is SPI. SPI fysike karakteristyk wurdt net beskôge yn it dokumint.
Frame skieding en stream kontrôle binne ûnderdiel fan dit dokumint.
1.1.1 Omfang
It dokumint beskriuwt de logyske laach, ynstruksjekoade, API's dy't relevant binne foar de klant.
Host kommunikaasje oerview
PN5190 hat twa wichtichste modus fan wurking om te kommunisearjen mei de host controller.
- HDLL-basearre kommunikaasje wurdt brûkt as it apparaat trigger wurdt om yn te gean:
in. Fersifere befeilige downloadmodus om har firmware te aktualisearjen - TLV kommando-antwurd-basearre kommunikaasje (jûn as in eksample).
2.1 HDLL modus
HDLL-modus wurdt brûkt foar pakketútwikselingsformaat om te wurkjen mei ûndersteande IC-bestjoeringsmodi:
- Feilige firmware-downloadmodus (SFWU), sjoch paragraaf 3
2.1.1 Beskriuwing fan HDLL
HDLL is de linklaach ûntwikkele troch NXP om in betroubere FW-download te garandearjen.
In HDLL-berjocht is makke fan in koptekst fan 2 byte, folge troch in frame, besteande út de opcode en de Payload fan it kommando. Elk berjocht einiget mei in 16-bit CRC, lykas beskreaun op 'e foto hjirûnder:De HDLL-header befettet:
- In stikje. Wat oanjout as dit berjocht de ienige of lêste brok fan in berjocht is (chunk = 0). Of as, op syn minst, ien oare brok folget (chunk = 1).
- De lingte fan de Payload kodearre op 10 bits. Dat, de HDLL Frame Payload kin oant 1023 bytes gean.
De byte folchoarder is definiearre as big-endian, dat betsjut earst Ms Byte.
De CRC16 foldocht oan X.25 (CRC-CCITT, ISO/IEC13239) standert mei polynoom x^16 + x^12 + x^5 +1 en pre-loadwearde 0xFFFF.
It wurdt berekkene oer it hiele HDLL-frame, dat is Header + Frame.
Sample C-koade ymplemintaasje:
statyske uint16_t phHal_Host_CalcCrc16(uint8_t* p, uint32_t dwLength)
{
uint32_t i ;
uint16_t crc_new;
uint16_t crc = 0xffffU;
foar (I = 0; i < dwLength; i++)
{
crc_new = (uint8_t)(crc >> 8) | (crc << 8 );
crc_new ^= p[i];
crc_new ^= (uint8_t)(crc_new & 0xff) >> 4;
crc_new ^= crc_new << 12;
crc_new ^= (crc_new & 0xff) << 5;
crc = crc_nij;
}
werom crc;
}
2.1.2 Ferfier mapping oer de SPI
Foar elke NTS-bewearing is de earste byte altyd in HEADER (byte foar flow-yndikaasje), it kin of 0x7F / 0xFF wêze mei respekt foar skriuw-/lêsoperaasje.
2.1.2.1 Skriuwsekwinsje fan 'e host (rjochting DH => PN5190)2.1.2.2 Lêssequence fan 'e host (rjochting PN5190 => DH)
2.1.3 HDLL protokol
HDLL is in kommando-antwurdprotokol. Alle hjirboppe neamde operaasjes wurde trigger troch in spesifyk kommando en falidearre op basis fan it antwurd.
Kommando's en antwurden folgje HDLL-berjochtsyntaksis, it kommando wurdt stjoerd troch de apparaathost, it antwurd troch de PN5190. De opcode jout it kommando- en antwurdtype oan.
HDLL-basearre kommunikaasje, allinich brûkt as de PN5190 wurdt triggere om de "Feilige firmware download" modus yn te gean.
2.2 TLV-modus
TLV stiet foar Tag Length Wearde.
2.2.1 Frame definysje
In SPI-frame begjint mei de fallende râne fan NTS en einiget mei de opkommende râne fan NTS. SPI is per fysike definysje folsleine duplex, mar PN5190 brûkt SPI yn in heal-duplex modus. SPI modus is beheind ta CPOL 0 en CPHA 0 mei in maksimum klok snelheid lykas oantsjutte yn [2]. Elk SPI-frame is gearstald út in koptekst fan 1 byte en n-bytes lichem.
2.2.2 Flow yndikaasjeDe HOST stjoert altyd as earste byte de flow-yndikaasjebyte, oft it gegevens fan de PN5190 skriuwe of lêze wol.
As der in lêsfersyk is en gjin gegevens binne beskikber, befettet it antwurd 0xFF.
De gegevens nei de flow oantsjutting byte is ien of meardere berjochten.
Foar elke NTS-bewearing is de earste byte altyd in HEADER (byte foar flow-yndikaasje), it kin of 0x7F / 0xFF wêze mei respekt foar skriuw-/lêsoperaasje.
2.2.3 Berjochttype
In host controller sil kommunisearje mei PN5190 mei help fan berjochten dy't wurde ferfierd binnen SPI frames.
D'r binne trije ferskillende berjochttypen:
- Befel
- Response
- Barren
It kommunikaasjediagram hjirboppe toant de tastiene rjochtingen foar de ferskate berjochttypen lykas hjirûnder:
- Kommando en antwurd.
- Kommando's wurde allinnich stjoerd fan host controller nei PN5190.
- Antwurden en eveneminten wurde allinnich stjoerd fan PN5190 nei host controller.
- Kommando-antwurden wurde syngronisearre mei de IRQ-pin.
- Host kin de kommando's allinich ferstjoere as IRQ leech is.
- Host kin it antwurd / evenemint allinich lêze as IRQ heech is.
2.2.3.1 Tastiene sekwinsjes en regelsTastiene sekwinsjes fan kommando, antwurd en eveneminten
- In kommando wurdt altyd erkend troch in antwurd, of in evenemint, of beide.
- Host controller is net tastien te stjoeren in oar kommando foardat hawwe net krigen in antwurd op de foarige kommando.
- Eveneminten kinne op elk momint asynchronysk stjoerd wurde (NET ynterleaved binnen in kommando-/antwurdpaar).
- EVENT-berjochten wurde nea kombinearre mei de RESPONSE-berjochten binnen ien frame.
Noat: De beskikberens fan in berjocht (of RESPONSE of EVENT) wurdt sinjalearre mei de IRQ dy't heech giet, fan leech. IRQ bliuwt heech oant al it antwurd of evenemint frame wurdt lêzen. Allinich neidat IRQ-sinjaal leech is, kin de host it folgjende kommando stjoere.
2.2.4 Berjocht opmaak
Elts berjocht wurdt kodearre yn in TLV struktuer mei n-bytes payload foar elk berjocht útsein foar SWITCH_MODE_NORMAL kommando.Elke TLV is gearstald út:
Type (T) => 1 byte
Bit[7] Berjochttype
0: COMMAND of RESPONSE berjocht
1: EVENT berjocht
Bit[6:0]: Ynstruksjekoade
Length (L) => 2 bytes (moat yn big-endian-formaat wêze)
Wearde (V) => N bytes fan wearde/gegevens fan de TLV (Kommando Parameters / Response gegevens) basearre op Length fjild (grutte-endian opmaak)
2.2.4.1 Split frame
COMMAND berjocht moat stjoerd wurde yn ien SPI frame.
RESPONSE- en EVENT-berjochten kinne lêzen wurde yn meardere SPI-frames, bygelyks om de lingtebyte út te lêzen.RESPONSE- of EVENT-berjochten kinne wurde lêzen yn ien SPI-frame, mar fertrage troch NO-CLOCK tusken, bygelyks om de lingtebyte út te lêzen.
IC bestjoeringssysteem boot modus - befeilige FW download modus
3.1 Ynlieding
In diel fan 'e PN5190-firmware-koade wurdt permanint opslein yn' e ROM, wylst de rest fan 'e koade en de gegevens wurde opslein yn' e ynbêde flash. Brûkergegevens wurde opslein yn flash en wurde beskerme troch anty-tearingmeganismen dy't de yntegriteit en beskikberens fan 'e gegevens garandearje. Om de klanten fan NXP's te foarsjen fan funksjes dy't foldogge oan 'e lêste noarmen (EMVCo, NFC Forum, ensfh), kinne sawol de koade as brûkersgegevens yn FLASH wurde bywurke.
De autentisiteit en yntegriteit fan 'e fersifere firmware wurdt beskerme troch asymmetryske / symmetryske kaai hantekening en reverse chained hash meganisme. It earste kommando DL_SEC_WRITE befettet de hash fan it twadde kommando en wurdt beskerme troch in RSA-hântekening op 'e lading fan it earste frame. PN5190 firmware brûkt de RSA iepenbiere kaai foar in autentikaasje fan it earste kommando. De keatling hash yn elk kommando wurdt brûkt om it folgjende kommando te autentisearjen, om te soargjen dat de firmwarekoade en gegevens net tagonklik wurde troch tredden.
De loadloads fan 'e DL_SEC_WRITE-kommando's binne fersifere mei in AES-128-kaai. Nei autentikaasje fan elk kommando wurdt de ynhâld fan de lading dekodearre en skreaun om te flashen troch PN5190-firmware.
Foar NXP-firmware is NXP ferantwurdlik foar it leverjen fan nije feilige firmware-updates, tegearre mei nije brûkersgegevens.
De fernijingsproseduere is foarsjoen fan in meganisme om de autentisiteit, yntegriteit en fertroulikens fan NXP-koade en gegevens te beskermjen.
HDLL-basearre frame pakket skema wurdt brûkt foar alle kommando en antwurden foar befeilige firmware upgrade modus.
Seksje 2.1 jout it oerview fan HDLL frame pakket skema brûkt.
PN5190 IC's stipet sawol legacy fersifere befeilige FW-download as hardware-crypto-assistearre fersifere befeilige FW-downloadprotokol ôfhinklik fan de brûkte fariant.
De twa soarten binne:
- Legacy feilich FW download protokol dat wurket mei PN5190 B0 / B1 IC ferzje allinne.
- Hardware Krypto-assistearre feilich FW-downloadprotokol dat allinich wurket mei PN5190B2 IC-ferzje, dat de on-chip hardware Krypto-blokken brûkt
De folgjende seksjes ferklearje de kommando's en antwurden fan Feilige firmware-downloadmodus.
3.2 Hoe kinne jo de modus "Befeilige firmware-download" aktivearje
Diagram hjirûnder, en de folgjende stappen, litte sjen hoe't jo befeilige firmware-downloadmodus kinne aktivearje.Betingst: PN5190 is yn Operaasje steat.
Main senario:
- Yngongsbetingst wêryn DWL_REQ-pin wurdt brûkt om de modus "Befeilige firmware-download" yn te gean.
in. Apparaathost lûkt DWL_REQ-pin heech (allinich jildich as feilige firmware-update fia DWL_REQ-pin) OF
b. Apparaathost fiert in hurde reset út om de PN5190 te booten - Yngongsbetingst wêrby't DWL_REQ-pin net wurdt brûkt om yn te gean yn 'Befeilige firmware-download'-modus (download sûnder pin).
in. Apparaathost fiert in hurde reset út om de PN5190 te booten
b. Apparaathost stjoert SWITCH_MODE_NORMAL (Seksje 4.5.4.5) om yn normale applikaasjemodus te gean.
c. No as IC yn normale modus fan tapassing is, stjoert Apparaathost SWITCH_MODE_DOWNLOAD (Seksje 4.5.4.9) om yn feilige downloadmodus te gean. - Apparaat host stjoert DL_GET_VERSION (Seksje 3.4.4), of DL_GET_DIE_ID (Seksje 3.4.6), of DL_GET_SESSION_STATE (Seksje 3.4.5) kommando.
- Apparaathost lêst de hjoeddeistige hardware- en firmwareferzje, sesje, Die-id fan it apparaat.
in. Apparaathost kontrolearret sesjestatus as lêste ynlaad foltôge is
b. Apparaathost past de ferzjekontrôleregels ta om te besluten of de ynlaad moat begjinne of ôfslute. - Apparaat host loads út in file de firmware binêre koade te downloaden
- Apparaathost leveret in earste DL_SEC_WRITE (Seksje 3.4.8) kommando dat befettet:
in. De ferzje fan 'e nije firmware,
b. In 16-byte nonce fan willekeurige wearden brûkt foar fersifering kaai obfuscation
c. In digestwearde fan it folgjende frame,
d. De digitale hantekening fan it frame sels - De apparaathost laadt de feilige downloadprotokolsekwinsje nei de PN5190 mei DL_SEC_WRITE (Seksje 3.4.8) kommando's
- As it lêste kommando DL_SEC_WRITE (Seksje 3.4.8) is ferstjoerd, fiert de apparaathost it kommando DL_CHECK_INTEGRITY (Seksje 3.4.7) út om te kontrolearjen oft de oantinkens mei súkses skreaun binne.
- Apparaathost lêst de nije firmwareferzje en kontrolearret de sesjestatus as sletten foar rapportaazje nei de boppeste laach
- Apparaathost lûkt de DWL_REQ-pin nei leech (as DWL_REQ-pin wurdt brûkt om ynlaadmodus yn te gean)
- Apparaathost fiert hurde reset (wikseljen fan VEN-pin) op it apparaat om de PN5190 opnij te starten
Post-kondysje: De firmware wurdt bywurke; nij firmware ferzjenûmer wurdt rapportearre.
3.3 Firmware hântekening en ferzje kontrôle
Yn 'e PN5190-firmware-downloadmodus soarget in meganisme dat allinich in firmware ûndertekene en levere troch NXP wurdt aksepteare foar NXP-firmware.
It folgjende is allinich fan tapassing foar de fersifere feilige NXP-firmware.
Tidens in ynlaad sesje wurdt in nije 16-bits firmwareferzje stjoerd. It is gearstald út in majeur en in minor nûmer:
- Haadnûmer: 8 bits (MSB)
- Minor nûmer: 8 bits (LSB)
De PN5190 kontrolearret as it nije grutte ferzjenûmer grutter of gelyk is oan it hjoeddeistige. As net, wurdt de befeilige firmware-download ôfwiisd, en de sesje wurdt sletten hâlden.
3.4 HDLL-kommando's foar legacy fersifere download en hardware-krypto assistearre fersifere download
Dizze seksje jout de ynformaasje oer de kommando's en antwurden dy't waarden brûkt foar beide soarten downloads foar NXP firmware download.
3.4.1 HDLL Kommando OP koades
Noat: HDLL kommando frames binne 4 bytes ôfstimd. Net brûkte lading bytes wurde oerbleaun nul.
tabel 1. List fan HDLL kommando OP koades
PN5190 B0/B1 (Legacy download) |
PN5190 B2 (Krypto assistearre download) |
Kommando Alias | Beskriuwing |
0xf0 | 0xE5 | DL_RESET | Fiert in sêfte reset |
0xf1 | 0xE1 | DL_GET_VERSION | Jout de ferzjenûmers werom |
0xf2 | 0 xdb | DL_GET_SESSION_STATE | Jout de aktuele sesjestatus werom |
0xf4 | 0xdf | DL_GET_DIE_ID | Jout de die ID werom |
0xE0 | 0xE7 | DL_CHECK_INTEGRITY | Kontrolearret en jout de CRC's werom oer de ferskate gebieten, lykas flaggen foar passe / mislearre status foar elk |
0xc0 | 0x8 c | DL_SEC_WRITE | Skriuwt x bytes nei it ûnthâld begjinnend by it absolute adres y |
3.4.2 HDLL Response Opcodes
Noat: HDLL-antwurdframes binne 4 bytes ôfstimd. Net brûkte lading bytes wurde oerbleaun nul. Allinnich DL_OK-antwurden kinne loadwearden befetsje.
tabel 2. List fan HDLL antwurd OP koades
Opcode | Antwurd Alias | Beskriuwing |
0x00 | DL_OK | Kommando trochjûn |
0x01 | DL_INVALID_ADDR | Adres net tastien |
0x0B | DL_UNKNOW_CMD | Unbekend kommando |
0x0 c | DL_ABORTED_CMD | Chunk folchoarder is te grut |
0x1e | DL_ADDR_RANGE_OFL_ERROR | Adres bûten berik |
0x1f | DL_BUFFER_OFL_ERROR | Buffer is te lyts |
0x20 | DL_MEM_BSY | Unthâld drok |
0x21 | DL_SIGNATURE_ERROR | Hantekening mismatch |
0x24 | DL_FIRMWARE_VERSION_ERROR | Aktuele ferzje gelyk of heger |
0x28 | DL_PROTOCOL_ERROR | Protokol flater |
0x2A | DL_SFWU_DEGRADED | Flash data korrupsje |
0x2 d | PH_STATUS_DL_FIRST_CHUNK | Earste stik ûntfongen |
0x2e | PH_STATUS_DL_NEXT_CHUNK | Wachtsje op it folgjende stik |
0xc5 | PH_STATUS_INTERNAL_ERROR_5 | Lengte mismatch |
3.4.3 DL_RESET kommando
Frame útwikseling:
PN5190 B0/B1: [HDLL] -> [0x00 0x04 0xF0 0x00 0x00 0x00 0x18 0x5B]
PN5190 B2: [HDLL] -> [0x00 0x04 0xE5 0x00 0x00 0x00 0xBF 0xB9] [HDLL] <- [0x00 0x04 STAT 0x00 CRC16] De reset foarkomt dat de PN5190 it DL_STATUS-antwurd ferstjoert. Dêrom kin allinich in ferkearde status ûntfongen wurde.
STAT is de weromreisstatus.
3.4.4 DL_GET_VERSION kommando
Frame útwikseling:
PN5190 B0/B1: [HDLL] -> [0x00 0x04 0xF1 0x00 0x00 0x00 0x6E 0xEF]
PN5190 B2: [HDLL] -> [0x00 0x04 0xE1 0x00 0x00 0x00 0x75 0x48] [HDLL] <- [0x00 0x08 STAT HW_V RO_V MODEL_ID FM1V FM2V RFU1 RFU2 CRC16] is:
Tabel 3. Reaksje op it kommando GetVersion
Fjild | Byte | Beskriuwing |
STAT | 1 | Status |
HW_V | 2 | Hardware ferzje |
RO_V | 3 | ROM koade |
MODEL_ID | 4 | Model-ID |
FMxV | 5-6 | Firmware ferzje (brûkt foar download) |
RFU1-RFU2 | 7-8 | – |
Ferwachte wearden fan ferskate fjilden fan antwurd en har mapping is as hjirûnder:
Tabel 4. Ferwachte wearden fan it antwurd fan it kommando GetVersion
IC Type | HW ferzje (hex) | ROM ferzje (hex) | Model ID (hex) | FW ferzje (hex) |
PN5190 B0 | 0x51 | 0x02 | 0x00 | xx.yy |
PN5190 B1 | 0x52 | 0x02 | 0x00 | xx.yy |
PN5190 B2 | 0x53 | 0x03 | 0x00 | xx.yy |
3.4.5 DL_GET_SESSION_STATE kommando
Frame útwikseling:
PN5190 B0/B1: [HDLL] -> [0x00 0x04 0xF2 0x00 0x00 0x00 0xF5 0x33]
PN5190 B2: [HDLL] -> [0x00 0x04 0xDB 0x00 0x00 0x00 0x31 0x0A] [HDLL] <- [0x00 0x04 STAT SSTA RFU CRC16] It payloadframe fan it GetSession-antwurd is:
Tabel 5. Reaksje op it kommando GetSession
Fjild | Byte | Beskriuwing |
STAT | 1 | Status |
SSTA | 2 | Sesje steat • 0x00: sluten • 0x01: iepen • 0x02: beskoattele (download net mear tastien) |
RFUs | 3-4 |
3.4.6 DL_GET_DIE_ID kommando
Frame útwikseling:
PN5190 B0/B1: [HDLL] -> [0x00 0x04 0xF4 0x00 0x00 0x00 0xD2 0xAA]
PN5190 B2: [HDLL] -> [0x00 0x04 0xDF 0x00 0x00 0x00 0xFB 0xFB] [HDLL] <- [0x00 0x14 STAT 0x00 0x00 0x00 ID0 ID1 ID2 ID3 ID4 ID5 ID6 ID7 ID8
ID10 ID11 ID12 ID13 ID14 ID15 CRC16] It payload-frame fan it GetDieId-antwurd is:
Tabel 6. Reaksje op it kommando GetDieId
Fjild | Byte | Beskriuwing |
STAT | 1 | Status |
RFUs | 2-4 | |
DIEID | 5-20 | ID fan de die (16 bytes) |
3.4.7 DL_CHECK_INTEGRITY kommando
Frame útwikseling:
PN5190 B0/B1: [HDLL] -> [0x00 0x04 0xE0 0x00 0x00 0x00 CRC16]
PN5190 B2: [HDLL] -> [0x00 0x04 0xE7 0x00 0x00 0x00 0x52 0xD1] [HDLL] <- [0x00 0x20 STAT LEN_DATA LEN_CODE 0x00 [CRC_INFO] [CRC32] The Checkload frame fan de CRC16
Tabel 7. Reaksje op it kommando CheckIntegrity
Fjild | Byte | Wearde / Beskriuwing | |
STAT | 1 | Status | |
LEN DATA | 2 | Totaal oantal gegevens seksjes | |
LEN CODE | 3 | Totaal oantal koade seksjes | |
RFUs | 4 | Reservearre | |
[CRC_INFO] | 58 | 32 bits (lyts-endian). As in bytsje ynsteld is, is de CRC fan 'e oerienkommende seksje OK, oars Net OK. | |
Bit | Gebiet yntegriteit status | ||
[31:28] | Reservearre [3] | ||
[27:23] | Reservearre [1] | ||
[22] | Reservearre [3] | ||
[21:20] | Reservearre [1] | ||
[19] | RF-konfiguraasjegebiet (PN5190 B0/B1) [2] Reservearre (PN5190 B2) [3] | ||
[18] | Protokolkonfiguraasjegebiet (PN5190 B0/B1) [2] RF-konfiguraasjegebiet (PN5190 B2) [2] | ||
[17] | Reservearre (PN5190 B0/B1) [3] Brûkerskonfiguraasjegebiet (PN5190 B2) [2] | ||
[16:6] | Reservearre [3] | ||
[5:4] | Reservearre foar PN5190 B0/B1 [3] Reservearre foar PN5190 B2 [1] | ||
[3:0] | Reservearre [1] | ||
[CRC32] | 9-136 | CRC32 fan de 32 seksjes. Elke CRC is fan 4 bytes opslein yn lyts-endian-formaat. Earste 4 bytes fan CRC is fan bit CRC_INFO[31], folgjende 4 bytes fan CRC is fan bit CRC_INFO[30] ensafuorthinne. |
- [1] Dit bit moat 1 wêze foar de PN5190 om goed te funksjonearjen (mei funksjes en of fersifere FW-download).
- [2] Dit bit is standert ynsteld op 1, mar brûker oanpaste ynstellings meitsje de CRC ûnjildich. Gjin effekt op PN5190 funksjonaliteit ..
- [3] Dizze bitwearde, sels as it 0 is, is net relevant. Dizze bitwearde kin negearre wurde..
3.4.8 DL_SEC_WRITE kommando
It kommando DL_SEC_WRITE moat wurde beskôge yn 'e kontekst fan in folchoarder fan feilige skriuwkommando's: de fersifere "befeilige firmware-download" (faak oantsjutten as eSFWu).
It befeilige skriuwkommando iepenet earst de downloadsesje en passet de RSA-ferifikaasje troch. De folgjende passe fersifere adressen en bytes troch om yn de PN5190 Flash te skriuwen. Alles behalve de lêste befettet de folgjende hash, dus ynformearje dat se net de lêste binne, en kryptografysk ferbinen de folchoarder frames.
Oare kommando's (útsein DL_RESET en DL_CHECK_INTEGRITY) kinne wurde ynfoege tusken de befeilige skriuwkommando's fan in sekwinsje sûnder it te brekken.
3.4.8.1 Earste DL_SEC_WRITE kommando
In befeilige skriuwkommando is de earste as en allinich as:
- De frame lingte is 312 bytes
- Gjin befeilige skriuwkommando is ûntfongen sûnt lêste reset.
- De ynbêde hantekening is mei súkses ferifiearre troch de PN5190.
It antwurd op it earste frame kommando soe wêze as hjirûnder: [HDLL] <- [0x00 0x04 STAT 0x00 0x00 0x00 CRC16] STAT is de werom status.
Noat: Op syn minst ien brok fan gegevens moat skreaun wurde tidens in eSFWu, ek al kinne de skreaune gegevens mar ien byte lang wêze. Dêrom sil it earste kommando altyd de hash fan it folgjende kommando befetsje, om't d'r op syn minst twa kommando's sille wêze.
3.4.8.2 Midden DL_SEC_WRITE kommando
In befeilige skriuwkommando is in 'midden' as en allinich as:
- De opcode is lykas beskreaun yn paragraaf 3.4.1 foar DL_SEC_WRITE kommando.
- In earste befeilige skriuwkommando is al earder ûntfongen en mei súkses ferifiearre
- Gjin reset is bard sûnt it ûntfangen fan it earste befeilige skriuwkommando
- De frame-lingte is lyk oan de gegevensgrutte + kopgrutte + hashgrutte: FLEN = SIZE + 6 + 32
- De digest fan it hiele frame is lyk oan de hashwearde ûntfongen yn it foarige frame
It antwurd op it earste frame kommando soe wêze as hjirûnder: [HDLL] <- [0x00 0x04 STAT 0x00 0x00 0x00 CRC16] STAT is de werom status.
3.4.8.3 Lêste DL_SEC_WRITE kommando
In befeilige skriuwkommando is de lêste as en allinich as:
- De opcode is lykas beskreaun yn paragraaf 3.4.1 foar DL_SEC_WRITE kommando.
- In earste befeilige skriuwkommando is al earder ûntfongen en mei súkses ferifiearre
- Gjin reset is bard sûnt it ûntfangen fan it earste befeilige skriuwkommando
- De frame-lingte is lyk oan de gegevensgrutte + kopgrutte: FLEN = SIZE + 6
- De digest fan it hiele frame is lyk oan de hashwearde ûntfongen yn it foarige frame
It antwurd op it earste frame kommando soe wêze as hjirûnder: [HDLL] <- [0x00 0x04 STAT 0x00 0x00 0x00 CRC16] STAT is de werom status.
IC bestjoeringssysteem boot modus - Normale operaasje modus
4.1 Ynlieding
Yn 't algemien moat PN5190 IC yn normale wurkmodus wêze om de NFC-funksjonaliteit derfan te krijen.
Wannear't PN5190 IC boots, wachtet it altyd op kommando's dy't wurde ûntfongen fan in host om operaasje út te fieren, útsein as eveneminten generearre binnen PN5190 IC resultearre yn PN5190 IC-boot.
4.2 Opdrachten list oerview
tabel 8. PN5190 kommando list
Kommando koade | Kommando namme |
0x00 | WRITE_REGISTER |
0x01 | WRITE_REGISTER_OR_MASK |
0x02 | WRITE_REGISTER_AND_MASK |
0x03 | WRITE_REGISTER_MULTIPLE |
0x04 | READ_REGISTER |
0x05 | READ_REGISTER_MULTIPLE |
0x06 | WRITE_E2PROM |
0x07 | READ_E2PROM |
0x08 | TRANSMIT_RF_DATA |
0x09 | RETRIEVE_RF_DATA |
0x0A | EXCHANGE_RF_DATA |
0x0B | MFC_AUTHENTICATE |
0x0 c | EPC_GEN2_INVENTORY |
0x0 d | LOAD_RF_CONFIGURATION |
0x0e | UPDATE_RF_CONFIGURATION |
0x0f | GET_ RF_CONFIGURATION |
0x10 | RF_ON |
0x11 | RF_OFF |
0x12 | TESTBUS_DIGITAL ynstelle |
0x13 | CONFIGURE_TESTBUS_ANALOG |
0x14 | CTS_ENABLE |
0x15 | CTS_CONFIGURE |
0x16 | CTS_RETRIEVE_LOG |
0x17-0x18 | RFUs |
0x19 | oant FW v2.01: RFU |
fan FW v2.03 ôf: RETRIEVE_RF_FELICA_EMD_DATA | |
0x1A | RECEIVE_RF_DATA |
0x1B-0x1F | RFUs |
0x20 | SWITCH_MODE_NORMAL |
0x21 | SWITCH_MODE_AUTOCOLL |
0x22 | SWITCH_MODE_STANDBY |
0x23 | SWITCH_MODE_LPCD |
0x24 | RFUs |
0x25 | SWITCH_MODE_DOWNLOAD |
0x26 | GET_DIEID |
0x27 | GET_VERSJON |
0x28 | RFUs |
0x29 | oant FW v2.05: RFU |
fan FW v2.06 ôf: GET_CRC_USER_AREA | |
0x2A | oant FW v2.03: RFU |
fan FW v2.05 ôf: CONFIGURE_MULTIPLE_TESTBUS_DIGITAL | |
0x2B-0x3F | RFUs |
0x40 | ANTENNA_SELF_TEST (net stipe) |
0x41 | PRBS_TEST |
0x42-0x4f | RFUs |
4.3 Response status wearden
Folgjende binne de antwurd status wearden, dy't weromjûn as ûnderdiel fan it antwurd út PN5190 neidat it kommando is operasjonalisearre.
Tabel 9. PN5190 antwurd status wearden
Reaksje status | Response status wearde | Beskriuwing |
PN5190_STATUS_SUCCESS | 0x00 | Jout oan dat operaasje mei súkses foltôge |
PN5190_STATUS_TIMEOUT | 0x01 | Jout oan dat de operaasje fan it kommando resultearre yn time-out |
PN5190_STATUS_INTEGRITY_ERROR | 0x02 | Jout oan dat de wurking fan it kommando resultearre yn RF data yntegriteit flater |
PN5190_STATUS_RF_COLLISION_ERROR | 0x03 | Jout oan dat de operaasje fan it kommando resultearre yn RF-botsingsflater |
PN5190_STATUS_RFU1 | 0x04 | Reservearre |
PN5190_STATUS_INVALID_COMMAND | 0x05 | Jout oan dat it opjûne kommando ûnjildich/net ymplementearre is |
PN5190_STATUS_RFU2 | 0x06 | Reservearre |
PN5190_STATUS_AUTH_ERROR | 0x07 | Jout oan dat MFC-autentikaasje mislearre (tastimming wegere) |
PN5190_STATUS_MEMORY_ERROR | 0x08 | Jout oan dat de operaasje fan it kommando resultearre yn in programmearring flater of ynterne ûnthâld flater |
PN5190_STATUS_RFU4 | 0x09 | Reservearre |
PN5190_STATUS_NO_RF_FIELD | 0x0A | Jout oan dat d'r gjin of flater is yn 'e oanwêzigens fan ynterne RF-fjilden (allinich fan tapassing as inisjatyfnimmer / lêzermodus) |
PN5190_STATUS_RFU5 | 0x0B | Reservearre |
PN5190_STATUS_SYNTAX_ERROR | 0x0 c | Jout oan dat ûnjildige kommando frame lingte wurdt ûntfongen |
PN5190_STATUS_RESOURCE_ERROR | 0x0 d | Jout oan dat in ynterne boarne flater barde |
PN5190_STATUS_RFU6 | 0x0e | Reservearre |
PN5190_STATUS_RFU7 | 0x0f | Reservearre |
PN5190_STATUS_NO_EXTERNAL_RF_FIELD | 0x10 | Jout oan dat gjin ekstern RF-fjild oanwêzich is tidens de útfiering fan it kommando (allinich tapast yn kaart-/doelmodus) |
PN5190_STATUS_RX_TIMEOUT | 0x11 | Jout oan dat gegevens net ûntfongen wurde neidat RFExchange is inisjearre en RX is time-out. |
PN5190_STATUS_USER_CANCELLED | 0x12 | Jout oan dat it hjoeddeistige kommando yn-progress wurdt ôfbrutsen |
PN5190_STATUS_PREVENT_STANDBY | 0x13 | Jout oan dat PN5190 wurdt foarkommen om yn Standby-modus te gean |
PN5190_STATUS_RFU9 | 0x14 | Reservearre |
PN5190_STATUS_CLOCK_ERROR | 0x15 | Jout oan dat de klok nei de CLIF net begon |
PN5190_STATUS_RFU10 | 0x16 | Reservearre |
PN5190_STATUS_PRBS_ERROR | 0x17 | Jout oan dat it PRBS kommando in flater weromjoech |
PN5190_STATUS_INSTR_ERROR | 0x18 | Jout oan dat operaasje fan it kommando is mislearre (it kin omfetsje, de flater yn ynstruksjeparameters, syntaksisflater, flater yn operaasje sels, pre-easken foar de ynstruksje wurdt net foldien, ensfh.) |
PN5190_STATUS_ACCESS_DENIED | 0x19 | Jout oan dat tagong ta ynterne ûnthâld wurdt wegere |
PN5190_STATUS_TX_FAILURE | 0x1A | Jout oan dat TX oer RF is mislearre |
PN5190_STATUS_NO_ANTENNA | 0x1B | Jout oan dat gjin antenne is ferbûn / oanwêzich |
PN5190_STATUS_TXLDO_ERROR | 0x1 c | Jout oan dat der in flater is yn TXLDO as de VUP net beskikber is en RF is ynskeakele. |
PN5190_STATUS_RFCFG_NOT_APPLIED | 0x1 d | Jout oan dat RF-konfiguraasje net laden wurdt as RF ynskeakele is |
PN5190_STATUS_TIMEOUT_WITH_EMD_ERROR | 0x1e | oant FW 2.01: net ferwachte |
fan FW 2.03 ôf: Jout oan dat tidens Exchange mei LOG ENABLE BIT is ynsteld yn FeliCa EMD register, FeliCa EMD Flater waard waarnommen |
||
PN5190_STATUS_INTERNAL_ERROR | 0x7f | Jout oan dat de NVM-operaasje mislearre |
PN5190_STATUS_SUCCSES_CHAINING | 0xaf | Jout oan dat fierders gegevens yn ôfwachting binne om te lêzen |
4.4 Eveneminten oerview
D'r binne twa manieren wêrop eveneminten wurde op 'e hichte brocht oan de host.
4.4.1 Normaal eveneminten oer IRQ pin
Dizze eveneminten binne kategoryen lykas hjirûnder:
- Altyd ynskeakele - Host wurdt altyd op 'e hichte brocht
- Bestjoerd troch Host - Host wurdt op 'e hichte brocht, as de respektivelike Event Enable-bit is ynsteld yn it register (EVENT_ENABLE (01h)).
Underbrekkings op leech nivo fan 'e perifeare IP's, ynklusyf de CLIF, sille folslein wurde behannele binnen de firmware en host sil allinich wurde op 'e hichte brocht fan' e barrens neamd yn 'e barrens seksje.
Firmware ymplemintearret twa evenemint registers as RAM registers dy't kin wurde skreaun / Lês mei help fan Seksje 4.5.1.1 / Seksje 4.5.1.5 kommando's.
It register EVENT_ENABLE (0x01) => Spesifike/alle barrensnotifikaasjes ynskeakelje.
It register EVENT_STATUS (0x02) => In diel fan 'e lading fan it Eventberjocht.
Eveneminten sille wurde wiske troch de host ienris it evenemint berjocht wurdt lêzen út troch de host.
Eveneminten binne asynchrone fan aard en wurde op 'e hichte brocht oan de host, as se binne ynskeakele binnen it EVENT_ENABLE register.
Folgjende is de list mei eveneminten dy't beskikber sille wêze foar de host as ûnderdiel fan it evenemintberjocht.
Tabel 10. PN5190-eveneminten (ynhâld fan EVENT_STATUS)
Bit - Range | Fjild [1] | Altyd Ynskeakele (J/N) | |
31 | 12 | RFUs | NA |
11 | 11 | CTS_EVENT [2] | N |
10 | 10 | IDLE_EVENT | Y |
9 | 9 | LPCD_CALIBRATION_DONE_EVENT | Y |
8 | 8 | LPCD_EVENT | Y |
7 | 7 | AUTOCOLL_EVENT | Y |
6 | 6 | TIMER0_EVENT | N |
5 | 5 | TX_OVERCURRENT_EVENT | N |
4 | 4 | RFON_DET_EVENT [2] | N |
3 | 3 | RFOFF_DET_EVENT [2] | N |
2 | 2 | STANDBY_PREV_EVENT | Y |
1 | 1 | GENERAL_ERROR_EVENT | Y |
0 | 0 | BOOT_EVENT | Y |
- Tink derom dat gjin twa eveneminten wurde clubbed útsein yn gefal fan flaters. Yn gefal fan flaters tidens de operaasje, funksjoneel barren (bgl. BOOT_EVENT, AUTOCALL_EVENT ensfh) en GENERAL_ERROR_EVENT wurde ynsteld.
- Dit evenemint sil automatysk útskeakele wurde neidat it is pleatst op de host. De host moat dizze eveneminten opnij ynskeakelje as hy dizze eveneminten op 'e hichte krije wol.
4.4.1.1 Event berjocht formaten
De opmaak fan it evenemint berjocht ferskilt ôfhinklik fan it foarkommen fan in evenemint en ferskillende steat fan de PN5190.
Host moat lêze tag (T) en lingte fan it berjocht (L) en lês dan it oerienkommende oantal bytes as wearde (V) fan 'e eveneminten.
Yn it algemien, it evenemint berjocht (sjoch figuer 12) befettet de EVENT_STATUS lykas definiearre yn Tabel 11 en evenemint data oerienkomt mei de respektivelike evenemint bit set yn EVENT_STATUS.
Noat:
Foar guon eveneminten bestiet payload net. Foar bygelyks As TIMER0_EVENT wurdt aktivearre, allinne EVENT_STATUS wurdt levere as ûnderdiel fan it evenemint berjocht.
De Tabel 11 beskriuwt ek oft de evenemintgegevens oanwêzich binne foar it korrespondearjende evenemint yn it evenemintberjocht.GENERAL_ERROR_EVENT kin ek foarkomme mei oare eveneminten.
Yn dit senario befettet it evenemint berjocht (sjoch figuer 13) de EVENT_STATUS lykas definiearre yn Tabel 11 en GENERAL_ERROR_STATUS_DATA lykas definiearre yn Tabel 14 en dan komt de evenemint data oerien mei de respektivelike evenemint bit ynsteld yn EVENT_STATUS lykas definiearre yn Tabel 11.Noat:
Allinich nei de BOOT_EVENT of nei POR, STANDBY, ULPCD sil de host yn 'e normale operaasjemodus wurkje kinne troch de hjirboppe neamde kommando's út te jaan.
Yn gefal fan ôfbrekke fan in besteande rinnende kommando, allinich nei IDLE_EVENT, sil de host yn 'e normale operaasjemodus kinne wurkje troch de hjirboppe neamde kommando's út te jaan.
4.4.1.2 Ferskillende EVENT status definysjes
4.4.1.2.1 Bitdefinysjes foar EVENT_STATUS
Tabel 11. Definysjes foar EVENT_STATUS bits
Bit (oan - fan) | Barren | Beskriuwing | Eventgegevens fan it korrespondearjende evenemint (as ien) |
|
31 | 12 | RFUs | Reservearre | |
11 | 11 | CTS_EVENT | Dit bytsje wurdt ynsteld, doe't CTS evenemint wurdt oanmakke. | Tabel 86 |
10 | 10 | IDLE_EVENT | Dit bit is ynsteld as it oanhâldende kommando wurdt annulearre fanwegen útjefte fan SWITCH_MODE_NORMAL kommando. | Gjin evenemint data |
9 | 9 | LPCD_CALIBRATION_DONE_ BARREN |
Dit bit wurdt ynsteld as it LPCD calibrationdone evenemint wurdt oanmakke. | Tabel 16 |
8 | 8 | LPCD_EVENT | Dit bit wurdt ynsteld, as it LPCD-evenemint wurdt oanmakke. | Tabel 15 |
7 | 7 | AUTOCOLL_EVENT | Dit bit is ynsteld, as de AUTOCOLL-operaasje foltôge is. | Tabel 52 |
6 | 6 | TIMER0_EVENT | Dit bit is ynsteld, as it TIMER0-evenemint barde. | Gjin evenemint data |
5 | 5 | TX_OVERCURRENT_ERROR_ BARREN |
Dit bit is ynsteld, as de stroom op 'e TX-bestjoerder heger is as de definieare drompel yn' e EEPROM. Op dizze betingst wurdt it fjild automatysk útskeakele foar de notifikaasje nei de host. Sjoch asjebleaft nei paragraaf 4.4.2.2. | Gjin evenemint data |
4 | 4 | RFON_DET_EVENT | Dit bit wurdt ynsteld, as it eksterne RF-fjild wurdt ûntdutsen. | Gjin evenemint data |
3 | 3 | RFOFF_DET_EVENT | Dit bit wurdt ynsteld, doe't al besteande eksterne RF fjild ferdwynt. | Gjin evenemint data |
2 | 2 | STANDBY_PREV_EVENT | Dit bit wurdt ynsteld, as standby wurdt foarkommen fanwege previnsje betingsten bestean | Tabel 13 |
1 | 1 | GENERAL_ERROR_EVENT | Dit bit wurdt ynsteld, doe't alle algemiene flater betingsten bestean | Tabel 14 |
0 | 0 | BOOT_EVENT | Dit bytsje is ynsteld, doe't PN5190 wurdt booted mei POR / Standby | Tabel 12 |
4.4.1.2.2 Bitdefinysjes foar BOOT_STATUS_DATA
Tabel 12. Definysjes foar BOOT_STATUS_DATA bits
Bit oan | Bytsje fan | Boot status | Boot reden fanwege |
31 | 27 | RFUs | Reservearre |
26 | 26 | ULP_STANDBY | Opstartreden fanwegen it ferlitten fan ULP_STANDBY. |
25 | 23 | RFUs | Reservearre |
22 | 22 | BOOT_ RX_ULPDET | RX ULPDET resultearre yn boot yn ULP-Standby-modus |
21 | 21 | RFUs | Reservearre |
20 | 20 | BOOT_SPI | Opstartreden fanwege SPI_NTS-sinjaal wurdt leech lutsen |
19 | 17 | RFUs | Reservearre |
16 | 16 | BOOT_GPIO3 | Bootup Reden fanwege oergong fan GPIO3 fan leech nei heech. |
15 | 15 | BOOT_GPIO2 | Bootup Reden fanwege oergong fan GPIO2 fan leech nei heech. |
14 | 14 | BOOT_GPIO1 | Bootup Reden fanwege oergong fan GPIO1 fan leech nei heech. |
13 | 13 | BOOT_GPIO0 | Bootup Reden fanwege oergong fan GPIO0 fan leech nei heech. |
12 | 12 | BOOT_LPDET | Opstartreden fanwege eksterne RF-fjild oanwêzichheid tidens STANDBY / SUSPEND |
11 | 11 | RFUs | Reservearre |
10 | 8 | RFUs | Reservearre |
7 | 7 | BOOT_SOFT_RESET | Bootup Reden fanwege sêfte reset fan IC |
6 | 6 | BOOT_VDDIO_LOSS | Bootup Reden fanwege ferlies fan VDDIO. Ferwize nei paragraaf 4.4.2.3 |
5 | 5 | BOOT_VDDIO_START | Bootup Reden as STANDBY ynfierd mei VDDIO LOSS. Ferwize nei paragraaf 4.4.2.3 |
4 | 4 | BOOT_WUC | Opstartreden fanwegen wekkerteller ferrûn by beide STANDBY-operaasjes. |
3 | 3 | BOOT_TEMP | Opstartreden fanwege IC-temperatuer is mear dan de ynstelde drompellimyt. Sjoch asjebleaft nei paragraaf 4.4.2.1 |
2 | 2 | BOOT_WDG | Bootup Reden fanwege watchdog reset |
1 | 1 | RFUs | Reservearre |
0 | 0 | BOOT_POR | Bootup Reden fanwege power-on reset |
4.4.1.2.3 Bitdefinysjes foar STANDBY_PREV_STATUS_DATA
Tabel 13. Definysjes foar STANDBY_PREV_STATUS_DATA bits
Bit oan | Bytsje fan | Standby previnsje | Standby foarkommen fanwege |
31 | 26 | RFUs | RESERVEERD |
25 | 25 | RFUs | RESERVEERD |
24 | 24 | PREV_TEMP | ICs bestjoeringssysteem temperatuer is bûten drompel |
23 | 23 | RFUs | RESERVEERD |
22 | 22 | PREV_HOSTCOMM | Host ynterface kommunikaasje |
21 | 21 | PREV_SPI | SPI_NTS-sinjaal wurdt leech lutsen |
20 | 18 | RFUs | RESERVEERD |
17 | 17 | PREV_GPIO3 | GPIO3 sinjaal oergong fan leech nei heech |
16 | 16 | PREV_GPIO2 | GPIO2 sinjaal oergong fan leech nei heech |
15 | 15 | PREV_GPIO1 | GPIO1 sinjaal oergong fan leech nei heech |
14 | 14 | PREV_GPIO0 | GPIO0 sinjaal oergong fan leech nei heech |
13 | 13 | PREV_WUC | Wekkerteller is ferrûn |
12 | 12 | PREV_LPDET | Low-power detection. Komt foar as in ekstern RF-sinjaal wurdt ûntdutsen yn it proses fan it yn standby gean. |
11 | 11 | PREV_RX_ULPDET | RX-deteksje mei ultra-lege krêft. Komt foar as RF-sinjaal wurdt ûntdutsen yn it proses fan gean nei ULP_STANDBY. |
10 | 10 | RFUs | RESERVEERD |
9 | 5 | RFUs | RESERVEERD |
4 | 4 | RFUs | RESERVEERD |
3 | 3 | RFUs | RESERVEERD |
2 | 2 | RFUs | RESERVEERD |
1 | 1 | RFUs | RESERVEERD |
0 | 0 | RFUs | RESERVEERD |
4.4.1.2.4 Bitdefinysjes foar GENERAL_ERROR_STATUS_DATA
Tabel 14. Definysjes foar GENERAL_ERROR_STATUS_DATA bits
Bit oan | Bytsje fan | Flater status | Beskriuwing |
31 | 6 | RFUs | Reservearre |
5 | 5 | XTAL_START_ERROR | XTAL start mislearre tidens it opstarten |
4 | 4 | SYS_TRIM_RECOVERY_ERROR | Ynterne systeem trim ûnthâld flater barde, mar herstel is mislearre. Systeem wurket yn downgraded modus. |
3 | 3 | SYS_TRIM_RECOVERY_SUCCESS | Ynterne systeem trim ûnthâld flater barde, en herstel wie suksesfol. Host moat opnij opstarte fan 'e PN5190 foar it herstel om effekt te nimmen. |
2 | 2 | TXLDO_ERROR | TXLDO flater |
1 | 1 | CLOCK_ERROR | Klokflater |
0 | 0 | GPADC_ERROR | ADC flater |
4.4.1.2.5 Bitdefinysjes foar LPCD_STATUS_DATA
tabel 15. Definysjes foar LPCD_STATUS_DATA bytes
Bit oan | Bytsje fan | Tapasberens fan statusbits neffens de ûnderlizzende operaasje fan LPCD of ULPCD | Beskriuwing foar de oerienkommende bit wurdt ynsteld yn status byte. | ||
LPCD | ULPCD | ||||
31 | 7 | RFUs | Reservearre | ||
6 | 6 | Ofbrekke_HIF | Y | N | Ofbrutsen fanwege HIF-aktiviteit |
5 | 5 | CLKDET flater | N | Y | Ofbrutsen fanwegen CLKDET-flater barde |
4 | 4 | XTAL Timeout | N | Y | Ofbrutsen fanwege XTAL Timeout barde |
3 | 3 | VDDPA LDO Overcurrent | N | Y | Ofbrutsen fanwegen VDDPA LDO-oerstream barde |
2 | 2 | Eksterne RF fjild | Y | Y | Ofbrutsen fanwege eksterne RF-fjild |
1 | 1 | GPIO3 ôfbrekke | N | Y | Ofbrutsen fanwege feroaring fan GPIO3-nivo |
0 | 0 | Kaart ûntdutsen | Y | Y | Kaart wurdt ûntdutsen |
4.4.1.2.6 Bitdefinysjes foar LPCD_CALIBRATION_DONE Statusdata
Tabel 16. Definysjes foar LPCD_CALIBRATION_DONE statusdatabytes foar ULPCD
Bit oan | Bytsje fan | Status fan LPCD_CALIBRATION DONE barren | Beskriuwing foar de oerienkommende bit wurdt ynsteld yn status byte. |
31 | 11 | Reservearre | |
10 | 0 | Referinsjewearde fan ULPCD-kalibraasje | De mjitten RSSI-wearde by ULPCD-kalibraasje dy't wurdt brûkt as referinsje by ULPCD |
Tabel 17. Definysjes foar LPCD_CALIBRATION_DONE statusdatabytes foar LPCD
Bit oan | Bytsje fan | Tapasberens fan statusbits neffens de ûnderlizzende operaasje fan LPCD of ULPCD | Beskriuwing foar de oerienkommende bit wurdt ynsteld yn status byte. | ||
2 | 2 | Eksterne RF fjild | Y | Y | Ofbrutsen fanwege eksterne RF-fjild |
1 | 1 | GPIO3 ôfbrekke | N | Y | Ofbrutsen fanwege feroaring fan GPIO3-nivo |
0 | 0 | Kaart ûntdutsen | Y | Y | Kaart wurdt ûntdutsen |
4.4.2 Behanneljen fan ferskate bootsenario's
De PN5190 IC behannelet ferskate flaterbetingsten yn ferbân mei IC-parameters lykas hjirûnder.
4.4.2.1 Hantering fan temperatuerscenario as PN5190 ûnder wurking is
Wannear't de ynterne temperatuer fan 'e PN5190 IC de drompelwearde berikt lykas konfigureare yn it EEPROM-fjild TEMP_WARNING [2], komt de IC yn 'e standby. En as gefolch as EEPROM-fjild ENABLE_GPIO0_ON_OVERTEMP [2] is konfigureare om in notifikaasje te ferheegjen nei de host, dan sil GPIO0 heech wurde lutsen om de IC oer temperatuer te melden.
As en as de IC-temperatuer falt ûnder de drompelwearde lykas konfigureare yn it EEPROM-fjild TEMP_WARNING [2], sil de IC opstarte mei BOOT_EVENT lykas yn Tabel 11 en BOOT_TEMP-bootstatusbit is ynsteld lykas yn Tabel 12 en GPIO0 sil leech wurde lutsen.
4.4.2.2 Behanneling fan oerstreaming
As PN5190 IC de oerstreambetingst sintet, skeakelt de IC RF-krêft út en stjoert de TX_OVERCURRENT_ERROR_EVENT lykas yn Tabel 11.
De doer fan 'e oerstreamende betingst kin regele wurde troch it feroarjen fan it EEPROM-fjild TXLDO_CONFIG [2].
Foar ynformaasje oer IC oer aktuele drompel, ferwize nei dokumint [2].
Noat:
As d'r oare barrens of antwurden binne dy't wachtsje, sille se nei de host stjoerd wurde.
4.4.2.3 Ferlies fan VDDIO tidens operaasje
As PN5190 IC tsjinkomt dat der gjin VDDIO (VDDIO ferlies), komt de IC yn standby.
IC bootet allinich as de VDDIO beskikber is, mei BOOT_EVENT lykas yn Tabel 11 en BOOT_VDDIO_START bootstatusbit is ynsteld lykas yn Tabel 12.
Foar ynformaasje oer PN5190 IC statyske skaaimerken, ferwize nei dokumint [2].
4.4.3 Behanneling fan ôfbrekke senario
De PN5190 IC hat in stipe foar it ôfbrekken fan de hjoeddeiske útfierende kommando's en it gedrach fan 'e PN5190 IC, as sa'n ôfbrekke kommando lykas Seksje 4.5.4.5.2 wurdt stjoerd nei PN5190 IC is lykas werjûn yn Tabel 18.
Noat:
Doe't PN5190 IC is yn ULPCD en ULP-Standby modus, kin it net ôfbrutsen wurde troch it ferstjoeren fan in Seksje 4.5.4.5.2 OF troch in SPI-transaksje te begjinnen (troch leech te lûken op SPI_NTS-sinjaal).
Tabel 18. Ferwachte reaksje op evenemint as ferskate kommando's beëinige binne mei Seksje 4.5.4.5.2
Kommando's | Gedrach as Switch Mode Normaal kommando wurdt ferstjoerd |
Alle kommando's wêr't lege macht net ynfierd wurdt | EVENT_STAUS is ynsteld op "IDLE_EVENT" |
Switch Mode LPCD | EVENT_STATUS is ynsteld op "LPCD_EVENT" mei "LPCD_ STATUS_DATA" dy't statusbits oanjout as "Abort_HIF" |
Switch Mode Standby | EVENT_STAUS is ynsteld op "BOOT_EVENT" mei "BOOT_ STATUS_DATA" dy't bits "BOOT_SPI" oanjout |
Switch Mode Autocoll (Gjin autonome modus, autonome modus mei standby en autonome modus sûnder standby) | EVENT_STAUS is ynsteld op "AUTOCOLL_EVENT" mei STATUS_DATA bits oanjout kommando waard brûker annulearre. |
4.5 Normaal Mode Operation Instruction Details
4.5.1 Register Manipulaasje
Ynstruksjes fan dizze seksje wurde brûkt om tagong te krijen ta de logyske registers fan PN5190.
4.5.1.1 WRITE_REGISTER
Dizze ynstruksje wurdt brûkt om in 32-bit wearde (lyts-endian) te skriuwen nei in logysk register.
4.5.1.1.1 Betingsten
It adres fan it register moat bestean, en it register moat of it READ-WRITE of WRITE-ONLY attribút hawwe.
4.5.1.1.2 Opdracht
tabel 19. WRITE_REGISTER kommando wearde Skriuw in 32-Bit wearde oan in register.
Payload Field | Lingte | Wearde / Beskriuwing |
Registrearje Adres | 1 byte | Adres fan it register. |
Tabel 19. WRITE_REGISTER kommando wearde ... ferfolch
Skriuw in 32-Bit wearde nei in register.
Payload Field | Lingte | Wearde / Beskriuwing |
Wearde | 4 Bytes | 32-Bit registerwearde dy't skreaun wurde moat. (Lyts-endian) |
4.5.1.1.3 Antwurd
tabel 20. WRITE_REGISTER antwurd wearde
Payload Field | Lingte | Wearde / Beskriuwing |
Status | 1 byte | Status fan 'e operaasje [Tabel 9]. Ferwachte wearden binne as hjirûnder: |
PN5190_STATUS_SUCCESS | ||
PN5190_STATUS_INSTR_ERROR |
4.5.1.1.4 barren
Der binne gjin eveneminten foar dit kommando.
4.5.1.2 WRITE_REGISTER_OR_MASK
Dizze ynstruksje wurdt brûkt om de ynhâld fan register te feroarjen mei in logyske OR-operaasje. De ynhâld fan it register wurdt lêzen en in logyske OR-operaasje wurdt útfierd mei it levere masker. De wizige ynhâld wurdt werom skreaun nei it register.
4.5.1.2.1 Betingsten
It adres fan it register moat bestean, en it register moat it READ-WRITE attribút hawwe.
4.5.1.2.2 Opdracht
tabel 21. WRITE_REGISTER_OR_MASK kommando wearde Fier in logyske OR operaasje op in register mei help fan foarsjoen masker.
Payload fjild | Lingte | Wearde / beskriuwing |
Registrearje Adres | 1 byte | Adres fan it register. |
Masker | 4 Bytes | Bitmask brûkt as operand foar logyske OR-operaasje. (Lyts-endian) |
4.5.1.2.3 Antwurd
tabel 22. WRITE_REGISTER_OR_MASK antwurd wearde
Payload Field | Lingte | Wearde / Beskriuwing |
Status | 1 byte | Status fan 'e operaasje [Tabel 9]. Ferwachte wearden binne as hjirûnder: |
PN5190_STATUS_SUCCESS | ||
PN5190_STATUS_INSTR_ERROR |
4.5.1.2.4 barren
Der binne gjin eveneminten foar dit kommando.
4.5.1.3 WRITE_REGISTER_AND_MASK
Dizze ynstruksje wurdt brûkt om de ynhâld fan register te feroarjen mei in logyske EN-operaasje. De ynhâld fan it register wurdt lêzen en in logyske EN-operaasje wurdt útfierd mei it levere masker. De wizige ynhâld wurdt werom skreaun nei it register.
4.5.1.3.1 Betingsten
It adres fan it register moat bestean, en it register moat it READ-WRITE attribút hawwe.
4.5.1.3.2 Opdracht
tabel 23. WRITE_REGISTER_AND_MASK kommando wearde Fier in logyske EN operaasje op in register mei help fan foarsjoen masker.
Payload fjild | Lingte | Wearde / beskriuwing |
Registrearje Adres | 1 byte | Adres fan it register. |
Masker | 4 Bytes | Bitmask brûkt as operand foar logyske EN operaasje. (Lyts-endian) |
4.5.1.3.3 Antwurd
tabel 24. WRITE_REGISTER_AND_MASK antwurd wearde
Payload Field | Lingte | Wearde / Beskriuwing |
Status | 1 byte | Status fan 'e operaasje [Tabel 9]. Ferwachte wearden binne as hjirûnder: |
PN5190_STATUS_SUCCESS | ||
PN5190_STATUS_INSTR_ERROR |
4.5.1.3.4 barren
Der binne gjin eveneminten foar dit kommando.
4.5.1.4 WRITE_REGISTER_MULTIPLE
Dizze ynstruksjefunksjonaliteit is fergelykber mei de seksje 4.5.1.1, seksje 4.5.1.2, seksje 4.5.1.3, mei de mooglikheid om se te kombinearjen. Yn feite nimt it in array fan register-type-wearde set en fiert passende aksje. It type wjerspegelet de aksje dy't òf skriuwregister, logyske OR operaasje is op in register of logyske EN operaasje op in register.
4.5.1.4.1 Betingsten
It respektivelike logyske adres fan it register binnen in set moat bestean.
It register tagong attribút moat útfiere fan fereaske aksje (type):
- Skriuw aksje (0x01): READ-WRITE of WRITE-ONLY attribút
- OR masker aksje (0x02): READ-WRITE attribút
- EN masker aksje (0x03): READ-WRITE attribút
De grutte fan 'Set'-array moat yn it berik wêze fan 1 - 43, ynklusyf.
Fjild 'Type' moat wêze yn it berik fan 1 - 3, ynklusyf
4.5.1.4.2 Opdracht
tabel 25. WRITE_REGISTER_MULTIPLE kommando wearde Fier in skriuwregister operaasje mei help fan in set fan Register-Wearde pearen.
Payload fjild | Lingte | Wearde / beskriuwing | |||
Set [1…n] | 6 Bytes | Registrearje Adres | 1 byte | Logysk adres fan it register. | |
Type | 1 byte | 0x1 | Skriuw Register | ||
0x2 | Skriuw Register OR Mask | ||||
0x3 | Skriuw Register EN Mask | ||||
Wearde | 4 Bytes | 32 Bite register wearde dy't moat wurde skreaun, of bitmask brûkt foar logyske operaasje. (Lyts-endian) |
Opmerking: Yn gefal fan in útsûndering wurdt de operaasje net weromdraaid, dws registers dy't wizige binne oant útsûndering optreedt, bliuwe yn wizige steat. Host moat juste aksjes nimme om te herstellen nei in definieare steat.
4.5.1.4.3 Antwurd
tabel 26. WRITE_REGISTER_MULTIPLE antwurd wearde
Payload Field | Lingte | Wearde / Beskriuwing |
Status | 1 byte | Status fan 'e operaasje [Tabel 9]. Ferwachte wearden binne as hjirûnder: |
PN5190_STATUS_SUCCESS | ||
PN5190_STATUS_INSTR_ERROR |
4.5.1.4.4 barren
Der binne gjin eveneminten foar dit kommando.
4.5.1.5 READ_REGISTER
Dizze ynstruksje wurdt brûkt om de ynhâld fan in logysk register werom te lêzen. De ynhâld is oanwêzich yn it antwurd, as 4-byte wearde yn in lyts-endian formaat.
4.5.1.5.1 Betingsten
It adres fan it logyske register moat bestean. It tagong attribút fan it register moat of READ-WRITE of READ-ONLY wêze.
4.5.1.5.2 Opdracht
tabel 27. READ_REGISTER kommando wearde
Lês werom ynhâld fan in register.
Payload Field | Lingte | Wearde / Beskriuwing |
Registrearje Adres | 1 byte | Adres fan it logyske register |
4.5.1.5.3 Antwurd
tabel 28. READ_REGISTER antwurd wearde
Payload Field | Lingte | Wearde / Beskriuwing |
Status | 1 byte | Status fan 'e operaasje [Tabel 9]. Ferwachte wearden binne as hjirûnder: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR (Gjin fierdere gegevens binne oanwêzich) | ||
Register Wearde | 4 Bytes | 32-bit registerwearde dy't útlêzen is. (Lyts-endian) |
4.5.1.5.4 barren
Der binne gjin eveneminten foar dit kommando.
4.5.1.6 READ_REGISTER_MULTIPLE
Dizze ynstruksje wurdt brûkt om meardere logyske registers tagelyk te lêzen. It resultaat (ynhâld fan elk register) wurdt jûn yn it antwurd op de ynstruksje. Registeradres sels is net opnommen yn it antwurd. De folchoarder fan 'e registerynhâld binnen it antwurd komt oerien mei de folchoarder fan' e registeradressen binnen de ynstruksje.
4.5.1.6.1 Betingsten
Alle registeradressen binnen de ynstruksje moatte bestean. De tagong attribút foar elk register moat òf wêze READ-WRITE of READ-ONLY. De grutte fan 'Register Address'-array moat yn it berik wêze fan 1 - 18, ynklusyf.
4.5.1.6.2 Opdracht
tabel 29. READ_REGISTER_MULTIPLE kommando wearde Fier in lêzen register operaasje op in set fan registers.
Payload Field | Lingte | Wearde / Beskriuwing |
Registraasjeadres[1…n] | 1 byte | Registrearje Adres |
4.5.1.6.3 Antwurd
tabel 30. READ_REGISTER_MULTIPLE antwurd wearde
Payload fjild | Lingte | Wearde / beskriuwing | ||
Status | 1 byte | Status fan 'e operaasje [Tabel 9]. Ferwachte wearden binne as hjirûnder: | ||
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR (Gjin fierdere gegevens binne oanwêzich) | ||||
Registerwearde [1…n] | 4 Bytes | Wearde | 4 Bytes | 32-bit registerwearde dy't útlêzen is (lyts-endian). |
4.5.1.6.4 barren
Der binne gjin eveneminten foar dit kommando.
4.5.2 E2PROM Manipulaasje
It tagonklike gebiet yn E2PROM is neffens EEPROM-kaart en adresbere grutte.
Noat:
1. Oeral wêr't it 'E2PROM-adres' wurdt neamd yn 'e ûndersteande ynstruksjes, sil ferwize nei de grutte fan it adresseerbere EEPROM-gebiet.
4.5.2.1 WRITE_E2PROM
Dizze ynstruksje wurdt brûkt om ien of mear wearden nei E2PROM te skriuwen. It fjild 'Wearden' befettet de gegevens dy't skreaun wurde nei E2PROM begjinnend by it adres dat wurdt jûn troch fjild 'E2PROM Address'. De gegevens wurde skreaun yn opienfolgjende folchoarder.
Noat:
Tink derom dat dit in blokkearjende kommando is, dit betsjut dat de NFC FE blokkearre is tidens de skriuwoperaasje. Dit kin ferskate millisekonden duorje.
4.5.2.1.1 Betingsten
'E2PROM Address' fjild moat yn it berik wêze lykas per [2]. It oantal bytes binnen it fjild 'Wearden' moat yn it berik wêze fan 1 - 1024 (0x0400), ynklusyf. Skriuwoperaasje moat net fierder gean as EEPROM-adres lykas neamd yn [2]. Flaterantwurd sil nei de host stjoerd wurde as it adres grutter is as de EEPROM-adresromte lykas yn [2].
4.5.2.1.2 Opdracht
Tabel 31. WRITE_E2PROM kommando wearde Skriuw opjûne wearden sequentially nei E2PROM.
Payload fjild | Lingte | Wearde / beskriuwing |
E2PROM-adres | 2 byte | Adres yn EEPROM wêrfan skriuwoperaasje sil begjinne. (Little-endian) |
Wearden | 1 - 1024 Bytes | Wearden dy't moatte wurde skreaun nei E2PROM yn opienfolgjende folchoarder. |
4.5.2.1.3 Antwurd
tabel 32. WRITE_EEPROM antwurd wearde
Payload Field | Lingte | Wearde / Beskriuwing |
Status | 1 byte | Status fan 'e operaasje [Tabel 9]. Ferwachte wearden binne as hjirûnder: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR PN5190_STATUS_MEMORY_ERROR |
4.5.2.1.4 barren
Der binne gjin eveneminten foar dit kommando.
4.5.2.2 READ_E2PROM
Dizze ynstruksje wurdt brûkt om werom te lêzen gegevens út E2PROM ûnthâld gebiet. It fjild 'E2PROM-adres' jout it startadres fan 'e lêsoperaasje oan. It antwurd befettet de gegevens lêzen fan E2PROM.
4.5.2.2.1 Betingsten
'E2PROM-adres'-fjild moat yn in jildich berik wêze.
It fjild 'Aantal bytes' moat yn it berik wêze fan 1 - 256, ynklusyf.
Lês operaasje moat net gean fierder as it lêste tagonklike EEPROM adres.
Flaterantwurd sil nei de host stjoerd wurde, as it adres grutter is as de EEPROM-adresromte.
4.5.2.2.2 Opdracht
Tabel 33. READ_E2PROM kommando wearde Lês út wearden út E2PROM sequentially.
Payload fjild | Lingte | Wearde / beskriuwing |
E2PROM-adres | 2 byte | Adres yn E2PROM wêrfan lêsoperaasje sil begjinne. (Little-endian) |
Oantal Bytes | 2 byte | Oantal bytes te lêzen út. (Lyts-endian) |
4.5.2.2.3 Antwurd
tabel 34. READ_E2PROM antwurd wearde
Payload Field | Lingte | Wearde / Beskriuwing |
Status | 1 byte | Status fan 'e operaasje [Tabel 9]. Ferwachte wearden binne as hjirûnder: |
PN5190_STATUS_SUCCESS | ||
PN5190_STATUS_INSTR_ERROR (Gjin fierdere gegevens binne oanwêzich) | ||
Wearden | 1 - 1024 Bytes | Wearden dy't yn opfolgjende folchoarder binne lêzen. |
4.5.2.2.4 barren
Der binne gjin eveneminten foar dit kommando.
4.5.2.3 GET_CRC_USER_AREA
Dizze ynstruksje wurdt brûkt om de CRC te berekkenjen foar it folsleine brûkerskonfiguraasjegebiet ynklusyf it protokolgebiet fan PN5190 IC.
4.5.2.3.1 Opdracht
Tabel 35. GET_CRC_USER_AREA kommando wearde
Lês CRC út fan brûkerskonfiguraasjegebiet ynklusyf protokolgebiet.
Payload Field | Lingte | Wearde / Beskriuwing |
– | – | Gjin gegevens yn lading |
4.5.2.3.2 Antwurd
Tabel 36. GET_CRC_USER_AREA antwurd wearde
Payload fjild | Lingte | Wearde / beskriuwing |
Status | 1 byte | Status fan 'e operaasje [Tabel 9]. Ferwachte wearden binne as hjirûnder: |
PN5190_STATUS_SUCCESS | ||
PN5190_STATUS_INSTR_ERROR (Gjin fierdere gegevens binne oanwêzich) | ||
Wearden | 4 Bytes | 4 bytes fan CRC-gegevens yn lyts-endian-formaat. |
4.5.2.3.3 barren
Der binne gjin eveneminten foar dit kommando.
4.5.3 CLIF gegevens Manipulaasje
De ynstruksjes beskreaun yn dizze seksje beskriuwe de kommando's foar RF-oerdracht en ûntfangst.
4.5.3.1 EXCHANGE_RF_DATA
De RF-útwikselfunksje fiert in oerdracht fan de TX-gegevens en wachtet op de ûntfangst fan alle RX-gegevens.
De funksje komt werom yn gefal fan in ûntfangst (of ferkeard of korrekt) as in time-out bard. De timer wurdt begûn mei de END fan TRANSMISSJON en stoppe mei de START fan RECEPTION. Timeoutwearde foarôf konfigureare yn EEPROM sil brûkt wurde yn gefal dat time-out net konfigureare is foar it útfieren fan Exchange-kommando.
As transceiver_state is
- yn IDLE wurdt de TRANSCEIVE-modus ynfierd.
- Yn WAIT_RECEIVE wurdt de transceiverstatus weromset nei TRANSCEIVE MODE yn gefal fan inisjatyfnimmerbit is ynsteld
- Yn WAIT_TRANSMIT wurdt de transceiver-tastân weromset nei TRANSCEIVE MODE yn gefal dat inisjatyfnimmerbit NET ynsteld is
It fjild 'Aantal jildige bits yn lêste byte' jout de krekte gegevenslingte oan dy't oerdroegen wurde.
4.5.3.1.1 Betingsten
Grutte fan it fjild 'TX Data' moat yn it berik wêze fan 0 - 1024, ynklusyf.
'Aantal jildige bits yn lêste byte' fjild moat wêze yn it berik fan 0 - 7.
It kommando moat net oproppen wurde tidens in trochgeande RF-oerdracht. Kommando soarget foar de juste steat fan 'e transceiver foar it ferstjoeren fan de gegevens.
Noat:
Dit kommando is allinich jildich foar Reader-modus en P2P "Passive / Aktive inisjatyfnimmermodus.
4.5.3.1.2 Opdracht
tabel 37. EXCHANGE_RF_DATA kommando wearde
Skriuw TX-gegevens nei ynterne RF-oerdrachtbuffer en begjint oerdracht mei transceive-kommando en wachtsje oant ûntfangst of Time-Out om in antwurd op 'e host te meitsjen.
Payload Field | Lingte | Wearde / Beskriuwing | |
Oantal jildige bits yn lêste byte | 1 byte | 0 | Alle bits fan lêste byte wurde oerdroegen |
1 – 7 | Oantal bits binnen de lêste byte om oer te dragen. | ||
RFExchangeConfig | 1 byte | Konfiguraasje fan de RFExchange funksje. Details sjoch hjirûnder |
Tabel 37. EXCHANGE_RF_DATA kommando wearde ... ferfolch
Skriuw TX-gegevens nei ynterne RF-oerdrachtbuffer en begjint oerdracht mei transceive-kommando en wachtsje oant ûntfangst of Time-Out om in antwurd op 'e host te meitsjen.
Payload Field | Lingte | Wearde / Beskriuwing |
TX data | n bytes | TX-gegevens dy't moatte wurde ferstjoerd fia CLIF mei transceive kommando. n = 0 - 1024 bytes |
Tabel 38. RFexchangeConfig Bitmask
b7 | b6 | b5 | b4 | b3 | b2 | b1 | b0 | Beskriuwing |
Bits 4 - 7 binne RFU | ||||||||
X | Omfetsje RX-gegevens as antwurd basearre op RX_STATUS, as bit ynsteld op 1b. | |||||||
X | Omfetsje EVENT_STATUS-register as antwurd, as bit ynsteld op 1b. | |||||||
X | Omfetsje RX_STATUS_ERROR registrearje as antwurd, as bit is ynsteld op 1b. | |||||||
X | Omfetsje RX_STATUS-register as antwurd, as bit is ynsteld op 1b. |
4.5.3.1.3 Antwurd
tabel 39. EXCHANGE_RF_DATA antwurd wearde
Payload Field | Lingte | Wearde / Beskriuwing |
Status | 1 byte | Status fan 'e operaasje [Tabel 9]. Ferwachte wearden binne as hjirûnder: |
PN5190_STATUS_INSTR_SUCCESS PN5190_STATUS_INSTR_ERROR (Gjin fierdere gegevens binne oanwêzich) PN5190_STATUS_TIMEOUT PN5190_STATUS_RX_TIMEOUT PN5190_STATUS_NO_RF_FIELD PN5190_STATUS_TIMEOUT_WITH_EMD_ERROR |
||
RX_STATUS | 4 Bytes | As RX_STATUS wurdt oanfrege (lyts-endian) |
RX_STATUS_ERROR | 4 Bytes | As RX_STATUS_ERROR wurdt oanfrege (lyts-endian) |
EVENT_STATUS | 4 Bytes | As EVENT_STATUS wurdt oanfrege (lyts-endian) |
RX Data | 1 - 1024 Bytes | As RX gegevens wurdt frege. RX-gegevens ûntfongen tidens RF-ûntfangstfaze fan RF-útwikseling. |
4.5.3.1.4 barren
Der binne gjin eveneminten foar dit kommando.
4.5.3.2 TRANSMIT_RF_DATA
Dizze ynstruksje wurdt brûkt om gegevens yn 'e ynterne CLIF-oerdrachtbuffer te skriuwen en oerdracht te begjinnen mei yntern transceive kommando. De grutte fan dizze buffer is beheind ta 1024 bytes. Nei't dizze ynstruksje is útfierd, wurdt automatysk in RF-ûntfangst begûn.
It kommando komt daliks werom nei't de oerdracht foltôge is en net wachtsje op de foltôging fan 'e ûntfangst.
4.5.3.2.1 Betingsten
It oantal bytes binnen it fjild 'TX Data' moat yn it berik wêze fan 1 - 1024, ynklusyf.
It kommando moat net oproppen wurde tidens in trochgeande RF-oerdracht.
4.5.3.2.2 Opdracht
tabel 40. TRANSMIT_RF_DATA kommando wearde Skriuw TX gegevens oan ynterne CLIF transmission buffer.
Payload Field | Lingte | Wearde / Beskriuwing |
Oantal jildige bits yn lêste byte | 1 byte | 0 Alle bits fan lêste byte wurde oerdroegen 1 - 7 Oantal bits binnen lêste byte te ferstjoeren. |
RFUs | 1 byte | Reservearre |
TX data | 1 - 1024 Bytes | TX-gegevens dy't sille wurde brûkt tidens de folgjende RF-oerdracht. |
4.5.3.2.3 Antwurd
tabel 41. TRANSMIT_RF_DATA antwurd wearde
Payload Field | Lingte | Wearde / Beskriuwing |
Status | 1 byte | Status fan 'e operaasje [Tabel 9]. Ferwachte wearden binne as hjirûnder: |
PN5190_STATUS_INSTR_SUCCESS PN5190_STATUS_INSTR_ERROR PN5190_STATUS_NO_RF_FIELD PN5190_STATUS_NO_EXTERNAL_RF_FIELD |
4.5.3.2.4 barren
Der binne gjin eveneminten foar dit kommando.
4.5.3.3 RETRIEVE_RF_DATA
Dizze ynstruksje wurdt brûkt om gegevens te lêzen fan 'e ynterne CLIF RX-buffer, dy't de RF-antwurdgegevens (as ien) befettet dy't derop binne pleatst fan 'e foarige útfiering fan seksje 4.5.3.1 mei de opsje om de ûntfongen gegevens net op te nimmen yn 'e antwurd of seksje 4.5.3.2 .XNUMX kommando.
4.5.3.3.1 Opdracht
tabel 42. RETRIEVE_RF_DATA kommando wearde Lês RX gegevens út ynterne RF ûntfangst buffer.
Payload Field | Lingte | Wearde / Beskriuwing |
Leech | Leech | Leech |
4.5.3.3.2 Antwurd
tabel 43. RETRIEVE_RF_DATA antwurd wearde
Payload Field | Lingte | Wearde / Beskriuwing |
Status | 1 byte | Status fan 'e operaasje [Tabel 9]. Ferwachte wearden binne as hjirûnder: |
Payload Field | Lingte | Wearde / Beskriuwing |
PN5190_STATUS_INSTR_SUCCESS PN5190_STATUS_INSTR_ERROR (Gjin fierdere gegevens binne oanwêzich) |
||
RX Data | 1 - 1024 Bytes | RX-gegevens dy't binne ûntfongen tidens lêste suksesfolle RF-ûntfangst. |
4.5.3.3.3 barren
Der binne gjin eveneminten foar dit kommando.
4.5.3.4 RECEIVE_RF_DATA
Dizze ynstruksje wachtet op de gegevens ûntfongen fia RF-ynterface fan 'e lêzer.
Yn lêzer modus, dizze ynstruksje jout werom of as der in ûntfangst (itsij ferkeard of korrekt) of in FWT timeout barde. De timer wurdt begûn mei it EIN fan TRANSMISSJE en stoppe mei de START fan ONTSTAAN. De standert timeoutwearde foarôf ynsteld yn EEPROM sil brûkt wurde yn it gefal dat time-out net konfigureare is foar it útfieren fan Exchange kommando.
Yn doelmodus komt dizze ynstruksje werom yn gefal fan ûntfangst (of ferkeard as korrekt) of Eksterne RF-flater.
Noat:
Dizze ynstruksje sil brûkt wurde mei TRANSMIT_RF_DATA kommando om TX en RX operaasje út te fieren ...
4.5.3.4.1 Opdracht
tabel 44. RECEIVE_RF_DATA kommando wearde
Payload Field | Lingte | Wearde / Beskriuwing |
ReceiveRFConfig | 1 byte | Konfiguraasje fan de funksje ReceiveRFConfig. Sjen Tabel 45 |
tabel 45. ReceiveRFConfig bitmask
b7 | b6 | b5 | b4 | b3 | b2 | b1 | b0 | Beskriuwing |
Bits 4 - 7 binne RFU | ||||||||
X | Omfetsje RX-gegevens as antwurd basearre op RX_STATUS, as bit ynsteld op 1b. | |||||||
X | Omfetsje EVENT_STATUS-register as antwurd, as bit ynsteld op 1b. | |||||||
X | Omfetsje RX_STATUS_ERROR registrearje as antwurd, as bit is ynsteld op 1b. | |||||||
X | Omfetsje RX_STATUS-register as antwurd, as bit is ynsteld op 1b. |
4.5.3.4.2 Antwurd
tabel 46. RECEIVE_RF_DATA antwurd wearde
Payload fjild | Lingte | Wearde / beskriuwing |
Status | 1 byte | Status fan 'e operaasje [Tabel 9]. Ferwachte wearden binne as hjirûnder: |
PN5190_STATUS_INSTR_SUCCESS PN5190_STATUS_INSTR_ERROR (Gjin fierdere gegevens binne oanwêzich) PN5190_STATUS_TIMEOUT |
Payload fjild | Lingte | Wearde / beskriuwing |
PN5190_STATUS_NO_RF_FIELD PN5190_STATUS_NO_EXTERNAL_RF_FIELD |
||
RX_STATUS | 4 Bytes | As RX_STATUS wurdt oanfrege (lyts-endian) |
RX_STATUS_ERROR | 4 Bytes | As RX_STATUS_ERROR wurdt oanfrege (lyts-endian) |
EVENT_STATUS | 4 Bytes | As EVENT_STATUS wurdt oanfrege (lyts-endian) |
RX Data | 1 - 1024 Bytes | As RX gegevens wurdt frege. RX-gegevens ûntfongen oer RF. |
4.5.3.4.3 barren
Der binne gjin eveneminten foar dit kommando.
4.5.3.5 RETRIEVE_RF_FELICA_EMD_DATA (FeliCa EMD-konfiguraasje)
Dizze ynstruksje wurdt brûkt om gegevens te lêzen fan 'e ynterne CLIF RX-buffer, dy't in FeliCa EMD-antwurdgegevens befettet (as der is) dy't derop binne pleatst fan 'e foarige útfiering fan EXCHANGE_RF_DATA kommando werom mei Status 'PN5190_STATUS_TIMEOUT_WITH_EMD_ERROR'.
Noat: Dit kommando is beskikber fanôf PN5190 FW v02.03.
4.5.3.5.1 Opdracht
Lês RX gegevens út ynterne RF ûntfangst buffer.
tabel 47. RETRIEVE_RF_FELICA_EMD_DATA kommando wearde
Payload Field | Lingte | Wearde / Beskriuwing | |
FeliCaRFRetrieveConfig | 1 byte | 00 - FF | Konfiguraasje fan de RETRIEVE_RF_FELICA_EMD_DATA funksje |
konfiguraasje (bitmask) beskriuwing | bit 7..2: RFU bit 1: Include RX_STATUS_ ERROR register as antwurd, as bit is ynsteld op 1b. bit 0: Include RX_STATUS register as antwurd, as bit is ynsteld op 1b. |
4.5.3.5.2 Antwurd
tabel 48. RETRIEVE_RF_FELICA_EMD_DATA antwurd wearde
Payload fjild | Lingte | Wearde / beskriuwing | |||
Status | 1 byte | Status fan de operaasje. Ferwachte wearden binne as hjirûnder: PN5190_STATUS_INSTR_SUCCESS PN5190_STATUS_INSTR_ERROR (Gjin fierdere gegevens binne oanwêzich) | |||
RX_STATUS | 4 byte | As RX_STATUS wurdt oanfrege (lyts-endian) | |||
RX_STATUS_ ERROR | 4 byte | As RX_STATUS_ERROR wurdt oanfrege (lyts-endian) |
Payload fjild | Lingte | Wearde / beskriuwing | |||
RX Data | 1…1024 Byte | FeliCa EMD RX-gegevens dy't binne ûntfongen tidens lêste mislearre RF-ûntfangst mei Exchange Command. |
4.5.3.5.3 barren
Der binne gjin eveneminten foar dit kommando.
4.5.4 Switching Operation Mode
PN5190 stipet 4 ferskillende operaasjemodi:
4.5.4.1 Normaal
Dit is de standert modus, dêr't alle ynstruksjes binne tastien.
4.5.4.2 Standby
PN5190 is yn standby / sliepe steat te besparjen macht. Wake-up betingsten moatte wurde ynsteld om te definiearjen wannear't de standby wer ferlitte.
4.5.4.3 LPCD
PN5190 is yn lege-power card detection modus, dêr't it besiket te spoaren in kaart dy't it ynfieren fan it bestjoeringssysteem folume, mei leechst mooglike macht konsumpsje.
4.5.4.4 Autokoll
PN5190 fungearret as RF-harker, fiert autonoom aktivearring fan doelmodus út (om real-time beheiningen te garandearjen)
4.5.4.5 SWITCH_MODE_NORMAL
It kommando Switch Mode Normal hat trije gebrûksgefallen.
4.5.4.5.1 UseCase1: Fier normale operaasjemodus yn by opstarten (POR)
Brûk om werom te setten nei Idle-status foar it ûntfangen / ferwurkjen fan it folgjende kommando troch yn 'e normale operaasjemodus te gean.
4.5.4.5.2 UseCase2: Beëinigje al rinnende kommando om te wikseljen nei normale operaasje modus (ôfbrekke kommando)
Brûk om werom te setten nei Idle-status foar it ûntfangen / ferwurkjen fan it folgjende kommando troch de al rinnende kommando's te beëinigjen.
Kommando's lykas standby, LPCD, Exchange, PRBS en Autocoll sille mooglik wêze kinne wurde beëinige mei dit kommando.
Dit is de ienige spesjale kommando, dat hat gjin antwurd. Ynstee hat it in EVENT-notifikaasje.
Ferwize nei Seksje 4.4.3 foar mear ynformaasje oer it type eveneminten dy't foarkomme by ferskate ûnderlizzende kommando-útfiering.
4.5.4.5.2.1 UseCase2.1:
Dit kommando sil alle CLIF TX-, RX- en fjildkontrôleregisters weromsette nei bootstatus. It útjaan fan dit kommando sil alle besteande RF-fjilden útskeakelje.
4.5.4.5.2.2 UseCase2.2:
Beskikber fan PN5190 FW v02.03 ôf:
Dit kommando sil CLIF TX, RX, en Field Control Registers net wizigje, mar sil de transceiver allinich ferpleatse nei IDLE-status.
4.5.4.5.3 UseCase3: Normale operaasje modus by sêft reset / ôfslute út standby, LPCD Yn dit gefal giet de PN5190 direkt yn 'e normale operaasje modus, troch it stjoeren fan de IDLE_EVENT nei de host (figuer 12 of figuer 13) en " IDLE_EVENT" bit is ynsteld yn Tabel 11.
Der is gjin eask om te stjoeren SWITCH_MODE_NORMAL kommando.
Noat:
Nei't de IC is oerskeakele nei normale modus, wurde alle ynstellingen fan RF wizige nei standertstatus. It is ymperatyf dat de respektivelike RF-konfiguraasje en oare relatearre registers moatte wurde laden mei passende wearden foardat jo in RF ON- of RF-útwikseloperaasje útfiere.
4.5.4.5.4 Kommando-frame om te stjoeren foar ferskate gebrûksgefallen
4.5.4.5.4.1 UseCase1: Kommando ynfiere normale operaasje modus by opstarten (POR) 0x20 0x01 0x00
4.5.4.5.4.2 UseCase2: Kommando om al rinnende kommando's te beëinigjen om te wikseljen nei normale operaasjemodus
Gebrûk 2.1:
0x20 0x00 0x00
Gebrûk 2.2: (Fan FW v02.02 ôf):
0x20 0x02 0x00
4.5.4.5.4.3 UseCase3: Kommando foar normale operaasje modus by sêft reset / ôfslute út standby, LPCD, ULPCD
Gjin. PN5190 komt direkt yn normale operaasje modus.
4.5.4.5.5 Antwurd
Gjin
4.5.4.5.6 barren
In BOOT_EVENT (yn EVENT_STATUS-register) wurdt ynsteld wat oanjout dat de normale modus ynfierd is en wurdt stjoerd nei de host. Ferwize nei figuer 12 en figuer 13 foar de evenemint gegevens.
In IDLE_EVENT (yn EVENT_STATUS register) wurdt ynsteld wat oanjout dat de normale modus ynfierd is en wurdt stjoerd nei de host. Ferwize nei figuer 12 en figuer 13 foar de evenemint gegevens.
In BOOT_EVENT (yn EVENT_STATUS register) wurdt ynsteld wat oanjout dat de normale modus ynfierd is en wurdt stjoerd nei de host. Ferwize nei figuer 12 en figuer 13 foar de evenemint gegevens.
4.5.4.6 SWITCH_MODE_AUTOCOLL
De Switch Mode Autocoll fiert automatysk de kaart aktivearring proseduere yn doel modus.
Fjild 'Autocoll Mode' moat yn it berik wêze fan 0 - 2, ynklusyf.
Yn gefal as fjild 'Autocoll Mode' is ynsteld op 2 (Autocoll): Field 'RF Technologies' (Tabel 50) moat in bitmask befetsje dy't oanjout dat de RF Technologies wurde stipe tidens Autocoll.
Gjin ynstruksjes moatte stjoerd wurde wylst yn dizze modus.
Beëiniging wurdt oanjûn mei in ûnderbrekking.
4.5.4.6.1 Opdracht
tabel 49. SWITCH_MODE_AUTOCOLL kommando wearde
Parameter | Lingte | Wearde / Beskriuwing | |
RF Technologies | 1 byte | Bitmask dat de RF-technology oanjout om nei te harkjen tidens Autocoll. | |
Autokollemodus | 1 byte | 0 | Gjin Autonome modus, ie Autocoll einiget as eksterne RF fjild is net oanwêzich. |
Beëiniging yn gefal fan | |||
• NO RF FIELD of RF FIELD is ferdwûn | |||
• PN5190 is AKTIVEERD yn TARGET modus | |||
1 | Autonome modus mei standby. As der gjin RF-fjild oanwêzich is, komt Autocoll automatysk yn Standby-modus. Sadree't RF eksterne RF fjild wurdt ûntdutsen, giet PN5190 wer Autocoll modus. | ||
Beëiniging yn gefal fan | |||
• PN5190 is AKTIVEERD yn TARGET modus | |||
Fan PN5190 FW v02.03 fierder: As EEPROM Field "bCard ModeUltraLowPowerEnabled" op adres '0xCDF' is ynsteld op '1', dan komt PN5190 Ultra low-power standby. | |||
2 | Autonome modus sûnder standby. As der gjin RF-fjild oanwêzich is, wachtet PN5190 oant RF-fjild oanwêzich is foardat it Autocoll-algoritme begjint. Standby wurdt net brûkt yn dit gefal. | ||
Beëiniging yn gefal fan • PN5190 is AKTIVEERD yn TARGET modus |
Tabel 50. RF Technologies Bitmask
b7 | b6 | b5 | b4 | b3 | b2 | b1 | b0 | Beskriuwing |
0 | 0 | 0 | 0 | RFUs | ||||
X | As ynsteld op 1b, is harkjen nei NFC-F Active ynskeakele. (Net beskikber). | |||||||
X | As ynsteld op 1b, is harkjen nei NFC-A Active ynskeakele. (Net beskikber). | |||||||
X | As ynsteld op 1b, is harkjen nei NFC-F ynskeakele. | |||||||
X | As ynsteld op 1b, is harkjen nei NFC-A ynskeakele. |
4.5.4.6.2 Antwurd
It antwurd jout allinich oan dat it kommando is ferwurke.
tabel 51. SWITCH_MODE_AUTOCOLL antwurd wearde
Payload Field | Lingte | Wearde / Beskriuwing |
Status | 1 byte | Status fan 'e operaasje [Tabel 9]. Ferwachte wearden binne as hjirûnder: |
PN5190_STATUS_INSTR_SUCCESS PN5190_STATUS_INSTR_ERROR (Switchmodus is net ynfierd fanwege ferkearde ynstellings) |
4.5.4.6.3 barren
It evenemint notifikaasje wurdt ferstjoerd as it kommando is klear, en de normale modus wurdt ynfierd. Host sil de antwurdbytes lêze op basis fan 'e barrenwearde.
Noat:
As de status is net "PN5190_STATUS_INSTR_SUCCESS", dan fierder "Protokol" en "Card_Activated" databytes binne net oanwêzich.
Technology ynformaasje wurdt ophelle út de registers mei help fan Seksje 4.5.1.5, Seksje 4.5.1.6 kommando.
De folgjende tabel lit de evenemintgegevens sjen dy't wurde ferstjoerd as ûnderdiel fan it evenemintberjocht Figuer 12 en Fig. 13.
Tabel 52. EVENT_SWITCH_MODE_AUTOCOLL – AUTOCOLL_EVENT gegevens Switch operaasje modus Autocoll evenemint
Payload Field | Lingte | Wearde / Beskriuwing | |
Status | 1 byte | Status fan de operaasje | |
PN5190_STATUS_INSTR_SUCCESS | PN5190 is AKTIVEERD yn TARGET modus. Fierdere gegevens yn dit evenemint binne jildich. |
||
PN5190_STATUS_PREVENT_STANDBY | Jout oan dat PN5190 wurdt foarkommen om yn Standby-modus te gean. Dizze status is allinich jildich as de Autocoll-modus selektearre is as "Autonome modus mei standby". |
PN5190_STATUS_NO_EXTERNAL_RF_ FIELD | Jout oan dat gjin ekstern RF-fjild oanwêzich is tidens de útfiering fan Autocoll yn net-autonome modus | ||
PN5190_STATUS_USER_CANCELLED | Jout oan dat it hjoeddeistige kommando yn-progress wurdt ôfbrutsen troch it normale kommando skeakelmodus | ||
Protokol | 1 byte | 0x10 | Aktivearre as Passive TypeA |
0x11 | Aktivearre as Passive TypeF 212 | ||
0x12 | Aktivearre as Passive TypeF 424 | ||
0x20 | Aktivearre as Aktive TypeA | ||
0x21 | Aktivearre as Active TypeF 212 | ||
0x22 | Aktivearre as Active TypeF 424 | ||
Oare wearden | Unjildich | ||
Card_Activated | 1 byte | 0x00 | Gjin kaart aktivearring proses neffens ISO 14443-3 |
0x01 | Jout oan dat it apparaat is aktivearre yn Passive modus |
Noat:
Nei it lêzen fan de evenemint gegevens, gegevens ûntfongen fan de kaart / apparaat dat waard aktivearre (lykas 'n' bytes fan ATR_REQ / RATS as per ISO18092 / ISO1443-4), wurde lêzen mei help fan Seksje 4.5.3.3 kommando.
4.5.4.6.4 Kommunikaasje eksample
4.5.4.7 SWITCH_MODE_STANDBY
De Switch Mode Standby set de IC automatysk yn Standby mode. De IC sil wekker wurde nei konfigureare wekkerboarnen dy't foldogge oan 'e wekkerbetingsten.
Noat:
Tellerferrin foar ULP STANDBY en HIF ôfbrekke foar STANDBY binne standert beskikber om de standby-modi te ferlitten.
4.5.4.7.1 Opdracht
Tabel 53. SWITCH_MODE_STANDBY kommando wearde
Parameter | Lingte | Wearde / Beskriuwing |
Config | 1 byte | Bitmask kontrolearret de te brûken wekkerboarne en de Standby-modus om yn te gean. Ferwize nei Tabel 54 |
Tellerwearde | 2 Bytes | Brûkte wearde foar wekkerteller yn millisekonden. Maksimum stipe wearde is 2690 foar standby. Maksimum stipe wearde is 4095 foar ULP standby. De te leverjen wearde is yn in lyts-endian-formaat. Dizze parameterynhâld is allinich jildich as de "Config Bitmask" ynskeakele is foar wekker op teller ferrint. |
Tabel 54. Config Bitmask
b7 | b6 | b5 | b4 | b3 | b2 | b1 | b0 | Beskriuwing |
X | Fier ULP standby yn as bit is ynsteld op 1b Fier standby yn as bit is ynsteld op 0b. | |||||||
0 | RFUs | |||||||
X | Wekker op GPIO-3 as it heech is, as bit is ynsteld op 1b. (Net fan tapassing foar ULP-standby) | |||||||
X | Wekker op GPIO-2 as it heech is, as bit is ynsteld op 1b. (Net fan tapassing foar ULP-standby) | |||||||
X | Wekker op GPIO-1 as it heech is, as bit is ynsteld op 1b. (Net fan tapassing foar ULP-standby) | |||||||
X | Wekker op GPIO-0 as it heech is, as bit is ynsteld op 1b. (Net fan tapassing foar ULP-standby) | |||||||
X | Wake-up op wekker teller ferrint, as bit is ynsteld op 1b. Foar ULP-Standby is dizze opsje standert ynskeakele. | |||||||
X | Wekker op eksterne RF-fjild, as bit is ynsteld op 1b. |
Noat: Fan PN5190 FW v02.03, as EEPROM Field "CardModeUltraLowPowerEnabled" op adres '0xCDF' is ynsteld op '1', kin ULP standby konfiguraasje net brûkt wurde mei SWITCH_MODE_STANDBY Kommando.
4.5.4.7.2 Antwurd
It antwurd jout allinich oan dat it kommando is ferwurke en de standby-tastân sil allinich ynfierd wurde nei't it antwurd folslein lêzen is troch de host.
Tabel 55. SWITCH_MODE_STANDBY antwurd wearde Switch operaasje modus standby
Payload Field | Lingte | Wearde / Beskriuwing |
Status | 1 byte | Status fan 'e operaasje [Tabel 9]. Ferwachte wearden binne as hjirûnder: |
PN5190_STATUS_INSTR_SUCCESS PN5190_STATUS_INSTR_ERROR (Switchmodus is net ynfierd - fanwege ferkearde ynstellings) |
4.5.4.7.3 barren
It evenemint notifikaasje wurdt ferstjoerd as it kommando is klear, en de normale modus wurdt ynfierd. Ferwize nei it formaat fan it evenemint dat sil wurde ferstjoerd nei it foltôgjen fan it kommando lykas yn figuer 12 en figuer 13.
Yn gefal as PN5190 wurdt foarkommen om yn Standby-modus te gean, dan wurdt it barren "STANDBY_PREV_EVENT"-bit ynsteld yn EVENT_STATUS lykas neamd Tabel 11 stjoerd nei de host lâns de reden fan standby-previnsje lykas neamd yn Tabel 13.
4.5.4.7.4 Kommunikaasje Example
4.5.4.8 SWITCH_MODE_LPCD
De Switch Mode LPCD fiert in ûntstekkingsdeteksje op 'e antenne út fanwegen feroarjende omjouwing om' e antenne.
D'r binne 2 ferskillende modi fan LPCD. De HW-basearre (ULPCD) oplossing biedt in kompetitive enerzjyferbrûk mei in fermindere gefoelichheid. De FW-basearre (LPCD) oplossing biedt in bêste gefoelichheid yn 'e klasse mei in ferhege enerzjyferbrûk.
Yn 'e Single Mode fan FW basearre (LPCD) is d'r gjin kalibraasjeevenemint stjoerd nei host.
As ienige modus wurdt oproppen, wurde kalibraasje en opienfolgjende mjittingen allegear dien nei it ferlitten fan standby.
Foar kalibraasje evenemint yn inkele modus, earst útjaan single modus mei kalibraasje evenemint kommando. Nei kalibraasje wurdt in LPCD-kalibraasje-evenemint ûntfongen, wêrnei't it kommando mei ien modus stjoerd wurde moat mei de referinsjewearde krigen fan 'e foarige stap as de ynfierparameter.
De konfiguraasje fan 'e LPCD wurdt dien yn' e EEPROM / Flash Data ynstellings foardat it kommando wurdt neamd.
Noat:
GPIO3 ôfbrekke foar ULPCD, HIF ôfbrekke foar LPCD binne standert beskikber om modi mei lege enerzjy te ferlitten.
Wake-up fanwege teller ferrint is altyd ynskeakele.
Foar ULPCD moat DC-DC konfiguraasje wurde útskeakele yn EEPROM / Flash Data ynstellings en moat soargje VUP oanbod fia VBAT. De nedige jumper ynstellings moatte wurde makke. Foar EEPROM / Flash Data ynstellings, ferwize nei dokumint [2].
As it kommando foar LPCD/ULPCD-kalibraasje is, moat de host noch it folsleine frame stjoere.
4.5.4.8.1 Opdracht
tabel 56. SWITCH_MODE_LPCD kommando wearde
Parameter | Lingte | Wearde / beskriuwing | |
bKontrôle | 1 byte | 0x00 | Fier ULPCD-kalibraasje yn. Kommando stopt nei kalibraasje en in evenemint mei referinsjewearde wurdt stjoerd nei de host. |
0x01 | Fier ULPCD yn | ||
0x02 | LPCD kalibraasje. Kommando stopt nei kalibraasje en in evenemint mei referinsjewearde wurdt stjoerd nei de host. | ||
0x03 | Fier LPCD yn | ||
0x04 | Single modus | ||
0x0 c | Single modus mei kalibraasje evenemint | ||
Oare Wearden | RFUs | ||
Wake-up Control | 1 byte | Bitmask kontrolearret de wekkerboarne dy't brûkt wurde foar LPCD/ULPCD. Ynhâld fan dit fjild wurdt net beskôge foar kalibraasje. Ferwize nei Tabel 57 | |
Referinsjewearde | 4 Bytes | Referinsjewearde te brûken tidens ULPCD/LPCD. Foar ULPCD wurdt Byte 2, dy't de HF Attenuator-wearde hâldt, brûkt tidens sawol de kalibraasje- as mjitfaze. Foar LPCD, Ynhâld fan dit fjild wurdt net beskôge foar kalibraasje en Single modus. Ferwize nei Tabel 58 foar de juste ynformaasje oer alle 4 bytes. |
|
Tellerwearde | 2 Bytes | Wearde foar wekkerteller yn millisekonden. Maksimum stipe wearde is 2690 foar LPCD. Maksimum stipe wearde is 4095 foar ULPCD. De te leverjen wearde is yn in lyts-endian-formaat. Ynhâld fan dit fjild wurdt net beskôge foar LPCD-kalibraasje. Foar inkele modus en inkele modus mei kalibraasje evenemint, de doer fan standby foar kalibraasje kin wurde konfigurearre út de EEPROM konfiguraasje: LPCD_SETTINGS-> wCheck Periode. Foar inkele modus mei kalibraasje, WUC wearde te wêzen net-nul. |
tabel 57. Wake-up Control Bitmask
b7 | b6 | b5 | b4 | b3 | b2 | b1 | b0 | Beskriuwing |
0 | 0 | 0 | 0 | 0 | 0 | 0 | RFUs | |
X | Wekker op eksterne RF-fjild, as bit is ynsteld op 1b. |
Tabel 58. Reference Value byte info
Referinsje wearde bytes | ULPCD | LPCD |
Byte 0 | Referinsje byte 0 | Kanaal 0 Referinsjebyte 0 |
Byte 1 | Referinsje byte 1 | Kanaal 0 Referinsjebyte 1 |
Byte 2 | HF Attenuator wearde | Kanaal 1 Referinsjebyte 0 |
Byte 3 | NA | Kanaal 1 Referinsjebyte 1 |
4.5.4.8.2 Antwurd
tabel 59. SWITCH_MODE_LPCD antwurd wearde
Payload Field | Lingte | Wearde / Beskriuwing |
Status | 1 byte | Status fan 'e operaasje [Tabel 9]. Ferwachte wearden binne as hjirûnder: |
PN5190_STATUS_INSTR_SUCCESS PN5190_STATUS_INSTR_ERROR (Switchmodus is net ynfierd - fanwege ferkearde ynstellings) |
4.5.4.8.3 barren
De barrensnotifikaasje wurdt stjoerd as it kommando foltôge is, en de normale modus wurdt ynfierd mei de folgjende gegevens as ûnderdiel fan it evenemint neamd yn figuer 12 en figuer 13.
Tabel 60. EVT_SWITCH_MODE_LPCD
Payload fjild | Lingte | Wearde / Beskriuwing |
LPCD Status | Ferwize nei Tabel 15 | Ferwize nei Tabel 154.5.4.8.4 Kommunikaasje Example |
4.5.4.9 SWITCH_MODE_DOWNLOAD
It kommando Switch Mode Download komt yn 'e Firmware-downloadmodus.
De ienige manier om de downloadmodus út te kommen is in reset út te jaan nei PN5190.
4.5.4.9.1 Opdracht
tabel 61. SWITCH_MODE_DOWNLOAD kommando wearde
Parameter | Lingte | Wearde / Beskriuwing |
– | – | Gjin wearde |
4.5.4.9.2 Antwurd
It antwurd jout allinich oan dat it kommando is ferwurke en de downloadmodus sil ynfierd wurde neidat it antwurd is lêzen troch de host.
tabel 62. SWITCH_MODE_DOWNLOAD antwurd wearde
Switch operaasje modus Autocoll
Payload Field | Lingte | Wearde / Beskriuwing |
Status | 1 byte | Status fan 'e operaasje [Tabel 9]. Ferwachte wearden binne as hjirûnder: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR (Switchmodus is net ynfierd) |
4.5.4.9.3 barren
Gjin evenemint generaasje.
4.5.4.9.4 Kommunikaasje Example
4.5.5 MIFARE Classic Autentikaasje
4.5.5.1 MFC_AUTHENTICATE
Dizze ynstruksje wurdt brûkt om in MIFARE Classic Authentication út te fieren op in aktivearre kaart. It nimt de kaai, kaart UID, en it kaaitype om te autentisearjen op opjûn blokadres. It antwurd befettet ien byte dy't de autentikaasjestatus oanjout.
4.5.5.1.1 Betingsten
Field Key moat 6 bytes lang wêze. Field Key Type moat de wearde 0x60 of 0x61 befetsje. Blokadres kin elk adres befetsje fan 0x0 - 0xff, ynklusyf. Field UID moat bytes lang wêze en moat de 4byte UID fan 'e kaart befetsje. In ISO14443-3 MIFARE Classic produkt-basearre kaart moat wurde set yn steat AKTIVE of AKTIVE * foar it útfieren fan dizze ynstruksje.
Yn it gefal fan in runtime flater yn ferbân mei de autentikaasje, dit fjild 'Autentikaasje Status' is ynsteld neffens.
4.5.5.1.2 Opdracht
Tabel 63. MFC_AUTHENTICATE Kommando
Útfiere autentikaasje op in aktivearre MIFARE Classic produkt-basearre card.
Payload Field | Lingte | Wearde / Beskriuwing | |
Kaai | 6 Bytes | Autentikaasjekaai te brûken. | |
Key Type | 1 byte | 0x60 | Key Type A |
0x61 | Key Type B | ||
Blokadres | 1 byte | It adres fan it blok wêrfoar de autentikaasje moat wurde útfierd. | |
UID | 4 Bytes | UID fan de kaart. |
4.5.5.1.3 Antwurd
Tabel 64. MFC_AUTHENTICATE antwurd
Antwurd op MFC_AUTHENTICATE.
Payload Field | Lingte | Wearde / Beskriuwing |
Status | 1 byte | Status fan 'e operaasje [Tabel 9]. Ferwachte wearden binne as hjirûnder: |
PN5190_STATUS_INSTR_SUCCESS PN5190_STATUS_INSTR_ERROR PN5190_STATUS_TIMEOUT PN5190_STATUS_AUTH_ERROR |
4.5.5.1.4 barren
Der is gjin evenemint foar dizze ynstruksje.
4.5.6 ISO 18000-3M3 (EPC GEN2) Stipe
4.5.6.1 EPC_GEN2_INVENTORY
Dizze ynstruksje wurdt brûkt om in ynventarisaasje fan ISO18000-3M3 út te fieren tags. It ymplementearret in autonome útfiering fan ferskate kommando's neffens ISO18000-3M3 om de timings te garandearjen dy't spesifisearre binne troch dy standert.
As oanwêzich yn 'e lading fan' e ynstruksje, wurdt earst in Selektearje kommando útfierd folge troch in BeginRound kommando.
As der in jildich antwurd yn de earste timeslot (gjin timeout, gjin botsing), stjoert de ynstruksje in ACK en bewarret de ûntfongen PC / XPC / UII. De ynstruksje fiert dan in aksje út neffens it fjild 'Timeslot Processed Behavior':
- As dit fjild is ynsteld op 0, wurdt in NextSlot kommando útjûn foar it behanneljen fan de folgjende timeslot. Dit wurdt werhelle oant de ynterne buffer fol is
- As dit fjild is ynsteld op 1, pauzes it algoritme
- As dit fjild is ynsteld op 2, wurdt in Req_Rn kommando útjûn as, en allinich as, der in jildich is tag antwurd yn dizze timeslotCommand
Fjild 'Selektearje Kommando Length' moat de lingte fan it fjild 'Selektearje Kommando' befetsje, dat moat wêze yn it berik fan 1 - 39, ynklusyf. As 'Selektearje kommando-lingte' 0 is, moatte de fjilden 'Jildich bits yn lêste byte' en 'Selektearje kommando' net oanwêzich wêze.
It fjild Bits yn lêste byte moat it oantal bits befetsje dat oerdroegen wurde yn de lêste byte fan it fjild 'Selektearje kommando'. De wearde moat wêze yn it berik fan 1 - 7, ynklusyf. As de wearde 0 is, wurde alle bits fan lêste byte fan it fjild 'Selektearje kommando' oerdroegen.
It fjild 'Selektearje kommando' moat in Selektearje kommando befetsje neffens ISO18000-3M3 sûnder efterfolgjende CRC-16c en moat deselde lingte hawwe as oanjûn yn fjild 'Selektearje Kommando Length'.
Fjild 'BeginRound Command' moat in BeginRound-kommando befetsje neffens ISO18000-3M3 sûnder efterfolgjende CRC-5. De lêste 7 bits fan 'e lêste byte fan 'BeginRound Command' wurde negearre, om't it kommando in feitlike lingte hat fan 17 bits.
'Timeslot ferwurke gedrach' moat in wearde befetsje fan 0 - 2, ynklusyf.
Tabel 65. EPC_GEN2_INVENTORY kommandowearde Fier in ISO 18000-3M3 ynventaris út
Payload fjild | Lingte | Wearde / beskriuwing | |
ResumeInventory | 1 byte | 00 | Inisjele GEN2_INVENTORY |
01 | Ferfetsje it kommando GEN2_INVENTORY - de oerbleaune
fjilden hjirûnder binne leech (elke lading wurdt negearre) |
||
Selektearje Kommando Length | 1 byte | 0 | Gjin Selektearje kommando is ynsteld foarôfgeand oan BeginRound kommando. 'Jildich bits yn lêste byte' fjild en 'Selektearje kommando' fjild sille net oanwêzich wêze. |
1 – 39 | Lengte (n) fan it fjild 'Selektearje kommando'. | ||
Jildige bits yn lêste byte | 1 byte | 0 | Alle bits fan lêste byte fan 'Selektearje kommando' fjild wurde oerdroegen. |
1 – 7 | Oantal bits te ferstjoeren yn de lêste byte fan 'Selektearje kommando' fjild. | ||
Selektearje Kommando | n Bytes | As oanwêzich, befettet dit fjild it Selektearje kommando (neffens ISO18000-3, Tabel 47) dat wurdt stjoerd foarôfgeand oan BeginRound kommando. CRC-16c sil net opnommen wurde. | |
BeginRound Kommando | 3 Bytes | Dit fjild befettet it kommando BeginRound (neffens ISO18000-3, tabel 49). CRC-5 sil net opnommen wurde. | |
Timeslot ferwurke gedrach | 1 byte | 0 | Antwurd befettet max. Oantal timeslots dat kin passe yn antwurd buffer. |
1 | Antwurd befettet mar ien timeslot. | ||
2 | Antwurd befettet mar ien timeslot. As timeslot befettet jildich card antwurd, ek de card handgreep is opnommen. |
4.5.6.1.1 Antwurd
De lingte fan it antwurd kin "1" wêze yn gefal fan opnij ynventarisaasje.
tabel 66. EPC_GEN2_INVENTORY antwurd wearde
Payload Field | Lingte | Wearde / Beskriuwing | |||
Status | 1 byte | Status fan 'e operaasje [Tabel 9]. Ferwachte wearden binne as hjirûnder: | |||
PN5190_STATUS_SUCCESS (Lês Timeslot status yn folgjende byte foar Tag antwurd) PN5190_STATUS_INSTR_ERROR (Gjin fierdere gegevens binne oanwêzich) |
|||||
Tiidlot [1…n] | 3 - 69 Bytes | Timeslot Status | 1 byte | 0 | Tag antwurd beskikber. 'Tag Antwurd Length' fjild, 'Jildich bits yn lêste byte' fjild, en 'Tag antwurd 'fjild oanwêzich. |
1 | Tag antwurd beskikber. | ||||
2 | Nee tag antwurde yn timeslot. 'Tag Antwurd Length' fjild en 'Jildich bits yn lêste byte' fjild, wurde ynsteld op nul. 'Tag antwurd' fjild sil net oanwêzich wêze. | ||||
3 | Twa of mear tags reagearre yn de timeslot. (Botsing). 'Tag Antwurd Length' fjild en 'Jildich bits yn lêste byte' fjild, wurde ynsteld op nul. 'Tag antwurd' fjild sil net oanwêzich wêze. |
Tag Antwurd Length | 1 byte | 0-66 | Lengte fan 'Tag Antwurd' fjild (i). As Tag Reply Length is 0, dan de Tag Antwurd fjild is net oanwêzich. | ||
Jildige bits yn lêste byte | 1 byte | 0 | Alle bits fan lêste byte fan 'Tag antwurd' fjild binne jildich. | ||
1-7 | Oantal jildige bits fan lêste byte fan 'Tag antwurd' fjild. As Tag Antwurdlingte is nul, de wearde fan dizze byte sil negearre wurde. | ||||
Tag Antwurdzje | 'n' Bytes | Antwurd fan de tag neffens ISO18000-3_2010, Tabel 56. | |||
Tag Handle | 0 of 2 bytes | Handgreep fan de tag, yn gefal fjild 'Timeslot Status' is ynsteld op '1'. Oars fjild net oanwêzich. |
4.5.6.1.2 barren
Der binne gjin eveneminten foar dit kommando.
4.5.7 RF konfiguraasje behear
Ferwize nei de seksje 6, foar TX- en RX-konfiguraasje foar ferskate RF-technologyen en gegevensraten stipe troch PN5190. De wearden binne net oanwêzich yn it berik neamd hjirûnder, moatte wurde beskôge as RFU.
4.5.7.1 LOAD_RF_CONFIGURATION
Dizze ynstruksje wurdt brûkt om de RF-konfiguraasje fan EEPROM te laden yn ynterne CLIF-registers. RF konfiguraasje ferwiist nei in unike kombinaasje fan RF Technology, modus (doel / inisjatyfnimmer) en baud rate. RF-konfiguraasje kin apart wurde laden foar de CLIF-ûntfanger (RX-konfiguraasje) en stjoerder (TX-konfiguraasje) paad. De wearde 0xFF moat brûkt wurde as de oerienkommende konfiguraasje foar in paad net feroare wurde sil.
4.5.7.1.1 Betingsten
Fjild 'TX-konfiguraasje' moat yn it berik wêze fan 0x00 - 0x2B, ynklusyf. As de wearde 0xFF is, wurdt TX-konfiguraasje net feroare.
Fjild 'RX-konfiguraasje' moat yn it berik wêze fan 0x80 - 0xAB, ynklusyf. As de wearde is 0xFF, wurdt RX konfiguraasje net feroare.
In spesjale konfiguraasje mei TX-konfiguraasje = 0xFF en RX-konfiguraasje = 0xAC wurdt brûkt om de Boot-up-registers ien kear te laden.
Dizze spesjale konfiguraasje is nedich om de registerkonfiguraasjes (sawol TX as RX) te aktualisearjen dy't ferskille fan 'e IC-resetwearden.
4.5.7.1.2 Opdracht
tabel 67. LOAD_RF_CONFIGURATION kommando wearde
Laad RF TX en RX ynstellings fan E2PROM.
Payload Field | Lingte | Wearde / Beskriuwing | |
TX konfiguraasje | 1 byte | 0xff | TX RF Konfiguraasje net feroare. |
0x0 - 0x2B | Korrespondearjende TX RF konfiguraasje laden. | ||
RX konfiguraasje | 1 byte | 0xff | RX RF Konfiguraasje net feroare. |
0x80 - 0xAB | Korrespondearjende RX RF Konfiguraasje laden. |
4.5.7.1.3 Antwurd
tabel 68. LOAD_RF_CONFIGURATION antwurd wearde
Payload Field | Lingte | Wearde / Beskriuwing |
Status | 1 byte | Status fan 'e operaasje [Tabel 9]. Ferwachte wearden binne as hjirûnder: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR |
4.5.7.1.4 barren
Der binne gjin eveneminten foar dit kommando.
4.5.7.2 UPDATE_RF_CONFIGURATION
Dizze ynstruksje wurdt brûkt om de RF-konfiguraasje te aktualisearjen (sjoch definysje yn paragraaf 4.5.7.1) binnen E2PROM. De ynstruksje makket it bywurkjen fan registergranulariteitswearde mooglik, dws net de folsleine set moat bywurke wurde (hoewol, it is mooglik om it te dwaan).
4.5.7.2.1 Betingsten
De grutte fan it fjild array Konfiguraasje moat wêze yn it berik fan 1 - 15, ynklusyf. De fjildarraykonfiguraasje moat in set fan RF-konfiguraasje, registraasjeadres en wearde befetsje. It fjild RF-konfiguraasje moat yn it berik wêze fan 0x0 - 0x2B foar TX-konfiguraasje en 0x80 - 0xAB foar de RX-konfiguraasje, ynklusyf. It adres binnen it fjild Registeradres moat bestean binnen de respektivelike RF-konfiguraasje. Fjildwearde moat in wearde befetsje dy't yn it opjûne register skreaun wurde moat en moat 4 bytes lang wêze (lyts-endian-formaat).
4.5.7.2.2 Opdracht
tabel 69. UPDATE_RF_CONFIGURATION kommando wearde
Update de RF-konfiguraasje
Payload Field | Lingte | Wearde / Beskriuwing | ||
Konfiguraasje[1…n] | 6 Bytes | RF konfiguraasje | 1 byte | RF-konfiguraasje wêrfoar it register moat wurde feroare. |
Registrearje Adres | 1 byte | Registrearje Adres binnen de opjûne RF technology. | ||
Wearde | 4 Bytes | Wearde dy't yn it register skreaun wurde moat. (Lyts-endian) |
4.5.7.2.3 Antwurd
tabel 70. UPDATE_RF_CONFIGURATION antwurd wearde
Payload Field | Lingte | Wearde / Beskriuwing |
Status | 1 byte | Status fan 'e operaasje [Tabel 9]. Ferwachte wearden binne as hjirûnder: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR PN5190_STATUS_MEMORY_ERROR |
4.5.7.2.4 barren
Der binne gjin eveneminten foar dit kommando.
4.5.7.3 GET_ RF_CONFIGURATION
Dizze ynstruksje wurdt brûkt om in RF-konfiguraasje út te lêzen. De registeradres-wearde-pearen binne beskikber yn it antwurd. Om te witten hoefolle pearen binne te ferwachtsjen, earste grutte ynformaasje kin ophelle wurde út de earste TLV, dy't oanjout de totale lingte fan de lading.
4.5.7.3.1 Betingsten
It fjild RF-konfiguraasje moat yn it berik wêze fan 0x0 - 0x2B foar TX-konfiguraasje en 0x80 -0xAB foar de RX-konfiguraasje, ynklusyf.
4.5.7.3.2 Opdracht
Tabel 71. GET_ RF_CONFIGURATION kommando wearde Untfange de RF konfiguraasje.
Payload Field | Lingte | Wearde / Beskriuwing |
RF konfiguraasje | 1 byte | RF-konfiguraasje wêrfoar de set fan registerweardepearen moatte wurde ophelle. |
4.5.7.3.3 Antwurd
Tabel 72. GET_ RF_CONFIGURATION Responswearde
Payload Field | Lingte | Wearde / Beskriuwing | ||
Status | 1 byte | Status fan 'e operaasje [Tabel 9]. Ferwachte wearden binne as hjirûnder: | ||
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR (Gjin fierdere gegevens binne oanwêzich) |
||||
Pair[1…n] | 5 Bytes | Registrearje Adres | 1 byte | Registrearje Adres binnen de opjûne RF technology. |
Wearde | 4 Bytes | 32-Bit register wearde. |
4.5.7.3.4 barren
Der is gjin evenemint foar de ynstruksje.
4.5.8 RF Field Handling
4.5.8.1 RF_ON
Dizze ynstruksje wurdt brûkt om de RF yn te skeakeljen. De DPC-regeling by inisjele FieldOn sil wurde behannele yn dit kommando.
4.5.8.1.1 Opdracht
tabel 73. RF_FIELD_ON kommando wearde
Konfigurearje RF_FIELD_ON.
Payload Field | Lingte | Wearde / Beskriuwing | ||
RF_on_config | 1 byte | Bytsje 0 | 0 | Brûk botsing foarkommen |
1 | Skeakelje it foarkommen fan botsing út | |||
Bytsje 1 | 0 | Gjin P2P aktyf | ||
1 | P2P aktyf |
4.5.8.1.2 Antwurd
tabel 74. RF_FIELD_ON antwurd wearde
Payload Field | Lingte | Wearde / Beskriuwing |
Status | 1 byte | Status fan 'e operaasje [Tabel 9]. Ferwachte wearden binne as hjirûnder: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR PN5190_STATUS_RF_COLLISION_ERROR (RF-fjild is net ynskeakele fanwegen RF-botsing) PN5190_STATUS_TIMEOUT (RF-fjild is net ynskeakele fanwege time-out) PN5190_STATUS_TXLDO_ERROR (TXLDO-flater fanwege VUP is net beskikber) PN5190_STATUS_RFCFG_NOT_APPLIED (RF-konfiguraasje wurdt net tapast foar dit kommando) |
4.5.8.1.3 barren
Der is gjin evenemint foar dizze ynstruksje.
4.5.8.2 RF_OFF
Dizze ynstruksje wurdt brûkt om it RF-fjild út te skeakeljen.
4.5.8.2.1 Opdracht
tabel 75. RF_FIELD_OFF kommando wearde
Payload Field | Lingte | Wearde / Beskriuwing |
Leech | Leech | leech |
4.5.8.2.2 Antwurd
tabel 76. RF_FIELD_OFF antwurd wearde
Payload Field | Lingte | Wearde / Beskriuwing |
Status | 1 byte | Status fan 'e operaasje [Tabel 9]. Ferwachte wearden binne as hjirûnder: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR (Gjin fierdere gegevens binne oanwêzich) |
4.5.8.2.3 barren
Der is gjin evenemint foar dizze ynstruksje.
4.5.9 Test bus konfiguraasje
De beskikbere test bus sinjalen op de selektearre PAD konfiguraasjes wurde neamd yn seksje 7 foar de referinsje.
Dizze moatte wurde ferwiisd foar it jaan fan de konfiguraasje foar testbus ynstruksjes lykas hjirûnder neamd.
4.5.9.1 CONFIGURE _TESTBUS_DIGITAL
Dizze ynstruksje wurdt brûkt om te wikseljen beskikber digitale test bus sinjaal op selektearre pad konfiguraasjes.
4.5.9.1.1 Opdracht
tabel 77. CONFIGURE_TESTBUS_DIGITAL kommando wearde
Payload fjild | Lingte | Wearde / beskriuwing | |
TB_SignalIndex | 1 byte | Ferwize nei Seksje 7 | |
TB_BitIndex | 1 byte | Ferwize nei Seksje 7 | |
TB_PadIndex | 1 byte | De pad-yndeks, wêrop it digitale sinjaal útfierd wurde moat | |
0x00 | AUX1 pin | ||
0x01 | AUX2 pin | ||
0x02 | AUX3 pin | ||
0x03 | GPIO0 pin | ||
0x04 | GPIO1 pin | ||
0x05 | GPIO2 pin | ||
0x06 | GPIO3 pin | ||
0x07-0xFF | RFUs |
4.5.9.1.2 Antwurd
tabel 78. CONFIGURE_TESTBUS_DIGITAL antwurd wearde
Payload Field | Lingte | Wearde / Beskriuwing |
Status | 1 byte | Status fan 'e operaasje [Tabel 9]. Ferwachte wearden binne as hjirûnder: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR (Gjin fierdere gegevens binne oanwêzich) |
4.5.9.1.3 barren
Der is gjin evenemint foar dizze ynstruksje.
4.5.9.2 CONFIGURE_TESTBUS_ANALOG
Dizze ynstruksje wurdt brûkt om beskikber analoge test bus sinjaal op selektearre pad konfiguraasjes.
It sinjaal op analoge testbus kin wurde krigen yn ferskate modi. Se binne:
4.5.9.2.1 RAW-modus
Yn dizze modus wurdt it sinjaal keazen troch TB_SignalIndex0 ferskood troch Shift_Index0, maskere mei Mask0 en útfier op AUX1. Lykas, it sinjaal keazen troch TB_SignalIndex1 wurdt ferskood troch Shift_Index1, masked mei Mask1 en útfier op AUX2.
Dizze modus biedt fleksibiliteit foar de klant om elk sinjaal út te fieren dat 8 bits breed of minder is en gjin tekenkonverzje nedich is om út te fieren op 'e analoge pads.
4.5.9.2.2 KOMBINEERDE modus
Yn dizze modus sil analooch sinjaal de 10-bit ûndertekene ADCI / ADCQ / pcrm_if_rssi-wearde wêze omboud ta in net-ûndertekene wearde, weromskaald nei 8 bits en dan útfier op beide AUX1- as AUX2-pads.
Allinich ien fan beide ADCI / ADCQ (10-bit) konvertearre wearden kin op elk momint wurde útstjoerd nei AUX1 / AUX2.
As de wearde fan it Combined_Mode Signal-sinjaal fjild 2 (analog en digitaal kombinearre), dan wurdt analoge en digitale testbus trochstjoerd op AUX1 (Analog Signal) en GPIO0 (Digitaal sinjaal).
De sinjalen dy't moatte wurde router wurde konfigureare yn it hjirûnder neamde EEPROM-adres:
0xCE9 - TB_SignalIndex
0xCEA – TB_BitIndex
0xCEB - Analog TB_Index
De testbus Index en testbusbit moatte yn EEPROM konfigureare wurde foardat wy de kombineare modus útjaan mei opsje 2.
Noat:
De host sil alle fjilden leverje, nettsjinsteande fjildtapasberens yn "rauwe" of "kombinearre" modus. De PN5190 IC beskôget allinich de jildende fjildwearden.
4.5.9.2.3 Opdracht
tabel 79. CONFIGURE_TESTBUS_ANALOG kommando wearde
Payload fjild | Lingte | Wearde / beskriuwing | Fjild tapasberens foar kombinearre modus | |
bConfig | 1 byte | Konfigurearbere bits. Ferwize nei Tabel 80 | Ja | |
Combined_Mode Signal | 1 byte | 0 - ADCI/ADCQ 1 – pcrm_if_rssi |
Ja | |
2 - Analog en digitaal kombineare | ||||
3 – 0xFF –Reservearre |
TB_SignalIndex0 | 1 byte | Sinjaal yndeks fan it analoge sinjaal. Ferwize nei Seksje 7 | Ja | |
TB_SignalIndex1 | 1 byte | Sinjaal yndeks fan it analoge sinjaal. Ferwize nei Seksje 7 | Ja | |
Shift_Index0 | 1 byte | DAC0 input shift posysjes. Rjochting wurdt besletten troch bytsje yn bConfig[1]. | Nee | |
Shift_Index1 | 1 byte | DAC1 input shift posysjes. Rjochting wurdt besletten troch bytsje yn bConfig[2]. | Nee | |
Masker 0 | 1 byte | DAC0 masker | Nee | |
Masker 1 | 1 byte | DAC1 masker | Nee |
Tabel 80. Config bitmask
b7 | b6 | b5 | b4 | b3 | b2 | b1 | b0 | Beskriuwing | Tapaslik op modus |
X | X | DAC1 útfier ferskowing berik - 0, 1, 2 | Rau | ||||||
X | X | DAC0 útfier ferskowing berik - 0, 1, 2 | Rau | ||||||
X | Yn kombinearre modus, sinjaal op AUX1 / AUX2 pin 0 ➜ Sinjaal op AUX1 1 ➜ Sinjaal op AUX2 |
Kombinearre | |||||||
X | DAC1 input shift rjochting 0 ➜ Skift nei rjochts 1 ➜ Skift nei links |
Rau | |||||||
X | DAC0 input shift rjochting 0 ➜ Skift nei rjochts 1 ➜ Skift nei links |
Rau | |||||||
X | Wize. 0 ➜ Raw modus 1 ➜ Kombinearre modus |
Raw / kombinearre |
4.5.9.2.4 Antwurd
tabel 81. CONFIGURE_TESTBUS_ANALOG antwurd wearde
Payload Field | Lingte | Wearde / Beskriuwing |
Status | 1 byte | Status fan 'e operaasje [Tabel 9]. Ferwachte wearden binne as hjirûnder: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR (Gjin fierdere gegevens binne oanwêzich) |
4.5.9.2.5 barren
Der is gjin evenemint foar dizze ynstruksje.
4.5.9.3 CONFIGURE_MULTIPLE_TESTBUS_DIGITAL
Dizze ynstruksje wurdt brûkt om te wikseljen meardere beskikbere digitale test bus sinjaal op selektearre pad konfiguraasjes.
Noat: As dizze lingte NUL is, dan wurdt in digitale testbus RESETT.
4.5.9.3.1 Opdracht
tabel 82. CONFIGURE_MULTIPLE_TESTBUS_DIGITAL kommando wearde
Payload fjild | Lingte | Wearde / beskriuwing | |
TB_SignalIndex #1 | 1 byte | Ferwize nei 8 ûnder | |
TB_BitIndex #1 | 1 byte | Ferwize nei 8 ûnder | |
TB_PadIndex #1 | 1 byte | De pad-yndeks, wêrop it digitale sinjaal útfierd wurde moat | |
0x00 | AUX1 pin | ||
0x01 | AUX2 pin | ||
0x02 | AUX3 pin | ||
0x03 | GPIO0 pin | ||
0x04 | GPIO1 pin | ||
0x05 | GPIO2 pin | ||
0x06 | GPIO3 pin | ||
0x07-0xFF | RFUs | ||
TB_SignalIndex #2 | 1 byte | Ferwize nei 8 ûnder | |
TB_BitIndex #2 | 1 byte | Ferwize nei 8 ûnder | |
TB_PadIndex #2 | 1 byte | De pad-yndeks, wêrop it digitale sinjaal útfierd wurde moat | |
0x00 | AUX1 pin | ||
0x01 | AUX2 pin | ||
0x02 | AUX3 pin | ||
0x03 | GPIO0 pin | ||
0x04 | GPIO1 pin | ||
0x05 | GPIO2 pin | ||
0x06 | GPIO3 pin | ||
0x07-0xFF | RFUs |
4.5.9.3.2 Antwurd
tabel 83. CONFIGURE_MULTIPLE_TESTBUS_DIGITAL antwurd wearde
Payload Field | Lingte | Wearde / Beskriuwing |
Status | 1 byte | Status fan 'e operaasje [Tabel 2]. Ferwachte wearden binne as hjirûnder: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR (Gjin fierdere gegevens binne oanwêzich) |
4.5.9.3.3 barren
Der is gjin evenemint foar dizze ynstruksje.
4.5.10 CTS Konfiguraasje
4.5.10.1 CTS_ENABLE
Dizze ynstruksje wurdt brûkt om de CTS-loggingfunksje yn/út te skeakeljen.
4.5.10.1.1 Opdracht
tabel 84. CTS_ENABLE kommando wearde
Payload Field Length Wearde / Beskriuwing | ||||
Ynskeakelje / útskeakelje | 1 byte | Bytsje 0 | 0 | Skeakelje de CTS-loggingfunksje út |
1 Aktivearje de CTS-loggingfunksje |
||||
Bytsje 1-7 | RFUs |
4.5.10.1.2 Antwurd
tabel 85. CTS_ENABLE antwurd wearde
Payload Field | Lingte | Wearde / Beskriuwing |
Status | 1 byte | Status fan 'e operaasje [Tabel 9]. Ferwachte wearden binne as hjirûnder: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR (Gjin fierdere gegevens binne oanwêzich) |
4.5.10.1.3 barren
De folgjende tabel lit de evenemintgegevens sjen dy't sille wurde ferstjoerd as diel fan it evenemintberjocht lykas werjûn yn figuer 12 en figuer 13.
Tabel 86. Dit ynformearret de host dat gegevens waarden ûntfongen. EVT_CTS_DONE
Payload Field | Lingte | Wearde / Beskriuwing |
Barren | 1 byte | 00 … TRIGGER is bard, gegevens binne klear foar ûntfangst. |
4.5.10.2 CTS_CONFIGURE
Dizze ynstruksje wurdt brûkt om alle fereaske CTS-registers te konfigurearjen lykas triggers, testbusregisters, sampling konfiguraasje ensfh.,
Noat:
[1] jout in better begryp fan CTS konfiguraasje. De fongen gegevens wurde ferstjoerd as ûnderdiel fan it antwurd op Seksje 4.5.10.3 kommando.
4.5.10.2.1 Opdracht
tabel 87. CTS_CONFIGURE kommando wearde
Payload Field | Lingte | Wearde / Beskriuwing |
PRE_TRIGGER_SHIFT | 1 byte | Beskiedt de lingte fan 'e nei-trigger-oanwinstsekwinsje yn 256 byte-ienheden. 0 betsjut gjin ferskowing; n betsjut n * 256 bytes block shift. Opmerking: Jildich allinich as TRIGGER_MODE "PRE" of "COMB" triggermodus is |
TRIGGER_MODE | 1 byte | Spesifisearret de te brûken Akwisysjemodus. |
0x00 - POST-modus | ||
0x01 - RFU | ||
0x02 - PRE-modus | ||
0x03 – 0xFF – Unjildich | ||
RAM_PAGE_WIDTH | 1 byte | Spesifisearret it bedrach fan op-chip ûnthâld dat wurdt dekt troch in oanwinst. Granularity wurdt keazen troch ûntwerp as 256 Bytes (ie 64 32-bits wurden). Jildige wearden binne as hjirûnder: 0x00h - 256 bytes 0x02h - 768 bytes 0x01h - 512 bytes 0x03h - 1024 bytes 0x04h - 1280 bytes 0x05h - 1536 bytes 0x06h - 1792 bytes 0x07h - 2048 bytes 0x08h - 2304 bytes 0x09h - 2560 bytes 0x0Ah - 2816 bytes 0x0Bh - 3072 bytes 0x0Ch - 3328 bytes 0x0Dh - 3584 bytes 0x0Eh - 3840 bytes 0x0Fh - 4096 bytes 0x10h - 4352 bytes 0x11h - 4608 bytes 0x12h - 4864 bytes 0x13h - 5120 bytes 0x14h - 5376 bytes 0x15h - 5632 bytes 0x16h - 5888 bytes 0x17h - 6144 bytes 0x18h - 6400 bytes 0x19h - 6656 bytes 0x1Ah - 6912 bytes 0x1Bh - 7168 bytes 0x1Ch - 7424 bytes 0x1Dh - 7680 bytes 0x1Eh - 7936 bytes 0x1Fh - 8192 bytes |
SAMPLE_CLK_DIV | 1 byte | De desimale wearde fan dit fjild spesifisearret de klok rate divyzje faktor dy't brûkt wurde by akwisysje. CTS-klok = 13.56 MHz / 2SAMPLE_CLK_DIV |
00 - 13560 kHz 01 - 6780 kHz 02 - 3390 kHz 03 - 1695 kHz 04 - 847.5 kHz 05 - 423.75 kHz 06 - 211.875 kHz 07 - 105.9375 kHz 08 - 52.96875 kHz 09 - 26.484375 kHz 10 - 13.2421875 kHz 11 - 6.62109375 kHz 12 - 3.310546875 kHz 13 - 1.6552734375 kHz 14 - 0.82763671875 kHz 15 - 0.413818359375 kHz |
||
SAMPLE_BYTE_SEL | 1 byte | Dizze bits wurde brûkt om te spesifisearjen hokker bytes fan de twa 16-bit input bussen bydrage oan de interleave meganisme dat genereart gegevens wurde oerdroegen oan de on-chip ûnthâld. De betsjutting en gebrûk fan har is ôfhinklik fan 'e SAMPLE_MODE_SEL wearden.
Opmerking: Opjûne wearde wurdt altyd maskere mei 0x0F en dan wurdt effektive wearde beskôge. |
SAMPLE_MODE_SEL | 1 byte | Selektearret de sampling interleave modus lykas beskreaun troch de CTS design specs. Desimale wearde 3 is reservearre en sil wurde behannele as 0. Opmerking: Opjûne wearde wurdt altyd maskere mei 0x03, en dan wurdt effektive wearde beskôge. |
TB0 | 1 byte | Selektearret hokker testbus dy't ferbûn wurde mei TB0. Ferwize nei Seksje 7 (TB_ Signal_Index wearde) |
TB1 | 1 byte | Selektearret hokker testbus dy't ferbûn wurde mei TB1. Ferwize nei Seksje 7 (TB_ Signal_Index wearde) |
TB2 | 1 byte | Selektearret hokker testbus dy't ferbûn wurde mei TB2. Ferwize nei Seksje 7 (TB_ Signal_Index wearde) |
TB3 | 1 byte | Selektearret hokker testbus dy't ferbûn wurde mei TB3. Ferwize nei Seksje 7 (TB_ Signal_Index wearde) |
TTB_SELECT | 1 byte | Selektearret hokker TB oan de triggerboarnen ferbûn wurde moat. Ferwize nei Seksje 7 (TB_Signal_Index wearde) |
RFUs | 4 Bytes | Stjoer altyd 0x00000000 |
MISC_CONFIG | 24 Bytes | Trigger foarfallen, polarity ensfh Ferwize nei [1] foar begryp fan CTS konfiguraasje te brûken. |
4.5.10.2.2 Antwurd
tabel 88. CTS_CONFIGURE antwurd wearde
Payload Field | Lingte | Wearde / Beskriuwing |
Status | 1 byte | Status fan 'e operaasje [Tabel 9]. Ferwachte wearden binne as hjirûnder: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR |
4.5.10.2.3 barren
Der is gjin evenemint foar dizze ynstruksje.
4.5.10.3 CTS_RETRIEVE_LOG
Dizze ynstruksje retrieves de gegevens log fan de fongen test bus gegevens samples opslein yn it ûnthâld buffer.
4.5.10.3.1 Opdracht
tabel 89. CTS_RETRIEVE_LOG kommando wearde
Payload Field | Lingte | Wearde / Beskriuwing | |
ChunkSize | 1 byte | 0x01-0xFF | Befettet it oantal ferwachte bytes oan gegevens. |
4.5.10.3.2 Antwurd
tabel 90. CTS_RETRIEVE_LOG antwurd wearde
Payload Field | Lingte | Wearde / Beskriuwing |
Status | 1 byte | Status fan 'e operaasje [Tabel 9]. Ferwachte wearden binne as hjirûnder: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR (Gjin fierdere gegevens binne oanwêzich) PN5190_STATUS_SUCCSES_CHAINING |
||
Loggegevens [1…n] | CTRequest | Gefangen Samples Data chunk |
Noat:
De maksimale grutte fan 'Loggegevens' is ôfhinklik fan 'ChunkSize' dy't is levere as ûnderdiel fan it kommando.
Totale loggrutte sil beskikber wêze yn it TLV-koptekstantwurd.
4.5.10.3.3 barren
Der is gjin evenemint foar dizze ynstruksje.
4.5.11 TEST_MODE Opdrachten
4.5.11.1 ANTENNE_SELF_TEST
Dizze ynstruksje wurdt brûkt om te kontrolearjen as de antenne is ferbûn en de oerienkommende komponinten binne befolke / gearstald.
Noat:
Dit kommando is noch net beskikber. Sjoch de release-notysjes foar de beskikberens.
4.5.11.2 PRBS_TEST
Dizze ynstruksje wurdt brûkt om de PRBS-sekwinsje te generearjen foar de ferskate konfiguraasjes fan 'e Reader-modusprotokollen en bitraten. Sadree't de ynstruksje is útfierd, sil de PRBS-testsekwinsje beskikber wêze op RF.
Noat:
Host moat der wis fan dat passende RF technology konfiguraasje wurdt laden mei Seksje 4.5.7.1 en RF wurdt skeakele ON mei Seksje 4.5.8.1 kommando foar it ferstjoeren fan dit kommando.
4.5.11.2.1 Opdracht
tabel 91. PRBS_TEST kommando wearde
Payload Field | Lingte | Wearde / Beskriuwing | |
prbs_type | 1 byte | 00 | PRBS9 (standert) |
01 | PRBS15 | ||
02-FF | RFUs |
4.5.11.2.2 Antwurd
tabel 92. PRBS_TEST antwurd wearde
Payload Field | Lingte | Wearde / Beskriuwing |
Status | 1 byte | Status fan 'e operaasje [Tabel 9]. Ferwachte wearden binne as hjirûnder: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR PN5190_STATUS_NO_RF_FIELD |
4.5.11.2.3 barren
Der is gjin evenemint foar dizze ynstruksje.
4.5.12 Chip Info Commands
4.5.12.1 GET_DIEID
Dizze ynstruksje wurdt brûkt om de die ID fan 'e PN5190-chip út te lêzen.
4.5.12.1.1 Opdracht
Tabel 93. GET_DIEID Kommando wearde
Payload Field | Lingte | Wearde / Beskriuwing |
– | – | Gjin gegevens yn lading |
4.5.12.1.2 Antwurd
Tabel 94. GET_DIEID antwurd wearde
Payload fjild | Lingte | Wearde / beskriuwing |
Status | 1 byte | Status fan 'e operaasje [Tabel 9]. Ferwachte wearden binne as hjirûnder: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR (gjin fierdere gegevens binne oanwêzich) |
||
Wearden | 16 Bytes | 16 bytes die ID. |
4.5.12.1.3 barren
Der binne gjin eveneminten foar dit kommando.
4.5.12.2 GET_VERSJON
Dizze ynstruksje wurdt brûkt om de HW-ferzje, ROM-ferzje en de FW-ferzje fan 'e PN5190-chip út te lêzen.
4.5.12.2.1 Opdracht
tabel 95. GET_VERSION kommando wearde
Payload Field | Lingte | Wearde / Beskriuwing |
– | – | Gjin gegevens yn lading |
D'r is in kommando DL_GET_VERSION (Seksje 3.4.4) beskikber yn downloadmodus dat kin wurde brûkt om HW-ferzje, ROM-ferzje en FW-ferzje út te lêzen.
4.5.12.2.2 Antwurd
Tabel 96. GET_VERSION antwurd wearde
Payload Field | Lingte | Wearde / Beskriuwing |
Status | 1 byte | Status fan 'e operaasje [Tabel 9]. Ferwachte wearden binne as hjirûnder: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR (Gjin fierdere gegevens binne oanwêzich) |
||
HW_V | 1 byte | Hardware ferzje |
RO_V | 1 byte | ROM koade |
FW_V | 2 byt | Firmware ferzje (brûkt foar download) |
RFU1-RFU2 | 1-2 bytes | – |
De ferwachte antwurd foar ferskate ferzje fan PN5190 IC wurdt neamd yn (Seksje 3.4.4)
4.5.12.2.3 barren
Der binne gjin eveneminten foar dit kommando.
Appendix (bglampDE)
Dizze taheakke bestiet út it eksamples foar de hjirboppe neamde kommando's. De eksamples binne allinnich foar yllustraasje doel te sjen litte de ynhâld fan kommando.
5.1 eksample foar WRITE_REGISTER
Folgjende folchoarder fan gegevens ferstjoerd fan host te skriuwen in 0x12345678 wearde yn register 0x1F.
Kommando-frame stjoerd nei PN5190: 0000051F78563412
Host om te wachtsjen op in ûnderbrekking.
As host it antwurdframe lêst ûntfongen fan PN5190 (oanjout suksesfolle operaasje): 00000100 5.2 Ex.ample foar WRITE_REGISTER_OR_MASK
Folgje folchoarder fan gegevens ferstjoerd fan host om logyske OF-operaasje út te fieren op register 0x1F mei in masker as 0x12345678
Kommando-frame stjoerd nei PN5190: 0100051F78563412
Host om te wachtsjen op in ûnderbrekking.
As host it antwurdframe lêst ûntfongen fan PN5190 (oanjout suksesfolle operaasje): 01000100
5.3 eksample foar WRITE_REGISTER_AND_MASK
Folgje folchoarder fan gegevens ferstjoerd fan host om logyske EN-operaasje út te fieren op register 0x1F mei in masker as 0x12345678
Kommando-frame stjoerd nei PN5190: 0200051F78563412
Host om te wachtsjen op in ûnderbrekking.
As host it antwurdframe lêst ûntfongen fan PN5190 (oanjout suksesfolle operaasje): 02000100
5.4 eksample foar WRITE_REGISTER_MULTIPLE
Folgjende folchoarder fan gegevens stjoerd út host te fieren logyske EN operaasje op register 0x1F mei in masker as 0x12345678, en op logyske OR operaasje op register 0x20 mei in masker as 0x11223344, en in skriuwe te registrearjen 0x21 mei in wearde as 0xAABBCCDD.
Kommando-frame ferstjoerd nei PN5190: 0300121F03785634122002443322112101DDCCBBAA
Host om te wachtsjen op in ûnderbrekking.
As host it antwurdframe lêst ûntfongen fan PN5190 (oanjout suksesfolle operaasje): 03000100
5.5 eksample foar READ_REGISTER
Folgje folchoarder fan gegevens ferstjoerd fan host om de ynhâld fan register 0x1F te lêzen en oan te nimmen dat it register de wearde hat fan 0x12345678
Kommando frame stjoerd nei PN5190: 0400011F
Host om te wachtsjen op in ûnderbrekking.
As host it antwurdframe lêst ûntfongen fan PN5190 (oanjout suksesfolle operaasje): 0400050078563412
5.6 eksample foar READ_REGISTER_MULTIPLE
Folgjende folchoarder fan gegevens ferstjoerd fan host te lêzen de ynhâld fan registers 0x1F dy't befetsje de wearde fan 0x12345678, en register 0x25 dat befetsje de wearde fan 0x11223344
Kommando-frame stjoerd nei PN5190: 0500021F25
Host om te wachtsjen op in ûnderbrekking.
Doe't host lêze it antwurd, frame ûntfongen fan PN5190 (oanjout suksesfol operaasje): 050009007856341244332211
5.7 eksample foar WRITE_E2PROM
Folgjende folchoarder fan gegevens ferstjoerd fan host om te skriuwen nei E2PROM lokaasjes 0x0130 nei 0x0134 mei de ynhâld as 0x11, 0x22, 0x33, 0x44, 0x55
Kommando-frame ferstjoerd nei PN5190: 06000730011122334455
Host om te wachtsjen op in ûnderbrekking.
As host lêst it antwurd, frame ûntfongen fan PN5190 (oanjout suksesfol operaasje): 06000100
5.8 eksample foar READ_E2PROM
Folgjende folchoarder fan gegevens ferstjoerd fan host te lêzen fan E2PROM lokaasjes 0x0130 nei 0x0134 dêr't de ynhâld opslein binne: 0x11, 0x22, 0x33, 0x44, 0x55
Kommando-frame ferstjoerd nei PN5190: 07000430010500
Host om te wachtsjen op in ûnderbrekking.
Doe't host lêze it antwurd, frame ûntfongen fan PN5190 (oanjout suksesfol operaasje): 070006001122334455
5.9 eksample foar TRANSMIT_RF_DATA
Folgjende folchoarder fan gegevens ferstjoerd fan host te stjoeren in REQA kommando (0x26), mei oantal bits wurde oerdroegen as '0x07', oannommen dat fereaske registers wurde ynsteld foar en RF wurdt oerskeakele ON.
Kommando-frame ferstjoerd nei PN5190: 0800020726
Host om te wachtsjen op in ûnderbrekking.
As host lêst it antwurd, frame ûntfongen fan PN5190 (oanjout suksesfol operaasje): 08000100
5.10 eksample foar RETREIVE_RF_DATA
Folgjende folchoarder fan gegevens stjoerd út host te ûntfangen de gegevens ûntfongen / opslein yn de ynterne CLIF buffer (oannommen dat 0x05 waard ûntfongen), oannommen dat in TRANSMIT_RF_DATA is al ferstjoerd neidat RF is skeakele ON.
Kommando-frame ferstjoerd nei PN5190: 090000
Host om te wachtsjen op in ûnderbrekking.
As host lêst it antwurd, frame ûntfongen fan PN5190 (oanjout suksesfol operaasje): 090003000400
5.11 eksample foar EXCHANGE_RF_DATA
Folgjende folchoarder fan gegevens ferstjoerd fan host te stjoeren in REQA (0x26), mei oantal bits yn lêste byte te stjoeren ynsteld as 0x07, mei alle status te ûntfangen tegearre mei de gegevens. Oanname is dat fereaske RF-registers al ynsteld binne en RF is ynskeakele.
Kommando frame stjoerd nei PN5190: 0A0003070F26
Host om te wachtsjen op in ûnderbrekking.
Doe't host lêze it antwurd, frame ûntfongen fan PN5190 (oanjout suksesfol operaasje): 0A000 F000200000000000200000000004400
5.12 eksample foar LOAD_RF_CONFIGURATION
Folgjende folchoarder fan gegevens ferstjoerd fan host te setten de RF konfiguraasje. Foar TX, 0x00 en foar RX, 0x80
Kommando frame stjoerd nei PN5190: 0D00020080
Host om te wachtsjen op in ûnderbrekking.
As host lêst it antwurd, frame ûntfongen fan PN5190 (oanjout suksesfol operaasje): 0D000100
5.13 eksample foar UPDATE_RF_CONFIGURATION
Folgjende folchoarder fan gegevens ferstjoerd fan host te aktualisearje de RF konfiguraasje. Foar TX, 0x00, mei registeradres foar CLIF_CRC_TX_CONFIG en wearde as 0x00000001
Kommando-frame ferstjoerd nei PN5190: 0E0006001201000000
Host om te wachtsjen op in ûnderbrekking.
As host lêze it antwurd, frame ûntfongen fan PN5190 (oanjout suksesfol operaasje): 0E000100
5.14 eksample foar RF_ON
Folgjende folchoarder fan gegevens ferstjoerd fan host te wikseljen ON it RF fjild mei help fan botsing mijen en Gjin P2P aktyf. It wurdt oannommen, de oerienkommende RF TX en RX konfiguraasje binne al ynsteld yn PN5190.
Kommando-frame ferstjoerd nei PN5190: 10000100
Host om te wachtsjen op in ûnderbrekking.
As host lêst it antwurd, frame ûntfongen fan PN5190 (oanjout suksesfol operaasje): 10000100
5.15 eksample foar RF_OFF
Folgjende folchoarder fan gegevens stjoerd út host te wikseljen OFF it RF fjild.
Kommando-frame ferstjoerd nei PN5190: 110000
Host om te wachtsjen op in ûnderbrekking.
As host lêst it antwurd, frame ûntfongen fan PN5190 (oanjout suksesfol operaasje): 11000100
Bylage (RF-protokol konfiguraasje-yndeksen)
Dizze taheaksel bestiet út de RF-protokol konfiguraasje yndeksen stipe troch de PN5190.
De TX- en RX-konfiguraasje-ynstellingen moatte brûkt wurde yn Seksje 4.5.7.1, Seksje 4.5.7.2, Seksje 4.5.7.3 kommando's.
Bylage (CTS- en TESTBUS-sinjalen)
Hjirûnder tabel spesifisearret de ferskillende sinjalen beskikber út PN5190 te fangen mei help fan CTS ynstruksjes (Seksje 4.5.10) en TESTBUS ynstruksjes.
Dizze moatte brûkt wurde foar Seksje 4.5.9.1, Seksje 4.5.9.2, Seksje 4.5.10.2 kommando.
Ofkoartings
Tabel 97. Ofkoartings
Abbr. | Betsjutting |
CLK | Klok |
DWL_REQ | Download Fersyk pin (ek wol DL_REQ neamd) |
EEPROM | Elektrysk wisber programmearber allinich lêzen ûnthâld |
FW | Firmware |
GND | Grûn |
GPIO | Algemien Doel Ynput Output |
HW | Hardware |
I²C | Inter-yntegreare circuit (seriële gegevensbus) |
IRQs | Fersyk ûnderbrekke |
ISO/IEC | Ynternasjonale Standert Organisaasje / Ynternasjonale Electrotechnical Mienskip |
NFC | Near Field Communication |
OS | Bestjoeringssysteem |
PCD | Proximity Coupling Device (Kontaktleaze lêzer) |
PICC | Proximity Integrated Circuit Card (Kontaktleaze kaart) |
PMU | Power Management ienheid |
POR | Power-on reset |
RF | Radio frekwinsje |
RST | Weromsette |
SFWU | feilige firmware download modus |
SPI | Seriële perifeare ynterface |
VEN | V Ynskeakelje pin |
Referinsjes
[1] CTS-konfiguraasjediel fan NFC Cockpit, https://www.nxp.com/products/:NFC-COCKPIT[2] PN5190 IC data sheet, https://www.nxp.com/docs/en/data-sheet/PN5190.pdf
Juridyske ynformaasje
10.1 Definysjes
Untwerp - In konsept status op in dokumint jout oan dat de ynhâld is noch ûnder ynterne review en ûnder foarbehâld fan formele goedkarring, wat kin resultearje yn oanpassings of tafoegings. NXP Semiconductors jout gjin foarstellingen of garânsjes oangeande de krektens of folsleinens fan ynformaasje opnommen yn in ûntwerpferzje fan in dokumint en sil gjin oanspraaklikens hawwe foar de gefolgen fan it brûken fan sokke ynformaasje.
10.2 Disclaimers
Beheinde garânsje en oanspraaklikens - Ynformaasje yn dit dokumint wurdt leaud krekt en betrouber te wêzen. NXP Semiconductors jout lykwols gjin foarstellings of garânsjes, útdrukt of ymplisearre, oangeande de krektens of folsleinens fan sokke ynformaasje en sil gjin oanspraaklikens hawwe foar de gefolgen fan it brûken fan sokke ynformaasje. NXP Semiconductors nimt gjin ferantwurdlikens foar de ynhâld yn dit dokumint as levere troch in ynformaasjeboarne bûten NXP Semiconductors.
Yn gjin gefal sil NXP Semiconductors oanspraaklik wêze foar yndirekte, ynsidintele, bestraffende, spesjale of gefolchskea (ynklusyf - sûnder beheining ferlern winst, ferlerne besparring, ûnderbrekking fan bedriuwen, kosten relatearre oan it fuortheljen of ferfangen fan produkten of ferwurkingskosten) of net sokke skea binne basearre op tort (ynklusyf negligens), garânsje, kontraktbreuk of in oare juridyske teory.
Nettsjinsteande eventuele skea dy't de klant om hokker reden dan ek kin oprinne, sil de totale en kumulative oanspraaklikens fan NXP Semiconductors tsjin 'e klant foar de hjir beskreaune produkten wurde beheind yn oerienstimming mei de
Betingsten en kondysjes fan kommersjele ferkeap fan NXP Semiconductors.
Rjocht om wizigingen oan te bringen - NXP Semiconductors behâldt it rjocht foar om wizigingen te meitsjen oan ynformaasje publisearre yn dit dokumint, ynklusyf sûnder beheining spesifikaasjes en produktbeskriuwingen, op elk momint en sûnder notice. Dit dokumint ferfangt en ferfangt alle ynformaasje levere foarôfgeand oan de publikaasje dêrfan.
Geskikt foar gebrûk - NXP Semiconductors-produkten binne net ûntworpen, autorisearre of garandearre om geskikt te wêzen foar gebrûk yn libbensstipe, libbenskrityske of feiligenskrityske systemen of apparatuer, noch yn applikaasjes wêr't mislearring of defekt fan in NXP Semiconductors-produkt ridlik kin wurde ferwachte om te resultearjen yn persoanlik ferwûning, dea of slimme eigendom of miljeu skea. NXP Semiconductors en har leveransiers akseptearje gjin oanspraaklikens foar opnimmen en / of gebrûk fan NXP Semiconductors-produkten yn sokke apparatuer of applikaasjes en dêrom is sa'n opname en / of gebrûk op eigen risiko fan 'e klant.
Applikaasjes - Applikaasjes dy't hjir wurde beskreaun foar ien fan dizze produkten binne allinich foar yllustrative doelen. NXP Semiconductors makket gjin foarstelling of garânsje dat sokke applikaasjes geskikt sille wêze foar it oantsjutte gebrûk sûnder fierdere testen of modifikaasje.
Klanten binne ferantwurdlik foar it ûntwerp en de eksploitaasje fan harren applikaasjes en produkten mei help fan NXP Semiconductors produkten, en NXP Semiconductors akseptearret gjin oanspraaklikheid foar in help mei applikaasjes of klant produkt design. It is de iennichste ferantwurdlikens fan de klant om te bepalen oft it NXP Semiconductors-produkt geskikt is en fit is foar de plande applikaasjes en produkten fan de klant, lykas ek foar de plande tapassing en gebrûk fan klant(en) fan tredden fan klant(en). Klanten moatte passende ûntwerp- en operaasjefeiligens leverje om de risiko's ferbûn mei har applikaasjes en produkten te minimalisearjen.
NXP Semiconductors akseptearret gjin oanspraaklikens yn ferbân mei standert, skea, kosten of probleem dat is basearre op in swakke of standert yn 'e applikaasjes of produkten fan' e klant, of de applikaasje of gebrûk troch klant(en) fan tredden fan klant. Klant is ferantwurdlik foar it dwaan fan alle nedige testen foar de applikaasjes en produkten fan 'e klant mei NXP Semiconductors-produkten om in standert fan' e applikaasjes en de produkten of fan 'e applikaasje of gebrûk troch klant(en) fan tredden fan klant te foarkommen. NXP akseptearret gjin oanspraaklikens yn dit ferbân.
NXP BV - NXP BV is gjin bedriuwsfiering en it distribúsje of ferkeapje gjin produkten.
10.3 Lisinsjes
Oankeap fan NXP IC's mei NFC-technology - Oankeap fan in NXP Semiconductors IC dy't foldocht oan ien fan 'e Near Field Communication (NFC) noarmen ISO/IEC 18092 en ISO/IEC 21481 draacht gjin ymplisearre lisinsje oer ûnder elk oktroairjocht dat ynbreuk is troch ymplemintaasje fan ien fan dy noarmen. Oankeap fan NXP Semiconductors IC omfettet gjin lisinsje foar in NXP-patint (of oare IP-rjocht) dy't kombinaasjes fan dy produkten mei oare produkten, itsij hardware of software, dekt.
10.4 hannelsmerken
Opmerking: Alle ferwiisde merken, produktnammen, tsjinstnammen en hannelsmerken binne it eigendom fan har respektive eigners.
NXP - wurdmerk en logo binne hannelsmerken fan NXP BV
EdgeVerse - is in hannelsmerk fan NXP BV
FeliCa - is in hannelsmerk fan Sony Corporation.
MIFARE - is in hannelsmerk fan NXP BV
MIFARE Classic - is in hannelsmerk fan NXP BV
Wês asjebleaft bewust dat wichtige meidielings oangeande dit dokumint en de hjiryn beskreaune produkt(en) binne opnommen yn seksje 'Juridyske ynformaasje'.
© 2023 NXP BV
Foar mear ynformaasje kinne jo besykje: http://www.nxp.com
Alle rjochten foarbehâlden.
Releasedatum: 25 mei 2023
Dokumintidentifikaasje: UM11942
Dokuminten / Resources
![]() |
NXP PN5190 NFC Frontend Controller [pdf] Brûkershânlieding PN5190, PN5190 NFC Frontend Controller, NFC Frontend Controller, Controller, UM11942 |