UM11942
PN5190 instrukcijų sluoksnis
NFC frontend valdiklis
Vartotojo vadovas
PN5190 NFC priekinės dalies valdiklis
Dokumento informacija
Informacija | Turinys |
Raktažodžiai | PN5190, NFC, NFC frontend, valdiklis, instrukcijų sluoksnis |
Abstraktus | Šiame dokumente aprašomos komandų sluoksnio komandos ir atsakymai į darbą iš pagrindinio valdiklio, siekiant įvertinti NXP PN5190 NFC priekinio valdiklio veikimą. PN5190 yra naujos kartos NFC priekinis valdiklis. Šiame dokumente aprašomos sąsajos komandos, skirtos darbui su PN5190 NFC priekiniu valdikliu. Norėdami gauti daugiau informacijos apie PN5190 NFC priekinio valdiklio veikimą, žr. duomenų lapą ir papildomą informaciją. |
Revizijų istorija
Rev | Data | Aprašymas |
3.7 | 20230525 | • Dokumento tipas ir pavadinimas pakeistas iš gaminio duomenų lapo priedo į vartotojo vadovą • Redakcijos valymas • Atnaujintos SPI signalų redakcinės sąlygos • 8 skyriaus 4.5.2.3 lentelėje pridėta komanda GET_CRC_USER_AREA • Atnaujinta įvairi atskira PN5190B1 ir PN5190B2 informacija 3.4.1 skiltyje • Atnaujintas 3.4.7 skirsnio atsakymas |
3.6 | 20230111 | Patobulinto patikrinimo vientisumo atsako aprašymas 3.4.7 skyriuje |
3.5 | 20221104 | 4.5.4.6.3 skirsnis „Įvykis“: pridėta |
3.4 | 20220701 | • 8 skyriaus 4.5.9.3 lentelėje pridėta komanda CONFIGURE_MULTIPLE_TESTBUS_DIGITAL • Atnaujintas 4.5.9.2.2 skirsnis |
3.3 | 20220329 | Aparatūros aprašymas patobulintas 4.5.12.2.1 skyriuje „Komanda“ ir 4.5.12.2.2 skyriuje „Atsakymas“ |
3.2 | 20210910 | Programinės įrangos versijų numeriai atnaujinti nuo 2.1 iki 2.01 ir nuo 2.3 iki 2.03 |
3.1 | 20210527 | Pridėtas RETRIEVE_RF_FELICA_EMD_DATA komandos aprašymas |
3 | 20210118 | Pirmoji oficiali išleista versija |
Įvadas
1.1 Įvadas
Šiame dokumente aprašoma PN5190 pagrindinio kompiuterio sąsaja ir API. Dokumentacijoje naudojama fizinė pagrindinio kompiuterio sąsaja yra SPI. SPI fizinė charakteristika dokumente neatsižvelgiama.
Rėmelių atskyrimas ir srauto valdymas yra šio dokumento dalis.
1.1.1 Taikymo sritis
Dokumente aprašomas klientui aktualus loginis sluoksnis, instrukcijos kodas, API.
Šeimininko bendravimas baigtasview
PN5190 turi du pagrindinius ryšio su pagrindiniu valdikliu veikimo režimus.
- HDLL pagrįstas ryšys naudojamas, kai įrenginys suaktyvinamas, kad įvestų:
a. Šifruotas saugaus atsisiuntimo režimas, skirtas atnaujinti programinę-aparatinę įrangą - TLV komandų atsaku pagrįstas ryšys (pateiktas kaip pvzample).
2.1 HDLL režimas
HDLL režimas naudojamas paketų mainų formatui, kad būtų galima dirbti su toliau nurodytais IC darbo režimais:
- Saugus programinės įrangos atsisiuntimo režimas (SFWU), žr. 3 skyrių
2.1.1 HDLL aprašymas
HDLL yra NXP sukurtas nuorodų sluoksnis, užtikrinantis patikimą FW atsisiuntimą.
HDLL pranešimas sudarytas iš 2 baitų antraštės, po kurios seka rėmelis, kurį sudaro operacijos kodas ir komandos naudingoji apkrova. Kiekvienas pranešimas baigiasi 16 bitų CRC, kaip aprašyta toliau pateiktame paveikslėlyje:HDLL antraštėje yra:
- Truputis. Tai rodo, ar šis pranešimas yra vienintelė, ar paskutinė pranešimo dalis (gabalas = 0). Arba jei seka bent vienas kitas gabalas (gabalas = 1).
- Naudingojo krovinio ilgis užkoduotas 10 bitų. Taigi, HDLL rėmo naudingoji apkrova gali siekti iki 1023 baitų.
Baitų tvarka buvo apibrėžta kaip big-endian, ty pirmiausia ponia baitė.
CRC16 yra suderinamas su X.25 (CRC-CCITT, ISO/IEC13239) standartu su polinomu x^16 + x^12 + x^5 +1 ir išankstinio įkėlimo verte 0xFFFF.
Jis apskaičiuojamas visame HDLL kadre, ty antraštė + kadras.
Sample C kodo įgyvendinimas:
statinis uint16_t phHal_Host_CalcCrc16(uint8_t* p, uint32_t dwLength)
{
uint32_t i ;
uint16_t crc_new ;
uint16_t crc = 0xffffU;
už (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_new;
}
grąžinti crc;
}
2.1.2 Transporto žemėlapių sudarymas per SPI
Kiekvieno NTS tvirtinimo pirmasis baitas visada yra ANTRAŠTĖ (srauto indikacijos baitas), jis gali būti 0x7F/0xFF, atsižvelgiant į rašymo / skaitymo operaciją.
2.1.2.1 Įrašykite seką iš pagrindinio kompiuterio (kryptis DH => PN5190)2.1.2.2 Nuskaitykite seką iš pagrindinio kompiuterio (kryptis PN5190 => DH)
2.1.3 HDLL protokolas
HDLL yra komandų atsako protokolas. Visos aukščiau paminėtos operacijos paleidžiamos naudojant konkrečią komandą ir patvirtinamos pagal atsakymą.
Komandos ir atsakymai atitinka HDLL pranešimų sintaksę, komandą siunčia įrenginio priegloba, atsakymą – PN5190. Opkodas nurodo komandos ir atsakymo tipą.
HDLL pagrįsti ryšiai, naudojami tik suaktyvinus PN5190, kad būtų įjungtas „Saugaus programinės įrangos atsisiuntimo“ režimas.
2.2 TLV režimas
TLV reiškia Tag Ilgio vertė.
2.2.1 Rėmelio apibrėžimas
SPI rėmelis prasideda besileidžiančiu NTS kraštu ir baigiasi kylančiu NTS kraštu. SPI pagal fizinę apibrėžimą yra pilnas dvipusis, bet PN5190 naudoja SPI pusiau dvipusio režimo. SPI režimas apribotas iki CPOL 0 ir CPHA 0 su maksimaliu laikrodžio greičiu, kaip nurodyta [2]. Kiekvienas SPI kadras susideda iš 1 baito antraštės ir n baitų turinio.
2.2.2 Srauto indikacijaHOST visada siunčia srauto indikacijos baitą kaip pirmąjį baitą, nesvarbu, ar jis nori įrašyti ar nuskaityti duomenis iš PN5190.
Jei yra skaitymo užklausa ir nėra duomenų, atsakyme yra 0xFF.
Duomenys po srauto indikatoriaus baito yra vienas arba keli pranešimai.
Kiekvieno NTS tvirtinimo pirmasis baitas visada yra ANTRAŠTĖ (srauto indikacijos baitas), jis gali būti 0x7F/0xFF, atsižvelgiant į rašymo / skaitymo operaciją.
2.2.3 Pranešimo tipas
Pagrindinis valdiklis turi susisiekti su PN5190 naudodamas pranešimus, kurie siunčiami SPI rėmeliuose.
Yra trys skirtingi pranešimų tipai:
- komandą
- Atsakymas
- Renginys
Aukščiau pateiktoje ryšio diagramoje parodytos leistinos skirtingų tipų pranešimų nuorodos, kaip nurodyta toliau:
- Komanda ir atsakymas.
- Komandos siunčiamos tik iš pagrindinio kompiuterio valdiklio į PN5190.
- Atsakymai ir įvykiai siunčiami tik iš PN5190 į pagrindinio kompiuterio valdiklį.
- Komandų atsakymai sinchronizuojami naudojant IRQ kaištį.
- Pagrindinis kompiuteris gali siųsti komandas tik tada, kai IRQ žemas.
- Priegloba gali skaityti atsakymą / įvykį tik tada, kai IRQ yra aukštas.
2.2.3.1 Leidžiamos sekos ir taisyklėsLeidžiamos komandų, atsako ir įvykių sekos
- Komanda visada patvirtinama atsakymu, įvykiu arba abiem.
- Pagrindinio kompiuterio valdikliui neleidžiama siųsti kitos komandos, kol negavo atsakymo į ankstesnę komandą.
- Įvykiai gali būti siunčiami asinchroniškai bet kuriuo metu (NEĮterpiami komandų/atsakymų poroje).
- EVENT pranešimai niekada nėra derinami su RESPONSE pranešimais viename kadre.
Pastaba: Pranešimo prieinamumas (ATSAKYMAS arba ĮVYKIS) signalizuojamas, kai IRQ didėja nuo žemo. IRQ išlieka aukštas, kol nuskaitomas visas atsakymo ar įvykio kadras. Tik po to, kai IRQ signalas yra žemas, pagrindinis kompiuteris gali išsiųsti kitą komandą.
2.2.4 Pranešimo formatas
Kiekvienas pranešimas yra užkoduotas TLV struktūroje su n baitų naudingumu kiekvienam pranešimui, išskyrus komandą SWITCH_MODE_NORMAL.Kiekvieną TLV sudaro:
Tipas (T) => 1 baitas
Bitas[7] Pranešimo tipas
0: COMMAND arba RESPONSE pranešimas
1: EVENT pranešimas
Bitas [6:0]: instrukcijos kodas
Ilgis (L) => 2 baitai (turėtų būti big-endian formatu)
Reikšmė (V) => N baitų vertės / duomenų TLV (komandų parametrai / atsako duomenys), pagrįsti ilgio lauku (didelio formato formatas)
2.2.4.1 Padalytas rėmas
COMMAND pranešimas turi būti išsiųstas viename SPI kadre.
RESPONSE ir EVENT pranešimus galima nuskaityti keliuose SPI kadruose, pvz., norint nuskaityti ilgio baitą.RESPONSE arba EVENT pranešimus galima nuskaityti viename SPI kadre, bet uždelstas NO-CLOCK, pvz., norint nuskaityti ilgio baitą.
IC darbo įkrovos režimas – saugus FW atsisiuntimo režimas
3.1 Įvadas
Dalis PN5190 programinės aparatinės įrangos kodo yra visam laikui saugoma ROM, o likusi kodo dalis ir duomenys saugomi įdėtojoje blykstėje. Vartotojo duomenys yra saugomi „flash“ ir yra apsaugoti nuo plyšimo mechanizmų, kurie užtikrina duomenų vientisumą ir prieinamumą. Siekiant suteikti NXP klientams funkcijas, atitinkančias naujausius standartus (EMVCo, NFC forumas ir kt.), FLASH gali būti atnaujintas ir kodas, ir vartotojo duomenys.
Šifruotos programinės įrangos autentiškumas ir vientisumas yra apsaugoti asimetriniu / simetrišku rakto parašu ir atvirkštinės grandinės maišos mechanizmu. Pirmoje komandoje DL_SEC_WRITE yra antrosios komandos maiša ir ji yra apsaugota RSA parašu pirmojo kadro naudingojoje apkrovoje. PN5190 programinė įranga naudoja RSA viešąjį raktą, kad patvirtintų pirmąją komandą. Grandininė maiša kiekvienoje komandoje naudojama tolesnei komandai autentifikuoti, siekiant užtikrinti, kad programinės aparatinės įrangos kodo ir duomenų nepasiektų trečiosios šalys.
DL_SEC_WRITE komandų naudingos apkrovos yra užšifruotos AES-128 raktu. Po kiekvienos komandos autentifikavimo naudingojo krovinio turinys iššifruojamas ir įrašomas į „flash“ naudojant PN5190 programinę įrangą.
NXP programinės aparatinės įrangos atveju NXP yra atsakingas už naujų saugių programinės aparatinės įrangos atnaujinimų pristatymą kartu su naujais naudotojo duomenimis.
Atnaujinimo procedūra yra aprūpinta mechanizmu, apsaugančiu NXP kodo ir duomenų autentiškumą, vientisumą ir konfidencialumą.
HDLL pagrįsta kadrų paketų schema naudojama visoms komandoms ir atsakams saugiam programinės įrangos atnaujinimo režimui.
2.1 skirsnyje pateikiama perview naudojamos HDLL kadrų paketų schemos.
PN5190 IC palaiko ir seną šifruotą saugų FW atsisiuntimą, ir aparatinės įrangos šifruotą šifruotą saugų FW atsisiuntimo protokolą, priklausomai nuo naudojamo varianto.
Du tipai yra:
- Pasenęs saugus FW atsisiuntimo protokolas, veikiantis tik su PN5190 B0/B1 IC versija.
- Aparatinės įrangos šifravimo padedamas saugus FW atsisiuntimo protokolas, veikiantis tik su PN5190B2 IC versija, kuris naudoja lustoje esančius aparatinės įrangos šifravimo blokus
Tolesniuose skyriuose paaiškinamos saugaus programinės įrangos atsisiuntimo režimo komandos ir atsakymai.
3.2 Kaip suaktyvinti „Saugaus programinės įrangos atsisiuntimo“ režimą
Žemiau esančioje diagramoje ir tolesniuose žingsniuose parodyta, kaip įjungti saugios programinės aparatinės įrangos atsisiuntimo režimą.Išankstinė sąlyga: PN5190 yra veikimo būsenoje.
Pagrindinis scenarijus:
- Įvesties sąlyga, kai DWL_REQ kaištis naudojamas norint įjungti „Saugaus programinės aparatinės įrangos atsisiuntimo“ režimą.
a. Įrenginio priegloba ištraukia DWL_REQ kaištį aukštai (galioja tik jei saugus programinės aparatinės įrangos atnaujinimas naudojant DWL_REQ kaištį) ARBA
b. Įrenginio priegloba atlieka sunkųjį atstatymą, kad paleistų PN5190 - Įvesties sąlyga, kai DWL_REQ PIN nenaudojamas įjungiant „Saugaus programinės aparatinės įrangos atsisiuntimo“ režimą (atsiuntimas be kontaktų).
a. Įrenginio priegloba atlieka sunkųjį atstatymą, kad paleistų PN5190
b. Įrenginio priegloba siunčia SWITCH_MODE_NORMAL (4.5.4.5 skyrius), kad įjungtų įprastą taikymo režimą.
c. Dabar, kai IC veikia įprastu režimu, įrenginio priegloba siunčia SWITCH_MODE_DOWNLOAD (4.5.4.9 skyrius), kad įjungtų saugaus atsisiuntimo režimą. - Įrenginio priegloba siunčia komandą DL_GET_VERSION (3.4.4 skirsnis), DL_GET_DIE_ID (3.4.6 skirsnis) arba DL_GET_SESSION_STATE (3.4.5 skyrius).
- Įrenginio priegloba nuskaito esamą aparatinės ir programinės įrangos versiją, seansą, Die-ID iš įrenginio.
a. Įrenginio priegloba tikrina seanso būseną, jei paskutinis atsisiuntimas buvo baigtas
b. Įrenginio priegloba taiko versijos tikrinimo taisykles, kad nuspręstų, ar pradėti atsisiuntimą, ar baigti atsisiuntimą. - Įrenginio pagrindinio kompiuterio įkėlimai iš a file programinės įrangos dvejetainis kodas, kurį reikia atsisiųsti
- Įrenginio priegloba pateikia pirmąją komandą DL_SEC_WRITE (3.4.8 skyrius), kurioje yra:
a. Naujos programinės aparatinės įrangos versija,
b. 16 baitų savavališkų reikšmių nenurodymas, naudojamas šifravimo rakto užmaskavimui
c. kito kadro santrauka,
d. Pats rėmelio skaitmeninis parašas - Įrenginio priegloba įkelia saugaus atsisiuntimo protokolo seką į PN5190 su komandomis DL_SEC_WRITE (3.4.8 skyrius)
- Kai buvo išsiųsta paskutinė komanda DL_SEC_WRITE (3.4.8 skyrius), įrenginio pagrindinis kompiuteris vykdo komandą DL_CHECK_INTEGRITY (3.4.7 skyrius), kad patikrintų, ar atmintis buvo sėkmingai įrašytos.
- Įrenginio priegloba nuskaito naują programinės aparatinės įrangos versiją ir patikrina seanso būseną, jei ji uždaryta, kad praneštų viršutiniam sluoksniui
- Įrenginio priegloba ištraukia DWL_REQ kaištį iki žemo lygio (jei DWL_REQ kaištis naudojamas norint įjungti atsisiuntimo režimą)
- Įrenginio priegloba atlieka standųjį įrenginio atstatymą (perjungia VEN kaištį), kad iš naujo paleistų PN5190
Būklė po: atnaujinta programinė įranga; pranešama apie naujos programinės įrangos versijos numerį.
3.3 Programinės įrangos parašo ir versijos valdymas
PN5190 programinės įrangos atsisiuntimo režimu mechanizmas užtikrina, kad tik NXP pasirašyta ir pristatyta programinė įranga bus priimta NXP programinei įrangai.
Tai taikoma tik užšifruotai saugiai NXP programinei įrangai.
Atsisiuntimo seanso metu siunčiama nauja 16 bitų programinės įrangos versija. Jį sudaro pagrindinis ir antrasis skaičius:
- Pagrindinis skaičius: 8 bitai (MSB)
- Mažas skaičius: 8 bitai (LSB)
PN5190 patikrina, ar naujasis pagrindinės versijos numeris yra didesnis arba lygus dabartiniam. Jei ne, apsaugotas programinės įrangos atsisiuntimas atmetamas, o seansas uždarytas.
3.4 HDLL komandos, skirtos senam šifruotam atsisiuntimui ir aparatinės įrangos šifravimui šifruotas atsisiuntimas
Šiame skyriuje pateikiama informacija apie komandas ir atsakymus, kurie buvo naudojami abiejų tipų NXP programinės įrangos atsisiuntimui.
3.4.1 HDLL komandų OP kodai
Pastaba: HDLL komandų kadrai yra sulygiuoti 4 baitais. Nepanaudotų naudingos apkrovos baitų lieka nulis.
1 lentelė. HDLL komandų OP kodų sąrašas
PN5190 B0/ B1 (Pasenęs atsisiuntimas) |
PN5190 B2 (Atsisiuntimas su kriptovaliuta) |
Komanda Alias | Aprašymas |
0xF0 | 0xE5 | DL_RESET | Atlieka minkštą atstatymą |
0xF1 | 0xE1 | DL_GET_VERSION | Grąžina versijų numerius |
0xF2 | 0xDB | DL_GET_SESSION_STATE | Grąžina esamą seanso būseną |
0xF4 | 0xDF | DL_GET_DIE_ID | Grąžina štampo ID |
0xE0 | 0xE7 | DL_CHECK_INTEGRITY | Patikrina ir grąžina CRC įvairiose srityse, taip pat kiekvienos patvirtinimo / nesėkmės būsenos vėliavėles |
0xC0 | 0x8C | DL_SEC_WRITE | Įrašo x baitų į atmintį, pradedant absoliučiu adresu y |
3.4.2 HDLL atsako opkodai
Pastaba: HDLL atsako kadrai yra sulygiuoti 4 baitais. Nepanaudotų naudingos apkrovos baitų lieka nulis. Tik DL_OK atsakymuose gali būti naudingos apkrovos reikšmės.
2 lentelė. HDLL atsako OP kodų sąrašas
kodas operacijos | Atsakymo pseudonimas | Aprašymas |
0x00 | DL_OK | Komanda įvykdyta |
0x01 | DL_INVALID_ADDR | Adresas neleidžiamas |
0x0B | DL_UNKNOW_CMD | Nežinoma komanda |
0x0C | DL_ABORTED_CMD | Dalių seka per didelė |
0x1E | DL_ADDR_RANGE_OFL_ERROR | Adresas už diapazono ribų |
0x1F | DL_BUFFER_OFL_ERROR | Buferis per mažas |
0x20 | DL_MEM_BSY | Atmintis užimta |
0x21 | DL_SIGNATURE_ERROR | Parašo neatitikimas |
0x24 | DL_FIRMWARE_VERSION_ERROR | Esama versija yra lygi arba aukštesnė |
0x28 | DL_PROTOCOL_ERROR | Protokolo klaida |
0x2A | DL_SFWU_DEGRADED | „Flash“ duomenų sugadinimas |
0x2D | PH_STATUS_DL_FIRST_CHUNK | Pirma dalis gauta |
0x2E | PH_STATUS_DL_NEXT_CHUNK | Palaukite kito gabalo |
0xC5 | PH_STATUS_INTERNAL_ERROR_5 | Ilgio neatitikimas |
3.4.3 DL_RESET komanda
Rėmo keitimas:
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] Nustatymas iš naujo neleidžia PN5190 siųsti atsakymo DL_STATUS_OK Todėl galima gauti tik klaidingą būseną.
STAT yra grąžinimo būsena.
3.4.4 DL_GET_VERSION komanda
Rėmo keitimas:
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 apkrovos CRC16 atsakas yra: Gauti Vers
3 lentelė. Atsakymas į komandą GetVersion
Laukas | baitas | Aprašymas |
STAT | 1 | Būsena |
HW_V | 2 | Aparatinės įrangos versija |
RO_V | 3 | ROM kodas |
MODEL_ID | 4 | Modelio ID |
FMxV | 5-6 | Programinės aparatinės įrangos versija (naudojama atsisiuntimui) |
RFU1-RFU2 | 7-8 | – |
Numatomos skirtingų atsako laukų reikšmės ir jų atvaizdavimas yra tokios:
4 lentelė. Tikėtinos GetVersion komandos atsako reikšmės
IC tipas | HW versija (šešioliktainis) | ROM versija (šešioliktainis) | Modelio ID (šešioliktainis) | FW versija (šešioliktainis) |
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 komanda
Rėmo keitimas:
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] GetSession atsako naudingosios apkrovos rėmas yra:
5 lentelė. Atsakymas į komandą GetSession
Laukas | baitas | Aprašymas |
STAT | 1 | Būsena |
SSTA | 2 | Seanso būsena • 0x00: uždaryta • 0x01: atidaryta • 0x02: užrakinta (atsisiųsti nebeleidžiama) |
RFU | 3-4 |
3.4.6 DL_GET_DIE_ID komanda
Rėmo keitimas:
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
ID10 ID11 ID12 ID13 ID14 ID15 CRC16] GetDieId atsakymo naudingosios apkrovos rėmelis yra:
6 lentelė. Atsakymas į komandą GetDieId
Laukas | baitas | Aprašymas |
STAT | 1 | Būsena |
RFU | 2-4 | |
DIEID | 5-20 | Kabelio ID (16 baitų) |
3.4.7 DL_CHECK_INTEGRITY komanda
Rėmo keitimas:
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] CRC16 atsako apkrova yra:
7 lentelė. Atsakymas į komandą CheckIntegrity
Laukas | baitas | Vertė / aprašymas | |
STAT | 1 | Būsena | |
PASKOMINTI DUOMENYS | 2 | Bendras duomenų sekcijų skaičius | |
LEN KODAS | 3 | Bendras kodo sekcijų skaičius | |
RFU | 4 | Rezervuota | |
[CRC_INFO] | 58 | 32 bitai (little-endian). Jei nustatytas bitas, atitinkamos sekcijos CRC yra gerai, kitu atveju - Not OK. | |
Bit | Teritorijos vientisumo būsena | ||
[31:28] | Rezervuota [3] | ||
[27:23] | Rezervuota [1] | ||
[22] | Rezervuota [3] | ||
[21:20] | Rezervuota [1] | ||
[19] | RF konfigūracijos sritis (PN5190 B0/B1) [2] Rezervuota (PN5190 B2) [3] | ||
[18] | Protokolo konfigūracijos sritis (PN5190 B0/B1) [2] RF konfigūracijos sritis (PN5190 B2) [2] | ||
[17] | Rezervuota (PN5190 B0/B1) [3] Vartotojo konfigūracijos sritis (PN5190 B2) [2] | ||
[16:6] | Rezervuota [3] | ||
[5:4] | Rezervuota PN5190 B0/B1 [3] Rezervuota PN5190 B2 [1] | ||
[3:0] | Rezervuota [1] | ||
[CRC32] | 9-136 | CRC32 iš 32 sekcijų. Kiekviename CRC yra 4 baitai, saugomi mažo formato formatu. Pirmieji 4 CRC baitai yra CRC_INFO[31] bito, kiti 4 CRC baitai yra CRC_INFO[30] ir pan. |
- [1] Šis bitas turi būti 1, kad PN5190 tinkamai veiktų (su funkcijomis ir (arba) šifruotu FW atsisiuntimu).
- [2] Pagal numatytuosius nustatymus šis bitas nustatytas į 1, tačiau vartotojo pakeisti nustatymai panaikina CRC. Neturi įtakos PN5190 funkcionalumui.
- [3] Ši bito reikšmė, net jei ji yra 0, nėra svarbi. Į šią bito reikšmę galima nepaisyti..
3.4.8 DL_SEC_WRITE komanda
DL_SEC_WRITE komanda turi būti nagrinėjama atsižvelgiant į saugaus rašymo komandų seką: užšifruotą „saugų programinės įrangos atsisiuntimą“ (dažnai vadinamą eSFWu).
Saugaus rašymo komanda pirmiausia atidaro atsisiuntimo seansą ir perduoda RSA autentifikavimą. Kiti perduoda užšifruotus adresus ir baitus, kad būtų įrašyti į PN5190 Flash. Visuose, išskyrus paskutinį, yra sekančių maišos, todėl pranešama, kad jie nėra paskutiniai, ir kriptografiškai sujungiant sekos kadrus.
Kitos komandos (išskyrus DL_RESET ir DL_CHECK_INTEGRITY) gali būti įterptos tarp saugių sekos rašymo komandų jos nepažeidžiant.
3.4.8.1 Pirmoji komanda DL_SEC_WRITE
Apsaugota rašymo komanda yra pirmoji tada ir tik tada, kai:
- Rėmelio ilgis yra 312 baitų
- Nuo paskutinio nustatymo iš naujo nebuvo gauta saugi rašymo komanda.
- PN5190 sėkmingai patikrino įdėtą parašą.
Atsakymas į pirmą kadro komandą būtų toks: [HDLL] <- [0x00 0x04 STAT 0x00 0x00 0x00 CRC16] STAT yra grąžinimo būsena.
Pastaba: eSFWu metu turi būti įrašyta bent viena duomenų dalis, net jei įrašyti duomenys gali būti tik vieno baito ilgio. Todėl pirmoje komandoje visada bus kitos komandos maiša, nes bus bent dvi komandos.
3.4.8.2 Vidurinės DL_SEC_WRITE komandos
Apsaugota rašymo komanda yra „vidurinė“ tada ir tik tada, kai:
- Veiksmo kodas yra toks, kaip aprašyta 3.4.1 skirsnyje komandai DL_SEC_WRITE.
- Pirmoji saugi rašymo komanda jau buvo gauta ir sėkmingai patikrinta anksčiau
- Nuo pirmosios saugios rašymo komandos gavimo iš naujo nenustatyta
- Rėmelio ilgis lygus duomenų dydžiui + antraštės dydžiui + maišos dydžiui: FLEN = DYDIS + 6 + 32
- Viso kadro santrauka yra lygi maišos vertei, gautai ankstesniame kadre
Atsakymas į pirmą kadro komandą būtų toks: [HDLL] <- [0x00 0x04 STAT 0x00 0x00 0x00 CRC16] STAT yra grąžinimo būsena.
3.4.8.3 Paskutinė DL_SEC_WRITE komanda
Apsaugota rašymo komanda yra paskutinė tada ir tik tada, kai:
- Veiksmo kodas yra toks, kaip aprašyta 3.4.1 skirsnyje komandai DL_SEC_WRITE.
- Pirmoji saugi rašymo komanda jau buvo gauta ir sėkmingai patikrinta anksčiau
- Nuo pirmosios saugios rašymo komandos gavimo iš naujo nenustatyta
- Rėmelio ilgis lygus duomenų dydžiui + antraštės dydžiui: FLEN = DYDIS + 6
- Viso kadro santrauka yra lygi maišos vertei, gautai ankstesniame kadre
Atsakymas į pirmą kadro komandą būtų toks: [HDLL] <- [0x00 0x04 STAT 0x00 0x00 0x00 CRC16] STAT yra grąžinimo būsena.
IC darbo įkrovos režimas – normalus veikimo režimas
4.1 Įvadas
Paprastai PN5190 IC turi veikti įprastu režimu, kad iš jo gautų NFC funkcijas.
Kai paleidžiamas PN5190 IC, jis visada laukia, kol iš pagrindinio kompiuterio bus gautos komandos, kad būtų atlikta operacija, nebent įvykiai, sugeneruoti naudojant PN5190 IC, lėmė PN5190 IC įkrovą.
4.2 Komandų sąrašas baigtasview
8 lentelė. PN5190 komandų sąrašas
Komandos kodas | Komandos pavadinimas |
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 |
0x0C | EPC_GEN2_INVENTORY |
0x0D | LOAD_RF_CONFIGURATION |
0x0E | UPDATE_RF_CONFIGURATION |
0x0F | GET_ RF_CONFIGURATION |
0x10 | RF_ON |
0x11 | RF_OFF |
0x12 | KONFIGŪRUOKITE TESTBUS_DIGITAL |
0x13 | CONFIGURE_TESTBUS_ANALOG |
0x14 | CTS_ENABLE |
0x15 | CTS_CONFIGURE |
0x16 | CTS_RETRIEVE_LOG |
0x17-0x18 | RFU |
0x19 | iki FW v2.01: RFU |
nuo FW v2.03: RETRIEVE_RF_FELICA_EMD_DATA | |
0x1A | RECEIVE_RF_DATA |
0x1B-0x1F | RFU |
0x20 | SWITCH_MODE_NORMAL |
0x21 | SWITCH_MODE_AUTOCOLL |
0x22 | SWITCH_MODE_STANDBY |
0x23 | SWITCH_MODE_LPCD |
0x24 | RFU |
0x25 | SWITCH_MODE_DOWNLOAD |
0x26 | GET_DIEID |
0x27 | GET_VERSION |
0x28 | RFU |
0x29 | iki FW v2.05: RFU |
nuo FW v2.06: GET_CRC_USER_AREA | |
0x2A | iki FW v2.03: RFU |
nuo FW v2.05: CONFIGURE_MULTIPLE_TESTBUS_DIGITAL | |
0x2B-0x3F | RFU |
0x40 | ANTENNA_SELF_TEST (nepalaikoma) |
0x41 | PRBS_TESTAS |
0x42-0x4F | RFU |
4.3 Atsakymo būsenos reikšmės
Toliau pateikiamos atsakymo būsenos reikšmės, kurios grąžinamos kaip atsakymo iš PN5190 dalis po to, kai komanda pradeda veikti.
9 lentelė. PN5190 atsako būsenos reikšmės
Atsakymo būsena | Atsakymo būsenos reikšmė | Aprašymas |
PN5190_STATUS_SUCCESS | 0x00 | Nurodo, kad operacija baigta sėkmingai |
PN5190_STATUS_TIMEOUT | 0x01 | Nurodo, kad dėl komandos veikimo baigėsi skirtasis laikas |
PN5190_STATUS_INTEGRITY_ERROR | 0x02 | Nurodo, kad vykdant komandą įvyko RF duomenų vientisumo klaida |
PN5190_STATUS_RF_COLLISION_ERROR | 0x03 | Nurodo, kad vykdant komandą įvyko RF susidūrimo klaida |
PN5190_STATUS_RFU1 | 0x04 | Rezervuota |
PN5190_STATUS_INVALID_COMMAND | 0x05 | Nurodo, kad pateikta komanda neteisinga / neįgyvendinta |
PN5190_STATUS_RFU2 | 0x06 | Rezervuota |
PN5190_STATUS_AUTH_ERROR | 0x07 | Nurodo, kad MFC autentifikavimas nepavyko (leidimas atmestas) |
PN5190_STATUS_MEMORY_ERROR | 0x08 | Nurodo, kad vykdant komandą įvyko programavimo klaida arba vidinės atminties klaida |
PN5190_STATUS_RFU4 | 0x09 | Rezervuota |
PN5190_STATUS_NO_RF_FIELD | 0x0A | Nurodo, kad vidiniame RF lauke nėra arba yra klaida (taikoma tik iniciatoriaus / skaitytuvo režimu) |
PN5190_STATUS_RFU5 | 0x0B | Rezervuota |
PN5190_STATUS_SYNTAX_ERROR | 0x0C | Nurodo, kad gautas neteisingas komandos kadro ilgis |
PN5190_STATUS_RESOURCE_ERROR | 0x0D | Nurodo, kad įvyko vidinių išteklių klaida |
PN5190_STATUS_RFU6 | 0x0E | Rezervuota |
PN5190_STATUS_RFU7 | 0x0F | Rezervuota |
PN5190_STATUS_NO_EXTERNAL_RF_FIELD | 0x10 | Nurodo, kad vykdant komandą nėra išorinio RF lauko (taikoma tik kortelės / taikinio režimu) |
PN5190_STATUS_RX_TIMEOUT | 0x11 | Nurodo, kad pradėjus RFExchange ir pasibaigus RX skirtam laikui, duomenys negaunami. |
PN5190_STATUS_USER_CANCELLED | 0x12 | Nurodo, kad dabartinė vykdoma komanda nutraukta |
PN5190_STATUS_PREVENT_STANDBY | 0x13 | Nurodo, kad PN5190 neleidžiama pereiti į budėjimo režimą |
PN5190_STATUS_RFU9 | 0x14 | Rezervuota |
PN5190_STATUS_CLOCK_ERROR | 0x15 | Nurodo, kad laikrodis į CLIF neįsijungė |
PN5190_STATUS_RFU10 | 0x16 | Rezervuota |
PN5190_STATUS_PRBS_ERROR | 0x17 | Nurodo, kad PRBS komanda grąžino klaidą |
PN5190_STATUS_INSTR_ERROR | 0x18 | Nurodo, kad nepavyko atlikti komandos (tai gali būti komandos parametrų klaida, sintaksės klaida, pačios operacijos klaida, neįvykdyti išankstiniai komandos reikalavimai ir pan.) |
PN5190_STATUS_ACCESS_DENIED | 0x19 | Nurodo, kad prieiga prie vidinės atminties uždrausta |
PN5190_STATUS_TX_FAILURE | 0x1A | Nurodo, kad TX per RF nepavyko |
PN5190_STATUS_NO_ANTENNA | 0x1B | Nurodo, kad antena neprijungta / nėra |
PN5190_STATUS_TXLDO_ERROR | 0x1C | Nurodo, kad TXLDO yra klaida, kai VUP nepasiekiamas ir RF įjungtas. |
PN5190_STATUS_RFCFG_NOT_APPLIED | 0x1D | Nurodo, kad RF konfigūracija neįkeliama, kai RF įjungtas |
PN5190_STATUS_TIMEOUT_WITH_EMD_ERROR | 0x1E | iki FW 2.01: nesitikima |
nuo FW 2.03: Nurodo, kad keičiantis su LOG ENABLE BIT nustatytas FeliCa EMD registre, pastebėta FeliCa EMD klaida |
||
PN5190_STATUS_INTERNAL_ERROR | 0x7F | Nurodo, kad NVM operacija nepavyko |
PN5190_STATUS_SUCCSES_CHAINING | 0xAF | Nurodo, kad laukiama duomenų nuskaitymo |
4.4 Įvykiai baigėsiview
Yra du būdai, kaip apie įvykius pranešama rengėjui.
4.4.1 Įprasti įvykiai per IRQ kaištį
Šie įvykiai skirstomi į toliau nurodytas kategorijas:
- Visada įjungta – priegloba visada informuojama
- Valdoma pagrindinio kompiuterio – priegloba informuojama, jei registre nustatytas atitinkamas Event Enable bitas (EVENT_ENABLE (01h)).
Žemo lygio pertraukimai iš periferinių IP, įskaitant CLIF, turi būti visiškai tvarkomi programinėje įrangoje, o pagrindinis kompiuteris turi būti informuojamas tik apie įvykių skyriuje išvardytus įvykius.
Programinė įranga įgyvendina du įvykių registrus kaip RAM registrus, kuriuos galima įrašyti / skaityti naudojant 4.5.1.1 / 4.5.1.5 skyriaus komandas.
Registras EVENT_ENABLE (0x01) => Įjungti konkrečių / visų įvykių pranešimus.
Registras EVENT_STATUS (0x02) => Įvykio pranešimo naudingosios apkrovos dalis.
Rengėjas turi pašalinti įvykius, kai rengėjas perskaito įvykio pranešimą.
Įvykiai yra asinchroninio pobūdžio ir apie juos pranešama pagrindiniam kompiuteriui, jei jie įjungti registre EVENT_ENABLE.
Toliau pateikiamas įvykių, kurie turi būti prieinami šeimininkui kaip įvykio pranešimo dalis, sąrašas.
10 lentelė. PN5190 įvykiai (EVENT_STATUS turinys)
Bitas – diapazonas | [1] laukas | Visada Įjungta (Y/N) | |
31 | 12 | RFU | 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 |
- Atminkite, kad nėra dviejų įvykių, išskyrus klaidų atvejus. Esant klaidoms operacijos metu, bus nustatytas funkcinis įvykis (pvz., BOOT_EVENT, AUTOCALL_EVENT ir kt.) ir GENERAL_ERROR_EVENT.
- Šis įvykis bus automatiškai išjungtas, kai jis bus paskelbtas rengėjui. Priimantysis turėtų vėl įjungti šiuos įvykius, jei nori, kad jam būtų pranešta apie šiuos įvykius.
4.4.1.1 Įvykių pranešimų formatai
Įvykio pranešimo formatas skiriasi priklausomai nuo įvykio įvykių ir skirtingos PN5190 būsenos.
Šeimininkas turi perskaityti tag (T) ir pranešimo ilgį (L), tada perskaitykite atitinkamą baitų skaičių kaip įvykių reikšmę (V).
Apskritai įvykio pranešime (žr. 12 pav.) yra EVENT_STATUS, kaip apibrėžta 11 lentelėje, o įvykio duomenys atitinka atitinkamą įvykio bitą, nustatytą EVENT_STATUS.
Pastaba:
Kai kurių įvykių naudingoji apkrova neegzistuoja. Pavyzdžiui, jei suaktyvinamas TIMER0_EVENT, kaip įvykio pranešimo dalis pateikiama tik EVENT_STATUS.
11 lentelėje taip pat išsamiai nurodyta, ar įvykio pranešime yra atitinkamo įvykio duomenų.GENERAL_ERROR_EVENT taip pat gali įvykti su kitais įvykiais.
Pagal šį scenarijų įvykio pranešime (žr. 13 pav.) yra EVENT_STATUS, kaip apibrėžta 11 lentelėje, ir GENERAL_ERROR_STATUS_DATA, kaip apibrėžta 14 lentelėje, o tada įvykio duomenys atitinka atitinkamą įvykio bitą, nustatytą EVENT_STATUS, kaip apibrėžta 11 lentelėje.Pastaba:
Tik po BOOT_EVENT arba po POR, STANDBY, ULPCD, kompiuteris galės dirbti įprastu darbo režimu, išduodamas aukščiau išvardytas komandas.
Nutraukus esamą vykdomą komandą, tik po IDLE_EVENT, pagrindinis kompiuteris galės dirbti įprastu darbo režimu, išduodamas aukščiau nurodytas komandas.
4.4.1.2 Skirtingi ĮVYKIŲ būsenos apibrėžimai
4.4.1.2.1 EVENT_STATUS bitų apibrėžimai
11 lentelė. EVENT_STATUS bitų apibrėžimai
Bitas (iki – nuo) | Renginys | Aprašymas | Atitinkamo įvykio įvykio duomenys (jei yra) |
|
31 | 12 | RFU | Rezervuota | |
11 | 11 | CTS_EVENT | Šis bitas nustatomas generuojant CTS įvykį. | 86 lentelė |
10 | 10 | IDLE_EVENT | Šis bitas nustatomas, kai vykdoma komanda atšaukiama dėl SWITCH_MODE_NORMAL komandos išdavimo. | Nėra įvykių duomenų |
9 | 9 | LPCD_CALIBRATION_DONE_ ĮVYKIS |
Šis bitas nustatomas, kai sugeneruojamas LPCD kalibravimo įvykis. | 16 lentelė |
8 | 8 | LPCD_EVENT | Šis bitas nustatomas generuojant LPCD įvykį. | 15 lentelė |
7 | 7 | AUTOCOLL_EVENT | Šis bitas nustatomas, kai AUTOCOLL operacija baigta. | 52 lentelė |
6 | 6 | TIMER0_EVENT | Šis bitas nustatomas, kai įvyksta TIMER0 įvykis. | Nėra įvykių duomenų |
5 | 5 | TX_OVERCURRENT_ERROR_ ĮVYKIS |
Šis bitas nustatomas, kai TX tvarkyklės srovė yra didesnė už EEPROM apibrėžtą slenkstį. Esant šiai sąlygai, laukas automatiškai išjungiamas prieš pranešant pagrindiniam kompiuteriui. Žr. 4.4.2.2 skyrių. | Nėra įvykių duomenų |
4 | 4 | RFON_DET_EVENT | Šis bitas nustatomas, kai aptinkamas išorinis RF laukas. | Nėra įvykių duomenų |
3 | 3 | RFOFF_DET_EVENT | Šis bitas nustatomas, kai išnyksta jau esantis išorinis RF laukas. | Nėra įvykių duomenų |
2 | 2 | STANDBY_PREV_EVENT | Šis bitas nustatomas, kai budėjimo režimas neleidžiamas dėl prevencinių sąlygų | 13 lentelė |
1 | 1 | GENERAL_ERROR_EVENT | Šis bitas nustatomas, kai yra kokių nors bendrų klaidų | 14 lentelė |
0 | 0 | BOOT_EVENT | Šis bitas nustatomas, kai PN5190 paleidžiamas naudojant POR/budėjimo režimą | 12 lentelė |
4.4.1.2.2 BOOT_STATUS_DATA bitų apibrėžimai
12 lentelė. BOOT_STATUS_DATA bitų apibrėžimai
Truputį iki | Bit From | Įkrovos būsena | Įkrovos priežastis dėl |
31 | 27 | RFU | Rezervuota |
26 | 26 | ULP_STANDBY | Paleidimo priežastis dėl išėjimo iš ULP_STANDBY. |
25 | 23 | RFU | Rezervuota |
22 | 22 | BOOT_ RX_ULPDET | RX ULPDET leido įkelti ULP budėjimo režimu |
21 | 21 | RFU | Rezervuota |
20 | 20 | BOOT_SPI | Įkrovos priežastis dėl to, kad SPI_NTS signalas yra žemas |
19 | 17 | RFU | Rezervuota |
16 | 16 | BOOT_GPIO3 | Įkrovos priežastis dėl GPIO3 perėjimo iš žemo į aukštą. |
15 | 15 | BOOT_GPIO2 | Įkrovos priežastis dėl GPIO2 perėjimo iš žemo į aukštą. |
14 | 14 | BOOT_GPIO1 | Įkrovos priežastis dėl GPIO1 perėjimo iš žemo į aukštą. |
13 | 13 | BOOT_GPIO0 | Įkrovos priežastis dėl GPIO0 perėjimo iš žemo į aukštą. |
12 | 12 | BOOT_LPDET | Įkrovos priežastis dėl išorinio RF lauko buvimo STANDBY / SUSPEND metu |
11 | 11 | RFU | Rezervuota |
10 | 8 | RFU | Rezervuota |
7 | 7 | BOOT_SOFT_RESET | Įkrovos priežastis dėl minkšto IC nustatymo iš naujo |
6 | 6 | BOOT_VDDIO_LOSS | Įkrovos priežastis dėl VDDIO praradimo. Žr. 4.4.2.3 skyrių |
5 | 5 | BOOT_VDDIO_START | Įkrovos priežastis, jei STANDBY įvestas su VDDIO LOSS. Žr. 4.4.2.3 skyrių |
4 | 4 | BOOT_WUC | Įkrovos priežastis dėl pabudimo skaitiklio, pasibaigusio bet kurios BUKTIES REŽIMO operacijos metu. |
3 | 3 | BOOT_TEMP | Įkrovos priežastis dėl IC temperatūros viršija sukonfigūruotą slenkstį. Žr. 4.4.2.1 skyrių |
2 | 2 | BOOT_WDG | Įkrovos priežastis dėl stebėjimo režimo nustatymo iš naujo |
1 | 1 | RFU | Rezervuota |
0 | 0 | BOOT_POR | Įkrovimo priežastis dėl įjungimo iš naujo |
4.4.1.2.3 STANDBY_PREV_STATUS_DATA bitų apibrėžimai
13 lentelė. STANDBY_PREV_STATUS_DATA bitų apibrėžimai
Truputį iki | Bit From | Budėjimo prevencija | Budėjimo režimas neleistas dėl |
31 | 26 | RFU | REZERVUOTA |
25 | 25 | RFU | REZERVUOTA |
24 | 24 | PREV_TEMP | IC darbinė temperatūra viršija slenkstį |
23 | 23 | RFU | REZERVUOTA |
22 | 22 | PREV_HOSTCOMM | Pagrindinio kompiuterio sąsajos ryšys |
21 | 21 | PREV_SPI | SPI_NTS signalas yra žemas |
20 | 18 | RFU | REZERVUOTA |
17 | 17 | PREV_GPIO3 | GPIO3 signalo perėjimas iš žemo į aukštą |
16 | 16 | PREV_GPIO2 | GPIO2 signalo perėjimas iš žemo į aukštą |
15 | 15 | PREV_GPIO1 | GPIO1 signalo perėjimas iš žemo į aukštą |
14 | 14 | PREV_GPIO0 | GPIO0 signalo perėjimas iš žemo į aukštą |
13 | 13 | PREV_WUC | Baigėsi pažadinimo skaitiklis |
12 | 12 | PREV_LPDET | Mažos galios aptikimas. Atsiranda, kai perjungiant į budėjimo režimą aptinkamas išorinis RF signalas. |
11 | 11 | PREV_RX_ULPDET | RX itin mažos galios aptikimas. Atsiranda, kai RF signalas aptinkamas pereinant į ULP_STANDBY. |
10 | 10 | RFU | REZERVUOTA |
9 | 5 | RFU | REZERVUOTA |
4 | 4 | RFU | REZERVUOTA |
3 | 3 | RFU | REZERVUOTA |
2 | 2 | RFU | REZERVUOTA |
1 | 1 | RFU | REZERVUOTA |
0 | 0 | RFU | REZERVUOTA |
4.4.1.2.4 GENERAL_ERROR_STATUS_DATA bitų apibrėžimai
14 lentelė. GENERAL_ERROR_STATUS_DATA bitų apibrėžimai
Truputį iki | Truputis nuo | Klaidos būsena | Aprašymas |
31 | 6 | RFU | Rezervuota |
5 | 5 | XTAL_START_ERROR | Įkrovos metu nepavyko paleisti XTAL |
4 | 4 | SYS_TRIM_RECOVERY_ERROR | Įvyko vidinės sistemos apkarpymo atminties klaida, tačiau atkurti nepavyko. Sistema veikia pažemintu režimu. |
3 | 3 | SYS_TRIM_RECOVERY_SUCCESS | Įvyko vidinės sistemos apkarpymo atminties klaida ir atkūrimas buvo sėkmingas. Kad atkūrimas įsigaliotų, pagrindinis kompiuteris turi iš naujo paleisti PN5190. |
2 | 2 | TXLDO_ERROR | TXLDO klaida |
1 | 1 | CLOCK_ERROR | Laikrodžio klaida |
0 | 0 | GPADC_ERROR | ADC klaida |
4.4.1.2.5 LPCD_STATUS_DATA bitų apibrėžimai
15 lentelė. LPCD_STATUS_DATA baitų apibrėžimai
Truputį iki | Bit From | Būsenos bitų taikymas pagal pagrindinę LPCD arba ULPCD operaciją | Atitinkamo bito aprašymas nustatomas būsenos baite. | ||
LPCD | ULPCD | ||||
31 | 7 | RFU | Rezervuota | ||
6 | 6 | Nutraukti_HIF | Y | N | Nutraukta dėl HIF veiklos |
5 | 5 | CLKDET klaida | N | Y | Nutraukta dėl CLKDET klaidos |
4 | 4 | XTAL skirtasis laikas | N | Y | Nutraukta, nes baigėsi XTAL skirtasis laikas |
3 | 3 | VDDPA LDO Viršsrovė | N | Y | Nutraukta dėl VDDPA LDO viršsrovio |
2 | 2 | Išorinis RF laukas | Y | Y | Nutraukta dėl išorinio RF lauko |
1 | 1 | GPIO3 nutraukti | N | Y | Nutraukta dėl GPIO3 lygio pasikeitimo |
0 | 0 | Kortelė aptikta | Y | Y | Kortelė aptikta |
4.4.1.2.6 LPCD_CALIBRATION_DONE būsenos duomenų bitų apibrėžimai
16 lentelė. ULPCD LPCD_CALIBRATION_DONE būsenos duomenų baitų apibrėžimai
Truputį iki | Bit From | LPCD_CALIBRATION DONE būsena įvykis | Atitinkamo bito aprašymas nustatomas būsenos baite. |
31 | 11 | Rezervuota | |
10 | 0 | Etaloninė vertė iš ULPCD kalibravimo | Išmatuota RSSI vertė ULPCD kalibravimo metu, kuri naudojama kaip nuoroda ULPCD metu |
17 lentelė. LPCD_CALIBRATION_DONE būsenos duomenų baitų apibrėžimai LPCD
Truputį iki | Bit From | Būsenos bitų taikymas pagal pagrindinę LPCD arba ULPCD operaciją | Atitinkamo bito aprašymas nustatomas būsenos baite. | ||
2 | 2 | Išorinis RF laukas | Y | Y | Nutraukta dėl išorinio RF lauko |
1 | 1 | GPIO3 nutraukti | N | Y | Nutraukta dėl GPIO3 lygio pasikeitimo |
0 | 0 | Kortelė aptikta | Y | Y | Kortelė aptikta |
4.4.2 Įvairių įkrovos scenarijų tvarkymas
PN5190 IC apdoroja skirtingas klaidų sąlygas, susijusias su IC parametrais, kaip nurodyta toliau.
4.4.2.1 Perkaitimo scenarijaus tvarkymas, kai veikia PN5190
Kai PN5190 IC vidinė temperatūra pasiekia slenkstinę vertę, kaip sukonfigūruota EEPROM laukelyje TEMP_WARNING [2], IC persijungia į budėjimo režimą. Todėl, jei EEPROM laukas ENABLE_GPIO0_ON_OVERTEMP [2] sukonfigūruotas taip, kad būtų pranešta pagrindiniam kompiuteriui, GPIO0 bus pakeltas aukštai, kad praneštų IC viršijusiai temperatūrai.
Kai ir kai IC temperatūra nukrenta žemiau slenkstinės vertės, kaip sukonfigūruota EEPROM lauke TEMP_WARNING [2], IC bus paleista naudojant BOOT_EVENT, kaip nurodyta 11 lentelėje, o BOOT_TEMP įkrovos būsenos bitas nustatomas kaip nurodyta 12 lentelėje, o GPIO0 bus sumažintas.
4.4.2.2 Viršsrovių valdymas
Jei PN5190 IC nustato viršsrovę, IC išjungia RF maitinimą ir siunčia TX_OVERCURRENT_ERROR_EVENT, kaip parodyta 11 lentelėje.
Viršutinės srovės būklės trukmę galima valdyti modifikuojant EEPROM lauką TXLDO_CONFIG [2].
Informacijos apie IC viršijimą srovės slenkstį rasite dokumente [2].
Pastaba:
Jei yra kokių nors kitų laukiančių įvykių ar atsakymo, jie bus išsiųsti šeimininkui.
4.4.2.3 VDDIO praradimas veikimo metu
Jei PN5190 IC nustato, kad nėra VDDIO (VDDIO praradimo), IC persijungia į budėjimo režimą.
IC paleidžiama tik tada, kai pasiekiamas VDDIO, kai BOOT_EVENT, kaip nurodyta 11 lentelėje, o BOOT_VDDIO_START įkrovos būsenos bitas nustatytas kaip 12 lentelėje.
Informacijos apie PN5190 IC statines charakteristikas rasite dokumente [2].
4.4.3 Nutraukimo scenarijų tvarkymas
PN5190 IC palaiko esamų vykdomųjų komandų ir PN5190 IC veikimo nutraukimą, kai tokia nutraukimo komanda, pvz., 4.5.4.5.2 skirsnis, siunčiama į PN5190 IC, kaip parodyta 18 lentelėje.
Pastaba:
Kai PN5190 IC veikia ULPCD ir ULP budėjimo režimu, jo negalima nutraukti siunčiant 4.5.4.5.2 skirsnį ARBA pradedant SPI operaciją (sumažinant SPI_NTS signalą).
18 lentelė. Tikėtinas įvykio atsakas, kai skirtingos komandos baigiasi 4.5.4.5.2 skyriumi
Komandos | Elgsena, kai siunčiama komanda Switch Mode Normal |
Visos komandos, kuriose neįvedama maža galia | EVENT_STAUS nustatyta kaip „IDLE_EVENT“ |
LPCD perjungimo režimas | EVENT_STATUS nustatytas į „LPCD_EVENT“, o „LPCD_ STATUS_DATA“ nurodo būsenos bitus kaip „Abort_HIF“ |
Perjungti budėjimo režimą | EVENT_STAUS nustatytas į „BOOT_EVENT“, o „BOOT_ STATUS_DATA“ nurodo bitus „BOOT_SPI“ |
Switch Mode Autocoll (be autonominio režimo, autonominis režimas su budėjimo režimu ir autonominis režimas be budėjimo režimo) | EVENT_STAUS nustatyta kaip „AUTOCOLL_EVENT“, o STATUS_DATA bitai rodo, kad komanda buvo atšaukta. |
4.5 Įprasto režimo naudojimo instrukcijos informacija
4.5.1 Manipuliavimas registru
Šio skyriaus instrukcijos naudojamos norint pasiekti PN5190 loginius registrus.
4.5.1.1 WRITE_REGISTER
Ši instrukcija naudojama 32 bitų reikšmei (little-endian) įrašyti į loginį registrą.
4.5.1.1.1 Sąlygos
Registro adresas turi egzistuoti, o registre turi būti atributas READ-WRITE arba WRITE-ONLY.
4.5.1.1.2 komanda
19 lentelė. WRITE_REGISTER komandos reikšmė Į registrą įrašykite 32 bitų reikšmę.
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas |
Registracijos adresas | 1 baitas | Registro adresas. |
19 lentelė. WRITE_REGISTER komandos reikšmė…tęsinys
Į registrą įrašykite 32 bitų reikšmę.
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas |
Vertė | 4 baitai | 32 bitų registro reikšmė, kurią reikia įrašyti. (Little-endian) |
4.5.1.1.3 Atsakymas
20 lentelė. WRITE_REGISTER atsakymo reikšmė
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas |
Būsena | 1 baitas | Operacijos būsena [9 lentelė]. Numatomos vertės yra tokios: |
PN5190_STATUS_SUCCESS | ||
PN5190_STATUS_INSTR_ERROR |
4.5.1.1.4 įvykis
Šiai komandai įvykių nėra.
4.5.1.2 WRITE_REGISTER_OR_MASK
Ši instrukcija naudojama registro turiniui modifikuoti naudojant loginę ARBA operaciją. Nuskaitomas registro turinys ir su pateikta kauke atliekama loginė ARBA operacija. Pakeistas turinys įrašomas atgal į registrą.
4.5.1.2.1 Sąlygos
Registro adresas turi egzistuoti, o registre turi būti atributas READ-WRITE.
4.5.1.2.2 komanda
21 lentelė. WRITE_REGISTER_OR_MASK komandos reikšmė Atlikite loginę ARBA operaciją registre naudodami pateiktą kaukę.
Naudingosios apkrovos laukas | Ilgis | Vertė / aprašymas |
Registracijos adresas | 1 baitas | Registro adresas. |
Kaukė | 4 baitai | Bitmask naudojama kaip operandas loginei ARBA operacijai. (Little-endian) |
4.5.1.2.3 Atsakymas
22 lentelė. WRITE_REGISTER_OR_MASK atsakymo reikšmė
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas |
Būsena | 1 baitas | Operacijos būsena [9 lentelė]. Numatomos vertės yra tokios: |
PN5190_STATUS_SUCCESS | ||
PN5190_STATUS_INSTR_ERROR |
4.5.1.2.4 įvykis
Šiai komandai įvykių nėra.
4.5.1.3 WRITE_REGISTER_AND_MASK
Ši instrukcija naudojama registro turiniui modifikuoti naudojant loginę AND operaciją. Nuskaitomas registro turinys ir su pateikta kauke atliekama loginė IR operacija. Pakeistas turinys įrašomas atgal į registrą.
4.5.1.3.1 Sąlygos
Registro adresas turi egzistuoti, o registre turi būti atributas READ-WRITE.
4.5.1.3.2 komanda
23 lentelė. WRITE_REGISTER_AND_MASK komandos reikšmė Atlikite loginę IR operaciją registre naudodami pateiktą kaukę.
Naudingosios apkrovos laukas | Ilgis | Vertė / aprašymas |
Registracijos adresas | 1 baitas | Registro adresas. |
Kaukė | 4 baitai | Bitmask naudojama kaip operandas loginei IR operacijai. (Little-endian) |
4.5.1.3.3 Atsakymas
24 lentelė. WRITE_REGISTER_AND_MASK atsakymo reikšmė
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas |
Būsena | 1 baitas | Operacijos būsena [9 lentelė]. Numatomos vertės yra tokios: |
PN5190_STATUS_SUCCESS | ||
PN5190_STATUS_INSTR_ERROR |
4.5.1.3.4 įvykis
Šiai komandai įvykių nėra.
4.5.1.4 WRITE_REGISTER_MULTIPLE
Ši instrukcijų funkcija yra panaši į 4.5.1.1 skirsnį, 4.5.1.2 skyrių, 4.5.1.3 skyrių, su galimybe jas derinti. Tiesą sakant, tam reikia registro tipo reikšmių rinkinio ir atlieka atitinkamus veiksmus. Tipas atspindi veiksmą, kuris yra registro įrašymas, loginė ARBA operacija registre arba loginė IR operacija registre.
4.5.1.4.1 Sąlygos
Aibėje turi egzistuoti atitinkamas registro loginis adresas.
Registro prieigos atributas turi leisti atlikti reikiamą veiksmą (tipas):
- Rašymo veiksmas (0x01): atributas READ-WRITE arba WRITE-ONLY
- ARBA maskavimo veiksmas (0x02): READ-WRITE atributas
- IR maskavimo veiksmas (0x03): atributas READ-WRITE
Masyvo „Set“ dydis turi būti nuo 1 iki 43 imtinai.
Laukas „Tipas“ turi būti nuo 1 iki 3 imtinai
4.5.1.4.2 komanda
25 lentelė. WRITE_REGISTER_MULTIPLE komandos reikšmė Atlikite registro įrašymo operaciją naudodami registro ir reikšmės porų rinkinį.
Naudingosios apkrovos laukas | Ilgis | Vertė / aprašymas | |||
Nustatyti [1…n] | 6 baitai | Registracijos adresas | 1 baitas | Loginis registro adresas. | |
Tipas | 1 baitas | 0x1 | Rašyti registrą | ||
0x2 | Rašyti registrą ARBA kaukę | ||||
0x3 | Rašyti Registruotis IR kaukė | ||||
Vertė | 4 baitai | 32 Bite registro reikšmė, kuri turi būti įrašyta, arba bitų kaukė naudojama loginiam veikimui. (Little-endian) |
Pastaba: Išimties atveju operacija neatšaukiama, ty registrai, kurie buvo modifikuoti iki išimties atsiradimo, lieka modifikuotos būsenos. Priegloba turi imtis tinkamų veiksmų, kad atkurtų apibrėžtą būseną.
4.5.1.4.3 Atsakymas
26 lentelė. WRITE_REGISTER_MULTIPLE atsakymo reikšmė
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas |
Būsena | 1 baitas | Operacijos būsena [9 lentelė]. Numatomos vertės yra tokios: |
PN5190_STATUS_SUCCESS | ||
PN5190_STATUS_INSTR_ERROR |
4.5.1.4.4 įvykis
Šiai komandai įvykių nėra.
4.5.1.5 READ_REGISTER
Ši instrukcija naudojama loginio registro turiniui nuskaityti. Turinys pateikiamas atsakyme kaip 4 baitų reikšmė mažo galo formatu.
4.5.1.5.1 Sąlygos
Loginio registro adresas turi egzistuoti. Registro prieigos atributas turi būti READ-WRITE arba READ-ONLY.
4.5.1.5.2 komanda
27 lentelė. READ_REGISTER komandos reikšmė
Perskaitykite registro turinį.
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas |
Registracijos adresas | 1 baitas | Loginio registro adresas |
4.5.1.5.3 Atsakymas
28 lentelė. READ_REGISTER atsakymo reikšmė
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas |
Būsena | 1 baitas | Operacijos būsena [9 lentelė]. Numatomos vertės yra tokios: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR (Daugiau duomenų nėra) | ||
Registro vertė | 4 baitai | 32 bitų registro vertė, kuri buvo nuskaityta. (Little-endian) |
4.5.1.5.4 įvykis
Šiai komandai įvykių nėra.
4.5.1.6 READ_REGISTER_MULTIPLE
Ši instrukcija naudojama kelių loginių registrų skaitymui vienu metu. Rezultatas (kiekvieno registro turinys) pateikiamas atsakyme į nurodymą. Pats registracijos adresas atsakyme neįtrauktas. Registro turinio tvarka atsakyme atitinka registro adresų eilę nurodyme.
4.5.1.6.1 Sąlygos
Turi būti visi instrukcijoje nurodyti registrų adresai. Kiekvieno registro prieigos atributas turi būti READ-WRITE arba READ-ONLY. „Registrinio adreso“ masyvo dydis turi būti nuo 1 iki 18 imtinai.
4.5.1.6.2 komanda
29 lentelė. READ_REGISTER_MULTIPLE komandos reikšmė Atlikite registro skaitymo operaciją su registrų rinkiniu.
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas |
Registracijos adresas[1…n] | 1 baitas | Registracijos adresas |
4.5.1.6.3 Atsakymas
30 lentelė. READ_REGISTER_MULTIPLE atsakymo reikšmė
Naudingosios apkrovos laukas | Ilgis | Vertė / aprašymas | ||
Būsena | 1 baitas | Operacijos būsena [9 lentelė]. Numatomos vertės yra tokios: | ||
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR (Daugiau duomenų nėra) | ||||
Registro reikšmė [1…n] | 4 baitai | Vertė | 4 baitai | 32 bitų registro reikšmė, kuri buvo nuskaityta (mažasis endianas). |
4.5.1.6.4 įvykis
Šiai komandai įvykių nėra.
4.5.2 E2PROM manipuliavimas
E2PROM pasiekiama sritis atitinka EEPROM žemėlapį ir adresą.
Pastaba:
1. Jei toliau pateiktose instrukcijose minimas E2PROM adresas, jis nurodo adresuojamos EEPROM srities dydį.
4.5.2.1 WRITE_E2PROM
Ši instrukcija naudojama įrašyti vieną ar daugiau reikšmių į E2PROM. Lauke „Vertės“ yra duomenys, kuriuos reikia įrašyti į E2PROM, pradedant adresu, nurodytu lauke „E2PROM Address“. Duomenys rašomi eilės tvarka.
Pastaba:
Atminkite, kad tai yra blokavimo komanda, tai reiškia, kad NFC FE yra užblokuotas rašymo operacijos metu. Tai gali užtrukti kelias milisekundes.
4.5.2.1.1 Sąlygos
Laukas „E2PROM Address“ turi būti diapazone, kaip nurodyta [2]. Baitų skaičius lauke „Vertės“ turi būti nuo 1 iki 1024 (0x0400 imtinai). Rašymo operacija neturi viršyti EEPROM adreso, kaip nurodyta [2]. Klaidos atsakymas siunčiamas pagrindiniam kompiuteriui, jei adresas viršija EEPROM adresų erdvę, kaip nurodyta [2].
4.5.2.1.2 komanda
31 lentelė. WRITE_E2PROM komandos reikšmė Įrašykite pateiktas reikšmes nuosekliai į E2PROM.
Naudingosios apkrovos laukas | Ilgis | Vertė / aprašymas |
E2PROM adresas | 2 baitas | Adresas EEPROM, nuo kurio prasidės rašymo operacija. (Little endian) |
Vertybės | 1 – 1024 baitai | Reikšmės, kurios turi būti įrašytos į E2PROM eilės tvarka. |
4.5.2.1.3 Atsakymas
32 lentelė. WRITE_EEPROM atsako reikšmė
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas |
Būsena | 1 baitas | Operacijos būsena [9 lentelė]. Numatomos vertės yra tokios: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR PN5190_STATUS_MEMORY_ERROR |
4.5.2.1.4 įvykis
Šiai komandai įvykių nėra.
4.5.2.2 READ_E2PROM
Ši instrukcija naudojama duomenims nuskaityti iš E2PROM atminties srities. Lauke „E2PROM Address“ nurodomas skaitymo operacijos pradžios adresas. Atsakyme yra duomenys, nuskaityti iš E2PROM.
4.5.2.2.1 Sąlygos
Laukas „E2PROM Address“ turi būti tinkamame diapazone.
Laukas „Baitų skaičius“ turi būti nuo 1 iki 256 imtinai.
Skaitymo operacija neturi viršyti paskutinio pasiekiamo EEPROM adreso.
Atsakymas į klaidą siunčiamas pagrindiniam kompiuteriui, jei adresas viršija EEPROM adresų erdvę.
4.5.2.2.2 komanda
33 lentelė. READ_E2PROM komandos reikšmė Nuskaitykite reikšmes iš E2PROM nuosekliai.
Naudingosios apkrovos laukas | Ilgis | Vertė / aprašymas |
E2PROM adresas | 2 baitas | Adresas E2PROM, nuo kurio turi prasidėti skaitymo operacija. (Little endian) |
Baitų skaičius | 2 baitas | Nuskaitomų baitų skaičius. (Little-endian) |
4.5.2.2.3 Atsakymas
34 lentelė. READ_E2PROM atsako reikšmė
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas |
Būsena | 1 baitas | Operacijos būsena [9 lentelė]. Numatomos vertės yra tokios: |
PN5190_STATUS_SUCCESS | ||
PN5190_STATUS_INSTR_ERROR (Daugiau duomenų nėra) | ||
Vertybės | 1 – 1024 baitai | Vertės, kurios buvo nuskaitytos iš eilės. |
4.5.2.2.4 įvykis
Šiai komandai įvykių nėra.
4.5.2.3 GET_CRC_USER_AREA
Ši instrukcija naudojama visos vartotojo konfigūracijos srities CRC apskaičiuoti, įskaitant PN5190 IC protokolo sritį.
4.5.2.3.1 komanda
35 lentelė. GET_CRC_USER_AREA komandos reikšmė
Nuskaitykite vartotojo konfigūracijos srities CRC, įskaitant protokolo sritį.
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas |
– | – | Naudingoje apkrovoje duomenų nėra |
4.5.2.3.2 Atsakymas
36 lentelė. GET_CRC_USER_AREA atsako reikšmė
Naudingosios apkrovos laukas | Ilgis | Vertė / aprašymas |
Būsena | 1 baitas | Operacijos būsena [9 lentelė]. Numatomos vertės yra tokios: |
PN5190_STATUS_SUCCESS | ||
PN5190_STATUS_INSTR_ERROR (Daugiau duomenų nėra) | ||
Vertybės | 4 baitai | 4 baitai CRC duomenų mažuoju formatu. |
4.5.2.3.3 įvykis
Šiai komandai įvykių nėra.
4.5.3 CLIF duomenų manipuliavimas
Šiame skyriuje aprašytose instrukcijose aprašomos radijo dažnių perdavimo ir priėmimo komandos.
4.5.3.1 EXCHANGE_RF_DATA
RF mainų funkcija atlieka TX duomenų perdavimą ir laukia bet kokių RX duomenų priėmimo.
Funkcija grįžta gavus (klaidingą arba teisingą) arba pasibaigus skirtajam laikui. Laikmatis paleidžiamas pasibaigus PERDAVIMO PABAIGAI ir sustabdomas, kai prasideda PRIĖMĖJIMAS. EEPROM iš anksto sukonfigūruota skirtojo laiko reikšmė turi būti naudojama tuo atveju, jei laikas nebuvo sukonfigūruotas prieš vykdant Exchange komandą.
Jei transceiver_state yra
- tuščiosios eigos režimu įjungiamas TRANSCEIVE režimas.
- WAIT_RECEIVE, siųstuvo-imtuvo būsena iš naujo nustatoma į TRANSCEIVE MODE, jei nustatytas iniciatoriaus bitas
- WAIT_TRANSMIT siųstuvo-imtuvo būsena iš naujo nustatoma į TRANSCEIVE MODE, jei iniciatoriaus bitas NĖRA nustatytas
Lauke „Galiojančių bitų skaičius paskutiniame baite“ nurodomas tikslus perduodamų duomenų ilgis.
4.5.3.1.1 Sąlygos
Lauko „TX Data“ dydis turi būti nuo 0 iki 1024 imtinai.
Laukas „Galimų bitų skaičius paskutiniame baite“ turi būti nuo 0 iki 7.
Komandos negalima iškviesti vykstančio RF perdavimo metu. Komanda turi užtikrinti tinkamą siųstuvo-imtuvo būseną duomenims perduoti.
Pastaba:
Ši komanda galioja tik skaitytuvo režimui ir P2P pasyvaus/aktyvaus iniciatoriaus režimui.
4.5.3.1.2 komanda
37 lentelė. EXCHANGE_RF_DATA komandos reikšmė
Įrašykite TX duomenis į vidinį RF perdavimo buferį ir pradeda siuntimą naudodami transceive komandą ir palaukite, kol bus gautas arba pasibaigs laikas, kad paruoštumėte atsakymą pagrindiniam kompiuteriui.
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas | |
Tinkamų bitų skaičius paskutiniame baite | 1 baitas | 0 | Persiunčiami visi paskutinio baito bitai |
1-7 | Bitų skaičius paskutiniame baite, kurį reikia perduoti. | ||
RFExchangeConfig | 1 baitas | RFExchange funkcijos konfigūravimas. Išsamią informaciją žiūrėkite žemiau |
37 lentelė. EXCHANGE_RF_DATA komandos reikšmė…tęsinys
Įrašykite TX duomenis į vidinį RF perdavimo buferį ir pradeda siuntimą naudodami transceive komandą ir palaukite, kol bus gautas arba pasibaigs laikas, kad paruoštumėte atsakymą pagrindiniam kompiuteriui.
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas |
TX duomenys | n baitų | TX duomenys, kurie turi būti išsiųsti per CLIF naudojant transceive komandą. n = 0 – 1024 baitai |
38 lentelė. RFexchangeConfig bitmask
b7 | b6 | b5 | b4 | b3 | b2 | b1 | b0 | Aprašymas |
4–7 bitai yra RFU | ||||||||
X | Įtraukite RX duomenis į atsakymą pagal RX_STATUS, jei bitas nustatytas į 1b. | |||||||
X | Į atsakymą įtraukite EVENT_STATUS registrą, jei bitas nustatytas į 1b. | |||||||
X | Į atsakymą įtraukite RX_STATUS_ERROR registrą, jei bitas nustatytas į 1b. | |||||||
X | Į atsakymą įtraukite RX_STATUS registrą, jei bitas nustatytas į 1b. |
4.5.3.1.3 Atsakymas
39 lentelė. EXCHANGE_RF_DATA atsako reikšmė
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas |
Būsena | 1 baitas | Operacijos būsena [9 lentelė]. Numatomos vertės yra tokios: |
PN5190_STATUS_INSTR_SUCCESS PN5190_STATUS_INSTR_ERROR (Daugiau duomenų nėra) PN5190_STATUS_TIMEOUT PN5190_STATUS_RX_TIMEOUT PN5190_STATUS_NO_RF_FIELD PN5190_STATUS_TIMEOUT_WITH_EMD_ERROR |
||
RX_STATUSAS | 4 baitai | Jei prašoma RX_STATUS (little-endian) |
RX_STATUS_ERROR | 4 baitai | Jei prašoma RX_STATUS_ERROR (little-endian) |
EVENT_STATUS | 4 baitai | Jei prašoma EVENT_STATUS (little-endian) |
RX duomenys | 1 – 1024 baitai | Jei prašoma RX duomenų. RX duomenys, gauti RF mainų RF priėmimo fazės metu. |
4.5.3.1.4 įvykis
Šiai komandai įvykių nėra.
4.5.3.2 TRANSMIT_RF_DATA
Ši instrukcija naudojama įrašyti duomenis į vidinį CLIF perdavimo buferį ir pradėti perdavimą naudojant transceive komandą viduje. Šio buferio dydis ribojamas iki 1024 baitų. Įvykdžius šią instrukciją, RF priėmimas pradedamas automatiškai.
Komanda grįžta iš karto po to, kai bus baigtas siuntimas, nelaukiant, kol bus baigtas priėmimas.
4.5.3.2.1 Sąlygos
Baitų skaičius lauke „TX Data“ turi būti nuo 1 iki 1024 imtinai.
Komandos negalima iškviesti vykstančio RF perdavimo metu.
4.5.3.2.2 komanda
40 lentelė. TRANSMIT_RF_DATA komandos reikšmė Įrašykite TX duomenis į vidinį CLIF perdavimo buferį.
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas |
Tinkamų bitų skaičius paskutiniame baite | 1 baitas | 0 Persiunčiami visi paskutinio baito bitai 1 – 7 Bitų skaičius paskutiniame perduotiniame baite. |
RFU | 1 baitas | Rezervuota |
TX duomenys | 1 – 1024 baitai | TX duomenys, kurie bus naudojami kito RF perdavimo metu. |
4.5.3.2.3 Atsakymas
41 lentelė. TRANSMIT_RF_DATA atsako reikšmė
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas |
Būsena | 1 baitas | Operacijos būsena [9 lentelė]. Numatomos vertės yra tokios: |
PN5190_STATUS_INSTR_SUCCESS PN5190_STATUS_INSTR_ERROR PN5190_STATUS_NO_RF_FIELD PN5190_STATUS_NO_EXTERNAL_RF_FIELD |
4.5.3.2.4 įvykis
Šiai komandai įvykių nėra.
4.5.3.3 RETRIEVE_RF_DATA
Ši instrukcija naudojama duomenims nuskaityti iš vidinio CLIF RX buferio, kuriame yra RF atsako duomenys (jei yra), paskelbti iš ankstesnio 4.5.3.1 skyriaus vykdymo su galimybe neįtraukti gautų duomenų į atsakymą arba 4.5.3.2 skyrių. .XNUMX komanda.
4.5.3.3.1 komanda
42 lentelė. RETRIEVE_RF_DATA komandos reikšmė Nuskaitykite RX duomenis iš vidinio RF priėmimo buferio.
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas |
Tuščia | Tuščia | Tuščia |
4.5.3.3.2 Atsakymas
43 lentelė. RETRIEVE_RF_DATA atsako reikšmė
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas |
Būsena | 1 baitas | Operacijos būsena [9 lentelė]. Numatomos vertės yra tokios: |
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas |
PN5190_STATUS_INSTR_SUCCESS PN5190_STATUS_INSTR_ERROR (Daugiau duomenų nėra) |
||
RX duomenys | 1 – 1024 baitai | RX duomenys, gauti per paskutinį sėkmingą RF priėmimą. |
4.5.3.3.3 įvykis
Šiai komandai įvykių nėra.
4.5.3.4 RECEIVE_RF_DATA
Ši instrukcija laukia duomenų, gautų per skaitytuvo RF sąsają.
Skaitytojo režimu ši instrukcija grįžta, jei yra priėmimas (klaidingas arba teisingas) arba įvyko FWT skirtasis laikas. Laikmatis paleidžiamas pasibaigus PERDAVIMO PABAIGAI ir sustabdomas, kai prasideda PRIĖMĖJIMAS. Numatytoji skirtojo laiko reikšmė, iš anksto sukonfigūruota EEPROM, turi būti naudojama tuo atveju, jei laikas nebuvo sukonfigūruotas prieš vykdant Exchange komandą.
Tiksliniame režime ši instrukcija grįžta arba gavus (klaidingą arba teisingą) arba esant išorinei RF klaidai.
Pastaba:
Ši instrukcija turi būti naudojama su komanda TRANSMIT_RF_DATA, kad būtų galima atlikti TX ir RX operacijas...
4.5.3.4.1 komanda
44 lentelė. RECEIVE_RF_DATA komandos reikšmė
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas |
ReceiveRFConfig | 1 baitas | ReceiveRFConfig funkcijos konfigūravimas. Matyti 45 lentelė |
45 lentelė. ReceiveRFConfig bitmask
b7 | b6 | b5 | b4 | b3 | b2 | b1 | b0 | Aprašymas |
4–7 bitai yra RFU | ||||||||
X | Įtraukite RX duomenis į atsakymą pagal RX_STATUS, jei bitas nustatytas į 1b. | |||||||
X | Į atsakymą įtraukite EVENT_STATUS registrą, jei bitas nustatytas į 1b. | |||||||
X | Į atsakymą įtraukite RX_STATUS_ERROR registrą, jei bitas nustatytas į 1b. | |||||||
X | Į atsakymą įtraukite RX_STATUS registrą, jei bitas nustatytas į 1b. |
4.5.3.4.2 Atsakymas
46 lentelė. RECEIVE_RF_DATA atsako reikšmė
Naudingosios apkrovos laukas | Ilgis | Vertė / aprašymas |
Būsena | 1 baitas | Operacijos būsena [9 lentelė]. Numatomos vertės yra tokios: |
PN5190_STATUS_INSTR_SUCCESS PN5190_STATUS_INSTR_ERROR (Daugiau duomenų nėra) PN5190_STATUS_TIMEOUT |
Naudingosios apkrovos laukas | Ilgis | Vertė / aprašymas |
PN5190_STATUS_NO_RF_FIELD PN5190_STATUS_NO_EXTERNAL_RF_FIELD |
||
RX_STATUSAS | 4 baitai | Jei prašoma RX_STATUS (little-endian) |
RX_STATUS_ERROR | 4 baitai | Jei prašoma RX_STATUS_ERROR (little-endian) |
EVENT_STATUS | 4 baitai | Jei prašoma EVENT_STATUS (little-endian) |
RX duomenys | 1 – 1024 baitai | Jei prašoma RX duomenų. RX duomenys gauti per RF. |
4.5.3.4.3 įvykis
Šiai komandai įvykių nėra.
4.5.3.5 RETRIEVE_RF_FELICA_EMD_DATA (FeliCa EMD konfigūracija)
Ši instrukcija naudojama duomenims nuskaityti iš vidinio CLIF RX buferio, kuriame yra FeliCa EMD atsako duomenys (jei yra), paskelbti į jį iš ankstesnio EXCHANGE_RF_DATA komandos vykdymo, grąžinant būseną „PN5190_STATUS_TIMEOUT_WITH_EMD_ERROR“.
Pastaba: Ši komanda pasiekiama nuo PN5190 FW v02.03.
4.5.3.5.1 komanda
Skaityti RX duomenis iš vidinio RF priėmimo buferio.
47 lentelė. RETRIEVE_RF_FELICA_EMD_DATA komandos reikšmė
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas | |
FeliCarRFRetrieveConfig | 1 baitas | 00 – FF | Funkcijos RETRIEVE_RF_FELICA_EMD_DATA konfigūracija |
konfigūracijos (bitmask) aprašymas | 7..2 bitas: RFU 1 bitas: į atsakymą įtraukite RX_STATUS_ KLAIDOS registrą, jei bitas nustatytas į 1b. 0 bitas: į atsakymą įtraukite RX_STATUS registrą, jei bitas nustatytas į 1b. |
4.5.3.5.2 Atsakymas
48 lentelė. RETRIEVE_RF_FELICA_EMD_DATA atsako reikšmė
Naudingosios apkrovos laukas | Ilgis | Vertė / aprašymas | |||
Būsena | 1 baitas | Operacijos būsena. Numatomos reikšmės yra tokios: PN5190_STATUS_INSTR_SUCCESS PN5190_STATUS_INSTR_ERROR (jokių daugiau duomenų nėra) | |||
RX_STATUSAS | 4 baitas | Jei prašoma RX_STATUS (little-endian) | |||
RX_STATUS_ KLAIDA | 4 baitas | Jei prašoma RX_STATUS_ERROR (little-endian) |
Naudingosios apkrovos laukas | Ilgis | Vertė / aprašymas | |||
RX duomenys | 1…1024 baitai | FeliCa EMD RX duomenys, gauti per paskutinį nesėkmingą RF priėmimą naudojant Exchange komandą. |
4.5.3.5.3 įvykis
Šiai komandai įvykių nėra.
4.5.4 Veikimo režimo perjungimas
PN5190 palaiko 4 skirtingus veikimo režimus:
4.5.4.1 Normalus
Tai numatytasis režimas, kuriame leidžiamos visos instrukcijos.
4.5.4.2 Budėjimo režimas
PN5190 yra budėjimo / miego būsenoje, kad taupytų energiją. Turi būti nustatytos pažadinimo sąlygos, kad būtų nustatyta, kada vėl išeiti iš budėjimo režimo.
4.5.4.3 LPCD
PN5190 veikia mažos galios kortelės aptikimo režimu, kai jis bando aptikti kortelę, kuri patenka į veikimo apimtį, sunaudodama mažiausią galią.
4.5.4.4 Autocoll
PN5190 veikia kaip RF klausytojas, autonomiškai aktyvuojantis tikslinį režimą (siekiant užtikrinti realaus laiko apribojimus)
4.5.4.5 SWITCH_MODE_NORMAL
Įprasto režimo perjungimo komanda turi tris naudojimo atvejus.
4.5.4.5.1 1 naudojimo atvejis: įjunkite įprastą veikimo režimą įjungus (POR)
Naudokite norėdami iš naujo nustatyti laukimo būseną, kad gautumėte / apdorotumėte kitą komandą, įjungiant įprastą veikimo režimą.
4.5.4.5.2 UseCase2: jau vykdomos komandos nutraukimas, kad perjungtumėte į įprastą veikimo režimą (nutraukimo komanda)
Naudokite, kad iš naujo nustatytumėte tuščiosios eigos būseną, kad gautumėte / apdorotumėte kitą komandą, nutraukiant jau vykdomas komandas.
Tokias komandas kaip budėjimo režimas, LPCD, Exchange, PRBS ir Autocoll turi būti galima nutraukti naudojant šią komandą.
Tai vienintelė speciali komanda, kuri neturi atsakymo. Vietoj to jame yra pranešimas apie ĮVYKĮ.
Daugiau informacijos apie įvykių, įvykstančių skirtingų pagrindinių komandų vykdymo metu, tipus rasite 4.4.3 skyriuje.
4.5.4.5.2.1 2.1 naudojimo atvejis:
Ši komanda iš naujo nustatys visus CLIF TX, RX ir lauko valdymo registrus į įkrovos būseną. Išleidus šią komandą, IŠJUNGTAS bet koks esamas RF laukas.
4.5.4.5.2.2 2.2 naudojimo atvejis:
Galima įsigyti nuo PN5190 FW v02.03:
Ši komanda nekeičia CLIF TX, RX ir lauko valdymo registrų, o tik perkelia siųstuvą-imtuvą į IDLE būseną.
4.5.4.5.3 Naudojimo atvejis3: normalus veikimo režimas, kai iš naujo nustatomas / išjungiamas budėjimo režimas, LPCD Šiuo atveju PN5190 tiesiogiai pereina į normalaus veikimo režimą, siųsdamas IDLE_EVENT pagrindiniam kompiuteriui (12 pav. arba 13 pav.) ir „ IDLE_EVENT“ bitas nustatytas 11 lentelėje.
Nereikia siųsti komandos SWITCH_MODE_NORMAL.
Pastaba:
Perjungus IC į normalų režimą, visi RF nustatymai pakeičiami į numatytąją būseną. Prieš atliekant RF ON arba RF Exchange operaciją, būtina, kad atitinkama RF konfigūracija ir kiti susiję registrai būtų įkelti atitinkamomis reikšmėmis.
4.5.4.5.4 Komandų rėmelis, skirtas siųsti įvairiems naudojimo atvejams
4.5.4.5.4.1 1 naudojimo atvejis: įjungus komandą įjungti įprastą veikimo režimą (POR) 0x20 0x01 0x00
4.5.4.5.4.2 UseCase2: komanda baigti jau vykdomas komandas, kad perjungtumėte į įprastą veikimo režimą
2.1 naudojimo atvejis:
0x20 0x00 0x00
Naudojimo atvejis 2.2: (nuo FW v02.02 ir toliau):
0x20 0x02 0x00
4.5.4.5.4.3 UseCase3: komanda normaliam veikimo režimui, kai iš naujo nustatomas / išjungiamas budėjimo režimas, LPCD, ULPCD
Nė vienas. PN5190 tiesiogiai įjungia įprastą darbo režimą.
4.5.4.5.5 Atsakymas
Nėra
4.5.4.5.6 įvykis
Nustatomas BOOT_EVENT (EVENT_STATUS registre), nurodantis, kad įjungtas normalus režimas ir siunčiamas pagrindiniam kompiuteriui. Įvykio duomenis žr. 12 ir 13 paveiksluose.
Nustatomas IDLE_EVENT (EVENT_STATUS registre), nurodantis, kad įjungtas normalus režimas ir siunčiamas pagrindiniam kompiuteriui. Įvykio duomenis žr. 12 ir 13 paveiksluose.
Nustatomas BOOT_EVENT (EVENT_STATUS registre), nurodantis, kad įjungtas normalus režimas ir siunčiamas pagrindiniam kompiuteriui. Įvykio duomenis žr. 12 ir 13 paveiksluose.
4.5.4.6 SWITCH_MODE_AUTOCOLL
Switch Mode Autocoll automatiškai atlieka kortelės aktyvinimo procedūrą tiksliniame režime.
Laukas „Automatinio surinkimo režimas“ turi būti nuo 0 iki 2 imtinai.
Jei laukas „Autocoll Mode“ nustatytas į 2 (Autocoll): lauke „RF Technologies“ (50 lentelė) turi būti bitų kaukė, nurodanti RF technologijas, kurios turi būti palaikomos atliekant automatinį surinkimą.
Šiuo režimu negalima siųsti jokių nurodymų.
Nutraukimas rodomas naudojant pertraukimą.
4.5.4.6.1 komanda
49 lentelė. SWITCH_MODE_AUTOCOLL komandos reikšmė
Parametras | Ilgis | Vertė / aprašymas | |
RF technologijos | 1 baitas | Bitmask, nurodantis RF technologiją, kurios reikia klausytis atliekant „Autocoll“. | |
Autocoll režimas | 1 baitas | 0 | Nėra autonominio režimoty „Autocoll“ baigiasi, kai nėra išorinio RF lauko. |
Nutraukimas tuo atveju | |||
• Išnyko NO RF FIELD arba RF FIELD | |||
• PN5190 AKTYVUOTAS TIKSLINIMO režimu | |||
1 | Autonominis režimas su budėjimo režimu. Kai nėra RF lauko, Autocoll automatiškai persijungia į budėjimo režimą. Kai aptinkamas RF išorinis RF laukas, PN5190 vėl persijungia į automatinio surinkimo režimą. | ||
Nutraukimas tuo atveju | |||
• PN5190 AKTYVUOTAS TIKSLINIMO režimu | |||
Nuo PN5190 FW v02.03 ir toliau: jei EEPROM laukas „bCard ModeUltraLowPowerEnabled“ adresu „0xCDF“ yra nustatytas į „1“, tada PN5190 pereina į itin mažos galios parengties režimą. | |||
2 | Autonominis režimas be budėjimo režimo. Kai nėra RF lauko, PN5190 laukia, kol pasirodys RF laukas, prieš paleisdamas Autocoll algoritmą. Budėjimo režimas šiuo atveju nenaudojamas. | ||
Nutraukimas tuo atveju • PN5190 AKTYVUOTAS TIKSLINIMO režimu |
50 lentelė. RF Technologies Bitmask
b7 | b6 | b5 | b4 | b3 | b2 | b1 | b0 | Aprašymas |
0 | 0 | 0 | 0 | RFU | ||||
X | Jei nustatyta į 1b, įjungta NFC-F aktyvaus klausymosi funkcija. (Nepasiekiamas). | |||||||
X | Jei nustatyta į 1b, NFC-A aktyvaus klausymas įjungtas. (Nepasiekiamas). | |||||||
X | Jei nustatyta 1b, NFC-F klausymasis įjungtas. | |||||||
X | Jei nustatyta 1b, NFC-A klausymasis įjungtas. |
4.5.4.6.2 Atsakymas
Atsakymas tik signalizuoja, kad komanda buvo įvykdyta.
51 lentelė. SWITCH_MODE_AUTOCOLL atsako reikšmė
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas |
Būsena | 1 baitas | Operacijos būsena [9 lentelė]. Numatomos vertės yra tokios: |
PN5190_STATUS_INSTR_SUCCESS PN5190_STATUS_INSTR_ERROR (Perjungimo režimas neįjungtas dėl neteisingų nustatymų) |
4.5.4.6.3 įvykis
Pranešimas apie įvykį siunčiamas baigus komandą ir įjungiant įprastą režimą. Pagrindinis kompiuteris turi nuskaityti atsakymo baitus pagal įvykio reikšmę.
Pastaba:
Kai būsena nėra „PN5190_STATUS_INSTR_SUCCESS“, tada kitų „Protocol“ ir „Card_Activated“ duomenų baitų nėra.
Technologijų informacija iš registrų gaunama naudojant 4.5.1.5 skyriaus, 4.5.1.6 skyriaus komandas.
Toliau pateiktoje lentelėje rodomi įvykio duomenys, kurie siunčiami kaip įvykio pranešimo dalis 12 ir 13 pav.
52 lentelė. EVENT_SWITCH_MODE_AUTOCOLL – AUTOCOLL_EVENT duomenys Perjungti veikimo režimą Autocoll įvykis
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas | |
Būsena | 1 baitas | Operacijos būsena | |
PN5190_STATUS_INSTR_SUCCESS | PN5190 AKTYVUOTAS TIKSLINIMO režimu. Kiti šio įvykio duomenys galioja. |
||
PN5190_STATUS_PREVENT_STANDBY | Nurodo, kad PN5190 neleidžiama pereiti į budėjimo režimą. Ši būsena galioja tik tada, kai Autocoll režimas pasirinktas kaip „Autonominis režimas su budėjimo režimu“. |
PN5190_STATUS_NO_EXTERNAL_RF_ LAUKAS | Nurodo, kad vykdant Autocoll neautonominiu režimu nėra išorinio RF lauko | ||
PN5190_STATUS_USER_CANCELLED | Nurodo, kad dabartinė vykdoma komanda nutraukiama perjungimo režimo įprastos komandos pagalba | ||
protokolas | 1 baitas | 0x10 | Suaktyvintas kaip pasyvus A tipas |
0x11 | Suaktyvintas kaip pasyvus tipasF 212 | ||
0x12 | Suaktyvintas kaip pasyvus tipasF 424 | ||
0x20 | Suaktyvinta kaip aktyvusis A tipas | ||
0x21 | Suaktyvintas kaip aktyvus TypeF 212 | ||
0x22 | Suaktyvintas kaip aktyvus TypeF 424 | ||
Kitos vertybės | Neteisinga | ||
Card_Activated | 1 baitas | 0x00 | Nėra kortelės aktyvinimo proceso pagal ISO 14443-3 |
0x01 | Nurodo, kad įrenginys įjungtas pasyviuoju režimu |
Pastaba:
Nuskaičius įvykio duomenis, duomenys, gauti iš suaktyvintos kortelės / įrenginio (pvz., „n“ ATR_REQ/RATS baitų pagal ISO18092/ISO1443-4), turi būti nuskaitomi naudojant 4.5.3.3 skirsnio komandą.
4.5.4.6.4 Ryšys, pvzample
4.5.4.7 SWITCH_MODE_STANDBY
Perjungimo režimo budėjimo režimas automatiškai nustato IC į budėjimo režimą. IC pabus, kai sukonfigūruoti pažadinimo šaltiniai atitinka pažadinimo sąlygas.
Pastaba:
Pagal numatytuosius nustatymus ULP STANDBY skaitiklio galiojimo laikas ir STANDBY HIF nutraukimas yra pasiekiami norint išeiti iš budėjimo režimo.
4.5.4.7.1 komanda
53 lentelė. SWITCH_MODE_STANDBY komandos reikšmė
Parametras | Ilgis | Vertė / aprašymas |
konfig | 1 baitas | Bitmask, valdantis naudotiną pažadinimo šaltinį ir įjungti budėjimo režimą. Atsižvelgti į 54 lentelė |
Skaitiklio vertė | 2 baitai | Naudojama pažadinimo skaitiklio vertė milisekundėmis. Maksimali palaikoma vertė yra 2690 budėjimo režimu. Didžiausia palaikoma vertė yra 4095 ULP budėjimo režimu. Reikšmė, kurią reikia pateikti, yra mažo galo formatu. Šio parametro turinys galioja tik tuo atveju, jei „Config Bitmask“ įjungta, kad būtų galima pažadinti pasibaigus skaitiklio galiojimo laikui. |
54 lentelė. Konfigūravimo bitmask
b7 | b6 | b5 | b4 | b3 | b2 | b1 | b0 | Aprašymas |
X | Įjunkite ULP budėjimo režimą, jei bitas nustatytas į 1b Įjunkite budėjimo režimą, jei bitas nustatytas į 0b. | |||||||
0 | RFU | |||||||
X | GPIO-3 pažadinimas, kai jis yra aukštas, jei bitas nustatytas į 1b. (Netaikoma ULP budėjimo režimui) | |||||||
X | GPIO-2 pažadinimas, kai jis yra aukštas, jei bitas nustatytas į 1b. (Netaikoma ULP budėjimo režimui) | |||||||
X | GPIO-1 pažadinimas, kai jis yra aukštas, jei bitas nustatytas į 1b. (Netaikoma ULP budėjimo režimui) | |||||||
X | GPIO-0 pažadinimas, kai jis yra aukštas, jei bitas nustatytas į 1b. (Netaikoma ULP budėjimo režimui) | |||||||
X | Pažadinimo ant pažadinimo skaitiklio galiojimo laikas baigiasi, jei bitas nustatytas į 1b. ULP budėjimo režime ši parinktis įjungta pagal numatytuosius nustatymus. | |||||||
X | Pažadinimas išoriniame RF lauke, jei bitas nustatytas į 1b. |
Pastaba: Iš PN5190 FW v02.03, jei EEPROM laukas „CardModeUltraLowPowerEnabled“ adresu „0xCDF“ nustatytas į „1“, ULP budėjimo režimo konfigūracijos negalima naudoti su komanda SWITCH_MODE_STANDBY.
4.5.4.7.2 Atsakymas
Atsakymas tik praneša, kad komanda buvo apdorota, o budėjimo būsena bus įjungta tik tada, kai šeimininkas visiškai perskaitys atsakymą.
55 lentelė. SWITCH_MODE_STANDBY atsako reikšmė Perjungti veikimo režimo budėjimo režimą
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas |
Būsena | 1 baitas | Operacijos būsena [9 lentelė]. Numatomos vertės yra tokios: |
PN5190_STATUS_INSTR_SUCCESS PN5190_STATUS_INSTR_ERROR (Neįjungtas perjungimo režimas – dėl neteisingų nustatymų) |
4.5.4.7.3 įvykis
Pranešimas apie įvykį siunčiamas baigus komandą ir įjungiant įprastą režimą. Žr. įvykio, kuris bus išsiųstas įvykdžius komandą, formatą, kaip parodyta 12 ir 13 pav.
Tuo atveju, jei PN5190 neleidžiama veikti budėjimo režimu, įvykio „STANDBY_PREV_EVENT“ bitas, nustatytas EVENT_STATUS, kaip minėta 11 lentelėje, siunčiamas pagrindiniam kompiuteriui kartu su budėjimo režimo prevencijos priežastimi, kaip nurodyta 13 lentelėje.
4.5.4.7.4 Ryšys Pvzample
4.5.4.8 SWITCH_MODE_LPCD
Perjungimo režimo LPCD aptinka anteną dėl kintančios aplinkos aplink anteną.
Yra 2 skirtingi LPCD režimai. HW pagrįstas (ULPCD) sprendimas siūlo konkurencingą energijos suvartojimą ir sumažintą jautrumą. FW pagrįstas (LPCD) sprendimas siūlo geriausią savo klasėje jautrumą ir padidina energijos sąnaudas.
Vieno režimo FW pagrindu (LPCD) į pagrindinį kompiuterį nesiunčiamas joks kalibravimo įvykis.
Kai įjungiamas viengubas režimas, kalibravimas ir nuoseklūs matavimai atliekami išėjus iš budėjimo režimo.
Kalibravimo įvykiui vienu režimu pirmiausia išduokite vieną režimą su kalibravimo įvykio komanda. Po kalibravimo gaunamas LPCD kalibravimo įvykis, po kurio turi būti išsiųsta vieno režimo komanda su atskaitos verte, gauta iš ankstesnio žingsnio, kaip įvesties parametrą.
LPCD konfigūracija atliekama EEPROM/Flash Data nustatymuose prieš iškviečiant komandą.
Pastaba:
Pagal numatytuosius nustatymus ULPCD GPIO3 nutraukimas, LPCD HIF nutraukimas yra pasiekiami norint išeiti iš mažos galios režimų.
Pažadinimas dėl skaitiklio galiojimo pabaigos visada įjungtas.
ULPCD atveju DC-DC konfigūracija turi būti išjungta EEPROM/Flash duomenų nustatymuose ir turėtų teikti VUP tiekimą per VBAT. Reikėtų atlikti reikiamus trumpiklio nustatymus. EEPROM/Flash Data nustatymus žr. dokumente [2].
Jei komanda skirta LPCD/ULPCD kalibravimui, pagrindinis kompiuteris vis tiek turi išsiųsti visą kadrą.
4.5.4.8.1 komanda
56 lentelė. SWITCH_MODE_LPCD komandos reikšmė
Parametras | Ilgis | Vertė / aprašymas | |
bValdymas | 1 baitas | 0x00 | Įveskite ULPCD kalibravimą. Komanda sustoja po kalibravimo ir įvykis su atskaitos verte siunčiamas pagrindiniam kompiuteriui. |
0x01 | Įveskite ULPCD | ||
0x02 | LPCD kalibravimas. Komanda sustoja po kalibravimo ir įvykis su atskaitos verte siunčiamas pagrindiniam kompiuteriui. | ||
0x03 | Įveskite LPCD | ||
0x04 | Vieno režimo | ||
0x0C | Vieno režimo su kalibravimo įvykiu | ||
Kitos vertybės | RFU | ||
Pažadinimo valdymas | 1 baitas | Bitmask, valdantis pažadinimo šaltinį, kuris bus naudojamas LPCD/ULPCD. Šio lauko turinys nėra kalibruojamas. Atsižvelgti į 57 lentelė | |
Referencinė vertė | 4 baitai | ULPCD/LPCD metu naudojama atskaitos vertė. ULPCD atveju 2 baitas, turintis HF slopintuvo reikšmę, naudojamas tiek kalibravimo, tiek matavimo fazėje. LPCD atveju šio lauko turinys neatsižvelgiama į kalibravimą ir vienkartinį režimą. Atsižvelgti į 58 lentelė Norėdami gauti teisingą informaciją apie visus 4 baitus. |
|
Skaitiklio vertė | 2 baitai | Pažadinimo skaitiklio reikšmė milisekundėmis. Didžiausia palaikoma LPCD vertė yra 2690. Didžiausia palaikoma ULPCD vertė yra 4095. Reikšmė, kurią reikia pateikti, yra mažo galo formatu. Šio lauko turinys LPCD kalibravimui neatsižvelgiamas. Vieno režimo ir vieno režimo su kalibravimo įvykiu budėjimo režimo trukmę prieš kalibravimą galima konfigūruoti iš EEPROM konfigūracijos: LPCD_SETTINGS->wCheck Period. Vieno režimo su kalibravimu WUC vertė neturi būti nulis. |
57 lentelė. Pažadinimo valdymo bitmask
b7 | b6 | b5 | b4 | b3 | b2 | b1 | b0 | Aprašymas |
0 | 0 | 0 | 0 | 0 | 0 | 0 | RFU | |
X | Pažadinimas išoriniame RF lauke, jei bitas nustatytas į 1b. |
58 lentelė. Nuorodos reikšmės baito informacija
Nuorodos vertės baitai | ULPCD | LPCD |
0 baitas | 0 nuorodos baitas | 0 kanalo nuorodos baitas 0 |
1 baitas | 1 nuorodos baitas | 0 kanalo nuorodos baitas 1 |
2 baitas | HF slopintuvo vertė | 1 kanalo nuorodos baitas 0 |
3 baitas | NA | 1 kanalo nuorodos baitas 1 |
4.5.4.8.2 Atsakymas
59 lentelė. SWITCH_MODE_LPCD atsako reikšmė
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas |
Būsena | 1 baitas | Operacijos būsena [9 lentelė]. Numatomos vertės yra tokios: |
PN5190_STATUS_INSTR_SUCCESS PN5190_STATUS_INSTR_ERROR (Neįjungtas perjungimo režimas – dėl neteisingų nustatymų) |
4.5.4.8.3 įvykis
Pranešimas apie įvykį išsiunčiamas pasibaigus komandai, o į įprastą režimą įvedamas toliau nurodyti duomenys kaip įvykio, paminėto 12 ir 13 paveiksluose, dalis.
60 lentelė. EVT_SWITCH_MODE_LPCD
Naudingosios apkrovos laukas | Ilgis | Vertė / aprašymas |
LPCD būsena | Žr. 15 lentelę | Žr. 154.5.4.8.4 lentelę.XNUMX Ryšys Pvzample |
4.5.4.9 SWITCH_MODE_DOWNLOAD
Perjungti režimo atsisiuntimo komanda įjungia programinės įrangos atsisiuntimo režimą.
Vienintelis būdas išeiti iš atsisiuntimo režimo yra iš naujo nustatyti PN5190.
4.5.4.9.1 komanda
61 lentelė. SWITCH_MODE_DOWNLOAD komandos reikšmė
Parametras | Ilgis | Vertė / aprašymas |
– | – | Jokios vertės |
4.5.4.9.2 Atsakymas
Atsakymas tik praneša, kad komanda buvo apdorota, o atsisiuntimo režimas turi būti įjungtas po to, kai atsakymą nuskaito pagrindinis kompiuteris.
62 lentelė. SWITCH_MODE_DOWNLOAD atsako reikšmė
Perjungti darbo režimą Autocoll
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas |
Būsena | 1 baitas | Operacijos būsena [9 lentelė]. Numatomos vertės yra tokios: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR (neįjungtas perjungimo režimas) |
4.5.4.9.3 įvykis
Nėra įvykių generavimo.
4.5.4.9.4 Ryšys Pvzample
4.5.5 Klasikinis MIFARE autentifikavimas
4.5.5.1 MFC_AUTHENTICATE
Ši instrukcija naudojama MIFARE klasikiniam autentifikavimui atlikti aktyvintoje kortelėje. Tam reikia rakto, kortelės UID ir rakto tipo, kad būtų galima autentifikuoti nurodytu bloko adresu. Atsakyme yra vienas baitas, nurodantis autentifikavimo būseną.
4.5.5.1.1 Sąlygos
Lauko raktas turi būti 6 baitų ilgio. Lauko rakto tipas turi turėti reikšmę 0x60 arba 0x61. Blokuojant adresą gali būti bet koks adresas nuo 0x0 iki 0xff imtinai. Lauko UID turi būti baitų ilgio ir jame turi būti 4 baitų kortelės UID. Prieš vykdant šią instrukciją, ISO14443-3 MIFARE Classic gaminio kortelė turi būti įjungta į ACTIVE arba ACTIVE* būseną.
Jei įvyksta su autentifikavimu susijusi vykdymo klaida, atitinkamai nustatomas šis laukas „Autentifikavimo būsena“.
4.5.5.1.2 komanda
63 lentelė. MFC_AUTHENTICATE komanda
Atlikite autentifikavimą aktyvintoje MIFARE Classic gaminio kortelėje.
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas | |
Raktas | 6 baitai | Naudotinas autentifikavimo raktas. | |
Rakto tipas | 1 baitas | 0x60 | Rakto tipas A |
0x61 | B tipo raktas | ||
Blokuoti adresą | 1 baitas | Bloko, kurio autentifikavimas turi būti atliktas, adresas. | |
UID | 4 baitai | Kortelės UID. |
4.5.5.1.3 Atsakymas
64 lentelė. MFC_AUTHENTICATE atsakymas
Atsakymas MFC_AUTHENTICATE.
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas |
Būsena | 1 baitas | Operacijos būsena [9 lentelė]. Numatomos vertės yra tokios: |
PN5190_STATUS_INSTR_SUCCESS PN5190_STATUS_INSTR_ERROR PN5190_STATUS_TIMEOUT PN5190_STATUS_AUTH_ERROR |
4.5.5.1.4 įvykis
Šiam nurodymui renginio nėra.
4.5.6 ISO 18000-3M3 (EPC GEN2) palaikymas
4.5.6.1 EPC_GEN2_INVENTORY
Ši instrukcija naudojama ISO18000-3M3 inventorizacijai atlikti tags. Jis įgyvendina savarankišką kelių komandų vykdymą pagal ISO18000-3M3, kad garantuotų tame standarte nurodytus laikus.
Jei yra komandos naudingoje apkrovoje, pirmiausia vykdoma Select komanda, po kurios eina komanda BeginRound.
Jei pirmajame laiko intervale yra tinkamas atsakymas (nėra laiko pabaigos, nėra susidūrimo), instrukcija siunčia ACK ir išsaugo gautą kompiuterį / XPC / UII. Tada instrukcija atlieka veiksmą pagal lauką „Timeslot Processed Behavior“:
- Jei šis laukas nustatytas į 0, išduodama NextSlot komanda, skirta tvarkyti kitą laiko tarpą. Tai kartojama tol, kol vidinis buferis bus pilnas
- Jei šis laukas nustatytas į 1, algoritmas pristabdomas
- Jei šis laukas nustatytas į 2, komanda Req_Rn išduodama tada ir tik tada, kai buvo galiojanti tag atsakymas šiame laiko intervaleCommand
Lauke „Select Command Length“ turi būti nurodytas lauko „Pasirinkti komandą“ ilgis, kuris turi būti nuo 1 iki 39 imtinai. Jei „Pasirinkite komandos ilgį“ yra 0, laukų „Galiojantys bitai paskutiniame baite“ ir „Pasirinkti komandą“ neturi būti.
Lauke Bitai paskutiniame baite turi būti nurodytas paskutiniame lauko „Pasirinkti komandą“ baite perduotinų bitų skaičius. Vertė turi būti nuo 1 iki 7 imtinai. Jei reikšmė yra 0, visi bitai iš paskutinio baito iš lauko „Pasirinkti komandą“ yra perduodami.
Lauke „Select Command“ turėtų būti nurodyta komanda „Select Command“ pagal ISO18000-3M3 be CRC-16c ir turi būti tokio pat ilgio, kaip nurodyta lauke „Pasirinkite komandos ilgį“.
Lauke „BeginRound Command“ turi būti „BeginRound“ komanda pagal ISO18000-3M3, be CRC-5. Paskutiniai 7 paskutinio 'BeginRound Command' baito bitai nepaisomi, nes tikrasis komandos ilgis yra 17 bitų.
„Laiko laiko intervalo apdorotas elgesys“ turi turėti reikšmę nuo 0 iki 2 imtinai.
65 lentelė. EPC_GEN2_INVENTORY komandos reikšmė Atlikite ISO 18000-3M3 inventorizaciją
Naudingosios apkrovos laukas | Ilgis | Vertė / aprašymas | |
ResumeInventory | 1 baitas | 00 | Pradinė GEN2_INVENTORY |
01 | Tęskite komandą GEN2_INVENTORY – likusią
žemiau esantys laukai yra tušti (bet kokia naudinga apkrova nepaisoma) |
||
Pasirinkite Komandos ilgis | 1 baitas | 0 | Prieš komandą BeginRound nenustatyta jokia Select komanda. Laukai „Galiojantys bitai paskutiniame baite“ ir laukai „Pasirinkti komandą“ neturi būti. |
1-39 | Lauko „Pasirinkti komandą“ ilgis (n). | ||
Galiojantys bitai paskutiniame baite | 1 baitas | 0 | Persiunčiami visi paskutinio lauko „Pasirinkti komandą“ baito bitai. |
1-7 | Bitų skaičius, kurį reikia perduoti paskutiniame lauko „Pasirinkti komandą“ baite. | ||
Pasirinkite komandą | n baitų | Jei yra, šiame lauke yra komanda Select (pagal ISO18000-3, 47 lentelę), kuri siunčiama prieš komandą BeginRound. CRC-16c neįtraukiamas. | |
„BeginRound“ komanda | 3 baitai | Šiame lauke yra komanda BeginRound (pagal ISO18000-3, 49 lentelę). CRC-5 neįtraukiamas. | |
Laiko intervalo apdorotas elgesys | 1 baitas | 0 | Atsakyme yra maks. Laiko tarpų, kurie gali tilpti į atsako buferį, skaičius. |
1 | Atsakyme yra tik vienas laiko tarpas. | ||
2 | Atsakyme yra tik vienas laiko tarpas. Jei laiko tarpas turi galiojantį kortelės atsakymą, taip pat yra kortelės rankena. |
4.5.6.1.1 Atsakymas
Atsakymo trukmė gali būti „1“, jei inventorizacija atnaujinama.
66 lentelė. EPC_GEN2_INVENTORY atsako reikšmė
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas | |||
Būsena | 1 baitas | Operacijos būsena [9 lentelė]. Numatomos vertės yra tokios: | |||
PN5190_STATUS_SUCCESS (Nuskaitykite laiko intervalo būseną kitame baite, skirta Tag atsakymas) PN5190_STATUS_INSTR_ERROR (Daugiau duomenų nėra) |
|||||
Laiko tarpas [1…n] | 3 – 69 baitai | Laiko tarpo būsena | 1 baitas | 0 | Tag galimas atsakymas. 'Tag Laukas Reply Length“, laukas „Galioja paskutinio baito bitai“ ir „Tag yra atsakymo laukas. |
1 | Tag galimas atsakymas. | ||||
2 | Nr tag atsakė laiku. “Tag Laukai Reply Length“ ir laukeliai „Galioja paskutinio baito bitai“ turi būti nustatyti į nulį. “Tag atsakymo laukas neturi būti. | ||||
3 | Du ar daugiau tags atsakė laiku. (Susidūrimas). 'Tag Laukai Reply Length“ ir laukeliai „Galioja paskutinio baito bitai“ turi būti nustatyti į nulį. “Tag atsakymo laukas neturi būti. |
Tag Atsakymo ilgis | 1 baitas | 0-66 | Ilgis 'Tag Atsakyti“ laukas (i). Jeigu Tag Atsakymo ilgis yra 0, tada Tag Atsakymo lauko nėra. | ||
Galiojantys paskutinio baito bitai | 1 baitas | 0 | Visi paskutinio baito bitaiTag atsakymo laukai galioja. | ||
1-7 | ' paskutinio baito galiojančių bitų skaičiusTag atsakymo lauke. Jeigu Tag Atsakymo ilgis lygus nuliui, šio baito reikšmė bus nepaisoma. | ||||
Tag Atsakyti | 'n' baitai | Atsakymas iš tag pagal ISO18000- 3_2010 56 lentelę. | |||
Tag Rankena | 0 arba 2 baitai | Rankena tag, jei laukas „Laiko laiko tarpo būsena“ nustatytas į „1“. Kitu atveju lauko nėra. |
4.5.6.1.2 įvykis
Šiai komandai įvykių nėra.
4.5.7 RF konfigūracijos valdymas
Žr. 6 skyrių apie TX ir RX konfigūraciją apie skirtingas RF technologijas ir duomenų perdavimo spartą, palaikomą PN5190. Vertės nepatenka į toliau nurodytą diapazoną, turėtų būti laikomos RFU.
4.5.7.1 LOAD_RF_CONFIGURATION
Ši instrukcija naudojama RF konfigūracijai įkelti iš EEPROM į vidinius CLIF registrus. RF konfigūracija reiškia unikalų RF technologijos, režimo (taikinio / iniciatoriaus) ir duomenų perdavimo spartos derinį. RF konfigūraciją galima įkelti atskirai CLIF imtuvo (RX konfigūracija) ir siųstuvo (TX konfigūracija) keliui. Reikšmė 0xFF turi būti naudojama, jei atitinkama kelio konfigūracija neturi būti keičiama.
4.5.7.1.1 Sąlygos
Laukas „TX Configuration“ turi būti nuo 0x00 iki 0x2B imtinai. Jei reikšmė yra 0xFF, TX konfigūracija nekeičiama.
Laukas „RX konfigūracija“ turi būti nuo 0x80 iki 0xAB imtinai. Jei reikšmė yra 0xFF, RX konfigūracija nekeičiama.
Įkrovos registrams įkelti vieną kartą naudojama speciali konfigūracija su TX Configuration = 0xFF ir RX Configuration = 0xAC.
Ši speciali konfigūracija reikalinga norint atnaujinti registro konfigūracijas (tiek TX, tiek RX), kurios skiriasi nuo IC iš naujo nustatymo verčių.
4.5.7.1.2 komanda
67 lentelė. LOAD_RF_CONFIGURATION komandos reikšmė
Įkelkite RF TX ir RX nustatymus iš E2PROM.
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas | |
TX konfigūracija | 1 baitas | 0xFF | TX RF konfigūracija nepakeista. |
0x0 – 0x2B | Įkelta atitinkama TX RF konfigūracija. | ||
RX konfigūracija | 1 baitas | 0xFF | RX RF konfigūracija nepasikeitė. |
0x80 – 0xAB | Įkelta atitinkama RX RF konfigūracija. |
4.5.7.1.3 Atsakymas
68 lentelė. LOAD_RF_CONFIGURATION atsako reikšmė
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas |
Būsena | 1 baitas | Operacijos būsena [9 lentelė]. Numatomos vertės yra tokios: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR |
4.5.7.1.4 įvykis
Šiai komandai įvykių nėra.
4.5.7.2 UPDATE_RF_CONFIGURATION
Ši instrukcija naudojama RF konfigūracijai atnaujinti (žr. apibrėžimą 4.5.7.1 skyriuje) E2PROM. Instrukcija leidžia atnaujinti registro detalumo reikšme, ty nereikia atnaujinti viso rinkinio (nors tai padaryti galima).
4.5.7.2.1 Sąlygos
Konfigūracijos lauko masyvo dydis turi būti nuo 1 iki 15 imtinai. Lauko masyve Configuration turi būti RF konfigūracijos, registro adreso ir reikšmės rinkinys. Lauko RF konfigūracija turi būti diapazone nuo 0x0 iki 0x2B TX konfigūracijai ir 0x80 - 0xAB RX konfigūracijai imtinai. Adresas lauke Registro adresas turi egzistuoti atitinkamoje RF konfigūracijoje. Lauko reikšmė turi turėti reikšmę, kuri turi būti įrašyta į nurodytą registrą ir turi būti 4 baitų ilgio (little-endian formatas).
4.5.7.2.2 komanda
69 lentelė. UPDATE_RF_CONFIGURATION komandos reikšmė
Atnaujinkite RF konfigūraciją
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas | ||
Konfigūracija[1…n] | 6 baitai | RF konfigūracija | 1 baitas | RF konfigūracija, kurios registrą reikia pakeisti. |
Registracijos adresas | 1 baitas | Registruokitės adresas pagal nurodytą RF technologiją. | ||
Vertė | 4 baitai | Reikšmė, kuri turi būti įrašyta į registrą. (Little-endian) |
4.5.7.2.3 Atsakymas
70 lentelė. UPDATE_RF_CONFIGURATION atsakymo reikšmė
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas |
Būsena | 1 baitas | Operacijos būsena [9 lentelė]. Numatomos vertės yra tokios: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR PN5190_STATUS_MEMORY_ERROR |
4.5.7.2.4 įvykis
Šiai komandai įvykių nėra.
4.5.7.3 GET_ RF_CONFIGURATION
Ši instrukcija naudojama RF konfigūracijai nuskaityti. Registro adreso-reikšmių poros pateikiamos atsakyme. Norint sužinoti, kiek porų reikia tikėtis, pirmojo dydžio informaciją galima gauti iš pirmojo TLV, kuris nurodo bendrą naudingojo krovinio ilgį.
4.5.7.3.1 Sąlygos
Lauko RF konfigūracija turi būti diapazone nuo 0x0 iki 0x2B TX konfigūracijai ir 0x80 -0xAB RX konfigūracijai, imtinai.
4.5.7.3.2 komanda
71 lentelė. GET_ RF_CONFIGURATION komandos reikšmė Gauti RF konfigūraciją.
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas |
RF konfigūracija | 1 baitas | RF konfigūracija, kuriai reikia gauti registro reikšmių porų rinkinį. |
4.5.7.3.3 Atsakymas
72 lentelė. GET_ RF_CONFIGURATION Atsako reikšmė
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas | ||
Būsena | 1 baitas | Operacijos būsena [9 lentelė]. Numatomos vertės yra tokios: | ||
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR (Daugiau duomenų nėra) |
||||
Suporuoti[1…n] | 5 baitai | Registracijos adresas | 1 baitas | Registruokitės adresas pagal nurodytą RF technologiją. |
Vertė | 4 baitai | 32 bitų registro reikšmė. |
4.5.7.3.4 įvykis
Instrukcijos renginio nėra.
4.5.8 RF lauko valdymas
4.5.8.1 RF_ON
Ši instrukcija naudojama RF įjungti. Šioje komandoje turi būti tvarkomas DPC reglamentas pradiniame „FieldOn“.
4.5.8.1.1 komanda
73 lentelė. RF_FIELD_ON komandos reikšmė
Konfigūruoti RF_FIELD_ON.
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas | ||
RF_on_config | 1 baitas | 0 bitas | 0 | Naudokite susidūrimo išvengimą |
1 | Išjungti susidūrimo išvengimą | |||
1 bitas | 0 | Nėra aktyvaus P2P | ||
1 | P2P aktyvus |
4.5.8.1.2 Atsakymas
74 lentelė. RF_FIELD_ON atsako reikšmė
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas |
Būsena | 1 baitas | Operacijos būsena [9 lentelė]. Numatomos vertės yra tokios: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR PN5190_STATUS_RF_COLLISION_ERROR (RF laukas neįjungtas dėl RF susidūrimo) PN5190_STATUS_TIMEOUT (RF laukas neįjungtas dėl skirtojo laiko) PN5190_STATUS_TXLDO_ERROR (TXLDO klaida dėl VUP nepasiekiama) PN5190_STATUS_RFCFG_NOT_APPLIED (RF konfigūracija nebuvo pritaikyta prieš šią komandą) |
4.5.8.1.3 įvykis
Šiam nurodymui renginio nėra.
4.5.8.2 RF_OFF
Ši instrukcija naudojama RF laukui išjungti.
4.5.8.2.1 komanda
75 lentelė. RF_FIELD_OFF komandos reikšmė
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas |
Tuščia | Tuščia | tuščias |
4.5.8.2.2 Atsakymas
76 lentelė. RF_FIELD_OFF atsako reikšmė
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas |
Būsena | 1 baitas | Operacijos būsena [9 lentelė]. Numatomos vertės yra tokios: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR (Daugiau duomenų nėra) |
4.5.8.2.3 įvykis
Šiam nurodymui renginio nėra.
4.5.9 Bandymo magistralės konfigūracija
Galimi tikrinimo magistralės signalai pasirinktose PAD konfigūracijose yra pateikti 7 skyriuje.
Jos turi būti nurodytos pateikiant testavimo magistralės instrukcijų konfigūraciją, kaip nurodyta toliau.
4.5.9.1 KONFIGŪRUOKITE _TESTBUS_DIGITAL
Ši instrukcija naudojama perjungti turimą skaitmeninės bandomosios magistralės signalą pasirinktose trinkelių konfigūracijose.
4.5.9.1.1 komanda
77 lentelė. CONFIGURE_TESTBUS_DIGITAL komandos reikšmė
Naudingosios apkrovos laukas | Ilgis | Vertė / aprašymas | |
TB_SignalIndex | 1 baitas | Nurodykite 7 skirsnis | |
TB_BitIndex | 1 baitas | Nurodykite 7 skirsnis | |
TB_PadIndex | 1 baitas | Trinkelės indeksas, ant kurio turi būti išvestas skaitmeninis signalas | |
0x00 | AUX1 kaištis | ||
0x01 | AUX2 kaištis | ||
0x02 | AUX3 kaištis | ||
0x03 | GPIO0 kaištis | ||
0x04 | GPIO1 kaištis | ||
0x05 | GPIO2 kaištis | ||
0x06 | GPIO3 kaištis | ||
0x07-0xFF | RFU |
4.5.9.1.2 Atsakymas
78 lentelė. CONFIGURE_TESTBUS_DIGITAL atsako reikšmė
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas |
Būsena | 1 baitas | Operacijos būsena [9 lentelė]. Numatomos vertės yra tokios: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR (Daugiau duomenų nėra) |
4.5.9.1.3 įvykis
Šiam nurodymui renginio nėra.
4.5.9.2 CONFIGURE_TESTBUS_ANALOG
Ši instrukcija naudojama norint gauti galimą analoginio tikrinimo magistralės signalą pasirinktose trinkelių konfigūracijose.
Analoginės bandymo magistralės signalą galima gauti įvairiais režimais. Jie yra:
4.5.9.2.1 RAW režimas
Šiuo režimu TB_SignalIndex0 pasirinktas signalas perkeliamas Shift_Index0, užmaskuojamas Mask0 ir išvedamas į AUX1. Panašiai TB_SignalIndex1 pasirinktas signalas perkeliamas Shift_Index1, užmaskuojamas Mask1 ir išvedamas į AUX2.
Šis režimas suteikia klientui lankstumo išvesti bet kokį 8 bitų pločio ar mažesnį signalą, kuriam nereikia ženklo konvertavimo į analoginius blokelius.
4.5.9.2.2 KOMBINUOTASIS režimas
Šiuo režimu analoginis signalas bus 10 bitų pasirašyta ADCI/ADCQ/pcrm_if_rssi reikšmė, konvertuojama į nepažymėtą vertę, sumažinta iki 8 bitų ir išvesta į AUX1 arba AUX2 trinkeles.
Tik viena iš ADCI/ADCQ (10 bitų) konvertuotų verčių bet kuriuo metu gali būti išvesta į AUX1/AUX2.
Jei Combined_Mode Signal naudingosios apkrovos lauko reikšmė yra 2 (analoginis ir skaitmeninis kombinuotas), tada analoginė ir skaitmeninė bandomoji magistralė nukreipiama AUX1 (analoginis signalas) ir GPIO0 (skaitmeninis signalas).
Signalai, kuriuos reikia nukreipti, sukonfigūruojami toliau nurodytame EEPROM adresu:
0xCE9 – TB_SignalIndex
0xCEA – TB_BitIndex
0xCEB – analoginis TB_indeksas
Bandymo magistralės indeksas ir bandomosios magistralės bitas turi būti sukonfigūruoti EEPROM prieš išduodant kombinuotą režimą su 2 parinktimi.
Pastaba:
Priimančioji institucija turi pateikti visus laukus, neatsižvelgiant į lauko pritaikymą „neapdorotu“ arba „kombinuotu“ režimu. PN5190 IC atsižvelgia tik į taikomas lauko vertes.
4.5.9.2.3 komanda
79 lentelė. CONFIGURE_TESTBUS_ANALOG komandos reikšmė
Naudingosios apkrovos laukas | Ilgis | Vertė / aprašymas | Lauko pritaikymas kombinuotam režimui | |
bConfig | 1 baitas | Konfigūruojami bitai. Nurodykite 80 lentelė | Taip | |
Kombinuoto režimo signalas | 1 baitas | 0 – ADCI/ADCQ 1 – pcrm_if_rssi |
Taip | |
2 – Analoginis ir skaitmeninis kombinuotas | ||||
3 – 0xFF – Rezervuota |
TB_SignalIndex0 | 1 baitas | Analoginio signalo signalo indeksas. Nurodykite 7 skirsnis | Taip | |
TB_SignalIndex1 | 1 baitas | Analoginio signalo signalo indeksas. Nurodykite 7 skirsnis | Taip | |
Shift_Index0 | 1 baitas | DAC0 įvesties poslinkio padėtys. Kryptis bus nustatyta bitais bConfig[1]. | Nr | |
Shift_Index1 | 1 baitas | DAC1 įvesties poslinkio padėtys. Kryptis bus nustatyta bitais bConfig[2]. | Nr | |
Kaukė 0 | 1 baitas | DAC0 kaukė | Nr | |
Kaukė 1 | 1 baitas | DAC1 kaukė | Nr |
80 lentelė. Konfigūravimo bitmask
b7 | b6 | b5 | b4 | b3 | b2 | b1 | b0 | Aprašymas | Taikoma režimui |
X | X | DAC1 išėjimo poslinkio diapazonas – 0, 1, 2 | Neapdorotas | ||||||
X | X | DAC0 išėjimo poslinkio diapazonas – 0, 1, 2 | Neapdorotas | ||||||
X | Kombinuotame režime signalas AUX1/AUX2 kaištyje 0 ➜ Signalas AUX1 1 ➜ Signalas AUX2 |
Kombinuotas | |||||||
X | DAC1 įvesties poslinkio kryptis 0 ➜ Perjunkite į dešinę 1 ➜ Perjunkite į kairę |
Neapdorotas | |||||||
X | DAC0 įvesties poslinkio kryptis 0 ➜ Perjunkite į dešinę 1 ➜ Perjunkite į kairę |
Neapdorotas | |||||||
X | Režimas. 0 ➜ Neapdorotas režimas 1 ➜ Kombinuotas režimas |
Neapdorotas / Kombinuotas |
4.5.9.2.4 Atsakymas
81 lentelė. CONFIGURE_TESTBUS_ANALOG atsako reikšmė
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas |
Būsena | 1 baitas | Operacijos būsena [9 lentelė]. Numatomos vertės yra tokios: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR (Daugiau duomenų nėra) |
4.5.9.2.5 įvykis
Šiam nurodymui renginio nėra.
4.5.9.3 CONFIGURE_MULTIPLE_TESTBUS_DIGITAL
Ši instrukcija naudojama norint perjungti kelis galimus skaitmeninės bandomosios magistralės signalus pasirinktose trinkelių konfigūracijose.
Pastaba: Jei šis ilgis yra NULIS, skaitmeninė bandymo magistralė yra NUSTATYTA.
4.5.9.3.1 komanda
82 lentelė. CONFIGURE_MULTIPLE_TESTBUS_DIGITAL komandos reikšmė
Naudingosios apkrovos laukas | Ilgis | Vertė / aprašymas | |
TB_SignalIndex Nr. 1 | 1 baitas | Nurodykite 8 žemiau | |
TB_BitIndex Nr. 1 | 1 baitas | Nurodykite 8 žemiau | |
TB_PadIndex Nr. 1 | 1 baitas | Trinkelės indeksas, ant kurio turi būti išvestas skaitmeninis signalas | |
0x00 | AUX1 kaištis | ||
0x01 | AUX2 kaištis | ||
0x02 | AUX3 kaištis | ||
0x03 | GPIO0 kaištis | ||
0x04 | GPIO1 kaištis | ||
0x05 | GPIO2 kaištis | ||
0x06 | GPIO3 kaištis | ||
0x07-0xFF | RFU | ||
TB_SignalIndex Nr. 2 | 1 baitas | Nurodykite 8 žemiau | |
TB_BitIndex Nr. 2 | 1 baitas | Nurodykite 8 žemiau | |
TB_PadIndex Nr. 2 | 1 baitas | Trinkelės indeksas, ant kurio turi būti išvestas skaitmeninis signalas | |
0x00 | AUX1 kaištis | ||
0x01 | AUX2 kaištis | ||
0x02 | AUX3 kaištis | ||
0x03 | GPIO0 kaištis | ||
0x04 | GPIO1 kaištis | ||
0x05 | GPIO2 kaištis | ||
0x06 | GPIO3 kaištis | ||
0x07-0xFF | RFU |
4.5.9.3.2 Atsakymas
83 lentelė. CONFIGURE_MULTIPLE_TESTBUS_DIGITAL atsako reikšmė
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas |
Būsena | 1 baitas | Operacijos būsena [2 lentelė]. Numatomos vertės yra tokios: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR (Daugiau duomenų nėra) |
4.5.9.3.3 įvykis
Šiam nurodymui renginio nėra.
4.5.10 CTS konfigūracija
4.5.10.1 CTS_ENABLE
Ši instrukcija naudojama CTS registravimo funkcijai įjungti / išjungti.
4.5.10.1.1 komanda
84 lentelė. CTS_ENABLE komandos reikšmė
Naudingojo krovinio lauko ilgio reikšmė / aprašymas | ||||
Įjungti / Išjungti | 1 baitas | 0 bitas | 0 | Išjunkite CTS registravimo funkciją |
1 Įjunkite CTS registravimo funkciją |
||||
1-7 bitai | RFU |
4.5.10.1.2 Atsakymas
85 lentelė. CTS_ENABLE atsako reikšmė
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas |
Būsena | 1 baitas | Operacijos būsena [9 lentelė]. Numatomos vertės yra tokios: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR (Daugiau duomenų nėra) |
4.5.10.1.3 įvykis
Toliau pateiktoje lentelėje rodomi įvykio duomenys, kurie bus išsiųsti kaip įvykio pranešimo dalis, kaip parodyta 12 ir 13 paveiksluose.
86 lentelė. Tai informuoja pagrindinį kompiuterį, kad duomenys buvo gauti. EVT_CTS_DONE
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas |
Renginys | 1 baitas | 00 … Įvyko TRIGGER, duomenys paruošti priimti. |
4.5.10.2 CTS_CONFIGURE
Ši instrukcija naudojama konfigūruoti visus reikalingus CTS registrus, tokius kaip trigeriai, bandomosios magistralės registrai, s.amplingo konfigūracija ir kt.
Pastaba:
[1] leidžia geriau suprasti CTS konfigūraciją. Užfiksuoti duomenys turi būti siunčiami kaip atsakymo į 4.5.10.3 skyriaus komandą dalis.
4.5.10.2.1 komanda
87 lentelė. CTS_CONFIGURE komandos reikšmė
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas |
PRE_TRIGGER_SHIFT | 1 baitas | Apibrėžia gavimo po paleidimo sekos ilgį 256 baitų vienetais. 0 reiškia, kad poslinkio nėra; n reiškia n*256 baitų bloko poslinkį. Pastaba: galioja tik tuo atveju, jei TRIGGER_MODE yra „PRE“ arba „COMB“ paleidimo režimas |
TRIGGER_MODE | 1 baitas | Nurodo naudotiną įsigijimo režimą. |
0x00 – POST režimas | ||
0x01 – RFU | ||
0x02 – PRE režimas | ||
0x03 – 0xFF – netinkamas | ||
RAM_PAGE_WIDTH | 1 baitas | Nurodo lustinės atminties kiekį, kurį apima įsigijimas. Granuliuotumas pasirenkamas pagal dizainą kaip 256 baitai (ty 64 32 bitų žodžiai). Galiojančios vertės yra tokios: 0x00h – 256 baitai 0x02h – 768 baitai 0x01h – 512 baitai 0x03h – 1024 baitai 0x04h – 1280 baitai 0x05h – 1536 baitai 0x06h – 1792 baitai 0x07h – 2048 baitai 0x08h – 2304 baitai 0x09h – 2560 baitai 0x0Ah – 2816 baitų 0x0Bh – 3072 baitai 0x0Ch – 3328 baitai 0x0Dh – 3584 baitai 0x0Eh – 3840 baitų 0x0Fh – 4096 baitai 0x10h – 4352 baitai 0x11h – 4608 baitai 0x12h – 4864 baitai 0x13h – 5120 baitai 0x14h – 5376 baitai 0x15h – 5632 baitai 0x16h – 5888 baitai 0x17h – 6144 baitai 0x18h – 6400 baitai 0x19h – 6656 baitai 0x1Ah – 6912 baitų 0x1Bh – 7168 baitai 0x1Ch – 7424 baitai 0x1Dh – 7680 baitai 0x1Eh – 7936 baitų 0x1Fh – 8192 baitai |
SAMPLE_CLK_DIV | 1 baitas | Šio lauko dešimtainė reikšmė nurodo laikrodžio dažnio padalijimo koeficientą, kuris bus naudojamas gavimo metu. CTS laikrodis = 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 baitas | Šie bitai naudojami norint nurodyti, kurie dviejų 16 bitų įvesties magistralių baitai prisideda prie persipynimo mechanizmo, generuojančio duomenis, kurie turi būti perkelti į lusto atmintį. Jų reikšmė ir vartojimas priklauso nuo SAMPLE_MODE_SEL reikšmės.
Pastaba: duotoji vertė visada užmaskuojama 0x0F ir tada atsižvelgiama į efektyvią vertę. |
SAMPLE_MODE_SEL | 1 baitas | Pasirenka sampling interleave režimas, kaip aprašyta CTS dizaino specifikacijose. Dešimtainė reikšmė 3 yra rezervuota ir bus laikoma 0. Pastaba: nurodyta vertė visada užmaskuojama 0x03, tada atsižvelgiama į efektyvią vertę. |
TB0 | 1 baitas | Parenkama, kuri bandomoji magistralė turi būti prijungta prie TB0. Nurodykite 7 skirsnis (TB_ Signal_Index vertė) |
TB1 | 1 baitas | Parenkama, kuri bandomoji magistralė turi būti prijungta prie TB1. Nurodykite 7 skirsnis (TB_ Signal_Index vertė) |
TB2 | 1 baitas | Parenkama, kuri bandomoji magistralė turi būti prijungta prie TB2. Nurodykite 7 skirsnis (TB_ Signal_Index vertė) |
TB3 | 1 baitas | Parenkama, kuri bandomoji magistralė turi būti prijungta prie TB3. Nurodykite 7 skirsnis (TB_ Signal_Index vertė) |
TTB_SELECT | 1 baitas | Parenkama, kuri TB turi būti prijungta prie paleidimo šaltinių. Nurodykite 7 skirsnis (TB_Signal_Index vertė) |
RFU | 4 baitai | Siųsti visada 0x00000000 |
MISC_CONFIG | 24 baitai | Trigerio įvykiai, poliškumas ir tt Žr [1] kad suprastumėte naudotiną CTS konfigūraciją. |
4.5.10.2.2 Atsakymas
88 lentelė. CTS_CONFIGURE atsako reikšmė
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas |
Būsena | 1 baitas | Operacijos būsena [9 lentelė]. Numatomos vertės yra tokios: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR |
4.5.10.2.3 įvykis
Šiam nurodymui renginio nėra.
4.5.10.3 CTS_RETRIEVE_LOG
Ši instrukcija nuskaito užfiksuotų bandomosios magistralės duomenų žurnalą samples saugomi atminties buferyje.
4.5.10.3.1 komanda
89 lentelė. CTS_RETRIEVE_LOG komandos reikšmė
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas | |
Chunk Size | 1 baitas | 0x01-0xFF | Pateikiamas numatomų duomenų baitų skaičius. |
4.5.10.3.2 Atsakymas
90 lentelė. CTS_RETRIEVE_LOG atsako reikšmė
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas |
Būsena | 1 baitas | Operacijos būsena [9 lentelė]. Numatomos vertės yra tokios: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR (Daugiau duomenų nėra) PN5190_STATUS_SUCCSES_CHAINING |
||
Žurnalo duomenys [1…n] | CTSRequest | Sulaikytas Samples Duomenų gabalas |
Pastaba:
Maksimalus „Žurnalo duomenų“ dydis priklauso nuo „ChunkSize“, kuris buvo pateiktas kaip komandos dalis.
Bendras žurnalo dydis turi būti pateiktas TLV antraštės atsakyme.
4.5.10.3.3 įvykis
Šiam nurodymui renginio nėra.
4.5.11 TEST_MODE komandos
4.5.11.1 ANTENA_SELF_TEST
Ši instrukcija naudojama patikrinti, ar antena prijungta, o atitinkantys komponentai yra užpildyti / surinkti.
Pastaba:
Ši komanda dar nepasiekiama. Apie prieinamumą žr. išleidimo pastabas.
4.5.11.2 PRBS_TESTAS
Ši instrukcija naudojama PRBS sekai generuoti skirtingoms skaitymo režimo protokolų ir bitų spartos konfigūracijai. Kai instrukcija bus įvykdyta, PRBS bandymo seka bus prieinama RF.
Pastaba:
Prieš siųsdamas šią komandą, pagrindinis kompiuteris turi įsitikinti, kad atitinkama RF technologijos konfigūracija įkelta naudojant 4.5.7.1 skyrių, o RF įjungta naudojant 4.5.8.1 komandą.
4.5.11.2.1 komanda
91 lentelė. PRBS_TEST komandos reikšmė
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas | |
prbs_type | 1 baitas | 00 | PRBS9 (numatytasis) |
01 | PRBS15 | ||
02-FF | RFU |
4.5.11.2.2 Atsakymas
92 lentelė. PRBS_TEST atsako reikšmė
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas |
Būsena | 1 baitas | Operacijos būsena [9 lentelė]. Numatomos vertės yra tokios: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR PN5190_STATUS_NO_RF_FIELD |
4.5.11.2.3 įvykis
Šiam nurodymui renginio nėra.
4.5.12 Lusto informacijos komandos
4.5.12.1 GET_DIEID
Ši instrukcija naudojama PN5190 lusto ID nuskaityti.
4.5.12.1.1 komanda
93 lentelė. GET_DIEID Komandos reikšmė
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas |
– | – | Naudingoje apkrovoje duomenų nėra |
4.5.12.1.2 Atsakymas
94 lentelė. GET_DIEID atsako reikšmė
Naudingosios apkrovos laukas | Ilgis | Vertė / aprašymas |
Būsena | 1 baitas | Operacijos būsena [9 lentelė]. Numatomos vertės yra tokios: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR (daugiau duomenų nėra) |
||
Vertybės | 16 baitai | 16 baitų mirties ID. |
4.5.12.1.3 įvykis
Šiai komandai įvykių nėra.
4.5.12.2 GET_VERSION
Ši instrukcija naudojama PN5190 lusto HW versijai, ROM versijai ir FW versijai nuskaityti.
4.5.12.2.1 komanda
95 lentelė. GET_VERSION komandos reikšmė
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas |
– | – | Naudingoje apkrovoje duomenų nėra |
Atsisiuntimo režimu yra komanda DL_GET_VERSION (3.4.4 skyrius), kurią galima naudoti norint nuskaityti HW versiją, ROM versiją ir FW versiją.
4.5.12.2.2 Atsakymas
96 lentelė. GET_VERSION atsako reikšmė
Naudingos apkrovos laukas | Ilgis | Vertė / aprašymas |
Būsena | 1 baitas | Operacijos būsena [9 lentelė]. Numatomos vertės yra tokios: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR (Daugiau duomenų nėra) |
||
HW_V | 1 baitas | Aparatinės įrangos versija |
RO_V | 1 baitas | ROM kodas |
FW_V | 2 baitai | Programinės aparatinės įrangos versija (naudojama atsisiuntimui) |
RFU1-RFU2 | 1-2 baitų | – |
Numatytas atsakas į skirtingą PN5190 IC versiją paminėtas (3.4.4 skirsnyje)
4.5.12.2.3 įvykis
Šiai komandai įvykių nėra.
Priedas (pvzampTHE)
Šį priedą sudaro buvamples aukščiau paminėtoms komandoms. Buvęsamples yra tik iliustravimo tikslais, kad būtų parodytas komandos turinys.
5.1 Pvzample WRITE_REGISTER
Toliau pateikiama duomenų seka, išsiųsta iš pagrindinio kompiuterio, kad būtų įrašyta 0x12345678 reikšmė į registrą 0x1F.
Komandų rėmelis išsiųstas į PN5190: 0000051F78563412
Šeimininkas laukia pertraukimo.
Kai pagrindinis kompiuteris nuskaito atsakymo kadrą, gautą iš PN5190 (rodo sėkmingą veikimą): 00000100 5.2 Example WRITE_REGISTER_OR_MASK
Ši duomenų seka, išsiųsta iš pagrindinio kompiuterio, kad būtų atlikta loginė ARBA operacija registre 0x1F su kauke kaip 0x12345678
Komandų rėmelis išsiųstas į PN5190: 0100051F78563412
Šeimininkas laukia pertraukimo.
Kai pagrindinis kompiuteris nuskaito atsakymo kadrą, gautą iš PN5190 (rodo sėkmingą veikimą): 01000100
5.3 Pvzample WRITE_REGISTER_AND_MASK
Ši duomenų seka, išsiųsta iš pagrindinio kompiuterio, kad būtų atlikta loginė IR operacija registre 0x1F su kauke kaip 0x12345678
Komandų rėmelis išsiųstas į PN5190: 0200051F78563412
Šeimininkas laukia pertraukimo.
Kai pagrindinis kompiuteris nuskaito atsakymo kadrą, gautą iš PN5190 (rodo sėkmingą veikimą): 02000100
5.4 Pvzample WRITE_REGISTER_MULTIPLE
Toliau pateikiama duomenų seka, išsiųsta iš pagrindinio kompiuterio, kad būtų galima atlikti loginę IR operaciją registre 0x1F su kauke 0x12345678 ir logine ARBA operacija registre 0x20 su kauke 0x11223344, ir įrašyti į registrą 0x21 su reikšme 0xAABBCCDD.
Komandų rėmelis išsiųstas į PN5190: 0300121F03785634122002443322112101DDCCBBAA
Šeimininkas laukia pertraukimo.
Kai pagrindinis kompiuteris nuskaito atsakymo kadrą, gautą iš PN5190 (rodo sėkmingą veikimą): 03000100
5.5 Pvzample READ_REGISTER
Ši duomenų seka, išsiųsta iš pagrindinio kompiuterio, kad būtų galima nuskaityti registro 0x1F turinį, ir darant prielaidą, kad registro reikšmė yra 0x12345678
Komandų rėmelis išsiųstas PN5190: 0400011F
Šeimininkas laukia pertraukimo.
Kai pagrindinis kompiuteris nuskaito atsakymo kadrą, gautą iš PN5190 (rodo sėkmingą veikimą): 0400050078563412
5.6 Pvzample READ_REGISTER_MULTIPLE
Toliau pateikiama duomenų seka, siunčiama iš pagrindinio kompiuterio, kad būtų galima nuskaityti registrų 0x1F, kuriuose yra 0x12345678 reikšmė, ir registro 0x25, kuriuose yra 0x11223344 vertės, turinį.
Komandų rėmelis išsiųstas į PN5190: 0500021F25
Šeimininkas laukia pertraukimo.
Kai pagrindinis kompiuteris nuskaito atsakymą, kadras gautas iš PN5190 (nurodantis sėkmingą veikimą): 050009007856341244332211
5.7 Pvzample WRITE_E2PROM
Toliau pateikiama duomenų, siunčiamų iš pagrindinio kompiuterio, kad būtų galima įrašyti į E2PROM vietas nuo 0x0130 iki 0x0134 seka, kurios turinys yra 0x11, 0x22, 0x33, 0x44, 0x55
Komandų rėmelis išsiųstas PN5190: 06000730011122334455
Šeimininkas laukia pertraukimo.
Kai pagrindinis kompiuteris nuskaito atsakymą, kadras gautas iš PN5190 (nurodantis sėkmingą veikimą): 06000100
5.8 Pvzample READ_E2PROM
Ši duomenų seka, siunčiama iš pagrindinio kompiuterio, kad būtų galima nuskaityti iš E2PROM vietų nuo 0x0130 iki 0x0134, kur saugomas turinys: 0x11, 0x22, 0x33, 0x44, 0x55
Komandų rėmelis išsiųstas PN5190: 07000430010500
Šeimininkas laukia pertraukimo.
Kai pagrindinis kompiuteris nuskaito atsakymą, kadras gautas iš PN5190 (nurodantis sėkmingą veikimą): 070006001122334455
5.9 Pvzample TRANSMIT_RF_DATA
Toliau seka duomenų, siunčiamų iš pagrindinio kompiuterio, kad būtų išsiųsta REQA komanda (0x26), su bitų skaičiumi, kuris turi būti perduodamas kaip "0x07", darant prielaidą, kad prieš tai nustatyti reikalingi registrai ir įjungtas RF.
Komandų rėmelis išsiųstas PN5190: 0800020726
Šeimininkas laukia pertraukimo.
Kai pagrindinis kompiuteris nuskaito atsakymą, kadras gautas iš PN5190 (nurodantis sėkmingą veikimą): 08000100
5.10 Pvzample for RETREIVE_RF_DATA
Pagal duomenų seką, išsiųstą iš pagrindinio kompiuterio, kad būtų gauti duomenys, gauti / saugomi vidiniame CLIF buferyje (darant prielaidą, kad buvo gautas 0x05), darant prielaidą, kad TRANSMIT_RF_DATA jau išsiųstas įjungus RF.
Komandų rėmelis išsiųstas PN5190: 090000
Šeimininkas laukia pertraukimo.
Kai pagrindinis kompiuteris nuskaito atsakymą, kadras gautas iš PN5190 (nurodantis sėkmingą veikimą): 090003000400
5.11 Pvzample už EXCHANGE_RF_DATA
Ši duomenų seka, išsiųsta iš pagrindinio kompiuterio, kad būtų perduota REQA (0x26), o paskutinio siunčiamo baito bitų skaičius nustatytas kaip 0x07, o visa būsena turi būti gaunama kartu su duomenimis. Daroma prielaida, kad reikalingi RF registrai jau nustatyti ir RF įjungtas.
Į PN5190 išsiųstas komandų rėmelis: 0A0003070F26
Šeimininkas laukia pertraukimo.
Kai pagrindinis kompiuteris nuskaito atsakymą, kadras, gautas iš PN5190 (nurodantis sėkmingą veikimą): 0A000 F000200000000000200000000004400
5.12 Pvzample LOAD_RF_CONFIGURATION
Toliau seka duomenų, siunčiamų iš pagrindinio kompiuterio, seka, kad būtų nustatyta RF konfigūracija. TX, 0x00 ir RX, 0x80
Į PN5190 išsiųstas komandų rėmelis: 0D00020080
Šeimininkas laukia pertraukimo.
Kai pagrindinis kompiuteris nuskaito atsakymą, kadras, gautas iš PN5190 (nurodantis sėkmingą veikimą): 0D000100
5.13 Pvzample UPDATE_RF_CONFIGURATION
Ši duomenų seka siunčiama iš pagrindinio kompiuterio, kad būtų atnaujinta RF konfigūracija. TX, 0x00, su registro adresu CLIF_CRC_TX_CONFIG ir reikšme 0x00000001
Į PN5190 išsiųstas komandų rėmelis: 0E0006001201000000
Šeimininkas laukia pertraukimo.
Kai pagrindinis kompiuteris nuskaito atsakymą, kadras gautas iš PN5190 (nurodantis sėkmingą veikimą): 0E000100
5.14 Pvzample RF_ON
Toliau seka duomenų, siunčiamų iš pagrindinio kompiuterio, seka, kad būtų įjungtas RF laukas naudojant susidūrimo išvengimą ir neaktyvus P2P. Daroma prielaida, kad atitinkama RF TX ir RX konfigūracija jau nustatyta PN5190.
Komandų rėmelis išsiųstas PN5190: 10000100
Šeimininkas laukia pertraukimo.
Kai pagrindinis kompiuteris nuskaito atsakymą, kadras gautas iš PN5190 (nurodantis sėkmingą veikimą): 10000100
5.15 Pvzample už RF_OFF
Toliau seka duomenų, siunčiamų iš pagrindinio kompiuterio, seka, kad išjungtumėte RF lauką.
Komandų rėmelis išsiųstas PN5190: 110000
Šeimininkas laukia pertraukimo.
Kai pagrindinis kompiuteris nuskaito atsakymą, kadras gautas iš PN5190 (nurodantis sėkmingą veikimą): 11000100
Priedas (RF protokolo konfigūracijos indeksai)
Šį priedą sudaro RF protokolo konfigūracijos indeksai, palaikomi PN5190.
TX ir RX konfigūracijos parametrai turi būti naudojami 4.5.7.1, 4.5.7.2, 4.5.7.3 skyriaus komandose.
Priedas (CTS ir TESTBUS signalai)
Žemiau esančioje lentelėje nurodyti skirtingi PN5190 signalai, kuriuos galima užfiksuoti naudojant CTS instrukcijas (4.5.10 skyrius) ir TESTBUS instrukcijas.
Jie turi būti naudojami 4.5.9.1, 4.5.9.2 ir 4.5.10.2 komandai.
Santrumpos
97 lentelė. Santrumpos
Abr. | Reikšmė |
CLK | Laikrodis |
DWL_REQ | Atsisiųsti užklausos PIN kodą (taip pat vadinamas DL_REQ) |
EEPROM | Elektra ištrinama programuojama tik skaitymo atmintis |
FW | Firmware |
GND | Žemė |
GPIO | Bendrosios paskirties įvesties išvestis |
HW | Aparatūra |
I²C | Integruota grandinė (nuoseklioji duomenų magistralė) |
IRQ | Pertraukimo užklausa |
ISO/IEC | Tarptautinė standartų organizacija / Tarptautinė elektrotechnikos bendruomenė |
NFC | Šalia lauko komunikacija |
OS | Operacinė sistema |
PCD | Artumo sujungimo įtaisas (bekontaktis skaitytuvas) |
PICC | Artumo integrinės grandinės kortelė (bekontaktė kortelė) |
PMU | Energijos valdymo blokas |
POR | Įjungimo atstatymas |
RF | Radijo dažnis |
RST | Nustatyti iš naujo |
SFWU | saugus programinės įrangos atsisiuntimo režimas |
SPI | Serijinė periferinė sąsaja |
VEN | V Įjungti kaištį |
Nuorodos
[1] NFC kabinos CTS konfigūracijos dalis, https://www.nxp.com/products/:NFC-COCKPIT[2] PN5190 IC duomenų lapas, https://www.nxp.com/docs/en/data-sheet/PN5190.pdf
Teisinė informacija
10.1 Apibrėžtys
Juodraštis — Dokumento juodraščio būsena rodo, kad turinys vis dar yra vidinisview ir turi būti oficialiai patvirtintas, dėl kurio gali būti atlikti pakeitimai ar papildymai. NXP Semiconductors nesuteikia jokių pareiškimų ar garantijų dėl informacijos, įtrauktos į dokumento versijos projektą, tikslumo ar išsamumo ir neprisiima atsakomybės už tokios informacijos naudojimo pasekmes.
10.2. Atsakomybės apribojimai
Ribota garantija ir atsakomybė — Manoma, kad šiame dokumente pateikta informacija yra tiksli ir patikima. Tačiau NXP Semiconductors nesuteikia jokių išreikštų ar numanomų pareiškimų ar garantijų dėl tokios informacijos tikslumo ar išsamumo ir neprisiima atsakomybės už tokios informacijos naudojimo pasekmes. „NXP Semiconductors“ neprisiima atsakomybės už šio dokumento turinį, jei jį pateikia ne „NXP Semiconductors“ informacijos šaltinis.
„NXP Semiconductors“ jokiu atveju nėra atsakinga už jokią netiesioginę, atsitiktinę, baudžiamąją, specialią ar pasekminę žalą (įskaitant – bet neapsiribojant – prarastą pelną, prarastas santaupas, verslo nutraukimą, išlaidas, susijusias su bet kokių produktų pašalinimu ar pakeitimu ar perdirbimo mokesčiais), nesvarbu, ar tokie nuostoliai nėra pagrįsti deliktu (įskaitant aplaidumą), garantija, sutarties pažeidimu ar bet kokia kita teisine teorija.
Nepaisant bet kokios žalos, kurią klientas gali patirti dėl bet kokios priežasties, NXP Semiconductors visuminė ir kumuliacinė atsakomybė klientui už čia aprašytus gaminius yra ribojama pagal
Komercinio NXP puslaidininkių pardavimo sąlygos.
Teisė daryti pakeitimus – NXP Semiconductors pasilieka teisę bet kuriuo metu ir be įspėjimo keisti šiame dokumente paskelbtą informaciją, įskaitant, bet neapsiribojant, specifikacijas ir gaminių aprašymus. Šis dokumentas pakeičia ir pakeičia visą informaciją, pateiktą iki jo paskelbimo.
Tinkamumas naudoti – NXP Semiconductors produktai nėra sukurti, įgalioti arba garantuoti, kad būtų tinkami naudoti gyvybę palaikančiose, gyvybiškai svarbiose arba saugai svarbiose sistemose ar įrangoje, taip pat tais atvejais, kai galima pagrįstai tikėtis NXP Semiconductors gaminio gedimo ar veikimo sutrikimo. sukelti sužalojimą, mirtį arba didelę žalą turtui ar aplinkai. „NXP Semiconductors“ ir jo tiekėjai neprisiima atsakomybės už „NXP Semiconductors“ produktų įtraukimą ir (arba) naudojimą tokioje įrangoje ar programose, todėl toks įtraukimas ir (arba) naudojimas yra kliento paties rizika.
Programos — Čia aprašytos bet kurio iš šių produktų taikomosios programos yra tik iliustravimo tikslais. NXP Semiconductors negarantuoja ir negarantuoja, kad tokios programos bus tinkamos nurodytam naudojimui be tolesnių bandymų ar modifikacijų.
Klientai yra atsakingi už savo taikomųjų programų ir gaminių projektavimą ir veikimą naudojant NXP Semiconductors produktus, o NXP Semiconductors neprisiima jokios atsakomybės už bet kokią pagalbą, susijusią su programomis ar kliento gaminio projektavimu. Vien tik klientas atsako už tai, ar NXP Semiconductors produktas yra tinkamas ir tinkamas kliento programoms ir planuojamiems produktams, taip pat planuojamam kliento trečiosios šalies (-ių) naudojimui ir naudojimui. Klientai turėtų numatyti tinkamas projektavimo ir veikimo apsaugos priemones, kad sumažintų riziką, susijusią su jų programomis ir produktais.
NXP Semiconductors neprisiima jokios atsakomybės, susijusios su jokiais nutylėjimais, žala, išlaidomis ar problemomis, kurios yra pagrįstos bet kokia kliento programų ar produktų arba kliento trečiosios šalies kliento (-ų) taikomąja programa ar naudojimu. Klientas yra atsakingas už visų būtinų kliento taikomųjų programų ir produktų, naudojančių NXP Semiconductors produktus, testavimą, kad būtų išvengta programų ir produktų numatytųjų numatytųjų programų ir produktų arba programos ar naudojimo, kurį naudoja kliento trečiosios šalies klientas (-ai). NXP šiuo atžvilgiu neprisiima jokios atsakomybės.
NXP BV – NXP BV nėra veikianti įmonė ir neplatina bei neparduoda produktų.
10.3 Licencijos
NXP IC su NFC technologija pirkimas – NXP Semiconductors IC, atitinkančio vieną iš artimojo lauko ryšio (NFC) standartų ISO/IEC 18092 ir ISO/IEC 21481, įsigijimas neperduoda numanomos licencijos pagal bet kokias patento teises, pažeistas įgyvendinant bet kurį iš tų standartų. Įsigijus NXP Semiconductors IC, neįtraukta licencija gauti jokį NXP patentą (ar kitą IP teisę), apimantį tų produktų derinius su kitais produktais, nesvarbu, ar tai būtų aparatinė ar programinė įranga.
10.4 Prekių ženklai
Pastaba: visi nurodyti prekių ženklai, produktų pavadinimai, paslaugų pavadinimai ir prekių ženklai yra atitinkamų savininkų nuosavybė.
NXP – žodinis ženklas ir logotipas yra NXP BV prekių ženklai
EdgeVerse – yra NXP BV prekės ženklas
FeliCa – yra Sony Corporation prekės ženklas.
MIFARE – yra NXP BV prekės ženklas
MIFARE Classic – yra NXP BV prekės ženklas
Atminkite, kad svarbūs pranešimai apie šį dokumentą ir jame aprašytą (-us) gaminį (-ius) buvo įtraukti į skyrių „Teisinė informacija“.
© 2023 NXP BV
Norėdami gauti daugiau informacijos, apsilankykite: http://www.nxp.com
Visos teisės saugomos.
Išleidimo data: 25 m. gegužės 2023 d
Dokumento identifikatorius: UM11942
Dokumentai / Ištekliai
![]() |
NXP PN5190 NFC priekinis valdiklis [pdf] Naudotojo vadovas PN5190, PN5190 NFC priekinis valdiklis, NFC priekinės dalies valdiklis, valdiklis, UM11942 |