UM 11942
Stratu d'istruzzioni PN5190
Controller Frontend NFC
Manuale d'usu
Controller Frontend NFC PN5190
Document Information
infurmazione | Cuntinutu |
Parole chjave | PN5190, NFC, NFC frontend, controller, strato d'istruzzioni |
Astrattu | Stu documentu descrive i cumandamenti di a strata d'istruzzioni è e risposte à u travagliu da un controller host, per valutà l'operazione di u controller di frontend NXP PN5190 NFC. PN5190 hè un controller di frontend NFC di prossima generazione. U scopu di stu documentu hè di discrive i cumandamenti di l'interfaccia per travaglià cù u controller di frontend PN5190 NFC. Per più infurmazione nantu à u funziunamentu di u controller di frontend PN5190 NFC, riferite à a scheda di dati è a so infurmazione cumplementaria. |
Storia di rivisione
Rev | Data | Descrizzione |
3.7 | 20230525 | • Tipu di ducumentu è tìtulu cambiatu da l'addendum di a scheda di dati di u produttu à u manual d'utilizatore • Pulizia editoriale • Termini editoriali aghjurnati per i signali SPI • Added command GET_CRC_USER_AREA in Table 8 in Section 4.5.2.3 • Aghjurnatu diversi dettagli differenziati per PN5190B1 è PN5190B2 in a Sezione 3.4.1 • Risposta aghjurnata di a Sezione 3.4.7 |
3.6 | 20230111 | Enhanced Check Integrity response description in Section 3.4.7 |
3.5 | 20221104 | Sezione 4.5.4.6.3 "Evenimentu": aghjuntu |
3.4 | 20220701 | • Added command CONFIGURE_MULTIPLE_TESTBUS_DIGITAL in Table 8 in Section 4.5.9.3 • Sezione aghjurnata 4.5.9.2.2 |
3.3 | 20220329 | A descrizzione di l'hardware hà migliuratu in a Sezione 4.5.12.2.1 "Cumandamentu" è a Sezione 4.5.12.2.2 "Risposta" |
3.2 | 20210910 | Numeri di versione di firmware aghjurnati da 2.1 à 2.01 è 2.3 à 2.03 |
3.1 | 20210527 | RETRIEVE_RF_FELICA_EMD_DATA descrizzione di cumanda aghjunta |
3 | 20210118 | Prima versione ufficiale liberata |
Introduzione
1.1 Introduzione
Ce document décrit l'interface hôte PN5190 et les API. L'interfaccia di l'ospite fisicu utilizata in a documentazione hè SPI. A caratteristica fisica SPI ùn hè micca cunsiderata in u documentu.
A separazione di frames è u cuntrollu di u flussu sò parti di stu documentu.
1.1.1 Scopu
U documentu descrive a capa logica, u codice d'istruzzioni, l'API chì sò pertinenti per u cliente.
A cumunicazione di l'ospite hè finitaview
PN5190 hà dui modi principali di funziunamentu per cumunicà cù u controller host.
- A cumunicazione basata in HDLL hè aduprata quandu u dispusitivu hè attivatu per entre:
a. Modu di scaricamentu sicuru criptatu per aghjurnà u so firmware - A cumunicazione basata in cumandamenti-risposta TLV (datu cum'è example).
2.1 Modu HDLL
U modu HDLL hè adupratu per u formatu di scambiu di pacchetti per travaglià cù i modi operativi IC sottu:
- Modu di scaricamentu di firmware sicuru (SFWU), vede a Sezione 3
2.1.1 Descrizzione di HDLL
HDLL hè a capa di ligame sviluppata da NXP per assicurà una scaricamentu FW affidabile.
Un missaghju HDLL hè fattu di un capu di 2 byte, seguitu da un quadru, chì comprende l'opcode è u Payload di u cumandamentu. Ogni missaghju finisci cù un CRC 16-bit, cum'è descrittu nantu à a stampa sottu:L'intestazione HDLL cuntene:
- Un pezzu. Chì indica se stu missaghju hè l'unicu o l'ultimu pezzu di un missaghju (chunk = 0). O se, almenu, un altru pezzu seguita (chunk = 1).
- A durata di u Payload codificata nantu à 10 bits. Cusì, u HDLL Frame Payload pò andà finu à 1023 Bytes.
L'ordine di byte hè statu definitu cum'è big-endian, vale à dì Ms Byte prima.
U CRC16 hè conforme à X.25 (CRC-CCITT, ISO/IEC13239) standard cù u polinomiu x^16 + x^12 + x^5 +1 è u valore pre-load 0xFFFF.
Hè calculatu nantu à tuttu u quadru HDLL, vale à dì Header + Frame.
Sampimplementazione di u codice C:
static uint16_t phHal_Host_CalcCrc16 (uint8_t* p, uint32_t dwLength)
{
uint32_t i ;
uint16_t crc_new ;
uint16_t crc = 0xffffU;
per (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;
}
torna crc;
}
2.1.2 Cartografia di u trasportu nantu à u SPI
Per ogni affirmazione NTS, u primu byte hè sempre un HEADER (byte di indicazione di flussu), pò esse sia 0x7F/0xFF in quantu à l'operazione di scrittura / lettura.
2.1.2.1 Scrive Sequenza da l'ospite (direzzione DH => PN5190)2.1.2.2 Sequenza di lettura da l'ospite (Direzzione PN5190 => DH)
2.1.3 protocolu HDLL
HDLL hè un protokollu di cumanda-risposta. Tutte l'operazioni citate sopra sò attivate per mezu di un cumandamentu specificu è validate nantu à a risposta.
I cumandamenti è e risposte seguitanu a sintassi di u messagiu HDLL, u cumandimu esse mandatu da l'ospite di u dispositivu, a risposta da u PN5190. L'opcode indica u tipu di cumanda è risposta.
A cumunicazione basata in HDLL, usata solu quandu u PN5190 hè attivatu per entre in u modu "Secure firmware download".
2.2 Modu TLV
TLV significa Tag Valore di lunghezza.
2.2.1 Definizione di quadru
Un quadru SPI principia cù u bordu di caduta di NTS è finisce cù u bordu crescente di NTS. SPI hè per definizione fisica full duplex ma PN5190 usa SPI in un modu half-duplex. U modu SPI hè limitatu à CPOL 0 è CPHA 0 cù una velocità di clock max cum'è specificata in [2]. Ogni quadru SPI hè cumpostu da un header di 1 byte è n-byte di corpu.
2.2.2 Indicazione di flussuL'HOST manda sempre cum'è un primu byte l'indicazione di flussu byte, s'ellu vole scrive o leghje dati da u PN5190.
Se ci hè una dumanda di lettura è nisuna dati hè dispunibule, a risposta cuntene 0xFF.
I dati dopu à l'indicazione di flussu byte hè unu o parechji missaghji.
Per ogni affirmazione NTS, u primu byte hè sempre un HEADER (byte di indicazione di flussu), pò esse sia 0x7F/0xFF in quantu à l'operazione di scrittura / lettura.
2.2.3 Tipu di messagiu
Un controller di l'ospite cumunicà cù PN5190 utilizendu missaghji chì sò trasportati in frames SPI.
Ci sò trè tippi di missaghju diffirenti:
- Cumanda
- Risposta
- Avvenimentu
U diagramma di cumunicazione sopra mostra l'indicazione permessa per i diversi tipi di missaghju cum'è quì sottu:
- Cumanda è risposta.
- I cumandamenti sò mandati solu da u controller host à PN5190.
- Risposte è avvenimenti sò mandati solu da PN5190 à u controller di l'ospiti.
- I risposti di cumandamenti sò sincronizati cù u pin IRQ.
- L'ospite pò mandà i cumandamenti solu quandu IRQ hè bassu.
- L'ospite pò leghje a risposta / avvenimentu solu quandu IRQ hè altu.
2.2.3.1 Sequenze è regule permesseSequenze permesse di cumandamentu, risposta è avvenimenti
- Un cumandamentu hè sempre ricunnisciutu da una risposta, o un avvenimentu, o i dui.
- U cuntrollu di l'ospite ùn hè micca permessu di mandà un altru cumandamentu prima di ùn avè micca ricevutu una risposta à u cumandamentu precedente.
- L'avvenimenti ponu esse mandati in modu asincronu in ogni mumentu (NON interleaved in una coppia di cumanda / risposta).
- I missaghji EVENT ùn sò mai cumminati cù i missaghji RESPONSE in un quadru.
Nota: A dispunibilità di un missaghju (o RESPONSE o EVENT) hè signalatu cù l'IRQ andendu altu, da bassu. L'IRQ resta altu finu à chì tuttu u quadru di risposta o di l'avvenimentu hè lettu. Solu dopu chì u signale IRQ hè bassu, l'ospite pò mandà u prossimu cumandamentu.
2.2.4 Format di messagiu
Ogni missaghju hè codificatu in una struttura TLV cù n-bytes payload per ogni missaghju eccettu per u cumandimu SWITCH_MODE_NORMAL.Ogni TLV hè cumpostu da:
Type (T) => 1 byte
Bit [7] Tipu di messagiu
0: Missaghju di COMMAND o RESPONSE
1: missaghju EVENT
Bit[6:0]: codice d'istruzzioni
Lunghezza (L) => 2 bytes (deve esse in formatu big-endian)
Valore (V) => N byte di valore / dati di u TLV (Parametri di cummandu / Dati di risposta) basatu annantu à u campu di Lunghezza (formatu big-endian)
2.2.4.1 Split frame
U missaghju COMMAND deve esse mandatu in un quadru SPI.
I missaghji RESPONSE è EVENT ponu esse letti in parechje frames SPI, per esempiu per leghje u byte di lunghezza.I missaghji di RISPOSTA o EVENTU ponu esse letti in un quadru SPI unicu, ma ritardati da NO-CLOCK trà, per esempiu, per leghje u byte di lunghezza.
Modu di boot operativu IC - Modu di scaricamentu FW assicuratu
3.1 Introduzione
A parte di u codice di u firmware PN5190 hè almacenatu in permanenza in a ROM, mentre chì u restu di u codice è e dati sò guardati in u flash incorporatu. I dati di l'utilizatori sò guardati in flash è sò prutetti da miccanismi anti-lacrime chì assicuranu l'integrità è a dispunibilità di e dati. Per furnisce à i clienti di NXP funzioni chì sò in cunfurmità cù l'ultimi standard (EMVCo, NFC Forum, è cusì), sia u codice è i dati d'utilizatori in FLASH ponu esse aghjurnati.
L'autenticità è l'integrità di u firmware criptatu hè prutetta da a firma di chjave asimmetrica / simmetrica è u mecanismu di hash in catena inversa. U primu cumandamentu DL_SEC_WRITE cuntene l'hash di u sicondu cumandamentu è hè prutettu da una firma RSA nantu à a carica di u primu quadru. U firmware PN5190 usa a chjave publica RSA per autentificà u primu cumandamentu. L'hash chained in ogni cumanda hè utilizatu per autentificà u cumandamentu dopu, per assicurà chì u codice di firmware è e dati ùn sò micca accessu da terzu.
I carichi di i cumandamenti DL_SEC_WRITE sò criptati cù una chjave AES-128. Dopu l'autentificazione di ogni cumandamentu, u cuntenutu di u payload hè decriptatu è scrittu à flash da u firmware PN5190.
Per u firmware NXP, NXP hè incaricatu di furnisce novi aghjurnamenti di firmware sicuri, inseme cù novi dati d'Usuariu.
A prucedura d'aghjurnamentu hè dotata di un mecanismu per prutege l'autenticità, l'integrità è a cunfidenziale di u codice NXP è e dati.
Schema di pacchetti di frame basatu in HDLL hè utilizatu per tutti i cumandamenti è risposte per u modu di aghjurnamentu di firmware assicuratu.
A Sezione 2.1 furnisce u sopraview di schema di pacchettu di frame HDLL utilizatu.
PN5190 ICs supporta tramindui u protokollu di scaricamentu FW securizatu criptatu legacy è u protokollu di scaricamentu FW criptatu securizatu assistitu da u hardware, secondu a variante utilizata.
I dui tipi sò:
- Legacy protokollu di scaricamentu FW sicuru chì travaglia solu cù a versione PN5190 B0/B1 IC.
- Protokollu di scaricamentu FW sicuru assistitu da criptu di hardware chì travaglia solu cù a versione PN5190B2 IC, chì usa i blocchi di criptografia hardware in chip
I seguenti rùbbriche spieganu i cumandamenti è e risposte di u modu di scaricamentu di firmware Secure.
3.2 How to attivà u modu "Secured firmware download".
Sottu diagramma, è i passi susseguenti, mostra nantu à cumu per attivà u modu di scaricamentu di firmware Secured.Pre-condizione: PN5190 hè in u Statu di Operazione.
Scenariu principale:
- Cundizione di entrata induve u pin DWL_REQ hè utilizatu per entre in u modu "Scaricamentu di firmware assicuratu".
a. L'ospite di u dispositivu tira u pin DWL_REQ altu (validu solu se l'aghjurnamentu di firmware sicuru attraversu u pin DWL_REQ) O
b. L'ospite di u dispositivu esegue un reset duru per avvià u PN5190 - Cundizione di ingressu induve u pin DWL_REQ ùn hè micca utilizatu per entra in u modu "Scaricamentu di firmware assicuratu" (scaricamentu senza pin).
a. L'ospite di u dispositivu esegue un reset duru per avvià u PN5190
b. L'ospite di u dispositivu manda SWITCH_MODE_NORMAL (Section 4.5.4.5) per entre in u modu di applicazione normale.
c. Avà quandu IC hè in modu normale di l'applicazione, l'ospite di u Dispositivu manda SWITCH_MODE_DOWNLOAD (Section 4.5.4.9) per entre in modu di scaricamentu sicuru. - L'ospite di u dispositivu manda DL_GET_VERSION (Section 3.4.4), o DL_GET_DIE_ID (Section 3.4.6), o DL_GET_SESSION_STATE (Section 3.4.5).
- L'ospite di u dispositivu leghje a versione di hardware è firmware attuale, sessione, Die-id da u dispusitivu.
a. L'ospite di u dispositivu verifica u statutu di a sessione se l'ultima scaricazione hè stata completata
b. L'ospite di u dispositivu applica e regule di verificazione di a versione per decide di inizià a scaricazione o di esce da u scaricamentu. - L'ospite di u dispositivu carica da a file u codice binariu firmware per esse scaricatu
- L'ospite di u dispositivu furnisce un primu cumandamentu DL_SEC_WRITE (Section 3.4.8) chì cuntene:
a. A versione di u novu firmware,
b. A 16-byte nonce di valori arbitrarii utilizati per l'obfuscazione di chjave di criptografia
c. Un valore digest di u quadru prossimu,
d. A firma digitale di u quadru stessu - L'ospite di u dispositivu carica a sequenza di protokollu di scaricamentu sicuru à u PN5190 cù cumandamenti DL_SEC_WRITE (Section 3.4.8)
- Quandu l'ultimu cumandamentu DL_SEC_WRITE (Section 3.4.8) hè statu mandatu, l'ospite di u dispositivu eseguisce u cumandamentu DL_CHECK_INTEGRITY (Section 3.4.7) per verificà se i ricordi sò stati scritti bè.
- L'ospite di u dispositivu leghje a nova versione di firmware è verifica u statutu di a sessione s'ellu hè chjusu per rapportà à a capa superiore
- L'ospite di u dispositivu tira u pin DWL_REQ à bassu (se u pin DWL_REQ hè utilizatu per entre in u modu di scaricamentu)
- L'ospite di u dispositivu esegue un reset duru (permutà u pin VEN) nantu à u dispusitivu per riavvià u PN5190
Post-condizione: U firmware hè aghjurnatu; novu numeru di versione di firmware hè signalatu.
3.3 Firma di firmware è cuntrollu di versione
In u modu di scaricamentu di firmware PN5190, un mecanismu assicura chì solu un firmware firmatu è furnitu da NXP serà accettatu per u firmware NXP.
A seguita hè applicabile solu per u firmware NXP criptatu sicuru.
Durante una sessione di scaricamentu, una nova versione di firmware 16 bit hè mandata. Hè cumpostu di un numeru maiò è un numeru minore:
- Numeru maiò: 8 bits (MSB)
- Numeru minore: 8 bits (LSB)
U PN5190 verifica se u novu numeru di versione maiò hè più grande o uguale à l'attuale. Se no, u scaricamentu di u firmware assicuratu hè rifiutatu, è a sessione hè tenuta chjusa.
3.4 Cumandamenti HDLL per u scaricamentu criptatu legatu è l'assistenza di criptu di hardware scaricamentu criptatu
Questa sezione furnisce l'infurmazioni nantu à i cumandamenti è e risposte chì sò stati utilizati per i dui tipi di scaricamentu per u scaricamentu di firmware NXP.
3.4.1 HDLL Command OP codici
Nota: I frames di cumanda HDLL sò 4 bytes allineati. I byte di carichi utili inutilizati sò lasciati nil.
Table 1. Lista di codici OP di cumandamentu HDLL
PN5190 B0/ B1 (Download Legacy) |
PN5190 B2 (Download assistitu da criptu) |
Command Alias | Descrizzione |
0xF0 | 0xE5 | DL_RESET | Esegue un reset soft |
0xF1 | 0xE1 | DL_GET_VERSION | Ritorna i numeri di versione |
0xF2 | 0xDB | DL_GET_SESSION_STATE | Ritorna u statu di sessione attuale |
0xF4 | 0xDF | DL_GET_DIE_ID | Ritorna l'ID di die |
0xE0 | 0xE7 | DL_CHECK_INTEGRITY | Verificate è rinviate i CRC nantu à e diverse aree, è ancu i bandieri di status di passa / fallu per ognunu |
0xC0 | 0x8C | DL_SEC_WRITE | Scrive x byte in memoria partendu da l'indirizzu assolutu y |
3.4.2 Opcodes di Risposta HDLL
Nota: I frames di risposta HDLL sò 4 byte allineati. I byte di carichi utili inutilizati sò lasciati nil. Solu e risposti DL_OK ponu cuntene i valori di carica.
Table 2. Lista di codici OP di risposta HDLL
Opcode | Risposta Alias | Descrizzione |
0x00 | DL_OK | U cumandamentu hè passatu |
0x01 | DL_INVALID_ADDR | Indirizzu micca permessu |
0x0B | DL_UNKNOW_CMD | Cumanda scunnisciutu |
0x0C | DL_ABORTED_CMD | A sequenza di Chunk hè troppu grande |
0x1E | DL_ADDR_RANGE_OFL_ERROR | Indirizzu fora di u range |
0x1F | DL_BUFFER_OFL_ERROR | U buffer hè troppu chjucu |
0x20 | DL_MEM_BSY | Memoria occupata |
0x21 | DL_SIGNATURE_ERROR | Mancu di firma |
0x24 | DL_FIRMWARE_VERSION_ERROR | Versione attuale uguale o superiore |
0x28 | DL_PROTOCOL_ERROR | Errore di protocolu |
0x2A | DL_SFWU_DEGRADED | Corruzzione di dati Flash |
0x2D | PH_STATUS_DL_FIRST_CHUNK | Primu pezzu ricevutu |
0x2E | PH_STATUS_DL_NEXT_CHUNK | Aspettate u prossimu pezzu |
0xC5 | PH_STATUS_INTERNAL_ERROR_5 | Discordanza di lunghezza |
3.4.3 Cumandamentu DL_RESET
Scambiu di quadru:
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] U reset impedisce à u PN5190 di mandà u DL_STATUS_OK. Per quessa, solu u statu erronu pò esse ricevutu.
STAT hè u statu di ritornu.
3.4.4 DL_GET_VERSION cumanda
Scambiu di quadru:
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 Payload Frame of the Version CRC16: Get TheVersion payload frame of the]
Table 3. Risposta à u cumandimu GetVersion
Campu | Byte | Descrizzione |
STAT | 1 | Status |
HW_V | 2 | Versione di hardware |
RO_V | 3 | codice ROM |
MODEL_ID | 4 | ID di mudellu |
FMxV | 5-6 | Versione di firmware (aduprata per scaricà) |
RFU1-RFU2 | 7-8 | – |
I valori previsti di diversi campi di risposta è a so mappatura sò cum'è quì sottu:
Tabella 4. Valori previsti di a risposta di u cumandimu GetVersion
Tipu IC | Versione HW (hex) | Versione ROM (hex) | ID di mudellu (hex) | Versione FW (hex) |
PN5190 B0 | 0x51 | 0x02 | 0x00 | xx.aa |
PN5190 B1 | 0x52 | 0x02 | 0x00 | xx.aa |
PN5190 B2 | 0x53 | 0x03 | 0x00 | xx.aa |
3.4.5 Cumandamentu DL_GET_SESSION_STATE
Scambiu di quadru:
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] U quadru payload di a risposta GetSession hè:
Table 5. Risposta à u cumandimu GetSession
Campu | Byte | Descrizzione |
STAT | 1 | Status |
SSTA | 2 | Statu di sessione • 0x00: chjusu • 0x01: apertu • 0x02: chjusu (scaricatu micca più permessu) |
RFU | 3-4 |
3.4.6 Cumandamentu DL_GET_DIE_ID
Scambiu di quadru:
PN5190 B0/B1: [HDLL] -> [0x00 0x04 0xF4 0x00 0x00 0x00 0xD2 0xAA]
PN5190 B2: [HDLL] -> [0x00 0x04 0xDF 0x00 0x00 0x00 0xFB 0xFB] [HDLL] <- [0x00 0x14 STAT 0x00 0x00 0x00 ID0 ID1 ID2 ID3 ID4 ID5 ID6 ID7 ID8 ID9
ID10 ID11 ID12 ID13 ID14 ID15 CRC16] U quadru di carica di a risposta GetDieId hè:
Table 6. Risposta à u cumandimu GetDieId
Campu | Byte | Descrizzione |
STAT | 1 | Status |
RFU | 2-4 | |
DIEID | 5-20 | ID di u dado (16 bytes) |
3.4.7 Cumandamentu DL_CHECK_INTEGRITY
Scambiu di quadru:
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] Check In u quadru di carica di u CRC16 hè a risposta:
Table 7. Risposta à u cumandimu CheckIntegrity
Campu | Byte | Valore / Descrizzione | |
STAT | 1 | Status | |
LEN DATA | 2 | U numeru tutale di sezzioni di dati | |
CODICE LEN | 3 | U numeru tutale di sezzioni di codice | |
RFU | 4 | Riservatu | |
[CRC_INFO] | 58 | 32 bits (little-endian). Se un pocu hè stabilitu, u CRC di a sezione currispundente hè OK, altrimenti Not OK. | |
Bit | Status d'integrità di l'area | ||
[31:28] | riservatu [3] | ||
[27:23] | riservatu [1] | ||
[22] | riservatu [3] | ||
[21:20] | riservatu [1] | ||
[19] | Zona di cunfigurazione RF (PN5190 B0/B1) [2] Riservata (PN5190 B2) [3] | ||
[18] | Zona di cunfigurazione di u protocolu (PN5190 B0/B1) [2] Zona di cunfigurazione RF (PN5190 B2) [2] | ||
[17] | Riservatu (PN5190 B0/B1) [3] Zona di cunfigurazione d'utilizatori (PN5190 B2) [2] | ||
[16:6] | riservatu [3] | ||
[5:4] | Riservatu per PN5190 B0/B1 [3] Riservatu per PN5190 B2 [1] | ||
[3:0] | riservatu [1] | ||
[CRC32] | 9-136 | CRC32 di e 32 sezioni. Ogni CRC hè di 4 byte almacenati in formatu little-endian. I primi 4 byte di CRC sò di bit CRC_INFO[31], i prossimi 4 byte di CRC sò di bit CRC_INFO[30] è cusì. |
- [1] Stu bit deve esse 1 per u PN5190 per funziunà bè (cù funzioni è o scaricamentu FW criptatu).
- [2] Stu bit hè stabilitu à 1 per difettu, ma i paràmetri mudificati da l'utilizatori invalidanu u CRC. Nisun effettu nantu à a funziunalità PN5190..
- [3] Stu valore di bit, ancu s'ellu hè 0, ùn hè micca pertinente. Stu valore di bit pò esse ignoratu..
3.4.8 Cumandamentu DL_SEC_WRITE
U cumandamentu DL_SEC_WRITE hè da esse cunsideratu in u cuntestu di una sequenza di cumandamenti di scrittura sicura: u "scaricamentu di firmware assicuratu" criptatu (spessu chjamatu eSFWu).
U cumandamentu di scrittura sicura apre prima a sessione di scaricamentu è passa l'autentificazione RSA. I prossimi passanu indirizzi criptati è byte per scrive in u PN5190 Flash. Tutti, ma l'ultimu, cuntene i prossimi hash, per quessa chì informanu chì ùn sò micca l'ultimi, è unendu criptograficamente i frames di sequenza.
Altri cumandamenti (eccettu DL_RESET è DL_CHECK_INTEGRITY) ponu esse inseriti trà i cumandamenti di scrittura assicurati di una sequenza senza rompellu.
3.4.8.1 Prima cumanda DL_SEC_WRITE
Un cumandamentu di scrittura assicurata hè u primu se è solu se:
- A lunghezza di u quadru hè 312 bytes
- Nisun cumandamentu di scrittura sicura hè statu ricevutu da l'ultimu reset.
- A firma integrata hè verificata cù successu da u PN5190.
A risposta à u primu cumandamentu di u quadru seria quì sottu: [HDLL] <- [0x00 0x04 STAT 0x00 0x00 0x00 CRC16] STAT hè u statu di ritornu.
Nota: Almenu un pezzu di dati deve esse scrittu durante un eSFWu ancu s'è i dati scritti ponu esse solu un byte longu. Dunque, u primu cumandamentu cuntene sempre l'hash di u prossimu cumandamentu, postu chì ci sarà almenu dui cumandamenti.
3.4.8.2 Middle DL_SEC_WRITE cumandamenti
Un cumandamentu di scrittura assicuratu hè un "mediu" se è solu se:
- L'opcode hè cum'è descrittu in a Sezione 3.4.1 per u cumandamentu DL_SEC_WRITE.
- Un primu cumandamentu di scrittura assicurata hè statu digià ricevutu è verificatu bè prima
- Nisun reset hè accadutu da quandu riceve u primu cumandamentu di scrittura assicurata
- A lunghezza di u quadru hè uguale à a dimensione di dati + a dimensione di l'intestazione + a dimensione di l'hash: FLEN = SIZE + 6 + 32
- U digest di tuttu u quadru hè uguali à u valore di hash ricevutu in u quadru precedente
A risposta à u primu cumandamentu di u quadru seria quì sottu: [HDLL] <- [0x00 0x04 STAT 0x00 0x00 0x00 CRC16] STAT hè u statu di ritornu.
3.4.8.3 Ultimu cumandamentu DL_SEC_WRITE
Un cumandamentu di scrittura assicurata hè l'ultimu se è solu se:
- L'opcode hè cum'è descrittu in a Sezione 3.4.1 per u cumandamentu DL_SEC_WRITE.
- Un primu cumandamentu di scrittura assicurata hè statu digià ricevutu è verificatu bè prima
- Nisun reset hè accadutu da quandu riceve u primu cumandamentu di scrittura assicurata
- A lunghezza di u quadru hè uguale à a dimensione di dati + taglia di l'intestazione: FLEN = SIZE + 6
- U digest di tuttu u quadru hè uguali à u valore di hash ricevutu in u quadru precedente
A risposta à u primu cumandamentu di u quadru seria quì sottu: [HDLL] <- [0x00 0x04 STAT 0x00 0x00 0x00 CRC16] STAT hè u statu di ritornu.
Modu di u funziunamentu IC - Modu di u funziunamentu normale
4.1 Introduzione
In generale, PN5190 IC deve esse in modu normale di funziunamentu per uttene a funziunalità NFC da ellu.
Quandu PN5190 IC si avvia, hè sempre in attesa di riceve cumandamenti da un òspite per eseguisce l'operazione, salvu chì l'avvenimenti generati in PN5190 IC anu risultatu in u boot PN5190 IC.
4.2 Lista di cumandamenti sopraview
Table 8. Lista di cumandamenti PN5190
codice di cumandamentu | Nome di cumandamentu |
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 | CONFIGURE TESTBUS_DIGITAL |
0x13 | CONFIGURE_TESTBUS_ANALOG |
0x14 | CTS_ENABLE |
0x15 | CTS_CONFIGURE |
0x16 | CTS_RETRIEVE_LOG |
0x17-0x18 | RFU |
0x19 | finu à FW v2.01: RFU |
da FW v2.03 in poi: 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 | finu à FW v2.05: RFU |
da FW v2.06 in poi: GET_CRC_USER_AREA | |
0x2A | finu à FW v2.03: RFU |
da FW v2.05 in poi: CONFIGURE_MULTIPLE_TESTBUS_DIGITAL | |
0x2B-0x3F | RFU |
0x40 | ANTENNA_SELF_TEST (micca supportatu) |
0x41 | PRBS_TEST |
0x42-0x4F | RFU |
4.3 Valori di statutu di risposta
I seguenti sò i valori di u statutu di risposta, chì sò tornati cum'è parte di a risposta da PN5190 dopu chì u cumandamentu hè operatu.
Table 9. Valori di statutu di risposta PN5190
Statu di risposta | Valore di statutu di risposta | Descrizzione |
PN5190_STATUS_SUCCESS | 0x00 | Indica chì l'operazione hè finita cù successu |
PN5190_STATUS_TIMEOUT | 0x01 | Indica chì l'operazione di u cumandimu hà risultatu in timeout |
PN5190_STATUS_INTEGRITY_ERROR | 0x02 | Indica chì l'operazione di u cumandimu hà risultatu in un errore di integrità di dati RF |
PN5190_STATUS_RF_COLLISION_ERROR | 0x03 | Indica chì l'operazione di u cumandimu hà risultatu in un errore di collisione RF |
PN5190_STATUS_RFU1 | 0x04 | Riservatu |
PN5190_STATUS_INVALID_COMMAND | 0x05 | Indica chì u cumandamentu datu hè invalidu / micca implementatu |
PN5190_STATUS_RFU2 | 0x06 | Riservatu |
PN5190_STATUS_AUTH_ERROR | 0x07 | Indica chì l'autenticazione MFC hà fallutu (permissione denegata) |
PN5190_STATUS_MEMORY_ERROR | 0x08 | Indica chì l'operazione di u cumandamentu hà risultatu in un errore di prugrammazione o un errore di memoria interna |
PN5190_STATUS_RFU4 | 0x09 | Riservatu |
PN5190_STATUS_NO_RF_FIELD | 0x0A | Indica chì ùn ci hè micca o errore in a presenza di u campu RF internu (applicabile solu in u modu iniziatore / lettore) |
PN5190_STATUS_RFU5 | 0x0B | Riservatu |
PN5190_STATUS_SYNTAX_ERROR | 0x0C | Indica chì a lunghezza di frame di cumanda invalida hè ricevutu |
PN5190_STATUS_RESOURCE_ERROR | 0x0D | Indica chì un errore di risorsa interna hè accadutu |
PN5190_STATUS_RFU6 | 0x0E | Riservatu |
PN5190_STATUS_RFU7 | 0x0F | Riservatu |
PN5190_STATUS_NO_EXTERNAL_RF_FIELD | 0x10 | Indica chì ùn ci hè micca un campu RF esternu durante l'esekzione di u cumandimu (Applicabile solu in u modu di carta / destinazione) |
PN5190_STATUS_RX_TIMEOUT | 0x11 | Indica chì i dati ùn sò micca ricevuti dopu chì RFExchange hè iniziatu è RX hè timed out. |
PN5190_STATUS_USER_CANCELLED | 0x12 | Indica chì u cumandamentu attuale in prugressu hè abortutu |
PN5190_STATUS_PREVENT_STANDBY | 0x13 | Indica chì PN5190 hè impeditu per andà in modalità Standby |
PN5190_STATUS_RFU9 | 0x14 | Riservatu |
PN5190_STATUS_CLOCK_ERROR | 0x15 | Indica chì u clock à u CLIF ùn hà micca cuminciatu |
PN5190_STATUS_RFU10 | 0x16 | Riservatu |
PN5190_STATUS_PRBS_ERROR | 0x17 | Indica chì u cumandamentu PRBS hà tornatu un errore |
PN5190_STATUS_INSTR_ERROR | 0x18 | Indica chì u funziunamentu di u cumandamentu hè fallutu (pò include, l'errore in i paràmetri di l'istruzzioni, l'errore di sintassi, l'errore in l'operazione stessu, i pre-requisiti per l'istruzione ùn sò micca soddisfatti, etc.) |
PN5190_STATUS_ACCESS_DENIED | 0x19 | Indica chì l'accessu à a memoria interna hè denegatu |
PN5190_STATUS_TX_FAILURE | 0x1A | Indica chì TX over RF hè falluta |
PN5190_STATUS_NO_ANTENNA | 0x1B | Indica chì nisuna antenna hè cunnessa / prisente |
PN5190_STATUS_TXLDO_ERROR | 0x1C | Indica chì ci hè un errore in TXLDO quandu u VUP ùn hè micca dispunibule è RF hè attivatu. |
PN5190_STATUS_RFCFG_NOT_APPLIED | 0x1D | Indica chì a cunfigurazione RF ùn hè micca caricata quandu RF hè attivatu |
PN5190_STATUS_TIMEOUT_WITH_EMD_ERROR | 0x1E | finu à FW 2.01: micca previstu |
da FW 2.03 in poi: Indica chì durante u scambiu cù LOG ENABLE BIT hè stallatu in u registru FeliCa EMD, FeliCa EMD Error hè statu osservatu |
||
PN5190_STATUS_INTERNAL_ERROR | 0x7F | Indica chì l'operazione NVM hà fiascatu |
PN5190_STATUS_SUCCSES_CHAINING | 0xAF | Indica chì, in più, i dati sò in attesa di leghje |
4.4 Avvenimenti finitiview
Ci hè duie manere chì l'avvenimenti sò notificati à l'ospite.
4.4.1 Avvenimenti nurmali nantu à u pin IRQ
Questi avvenimenti sò categurie cum'è quì sottu:
- Sempre attivatu - L'ospite hè sempre notificatu
- Controlled by Host - L'host hè notificatu, se u rispettivu bit Event Enable hè stabilitu in u registru (EVENT_ENABLE (01h)).
L'interruzioni di livellu bassu da l'IP periferiche, cumpresu u CLIF, seranu trattate cumpletamente in u firmware è l'ospite sò notificati solu di l'avvenimenti elencati in a sezione di l'avvenimenti.
Firmware implementa dui registri di l'avvenimenti cum'è registri RAM chì ponu esse scritti / Leghjite cù a Sezione 4.5.1.1 / Sezione 4.5.1.5 cumandamenti.
U registru EVENT_ENABLE (0x01) => Habilita notifiche specifiche / tutte l'avvenimenti.
U registru EVENT_STATUS (0x02) => Part of the Event message payload.
L'avvenimenti seranu sbulicati da l'ospite una volta chì u messagiu di l'avvenimentu hè lettu da l'ospite.
L'avvenimenti sò di natura asincrona è sò notificati à l'ospite, se sò attivati in u registru EVENT_ENABLE.
A seguita hè a lista di l'avvenimenti chì saranu dispunibili per l'ospitu cum'è parte di u messagiu di l'avvenimentu.
Tabella 10. Avvenimenti PN5190 (cuntenutu di EVENT_STATUS)
Bit - Range | Campu [1] | Sempre Abilitatu (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 |
- Nota chì ùn ci sò micca dui avvenimenti clubbed eccettu in casu d'errore. In casu di errori durante l'operazione, l'avvenimentu funziunale (per esempiu BOOT_EVENT, AUTOCALL_EVENT etc.) è GENERAL_ERROR_EVENT seranu stabiliti.
- Questu avvenimentu serà automaticamente disattivatu dopu chì hè publicatu à l'ospite. L'ospitu duverebbe attivà di novu questi avvenimenti se vole avè infurmatu questi avvenimenti.
4.4.1.1 furmati di missaghju Event
U furmatu di u messagiu di l'avvenimentu differisce secondu l'occurrence di un avvenimentu è u statu diversu di u PN5190.
L'ospite deve leghje tag (T) è a durata di u missaghju (L) è poi leghje u numeru currispundente di bytes cum'è valore (V) di l'avvenimenti.
In generale, u missaghju di l'avvenimentu (vede a Figura 12) cuntene l'EVENT_STATUS cum'è definitu in a Tabella 11 è i dati di l'avvenimentu currispondenu à u bit di l'avvenimentu rispettivu stabilitu in EVENT_STATUS.
Nota:
Per certi avvenimenti, a carica utile ùn esiste micca. Per esempiu, Se TIMER0_EVENT hè attivatu, solu EVENT_STATUS hè furnitu cum'è parte di u messagiu di l'avvenimentu.
A Tabella 11 detalla ancu se i dati di l'avvenimentu sò prisenti per l'avvenimentu currispundenti in u messagiu di l'avvenimentu.GENERAL_ERROR_EVENT pò ancu accade cù altri avvenimenti.
In questu scenariu, u messagiu di l'avvenimentu (vede a Figura 13) cuntene l'EVENT_STATUS cum'è definitu in a Tabella 11 è GENERAL_ERROR_STATUS_DATA cum'è definitu in a Tabella 14 è dopu i dati di l'avvenimentu currispondenu à u bit di avvenimentu rispettivu stabilitu in EVENT_STATUS cum'è definitu in a Tabella 11.Nota:
Solu dopu à u BOOT_EVENT o dopu à POR, STANDBY, ULPCD, l'ospite hà da pudè travaglià in u modu di operazione normale emettendu i cumandamenti elencati sopra.
In casu di abbandunà un cumandamentu esistente in esecuzione, solu dopu à IDLE_EVENT, l'ospitu puderà travaglià in u modu di operazione normale emettendu i cumandamenti elencati sopra.
4.4.1.2 Differenti definizione di statutu EVENT
4.4.1.2.1 Definizioni di bit per EVENT_STATUS
Table 11. Definizioni per i bit EVENT_STATUS
Bit (à - da) | Avvenimentu | Descrizzione | Dati di l'avvenimentu di l'avvenimentu currispundente (s'ellu ci hè) |
|
31 | 12 | RFU | Riservatu | |
11 | 11 | CTS_EVENT | Stu bit hè stabilitu, quandu l'avvenimentu CTS hè generatu. | Tabella 86 |
10 | 10 | IDLE_EVENT | Stu bit hè stabilitu, quandu u cumandamentu in corso hè annullatu per l'emissione di u cumandimu SWITCH_MODE_NORMAL. | Nisun dati di l'avvenimentu |
9 | 9 | LPCD_CALIBRATION_DONE_ EVENTU |
Stu bit hè stabilitu quandu l'avvenimentu di calibrazione LPCD hè generatu. | Tabella 16 |
8 | 8 | LPCD_EVENT | Stu bit hè stabilitu, quandu l'avvenimentu LPCD hè generatu. | Tabella 15 |
7 | 7 | AUTOCOLL_EVENT | Stu bit hè stabilitu, quandu l'operazione AUTOCOLL hè cumpleta. | Tabella 52 |
6 | 6 | TIMER0_EVENT | Stu bit hè stabilitu, quandu l'avvenimentu TIMER0 hè accadutu. | Nisun dati di l'avvenimentu |
5 | 5 | TX_OVERCURRENT_ERROR_ EVENTU |
Stu bit hè stabilitu, quandu u currente nantu à u driver TX hè più altu ch'è u limitu definitu in l'EEPROM. In questa cundizione, u campu hè automaticamente OFF prima di a notificazione à l'ospite. Per piacè riferite à a Sezione 4.4.2.2. | Nisun dati di l'avvenimentu |
4 | 4 | RFON_DET_EVENT | Stu bit hè stabilitu, quandu u campu RF esternu hè rilevatu. | Nisun dati di l'avvenimentu |
3 | 3 | RFOFF_DET_EVENT | Stu bit hè stabilitu, quandu u campu RF esternu esistente sparisce. | Nisun dati di l'avvenimentu |
2 | 2 | STANDBY_PREV_EVENT | Stu bit hè stabilitu, quandu u standby hè impeditu per via di e cundizioni di prevenzione | Tabella 13 |
1 | 1 | GENERAL_ERROR_EVENT | Stu bit hè stabilitu, quandu esiste ogni cundizione d'errore generale | Tabella 14 |
0 | 0 | BOOT_EVENT | Stu bit hè stabilitu, quandu PN5190 hè avviatu cù POR / Standby | Tabella 12 |
4.4.1.2.2 Definizioni di bit per BOOT_STATUS_DATA
Table 12. Definizioni per i bit BOOT_STATUS_DATA
Pocu à | Bit From | Statu di boot | Boot mutivu per via di |
31 | 27 | RFU | Riservatu |
26 | 26 | ULP_STANDBY | Motivu di l'avviamentu per via di l'uscita da ULP_STANDBY. |
25 | 23 | RFU | Riservatu |
22 | 22 | BOOT_ RX_ULPDET | RX ULPDET hà risultatu in u boot in modalità ULP-Standby |
21 | 21 | RFU | Riservatu |
20 | 20 | BOOT_SPI | Motivu di avviamentu per via di u signale SPI_NTS chì hè statu tiratu bassu |
19 | 17 | RFU | Riservatu |
16 | 16 | BOOT_GPIO3 | Ragione di Bootup per via di a transizione di GPIO3 da bassa à alta. |
15 | 15 | BOOT_GPIO2 | Ragione di Bootup per via di a transizione di GPIO2 da bassa à alta. |
14 | 14 | BOOT_GPIO1 | Ragione di Bootup per via di a transizione di GPIO1 da bassa à alta. |
13 | 13 | BOOT_GPIO0 | Ragione di Bootup per via di a transizione di GPIO0 da bassa à alta. |
12 | 12 | BOOT_LPDET | Motivu di avviamentu per via di a presenza esterna di u campu RF durante STANDBY/SUSPEND |
11 | 11 | RFU | Riservatu |
10 | 8 | RFU | Riservatu |
7 | 7 | BOOT_SOFT_RESET | Motivu di l'avvio per via di un reset soft di IC |
6 | 6 | BOOT_VDDIO_LOSS | Motivo di avvio per via di perdita di VDDIO. Vede a Sezione 4.4.2.3 |
5 | 5 | BOOT_VDDIO_START | Motivu di Bootup si STANDBY intrutu cù VDDIO LOSS. Vede a Sezione 4.4.2.3 |
4 | 4 | BOOT_WUC | Motivo di avvio dovuto a un contatore di sveglia trascorso durante l'operazione STANDBY. |
3 | 3 | BOOT_TEMP | A causa di l'iniziu per a temperatura di l'IC hè più di u limitu di limitu cunfiguratu. Per piacè riferite à a Sezione 4.4.2.1 |
2 | 2 | BOOT_WDG | Motivo di avvio per via di reset di watchdog |
1 | 1 | RFU | Riservatu |
0 | 0 | BOOT_POR | Motivu di l'avvio dovutu à u reset di u putere |
4.4.1.2.3 Definizioni di bit per STANDBY_PREV_STATUS_DATA
Table 13. Definizioni per i bit STANDBY_PREV_STATUS_DATA
Pocu à | Bit From | Prevenzione in standby | Standby impeditu per via di |
31 | 26 | RFU | RISERVATA |
25 | 25 | RFU | RISERVATA |
24 | 24 | PREV_TEMP | A temperatura di u funziunamentu di l'IC hè fora di u sogliu |
23 | 23 | RFU | RISERVATA |
22 | 22 | PREV_HOSTCOMM | Comunicazione di l'interfaccia di l'ospite |
21 | 21 | PREV_SPI | U signalu SPI_NTS hè abbassatu |
20 | 18 | RFU | RISERVATA |
17 | 17 | PREV_GPIO3 | Le signal GPIO3 passe de basse à haute |
16 | 16 | PREV_GPIO2 | Le signal GPIO2 passe de basse à haute |
15 | 15 | PREV_GPIO1 | Le signal GPIO1 passe de basse à haute |
14 | 14 | PREV_GPIO0 | Le signal GPIO0 passe de basse à haute |
13 | 13 | PREV_WUC | U contatore di sveglia hè passatu |
12 | 12 | PREV_LPDET | Rilevazione di bassa putenza. Si verifica quandu un signalu RF esternu hè rilevatu in u prucessu di andà in standby. |
11 | 11 | PREV_RX_ULPDET | Rilevazione di putenza ultra-bassa RX. Si verifica quandu u signale RF hè rilevatu in u prucessu di andà in ULP_STANDBY. |
10 | 10 | RFU | RISERVATA |
9 | 5 | RFU | RISERVATA |
4 | 4 | RFU | RISERVATA |
3 | 3 | RFU | RISERVATA |
2 | 2 | RFU | RISERVATA |
1 | 1 | RFU | RISERVATA |
0 | 0 | RFU | RISERVATA |
4.4.1.2.4 Definizioni di bit per GENERAL_ERROR_STATUS_DATA
Table 14. Definizioni per i bit GENERAL_ERROR_STATUS_DATA
Pocu à | Pocu da | Statu di errore | Descrizzione |
31 | 6 | RFU | Riservatu |
5 | 5 | XTAL_START_ERROR | L'iniziu di XTAL hà fiascatu durante u boot |
4 | 4 | SYS_TRIM_RECOVERY_ERROR | L'errore di memoria di trim di u sistema internu hè accadutu, ma a ricuperazione hè falluta. U sistema funziona in modu downgraded. |
3 | 3 | SYS_TRIM_RECOVERY_SUCCESS | L'errore di memoria di trim di u sistema internu hè accadutu, è a ricuperazione hè stata successu. L'ospite deve esse riavviatu di u PN5190 per chì a ricuperazione sia efficace. |
2 | 2 | TXLDO_ERROR | Errore TXLDO |
1 | 1 | CLOCK_ERROR | Errore di Clock |
0 | 0 | GPADC_ERROR | errore ADC |
4.4.1.2.5 Definizioni di bit per LPCD_STATUS_DATA
Table 15. Definizioni per i bytes LPCD_STATUS_DATA
Pocu à | Bit From | L'applicabilità di i bit di statutu secondu l'operazione sottostante di LPCD o ULPCD | A descrizzione per u bit currispundente hè impostata in byte di statutu. | ||
LPCD | ULPCD | ||||
31 | 7 | RFU | Riservatu | ||
6 | 6 | Abort_HIF | Y | N | Abortu per via di l'attività HIF |
5 | 5 | Errore CLKDET | N | Y | Aborted due to CLKDET error occurred |
4 | 4 | Timeout XTAL | N | Y | Aborted due to XTAL Timeout hè accadutu |
3 | 3 | VDDPA LDO Overcurrent | N | Y | Aborted due to VDDPA LDO overcurrent occurred |
2 | 2 | Campu RF esternu | Y | Y | Abortu per via di u campu RF esternu |
1 | 1 | GPIO3 Abort | N | Y | Abortu per via di u cambiamentu di livellu GPIO3 |
0 | 0 | Carta rilevata | Y | Y | A carta hè rilevata |
4.4.1.2.6 Definizioni di bit per i dati di statutu LPCD_CALIBRATION_DONE
Table 16. Definizioni per LPCD_CALIBRATION_DONE bytes di dati di statutu per ULPCD
Pocu à | Bit From | Status di LPCD_CALIBRATION DONE avvenimentu | A descrizzione per u bit currispundente hè impostata in byte di statutu. |
31 | 11 | Riservatu | |
10 | 0 | Valore di riferimentu da a calibrazione ULPCD | U valore RSSI misuratu durante a calibrazione ULPCD chì hè utilizatu cum'è riferimentu durante ULPCD |
Table 17. Definizioni per LPCD_CALIBRATION_DONE status data bytes per LPCD
Pocu à | Bit From | L'applicabilità di i bit di statutu secondu l'operazione sottostante di LPCD o ULPCD | A descrizzione per u bit currispundente hè impostata in byte di statutu. | ||
2 | 2 | Campu RF esternu | Y | Y | Abortu per via di u campu RF esternu |
1 | 1 | GPIO3 Abort | N | Y | Abortu per via di u cambiamentu di livellu GPIO3 |
0 | 0 | Carta rilevata | Y | Y | A carta hè rilevata |
4.4.2 Gestione di diversi scenarii di boot
U PN5190 IC gestisce diverse cundizioni d'errore ligati à i paràmetri IC cum'è quì sottu.
4.4.2.1 Gestione di u scenariu di sopra temperatura quandu PN5190 hè in opera
Ogni volta chì a temperatura interna di u PN5190 IC ghjunghje à u valore di soglia cum'è cunfiguratu in u campu EEPROM TEMP_WARNING [2], l'IC entra in standby. È in cunseguenza, se u campu EEPROM ENABLE_GPIO0_ON_OVERTEMP [2] hè cunfiguratu per elevà una notificazione à l'ospite, allora GPIO0 serà tiratu altu per notificà l'IC sopra a temperatura.
Quandu è quandu a temperatura di l'IC scende sottu à u valore di soglia cum'è cunfiguratu in u campu EEPROM TEMP_WARNING [2], l'IC s'avviarà cù BOOT_EVENT cum'è in a Tabella 11 è u bit di statutu di boot BOOT_TEMP hè stabilitu cum'è in a Tabella 12 è GPIO0 serà abbassatu.
4.4.2.2 Trattamentu di a sovracorrente
Se PN5190 IC rileva una condizione di sovracorrente, l'IC spegne l'alimentazione RF e invia TX_OVERCURRENT_ERROR_EVENT cum'è in a Tabella 11.
A durata di a cundizione di overcurrent pò esse cuntrullata mudificà u campu EEPROM TXLDO_CONFIG [2].
Per infurmazione nantu à IC sopra u sogliu attuale, riferite à u documentu [2].
Nota:
Se ci sò altri avvenimenti pendenti o risposte, seranu mandati à l'ospiti.
4.4.2.3 Perdita di VDDIO durante u funziunamentu
Se PN5190 IC scontra chì ùn ci hè micca VDDIO (perdita di VDDIO), l'IC entra in standby.
L'IC boots solu quandu u VDDIO hè dispunibule, cù BOOT_EVENT cum'è in a Tabella 11 è u bit di status di boot BOOT_VDDIO_START hè stabilitu cum'è in a Tabella 12.
Per infurmazione nantu à e caratteristiche statiche PN5190 IC, riferite à u documentu [2].
4.4.3 Trattamentu di scenarii di abortu
U PN5190 IC hà un supportu di aborting the current executing commands and the behavior of the PN5190 IC, when such abort command such as Section 4.5.4.5.2 hè mandatu à PN5190 IC hè cum'è mostra in Table 18.
Nota:
Quandu u PN5190 IC hè in u modu ULPCD è ULP-Standby, ùn pò micca esse annullatu sia mandendu una Sezione 4.5.4.5.2 O cumincendu una transazzione SPI (tirannu bassu nantu à u signale SPI_NTS).
Tabella 18. Risposta di l'avvenimentu previstu quandu i cumandamenti diffirenti terminate cù a Sezione 4.5.4.5.2
Cumandamenti | Cumportamentu quandu u cumandamentu di u Modu di Cambia Normale hè mandatu |
Tutti i cumandamenti induve a putenza bassa ùn hè micca inserita | EVENT_STAUS hè impostatu à "IDLE_EVENT" |
Cambia Modu LPCD | EVENT_STATUS hè impostatu à "LPCD_EVENT" cù "LPCD_ STATUS_DATA" chì indica i bit di statu cum'è "Abort_HIF" |
Cambia Modu Standby | EVENT_STAUS hè impostatu à "BOOT_EVENT" cù "BOOT_ STATUS_DATA" chì indica i bit "BOOT_SPI" |
Cambia Modu Autocoll (senza modalità autònuma, modalità autonoma cù standby è modalità autonoma senza standby) | EVENT_STAUS hè impostatu à "AUTOCOLL_EVENT" cù STATUS_DATA bits chì indicanu chì u cumandimu hè statu annullatu da l'utilizatori. |
4.5 Modalità normale Funzionamentu Instruction Details
4.5.1 Registru Manipulazione
Istruzzioni di sta sezione sò usati per accede à i registri logici di PN5190.
4.5.1.1 WRITE_REGISTER
Questa struzzione hè aduprata per scrive un valore di 32 bit (little-endian) à un registru logicu.
4.5.1.1.1 Cundizioni
L'indirizzu di u registru deve esiste, è u registru deve avè l'attributu READ-WRITE o WRITE-ONLY.
4.5.1.1.2 Cumandamentu
Table 19. WRITE_REGISTER valore di cumanda Scrivite un valore 32-Bit à un registru.
Campu Payload | Lunghezza | Valore / Descrizzione |
Registru Indirizzu | 1 byte | Indirizzu di u registru. |
Table 19. WRITE_REGISTER valore di cumandamentu ... cuntinuà
Scrivite un valore 32-Bit à un registru.
Campu Payload | Lunghezza | Valore / Descrizzione |
Valore | 4 Byte | U valore di u registru 32-Bit chì deve esse scrittu. (Little-Endian) |
4.5.1.1.3 Risposta
Table 20. WRITE_REGISTER valore di risposta
Campu Payload | Lunghezza | Valore / Descrizzione |
Status | 1 byte | Status di l'operazione [Tabella 9]. I valori previsti sò quì sottu: |
PN5190_STATUS_SUCCESS | ||
PN5190_STATUS_INSTR_ERROR |
4.5.1.1.4 Avvenimentu
Ùn ci hè micca avvenimenti per questu cumandamentu.
4.5.1.2 WRITE_REGISTER_OR_MASK
Questa struzzione hè aduprata per mudificà u cuntenutu di u registru utilizendu una operazione logica OR. U cuntenutu di u registru hè lettu è una operazione logica OR hè realizata cù a maschera furnita. U cuntenutu mudificatu hè scrittu torna à u registru.
4.5.1.2.1 Cundizioni
L'indirizzu di u registru deve esiste, è u registru deve avè l'attributu READ-WRITE.
4.5.1.2.2 Cumandamentu
Table 21. WRITE_REGISTER_OR_MASK valore di cumanda Eseguite una operazione logica OR nantu à un registru utilizendu a maschera furnita.
U campu di carica | Lunghezza | Valore / descrizzione |
Registru Indirizzu | 1 byte | Indirizzu di u registru. |
Mascara | 4 Byte | Bitmask utilizatu cum'è operandu per l'operazione logica OR. (Little-Endian) |
4.5.1.2.3 Risposta
Table 22. Valore di risposta WRITE_REGISTER_OR_MASK
Campu Payload | Lunghezza | Valore / Descrizzione |
Status | 1 byte | Status di l'operazione [Tabella 9]. I valori previsti sò quì sottu: |
PN5190_STATUS_SUCCESS | ||
PN5190_STATUS_INSTR_ERROR |
4.5.1.2.4 Avvenimentu
Ùn ci hè micca avvenimenti per questu cumandamentu.
4.5.1.3 WRITE_REGISTER_AND_MASK
Questa struzzione hè aduprata per mudificà u cuntenutu di u registru utilizendu una operazione logica AND. U cuntenutu di u registru hè lettu è una operazione logica AND hè realizata cù a maschera furnita. U cuntenutu mudificatu hè scrittu torna à u registru.
4.5.1.3.1 Cundizioni
L'indirizzu di u registru deve esiste, è u registru deve avè l'attributu READ-WRITE.
4.5.1.3.2 Cumandamentu
Table 23. WRITE_REGISTER_AND_MASK valore di cumanda Eseguite una operazione logica AND nantu à un registru utilizendu a maschera furnita.
U campu di carica | Lunghezza | Valore / descrizzione |
Registru Indirizzu | 1 byte | Indirizzu di u registru. |
Mascara | 4 Byte | Bitmask utilizatu cum'è operandu per l'operazione logica AND. (Little-endian) |
4.5.1.3.3 Risposta
Table 24. Valore di risposta WRITE_REGISTER_AND_MASK
Campu Payload | Lunghezza | Valore / Descrizzione |
Status | 1 byte | Status di l'operazione [Tabella 9]. I valori previsti sò quì sottu: |
PN5190_STATUS_SUCCESS | ||
PN5190_STATUS_INSTR_ERROR |
4.5.1.3.4 Avvenimentu
Ùn ci hè micca avvenimenti per questu cumandamentu.
4.5.1.4 WRITE_REGISTER_MULTIPLE
Sta funziunalità d'istruzzioni hè simile à a Section 4.5.1.1, Section 4.5.1.2, Section 4.5.1.3, cù a pussibilità di cumminà. In fatti, pigghia un array di set di valori di tipu di registru è eseguisce l'azzione adatta. U tipu riflette l'azzione chì hè o registru di scrittura, operazione OR logica nantu à un registru o operazione logica AND nantu à un registru.
4.5.1.4.1 Cundizioni
L'indirizzu logicu rispettivu di u registru in un settore deve esse.
L'attributu d'accessu à u registru deve permette l'esecuzione di l'azzione necessaria (tipu):
- Azzione di scrittura (0x01): attributu READ-WRITE o WRITE-ONLY
- OR azzione di maschera (0x02): attributu READ-WRITE
- E azzione maschera (0x03): attributu READ-WRITE
A dimensione di l'array "Set" deve esse in a gamma da 1 à 43, inclusi.
U campu "Tipu" deve esse in a gamma di 1 - 3, inclusi
4.5.1.4.2 Cumandamentu
Table 25. WRITE_REGISTER_MULTIPLE valore di cumanda Eseguite una operazione di registru di scrittura utilizendu un settore di coppie Register-Value.
U campu di carica | Lunghezza | Valore / descrizzione | |||
Set [1…n] | 6 Byte | Registru Indirizzu | 1 byte | Indirizzu logicu di u registru. | |
Tipu | 1 byte | 0x1 | Scrivite u Registru | ||
0x2 | Scrivite Registru O Mascara | ||||
0x3 | Scrivite Registrate è Mascara | ||||
Valore | 4 Byte | 32 Bite registru valore chì deve esse scrittu, o bitmask usatu pi lu funziunamentu logicu. (Little-Endian) |
Nota: In casu d'eccezzioni, l'operazione ùn hè micca annullata, vale à dì i registri chì sò stati mudificati finu à l'eccezzioni restanu in u statu mudificatu. L'ospite deve piglià l'azzioni adattate per ricuperà à un statu definitu.
4.5.1.4.3 Risposta
Table 26. WRITE_REGISTER_MULTIPLE valore di risposta
Campu Payload | Lunghezza | Valore / Descrizzione |
Status | 1 byte | Status di l'operazione [Tabella 9]. I valori previsti sò quì sottu: |
PN5190_STATUS_SUCCESS | ||
PN5190_STATUS_INSTR_ERROR |
4.5.1.4.4 Avvenimentu
Ùn ci hè micca avvenimenti per questu cumandamentu.
4.5.1.5 READ_REGISTER
Questa struzzione hè aduprata per leghje u cuntenutu di un registru logicu. U cuntenutu hè presente in a risposta, cum'è valore di 4 byte in formatu little-endian.
4.5.1.5.1 Cundizioni
L'indirizzu di u registru logicu deve esse. L'attributu d'accessu di u registru deve esse READ-WRITE o READ-ONLY.
4.5.1.5.2 Cumandamentu
Table 27. Valore di cumandamentu READ_REGISTER
Leghjite u cuntenutu di un registru.
Campu Payload | Lunghezza | Valore / Descrizzione |
Registru Indirizzu | 1 byte | Indirizzu di u registru logicu |
4.5.1.5.3 Risposta
Table 28. Valore di risposta READ_REGISTER
Campu Payload | Lunghezza | Valore / Descrizzione |
Status | 1 byte | Status di l'operazione [Tabella 9]. I valori previsti sò quì sottu: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR (Ùn ci hè più dati) | ||
Registrate u valore | 4 Byte | U valore di u registru di 32 bit chì hè statu lettu. (Little-Endian) |
4.5.1.5.4 Avvenimentu
Ùn ci hè micca avvenimenti per questu cumandamentu.
4.5.1.6 READ_REGISTER_MULTIPLE
Questa struzzione hè aduprata per leghje parechji registri logichi à una volta. U risultatu (cuntenutu di ogni registru) hè furnitu in a risposta à l'istruzzioni. L'indirizzu di u registru stessu ùn hè micca inclusu in a risposta. L'ordine di u cuntenutu di u registru in a risposta currisponde à l'ordine di l'indirizzi di u registru in l'istruzzioni.
4.5.1.6.1 Cundizioni
Tutti l'indirizzi di registru in l'istruzzioni devenu esse. L'attributu di accessu per ogni registru deve esse READ-WRITE o READ-ONLY. A dimensione di l'array "Register Address" deve esse in a gamma da 1 à 18, inclusi.
4.5.1.6.2 Cumandamentu
Tabella 29. Valore di cumanda READ_REGISTER_MULTIPLE Eseguite una operazione di registru di lettura nantu à un settore di registri.
Campu Payload | Lunghezza | Valore / Descrizzione |
Indirizzu di registrazione[1…n] | 1 byte | Registru Indirizzu |
4.5.1.6.3 Risposta
Table 30. READ_REGISTER_MULTIPLE valore di risposta
U campu di carica | Lunghezza | Valore / descrizzione | ||
Status | 1 byte | Status di l'operazione [Tabella 9]. I valori previsti sò quì sottu: | ||
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR (Ùn ci hè più dati) | ||||
Register Value [1…n] | 4 Byte | Valore | 4 Byte | U valore di u registru di 32 bit chì hè statu lettu (little-endian). |
4.5.1.6.4 Avvenimentu
Ùn ci hè micca avvenimenti per questu cumandamentu.
4.5.2 Manipulazione E2PROM
L'area accessibile in E2PROM hè cum'è per a mappa EEPROM è a dimensione indirizzable.
Nota:
1. In ogni locu chì l'"E2PROM Address" hè mintuatu in l'istruzzioni sottu, deve riferite à a dimensione di l'area EEPROM addressable.
4.5.2.1 WRITE_E2PROM
Questa struzzione hè aduprata per scrive unu o più valori à E2PROM. U campu 'Valuri' cuntene i dati da esse scritti à E2PROM partendu da l'indirizzu datu da u campu 'Address E2PROM'. I dati sò scritti in ordine sequenziale.
Nota:
Nota chì questu hè un cumandamentu di bloccu, questu significa chì l'NFC FE hè bluccatu durante l'operazione di scrittura. Questu pò piglià parechji millisecondi.
4.5.2.1.1 Cundizioni
U campu "E2PROM Address" deve esse in a gamma cum'è [2]. U numeru di byte in u campu "Valuri" deve esse in a gamma da 1 à 1024 (0x0400), inclusive. L'operazione di scrittura ùn deve micca andà oltre l'indirizzu EEPROM cum'è citatu in [2]. A risposta d'errore deve esse mandata à l'ospite se l'indirizzu supera u spaziu di l'indirizzu EEPROM cum'è in [2].
4.5.2.1.2 Cumandamentu
Table 31. Valore di cumanda WRITE_E2PROM Scrivite i valori dati in sequenza à E2PROM.
U campu di carica | Lunghezza | Valore / descrizzione |
Indirizzu E2PROM | 2 byte | Indirizzu in EEPROM da quale l'operazione di scrittura deve principià. (Little-Endian) |
I valori | 1 - 1024 Bytes | Valori chì deve esse scrittu à E2PROM in ordine sequenziale. |
4.5.2.1.3 Risposta
Table 32. Valore di risposta WRITE_EEPROM
Campu Payload | Lunghezza | Valore / Descrizzione |
Status | 1 byte | Status di l'operazione [Tabella 9]. I valori previsti sò quì sottu: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR PN5190_STATUS_MEMORY_ERROR |
4.5.2.1.4 Avvenimentu
Ùn ci hè micca avvenimenti per questu cumandamentu.
4.5.2.2 READ_E2PROM
Questa struzzione hè aduprata per leghje e dati da l'area di memoria E2PROM. U campu "E2PROM Address" indica l'indirizzu iniziale di l'operazione di lettura. A risposta cuntene i dati letti da E2PROM.
4.5.2.2.1 Cundizioni
U campu "E2PROM Address" deve esse in un intervallu validu.
U campu "Number of bytes" deve esse in a gamma da 1 à 256, inclusi.
L'operazione di lettura ùn deve micca andà oltre l'ultimu indirizzu EEPROM accessibile.
A risposta d'errore deve esse mandata à l'ospite, se l'indirizzu supera u spaziu di l'indirizzu EEPROM.
4.5.2.2.2 Cumandamentu
Tabella 33. Valore di cumanda READ_E2PROM Leghjite i valori da E2PROM in sequenza.
U campu di carica | Lunghezza | Valore / descrizzione |
Indirizzu E2PROM | 2 byte | Indirizzu in E2PROM da quale l'operazione di lettura deve principià. (Little-Endian) |
Numero di Bytes | 2 byte | Numaru di bytes da leghje. (Little-Endian) |
4.5.2.2.3 Risposta
Table 34. Valore di risposta READ_E2PROM
Campu Payload | Lunghezza | Valore / Descrizzione |
Status | 1 byte | Status di l'operazione [Tabella 9]. I valori previsti sò quì sottu: |
PN5190_STATUS_SUCCESS | ||
PN5190_STATUS_INSTR_ERROR (Ùn ci hè più dati) | ||
I valori | 1 - 1024 Bytes | I valori chì sò stati letti in ordine sequenziale. |
4.5.2.2.4 Avvenimentu
Ùn ci hè micca avvenimenti per questu cumandamentu.
4.5.2.3 GET_CRC_USER_AREA
Questa struzzione hè aduprata per calculà u CRC per l'area cumpleta di cunfigurazione di l'utilizatori, cumprese l'area di protokollu di PN5190 IC.
4.5.2.3.1 Cumandamentu
Table 35. Valore di cumanda GET_CRC_USER_AREA
Leghjite u CRC di l'area di cunfigurazione di l'utilizatori cumprese l'area di protocolu.
Campu Payload | Lunghezza | Valore / Descrizzione |
– | – | Nisuna dati in carica |
4.5.2.3.2 Risposta
Table 36. Valore di risposta GET_CRC_USER_AREA
U campu di carica | Lunghezza | Valore / descrizzione |
Status | 1 byte | Status di l'operazione [Tabella 9]. I valori previsti sò quì sottu: |
PN5190_STATUS_SUCCESS | ||
PN5190_STATUS_INSTR_ERROR (Ùn ci hè più dati) | ||
I valori | 4 Byte | 4 bytes di dati CRC in formatu little-endian. |
4.5.2.3.3 Avvenimentu
Ùn ci hè micca avvenimenti per questu cumandamentu.
4.5.3 Manipulazione di dati CLIF
L'istruzzioni descritte in questa sezione descrizanu i cumandamenti per a trasmissione è a ricezione RF.
4.5.3.1 SCHANGE_RF_DATA
A funzione di scambiu RF realiza una trasmissione di e dati TX è aspetta per a ricezione di qualsiasi dati RX.
A funzione torna in casu di una ricezione (o sbagliata o curretta) o un timeout accadutu. U timer hè cuminciatu cù a FINE di TRASMISSIONE è si ferma cù u START di RECEPTION. U valore di timeout preconfiguratu in EEPROM serà utilizatu in casu chì u timeout ùn hè micca cunfiguratu prima di l'esekzione di u cumandamentu di Exchange.
Se transceiver_state hè
- in IDLE u modu TRANSCEIVE hè intrutu.
- In WAIT_RECEIVE, u statu di transceiver hè resettatu à TRANSCEIVE MODE in casu di u bit iniziatore hè stabilitu
- In WAIT_TRANSMIT, u statu di transceiver hè resettatu à TRANSCEIVE MODE in casu chì u bit iniziatore ùn hè micca stabilitu
U campu "Number of valid bits in last Byte" indica a lunghezza esatta di dati da trasmette.
4.5.3.1.1 Cundizioni
A dimensione di u campu "TX Data" deve esse in a gamma da 0 à 1024, inclusi.
U campu "Number of valid bits in last Byte" deve esse in a gamma da 0 à 7.
U cumandamentu ùn deve esse chjamatu durante una trasmissione RF in corso. U cumandamentu deve assicurà u statu ghjustu di u transceiver per a trasmissione di e dati.
Nota:
Stu cumandamentu hè validu solu per u Modu Reader è P2P "Passivu / Modu di iniziatore attivu.
4.5.3.1.2 Cumandamentu
Table 37. Valore di cumandamentu EXCHANGE_RF_DATA
Scrivite e dati TX in u buffer di trasmissione RF internu è principia a trasmissione utilizendu u cumandamentu di transceive è aspettate finu à a ricezione o Time-Out per preparà una risposta à l'ospite.
Campu Payload | Lunghezza | Valore / Descrizzione | |
Numero di bit validi in l'ultimu Byte | 1 byte | 0 | Tutti i bits di l'ultimu byte sò trasmessi |
1 - 7 | U numeru di bit in l'ultimu byte da trasmette. | ||
RFExchangeConfig | 1 byte | Configurazione di a funzione RFExchange. I dettagli vede quì sottu |
Table 37. Valore di cumandamentu EXCHANGE_RF_DATA ... cuntinuà
Scrivite e dati TX in u buffer di trasmissione RF internu è principia a trasmissione utilizendu u cumandamentu di transceive è aspettate finu à a ricezione o Time-Out per preparà una risposta à l'ospite.
Campu Payload | Lunghezza | Valore / Descrizzione |
Dati TX | n byte | Dati TX chì deve esse mandatu via CLIF usendu u cumandamentu di transceive. n = 0 - 1024 bytes |
Table 38. RFexchangeConfig Bitmask
b7 | b6 | b5 | b4 | b3 | b2 | b1 | b0 | Descrizzione |
Bits 4 - 7 sò RFU | ||||||||
X | Includite RX Data in risposta basata nantu à RX_STATUS, se u bit impostatu à 1b. | |||||||
X | Includite u registru EVENT_STATUS in risposta, se u bit impostatu à 1b. | |||||||
X | Includite u registru RX_STATUS_ERROR in risposta, se u bit hè impostatu à 1b. | |||||||
X | Includite u registru RX_STATUS in risposta, se u bit hè impostatu à 1b. |
4.5.3.1.3 Risposta
Table 39. Valore di risposta EXCHANGE_RF_DATA
Campu Payload | Lunghezza | Valore / Descrizzione |
Status | 1 byte | Status di l'operazione [Tabella 9]. I valori previsti sò quì sottu: |
PN5190_STATUS_INSTR_SUCCESS PN5190_STATUS_INSTR_ERROR (Ùn ci hè più dati) PN5190_STATUS_TIMEOUT PN5190_STATUS_RX_TIMEOUT PN5190_STATUS_NO_RF_FIELD PN5190_STATUS_TIMEOUT_WITH_EMD_ERROR |
||
RX_STATUS | 4 Byte | Se RX_STATUS hè dumandatu (little-endian) |
RX_STATUS_ERROR | 4 Byte | Se RX_STATUS_ERROR hè dumandatu (little-endian) |
EVENT_STATUS | 4 Byte | Se EVENT_STATUS hè dumandatu (little-endian) |
Dati RX | 1 - 1024 Bytes | Se i dati RX sò dumandati. Dati RX ricevuti durante a fase di ricezione RF di u scambiu RF. |
4.5.3.1.4 Avvenimentu
Ùn ci hè micca avvenimenti per questu cumandamentu.
4.5.3.2 TRANSMIT_RF_DATA
Questa struzzione hè aduprata per scrive dati in u buffer di trasmissione CLIF internu è inizià a trasmissione utilizendu u cumandamentu di transceive internamente. A dimensione di stu buffer hè limitata à 1024 bytes. Dopu chì sta struzzione hè stata eseguita, una ricezione RF hè iniziata automaticamente.
U cumandamentu torna subitu dopu chì a Trasmissione hè cumpleta ùn aspittà micca a fine di a ricezione.
4.5.3.2.1 Cundizioni
U numeru di bytes in u campu "TX Data" deve esse in a gamma da 1 à 1024, inclusive.
U cumandamentu ùn deve esse chjamatu durante una trasmissione RF in corso.
4.5.3.2.2 Cumandamentu
Table 40. TRANSMIT_RF_DATA valore di cumanda Scrivite dati TX à u buffer di trasmissione CLIF internu.
Campu Payload | Lunghezza | Valore / Descrizzione |
Numero di bit validi in l'ultimu Byte | 1 byte | 0 Tutti i bit di l'ultimu byte sò trasmessi 1 - 7 Numero di bit in l'ultimu byte da trasmette. |
RFU | 1 byte | Riservatu |
Dati TX | 1 - 1024 Bytes | Dati TX chì saranu aduprati durante a prossima trasmissione RF. |
4.5.3.2.3 Risposta
Table 41. Valore di risposta TRANSMIT_RF_DATA
Campu Payload | Lunghezza | Valore / Descrizzione |
Status | 1 byte | Status di l'operazione [Tabella 9]. I valori previsti sò quì sottu: |
PN5190_STATUS_INSTR_SUCCESS PN5190_STATUS_INSTR_ERROR PN5190_STATUS_NO_RF_FIELD PN5190_STATUS_NO_EXTERNAL_RF_FIELD |
4.5.3.2.4 Avvenimentu
Ùn ci hè micca avvenimenti per questu cumandamentu.
4.5.3.3 RETRIEVE_RF_DATA
Questa struzzione hè aduprata per leghje e dati da u buffer CLIF RX internu, chì cuntene i dati di risposta RF (s'ellu ci hè) pubblicati à ellu da l'esekzione precedente di a Sezione 4.5.3.1 cù l'opzione di ùn include micca i dati ricevuti in a risposta o Sezione 4.5.3.2. .XNUMX cumandamentu.
4.5.3.3.1 Cumandamentu
Table 42. Valore di cumanda RETRIEVE_RF_DATA Leghjite i dati RX da u buffer internu di ricezione RF.
Campu Payload | Lunghezza | Valore / Descrizzione |
Viotu | Viotu | Viotu |
4.5.3.3.2 Risposta
Table 43. Valore di risposta RETRIEVE_RF_DATA
Campu Payload | Lunghezza | Valore / Descrizzione |
Status | 1 byte | Status di l'operazione [Tabella 9]. I valori previsti sò quì sottu: |
Campu Payload | Lunghezza | Valore / Descrizzione |
PN5190_STATUS_INSTR_SUCCESS PN5190_STATUS_INSTR_ERROR (Ùn ci hè più dati) |
||
Dati RX | 1 - 1024 Bytes | Dati RX chì sò stati ricevuti durante l'ultima ricezione RF successu. |
4.5.3.3.3 Avvenimentu
Ùn ci hè micca avvenimenti per questu cumandamentu.
4.5.3.4 RECEIVE_RF_DATA
Questa struzzione aspetta i dati ricevuti attraversu l'interfaccia RF di u lettore.
In u modu di lettore, sta struzzione torna sia s'ellu ci hè una ricezione (erronea o curretta) o un timeout FWT hè accadutu. U timer hè cuminciatu cù a FINE di TRASMISSIONE è si ferma cù u START di RECEPTION. U valore di timeout predefinitu preconfiguratu in EEPROM serà utilizatu in casu chì u timeout ùn hè micca cunfiguratu prima di l'esekzione di u cumandamentu di Exchange.
In u modu di destinazione, sta struzzione torna sia in casu di ricezione (erronea o curretta) o errore RF Esternu.
Nota:
Questa struzzione deve esse aduprata cù u cumandimu TRANSMIT_RF_DATA per eseguisce l'operazione TX è RX ...
4.5.3.4.1 Cumandamentu
Table 44. Valore di cumandamentu RECEIVE_RF_DATA
Campu Payload | Lunghezza | Valore / Descrizzione |
RiceveRFConfig | 1 byte | Configurazione di a funzione ReceiveRFConfig. Vede Tabella 45 |
Table 45. ReceiveRFConfig bitmask
b7 | b6 | b5 | b4 | b3 | b2 | b1 | b0 | Descrizzione |
Bits 4 - 7 sò RFU | ||||||||
X | Includite RX Data in risposta basata nantu à RX_STATUS, se u bit impostatu à 1b. | |||||||
X | Includite u registru EVENT_STATUS in risposta, se u bit impostatu à 1b. | |||||||
X | Includite u registru RX_STATUS_ERROR in risposta, se u bit hè impostatu à 1b. | |||||||
X | Includite u registru RX_STATUS in risposta, se u bit hè impostatu à 1b. |
4.5.3.4.2 Risposta
Table 46. Valore di risposta RECEIVE_RF_DATA
U campu di carica | Lunghezza | Valore / descrizzione |
Status | 1 byte | Status di l'operazione [Tabella 9]. I valori previsti sò quì sottu: |
PN5190_STATUS_INSTR_SUCCESS PN5190_STATUS_INSTR_ERROR (Ùn ci hè più dati) PN5190_STATUS_TIMEOUT |
U campu di carica | Lunghezza | Valore / descrizzione |
PN5190_STATUS_NO_RF_FIELD PN5190_STATUS_NO_EXTERNAL_RF_FIELD |
||
RX_STATUS | 4 Byte | Se RX_STATUS hè dumandatu (little-endian) |
RX_STATUS_ERROR | 4 Byte | Se RX_STATUS_ERROR hè dumandatu (little-endian) |
EVENT_STATUS | 4 Byte | Se EVENT_STATUS hè dumandatu (little-endian) |
Dati RX | 1 - 1024 Bytes | Se i dati RX sò dumandati. Dati RX ricevuti sopra RF. |
4.5.3.4.3 Avvenimentu
Ùn ci hè micca avvenimenti per questu cumandamentu.
4.5.3.5 RETRIEVE_RF_FELICA_EMD_DATA (Configurazione FeliCa EMD)
Questa struzzione hè aduprata per leghje e dati da u buffer CLIF RX internu, chì cuntene una data di risposta FeliCa EMD (se ci hè) publicata da l'esekzione precedente di u cumandimu EXCHANGE_RF_DATA chì torna cù Status 'PN5190_STATUS_TIMEOUT_WITH_EMD_ERROR'.
Nota: Stu cumandamentu hè dispunibule da PN5190 FW v02.03 in avanti.
4.5.3.5.1 Cumandamentu
Leghjite i dati RX da u buffer di ricezione RF internu.
Table 47. Valore di cumanda RETRIEVE_RF_FELICA_EMD_DATA
Campu Payload | Lunghezza | Valore / Descrizzione | |
FeliCaRFRetrieveConfig | 1 byte | 00 - FF | Configurazione di a funzione RETRIEVE_RF_FELICA_EMD_DATA |
descrizzione di cunfigurazione (bitmask). | bit 7..2: RFU bit 1: Includite u registru RX_STATUS_ ERROR in risposta, se u bit hè impostatu à 1b. bit 0: Includite u registru RX_STATUS in risposta, se u bit hè impostatu à 1b. |
4.5.3.5.2 Risposta
Table 48. Valore di risposta RETRIEVE_RF_FELICA_EMD_DATA
U campu di carica | Lunghezza | Valore / descrizzione | |||
Status | 1 byte | Status di l'operazione. I valori previsti sò cum'è quì sottu: PN5190_STATUS_INSTR_SUCCESS PN5190_STATUS_INSTR_ERROR (Nisuna più dati hè presente) | |||
RX_STATUS | 4 byte | Se RX_STATUS hè dumandatu (little-endian) | |||
RX_STATUS_ ERRORE | 4 byte | Se RX_STATUS_ERROR hè dumandatu (little-endian) |
U campu di carica | Lunghezza | Valore / descrizzione | |||
Dati RX | 1…1024 byte | Dati FeliCa EMD RX chì sò stati ricevuti durante l'ultima ricezione RF senza successu cù u Cumandante di Scambiu. |
4.5.3.5.3 Avvenimentu
Ùn ci hè micca avvenimenti per questu cumandamentu.
4.5.4 Cambia Modu Operazione
PN5190 supporta 4 modi di funziunamentu differenti:
4.5.4.1 Normale
Questu hè u modu predeterminatu, induve tutte l'istruzzioni sò permesse.
4.5.4.2 Standby
PN5190 hè in standby/sleep state per risparmià energia. E cundizioni di sveglia devenu esse stabilite per definisce quandu abbandunà di novu in standby.
4.5.4.3 LPCD
PN5190 hè in modu di rilevazione di carte di bassa putenza, induve prova di detectà una carta chì entra in u voluminu di u funziunamentu, cù u cunsumu di energia più bassu pussibule.
4.5.4.4 Autocoll
PN5190 agisce cum'è ascoltatore RF, eseguendu l'attivazione di u modu di destinazione in modu autonomu (per guarantisci limitazioni in tempu reale)
4.5.4.5 SWITCH_MODE_NORMAL
U cumandimu Switch Mode Normal hà trè casi d'usu.
4.5.4.5.1 UseCase1: Entra in u modu di operazione normale à l'accensione (POR)
Aduprà per resetta à u statu inattivu per riceve / trasfurmà u prossimu cumandamentu entrendu in u modu di operazione normale.
4.5.4.5.2 UseCase2: Terminazione di u cumandamentu digià in esecuzione per passà à u modu di funziunamentu normale (abortu cumandamentu)
Aduprà per resetta à u statu inattivu per riceve / trasfurmà u prossimu cumandamentu finendu i cumandamenti digià in esecuzione.
Cumandamenti cum'è standby, LPCD, Scambiu, PRBS è Autocoll ponu esse terminati cù stu cumandamentu.
Questu hè u solu cumandamentu speciale, chì ùn hà micca risposta. Invece, hà una notificazione EVENT.
Vede a Sezione 4.4.3 per più infurmazione nantu à u tipu d'avvenimenti chì si verificanu durante l'esekzione di cumandamenti sottumessi.
4.5.4.5.2.1 UseCase 2.1:
Stu cumandimu hà da resetta tutti i Registri CLIF TX, RX, è Field Control Registers à u Statu di Boot. L'emissione di stu cumandimu disattiverà qualsiasi Campu RF esistente.
4.5.4.5.2.2 UseCase 2.2:
Disponibile da PN5190 FW v02.03 in poi:
Stu cumandamentu ùn mudificà micca i Registri CLIF TX, RX è u cuntrollu di u campu, ma solu move u transceiver à u statu IDLE.
4.5.4.5.3 UseCase3: Modu di funziunamentu normale dopu à soft-reset / esce da standby, LPCD In questu casu, u PN5190 entra direttamente in u modu di operazione normale, mandendu IDLE_EVENT à l'ospite (Figura 12 o Figura 13) è " IDLE_EVENT" bit hè stabilitu in a Tabella 11.
Ùn ci hè micca bisognu di mandà cumanda SWITCH_MODE_NORMAL.
Nota:
Dopu chì l'IC hè cambiatu à u modu normale, tutti i paràmetri di RF sò mudificate à u statu predeterminatu. Hè imperativu chì, a cunfigurazione RF rispettiva è l'altri registri cunnessi devenu esse caricate cù i valori appropritati prima di fà una operazione RF ON o RF Exchange.
4.5.4.5.4 Quadru di cumanda per mandà per diversi casi d'usu
4.5.4.5.4.1 UseCase1: U cumandamentu entre in u modu di operazione normale à l'accensione (POR) 0x20 0x01 0x00
4.5.4.5.4.2 UseCase2: Cumanda per finisce i cumandamenti digià in esecuzione per passà à u modu di operazione normale
Casu d'usu 2.1:
0x20 0x00 0x00
Casu d'usu 2.2: (Da FW v02.02 in poi):
0x20 0x02 0x00
4.5.4.5.4.3 UseCase3: Cumandamentu per u modu di funziunamentu normale nantu à u soft-reset / esce da standby, LPCD, ULPCD
Nimu. PN5190 entra in modu di funziunamentu normale direttamente.
4.5.4.5.5 Risposta
Nimu
4.5.4.5.6 Avvenimentu
Un BOOT_EVENT (in u registru EVENT_STATUS) hè stabilitu chì indica chì u modu normale hè inseritu è hè mandatu à l'ospite. Vede a Figura 12 è a Figura 13 per i dati di l'avvenimentu.
Un IDLE_EVENT (in u registru EVENT_STATUS) hè stabilitu chì indica chì u modu normale hè inseritu è hè mandatu à l'ospite. Vede a Figura 12 è a Figura 13 per i dati di l'avvenimentu.
Un BOOT_EVENT (in u registru EVENT_STATUS) hè stabilitu chì indica chì u modu normale hè inseritu è hè mandatu à l'ospite. Vede a Figura 12 è a Figura 13 per i dati di l'avvenimentu.
4.5.4.6 SWITCH_MODE_AUTOCOLL
U Switch Mode Autocoll esegue automaticamente a prucedura di attivazione di a carta in modu di destinazione.
U campu "Modu Autocoll" deve esse in a gamma da 0 à 2, inclusi.
In casu, se u campu "Modu Autocoll" hè impostatu à 2 (Autocoll): u campu "Tecnulugie RF" (Table 50) deve cuntene una maschera di bit chì indicà e Tecnologie RF da supportà durante l'Autocoll.
Nisuna struzzioni deve esse mandata mentre esse in stu modu.
A terminazione hè indicata cù una interruzzione.
4.5.4.6.1 Cumandamentu
Table 49. Valore di cumandamentu SWITCH_MODE_AUTOCOLL
Parametru | Lunghezza | Valore / Descrizzione | |
Tecnulugie RF | 1 byte | Bitmask chì indica a tecnulugia RF per sente durante Autocoll. | |
Modu Autocoll | 1 byte | 0 | Nisun modu autonomu, vale à dì Autocoll finisce quandu u campu RF esternu ùn hè micca presente. |
Terminazione in casu di | |||
• NO RF FIELD o RF FIELD hè sparitu | |||
• PN5190 hè ACTIVATED in modu TARGET | |||
1 | Modu autonomu cù standby. Quandu ùn ci hè micca un campu RF, Autocoll entra automaticamente in modalità Standby. Quandu u campu RF esternu RF hè rilevatu, PN5190 entra di novu in modalità Autocoll. | ||
Terminazione in casu di | |||
• PN5190 hè ACTIVATED in modu TARGET | |||
Da PN5190 FW v02.03 in avanti: Se u campu EEPROM "bCard ModeUltraLowPowerEnabled" à l'indirizzu '0xCDF' hè stabilitu à '1', allora PN5190 entra in standby Ultra low-power. | |||
2 | Modu autonomu senza standby. Quandu ùn ci hè micca un campu RF, PN5190 aspetta finu à chì u campu RF hè presente prima di inizià l'algoritmu Autocoll. Standby ùn hè micca usatu in stu casu. | ||
Terminazione in casu di • PN5190 hè ACTIVATED in modu TARGET |
Table 50. RF Technologies Bitmask
b7 | b6 | b5 | b4 | b3 | b2 | b1 | b0 | Descrizzione |
0 | 0 | 0 | 0 | RFU | ||||
X | Se stabilitu à 1b, l'ascoltu per NFC-F Active hè attivatu. (Ùn dispunibile). | |||||||
X | Se stabilitu à 1b, l'ascoltu per NFC-A Active hè attivatu. (Ùn dispunibile). | |||||||
X | Se stabilitu à 1b, l'ascoltu per NFC-F hè attivatu. | |||||||
X | Se stabilitu à 1b, l'ascoltu per NFC-A hè attivatu. |
4.5.4.6.2 Risposta
A risposta signala solu chì u cumandamentu hè statu processatu.
Table 51. Valore di risposta SWITCH_MODE_AUTOCOLL
Campu Payload | Lunghezza | Valore / Descrizzione |
Status | 1 byte | Status di l'operazione [Tabella 9]. I valori previsti sò quì sottu: |
PN5190_STATUS_INSTR_SUCCESS PN5190_STATUS_INSTR_ERROR (U modu di cambiamentu ùn hè micca statu intrutu per via di paràmetri sbagliati) |
4.5.4.6.3 Avvenimentu
A notificazione di l'avvenimentu hè mandata quandu u cumandamentu hè finitu, è u modu normale hè inseritu. L'ospite hà da leghje i bytes di risposta basatu annantu à u valore di l'avvenimentu.
Nota:
Quandu u statutu ùn hè micca "PN5190_STATUS_INSTR_SUCCESS", allora i bytes di dati "Protocol" è "Card_Activated" ùn sò micca prisenti.
L'infurmazione tecnologica hè ricuperata da i registri utilizendu cumandamenti di a Sezione 4.5.1.5, a Sezione 4.5.1.6.
A tabella seguente mostra i dati di l'avvenimentu chì sò mandati cum'è parte di u missaghju di l'avvenimentu Figura 12 è Figura 13.
Table 52. EVENT_SWITCH_MODE_AUTOCOLL - dati AUTOCOLL_EVENT Cambia u modu di operazione Autocoll event
Campu Payload | Lunghezza | Valore / Descrizzione | |
Status | 1 byte | Status di l'operazione | |
PN5190_STATUS_INSTR_SUCCESS | PN5190 hè ATTIVATA in u modu TARGET. Ulteriori dati in questu avvenimentu sò validi. |
||
PN5190_STATUS_PREVENT_STANDBY | Indica chì PN5190 hè impeditu per andà in modalità Standby. Stu statutu hè validu solu quandu u modu Autocoll hè sceltu cum'è "Modu autonomu cù standby". |
PN5190_STATUS_NO_EXTERNAL_RF_ CAMPO | Indica chì ùn ci hè micca un campu RF esternu durante l'esekzione di Autocoll in modalità Non Autonomous | ||
PN5190_STATUS_USER_CANCELLED | Indica chì u cumandamentu attuale in prugressu hè abortutu da u cumandamentu normale di u modu di cambià | ||
Protocolu | 1 byte | 0x10 | Attivatu cum'è Passive TypeA |
0x11 | Attivatu cum'è Passive TypeF 212 | ||
0x12 | Attivatu cum'è Passive TypeF 424 | ||
0x20 | Attivatu cum'è Active TypeA | ||
0x21 | Attivatu cum'è Active TypeF 212 | ||
0x22 | Attivatu cum'è Active TypeF 424 | ||
Altri valori | Invalidu | ||
Card_Activatu | 1 byte | 0x00 | Nisun prucessu di attivazione di a carta cum'è ISO 14443-3 |
0x01 | Indica chì u dispusitivu hè attivatu in modu passiu |
Nota:
Dopu avè lettu i dati di l'avvenimentu, i dati ricevuti da a carta / u dispositivu chì hè stata attivata (cum'è 'n' byte di ATR_REQ/RATS cum'è ISO18092/ISO1443-4), deve esse letti cù l'ordine di a Sezione 4.5.3.3.
4.5.4.6.4 Comunicazione example
4.5.4.7 SWITCH_MODE_STANDBY
U Switch Mode Standby mette automaticamente l'IC in modalità Standby. L'IC si svegliarà dopu à e fonti di sveglia cunfigurate chì rispondenu à e cundizioni di sveglia.
Nota:
A scadenza di u contatore per ULP STANDBY è l'abortu HIF per STANDBY sò dispunibuli di manera predeterminata per esce da i modi standby.
4.5.4.7.1 Cumandamentu
Table 53. Valore di cumandamentu SWITCH_MODE_STANDBY
Parametru | Lunghezza | Valore / Descrizzione |
Config | 1 byte | Bitmask cuntrullà a fonte di sveglia per esse utilizata è u modu Standby per entre. Riferite à Tabella 54 |
Contravalore | 2 Byte | Valore utilizatu per u contatore di sveglia in millisecondi. U valore massimu supportatu hè 2690 per standby. U valore massimu supportatu hè 4095 per u standby ULP. U valore da esse furnitu hè in formatu little-endian. U cuntenutu di stu paràmetru hè validu solu se a "Config Bitmask" hè attivata per u svegliu annantu à a scadenza di u contatore. |
Table 54. Config Bitmask
b7 | b6 | b5 | b4 | b3 | b2 | b1 | b0 | Descrizzione |
X | Entra in standby ULP se u bit hè impostatu à 1b Entra in standby se u bit hè impostatu à 0b. | |||||||
0 | RFU | |||||||
X | Svegliate nantu à GPIO-3 quandu hè altu, se u bit hè impostatu à 1b. (Non applicabile per ULP standby) | |||||||
X | Svegliate nantu à GPIO-2 quandu hè altu, se u bit hè impostatu à 1b. (Non applicabile per ULP standby) | |||||||
X | Svegliate nantu à GPIO-1 quandu hè altu, se u bit hè impostatu à 1b. (Non applicabile per ULP standby) | |||||||
X | Svegliate nantu à GPIO-0 quandu hè altu, se u bit hè impostatu à 1b. (Non applicabile per ULP standby) | |||||||
X | A sveglia nantu à u contatore di sveglia scade, se u bit hè impostatu à 1b. Per ULP-Standby, questa opzione hè attivata per difettu. | |||||||
X | Sveglia nantu à u campu RF esternu, se u bit hè impostatu à 1b. |
Nota: Da PN5190 FW v02.03, se u Campu EEPROM "CardModeUltraLowPowerEnabled" à l'indirizzu "0xCDF" hè stabilitu à "1", a cunfigurazione di standby ULP ùn pò micca esse usata cù u Command SWITCH_MODE_STANDBY.
4.5.4.7.2 Risposta
A risposta signalizeghja solu chì u cumandamentu hè statu processatu è u statu di standby serà inseritu solu dopu chì a risposta hè stata lettu da l'ospite.
Table 55. Valore di risposta SWITCH_MODE_STANDBY Cambia u modu di operazione in standby
Campu Payload | Lunghezza | Valore / Descrizzione |
Status | 1 byte | Status di l'operazione [Tabella 9]. I valori previsti sò quì sottu: |
PN5190_STATUS_INSTR_SUCCESS PN5190_STATUS_INSTR_ERROR (U modu di cambiamentu ùn hè micca statu intrutu - per via di paràmetri sbagliati) |
4.5.4.7.3 Avvenimentu
A notificazione di l'avvenimentu hè mandata quandu u cumandamentu hè finitu, è u modu normale hè inseritu. Riferite à u formatu di l'avvenimentu chì serà mandatu dopu à a fine di u cumandamentu cum'è in Figura 12 è Figura 13.
In casu, se PN5190 hè impeditu di andà in modalità Standby, allora u bit di l'avvenimentu "STANDBY_PREV_EVENT" impostatu in EVENT_STATUS cum'è menzionatu a Tabella 11 hè mandatu à l'ospite per a raghjoni di a prevenzione standby cum'è citatu in a Tabella 13.
4.5.4.7.4 Communication Example
4.5.4.8 SWITCH_MODE_LPCD
U Switch Mode LPCD esegue una rilevazione di disintonizazione nantu à l'antenna per via di l'ambienti cambiante intornu à l'antenna.
Ci hè 2 modi diffirenti di LPCD. A suluzione HW-based (ULPCD) offre un cunsumu di energia competitiva cù una sensibilità ridutta. A suluzione basata in FW (LPCD) offre una sensibilità di u megliu in a classa cù un cunsumu d'energia aumentatu.
In u Modu Singulu di FW basatu (LPCD), ùn ci hè micca un avvenimentu di calibrazione mandatu à l'ospitu.
Quandu u Modu Unicu hè invucatu, a calibrazione è e misure successive sò tutte eseguite dopu à esce da standby.
Per l'avvenimentu di calibrazione in modu unicu, prima emette u modu unicu cù u cumandamentu di l'avvenimentu di calibrazione. Dopu a calibrazione, un avvenimentu di calibrazione LPCD hè ricevutu dopu chì u cumandamentu di u modu unicu deve esse mandatu cù u valore di riferimentu ottenutu da u passu precedente cum'è paràmetru di input.
A cunfigurazione di u LPCD hè fatta in i paràmetri EEPROM / Flash Data prima chì u cumandamentu hè chjamatu.
Nota:
L'abortu GPIO3 per ULPCD, l'abortu HIF per LPCD sò dispunibuli per automaticamente per esce da i modi di bassa putenza.
U svegliu per via di a scadenza di u contatore hè sempre attivatu.
Per ULPCD, a cunfigurazione DC-DC deve esse disattivata in i paràmetri EEPROM / Flash Data è deve furnisce l'alimentazione VUP attraversu VBAT. I paràmetri di jumper necessarii deve esse fatti. Per i paràmetri di EEPROM/Dati Flash, riferite à u documentu [2].
Se u cumandimu hè per a calibrazione LPCD / UPCD, l'ospitu hà ancu da mandà u quadru cumpletu.
4.5.4.8.1 Cumandamentu
Table 56. Valore di cumandamentu SWITCH_MODE_LPCD
Parametru | Lunghezza | Valore / descrizzione | |
bControl | 1 byte | 0x00 | Entre in calibrazione ULPCD. U cumandamentu si ferma dopu a calibrazione è un avvenimentu cù u valore di riferimentu hè mandatu à l'ospite. |
0x01 | Entre in ULPCD | ||
0x02 | calibrazione LPCD. U cumandamentu si ferma dopu a calibrazione è un avvenimentu cù u valore di riferimentu hè mandatu à l'ospite. | ||
0x03 | Entre in LPCD | ||
0x04 | Modu unicu | ||
0x0C | Modu unicu cù avvenimentu di calibrazione | ||
Altri valori | RFU | ||
Controlu di sveglia | 1 byte | Bitmask cuntrullà a fonte di sveglia per esse aduprata per LPCD / ULPCD. U cuntenutu di stu campu ùn hè micca cunsideratu per a calibrazione. Riferite à Tabella 57 | |
Valore di Riferenza | 4 Byte | Valore di riferimentu per esse usatu durante ULPCD/LPCD. Per ULPCD, Byte 2 chì cuntene u valore di l'attenuatore HF hè utilizatu durante a fase di calibrazione è di misura. Per LPCD, u cuntenutu di stu campu ùn hè micca cunsideratu per a calibrazione è u modu Single. Riferite à Tabella 58 per l'infurmazione curretta nantu à tutti i 4 byte. |
|
Contravalore | 2 Byte | Valore per u contatore di sveglia in millisecondi. U valore massimu supportatu hè 2690 per LPCD. U valore massimu supportatu hè 4095 per ULPCD. U valore per esse furnitu hè in formatu little-endian. U cuntenutu di stu campu ùn hè micca cunsideratu per a calibrazione LPCD. Per u modu unicu è u modu unicu cù l'avvenimentu di calibrazione, a durata di standby prima di calibrazione pò esse cunfigurata da a cunfigurazione EEPROM: LPCD_SETTINGS->wCheck Period. Per u modu unicu cù calibrazione, u valore WUC ùn sia micca zero. |
Table 57. Wake-up Control Bitmask
b7 | b6 | b5 | b4 | b3 | b2 | b1 | b0 | Descrizzione |
0 | 0 | 0 | 0 | 0 | 0 | 0 | RFU | |
X | Sveglia nantu à u campu RF esternu, se u bit hè impostatu à 1b. |
Table 58. Riferimentu Valore byte info
Byte di valore di riferimentu | ULPCD | LPCD |
Byte 0 | Riferimentu Byte 0 | Canale 0 Riferimentu Byte 0 |
Byte 1 | Riferimentu Byte 1 | Canale 0 Riferimentu Byte 1 |
Byte 2 | Valeur de l'atténuateur HF | Canale 1 Riferimentu Byte 0 |
Byte 3 | NA | Canale 1 Riferimentu Byte 1 |
4.5.4.8.2 Risposta
Table 59. Valore di risposta SWITCH_MODE_LPCD
Campu Payload | Lunghezza | Valore / Descrizzione |
Status | 1 byte | Status di l'operazione [Tabella 9]. I valori previsti sò quì sottu: |
PN5190_STATUS_INSTR_SUCCESS PN5190_STATUS_INSTR_ERROR (U modu di cambiamentu ùn hè micca statu intrutu - per via di paràmetri sbagliati) |
4.5.4.8.3 Avvenimentu
A notificazione di l'avvenimentu hè mandata quandu u cumandamentu hè finitu, è u modu normale hè inseritu cù e seguenti dati cum'è parte di l'avvenimentu citatu in Figura 12 è Figura 13.
Table 60. EVT_SWITCH_MODE_LPCD
U campu di carica | Lunghezza | Valore / Descrizzione |
Status LPCD | Fighjate à a Tabella 15 | Refer to Table 154.5.4.8.4 Communication Example |
4.5.4.9 SWITCH_MODE_DOWNLOAD
L'ordine di scaricamentu di u Modu Cambia entra in u modu di scaricamentu di u firmware.
L'unicu modu per esce da u modu di scaricamentu hè di emette un resettore à PN5190.
4.5.4.9.1 Cumandamentu
Table 61. Valore di cumandamentu SWITCH_MODE_DOWNLOAD
Parametru | Lunghezza | Valore / Descrizzione |
– | – | Nisun valore |
4.5.4.9.2 Risposta
A risposta signala solu chì u cumandamentu hè statu processatu è u modu di Scaricamentu deve esse inseritu dopu chì a risposta hè lettu da l'ospite.
Table 62. Valore di risposta SWITCH_MODE_DOWNLOAD
Cambia u modu di funziunamentu Autocoll
Campu Payload | Lunghezza | Valore / Descrizzione |
Status | 1 byte | Status di l'operazione [Tabella 9]. I valori previsti sò quì sottu: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR (Modu di cambiamentu ùn hè micca statu intrutu) |
4.5.4.9.3 Avvenimentu
Nisuna generazione di avvenimenti.
4.5.4.9.4 Communication Example
4.5.5 Autentificazione MIFARE Classic
4.5.5.1 MFC_AUTHENTICATE
Questa struzzione hè aduprata per realizà una autenticazione MIFARE Classic nantu à una carta attivata. Ci vole a chjave, UID di a carta, è u tipu di chjave per autentificà à l'indirizzu di bloccu datu. A risposta cuntene un byte chì indica u statu di autentificazione.
4.5.5.1.1 Cundizioni
Field Key deve esse longu 6 bytes. Field Key Type deve cuntene u valore 0x60 o 0x61. L'indirizzu di bloccu pò cuntene qualsiasi indirizzu da 0x0 à 0xff, inclusi. UID di u campu deve esse longu byte è deve cuntene l'UID 4byte di a carta. Una carta ISO14443-3 MIFARE Classic basata nantu à u produttu deve esse messu in statu ACTIVE o ACTIVE * prima di l'esekzione di sta struzzione.
In casu di un errore di runtime in relazione à l'autentificazione, stu campu "Status di l'autentificazione" hè stabilitu in cunfurmità.
4.5.5.1.2 Cumandamentu
Table 63. MFC_AUTHENTICATE Command
Eseguite l'autentificazione nantu à una carta MIFARE Classic attivata nantu à u produttu.
Campu Payload | Lunghezza | Valore / Descrizzione | |
Chjave | 6 Byte | Chjave d'autentificazione da esse usata. | |
Tipu di chjave | 1 byte | 0x60 | Tipu di chjave A |
0x61 | Tipu di chjave B | ||
Block Address | 1 byte | L'indirizzu di u bloccu per quale deve esse realizatu l'autentificazione. | |
UID | 4 Byte | UID di a carta. |
4.5.5.1.3 Risposta
Table 64. Risposta MFC_AUTHENTICATE
Risposta à MFC_AUTHENTICATE.
Campu Payload | Lunghezza | Valore / Descrizzione |
Status | 1 byte | Status di l'operazione [Tabella 9]. I valori previsti sò quì sottu: |
PN5190_STATUS_INSTR_SUCCESS PN5190_STATUS_INSTR_ERROR PN5190_STATUS_TIMEOUT PN5190_STATUS_AUTH_ERROR |
4.5.5.1.4 Avvenimentu
Ùn ci hè micca avvenimentu per questa struzzione.
4.5.6 Supportu ISO 18000-3M3 (EPC GEN2).
4.5.6.1 EPC_GEN2_INVENTORY
Questa struzzione hè aduprata per fà un inventariu di ISO18000-3M3 tags. Implementa una esecuzione autonoma di parechji cumandamenti secondu ISO18000-3M3 per guarantisce i tempi specificati da quellu standard.
Se prisenti in u payload di l'istruzzioni, prima un cumandamentu Select hè eseguitu seguitatu da un cumanda BeginRound.
Se ci hè una risposta valida in u primu intervallu di tempu (senza timeout, senza collisione), l'istruzzione manda un ACK è salva u PC / XPC / UII ricevutu. L'istruzzione dopu eseguisce una azione secondu u campu "Timeslot Processed Behavior":
- Se stu campu hè stabilitu à 0, un cumandamentu NextSlot hè emessu per trattà u prossimu intervallu di tempu. Questu hè ripetutu finu à chì u buffer internu hè pienu
- Se stu campu hè stabilitu à 1, l'algoritmu si mette in pausa
- Se stu campu hè stabilitu à 2, un cumandamentu Req_Rn hè emessu se, è solu s'ellu ci hè statu un validu. tag risposta in questu timelotCommand
U campu 'Select Command Length' deve cuntene a lunghezza di u campu 'Select Command', chì deve esse in a gamma da 1 à 39, inclusi. Se "Select Command Length" hè 0, i campi "Valid Bits in last Byte" è "Select Command" ùn devenu esse presente.
U campu Bits in last Byte deve cuntene u numeru di bits da esse trasmessi in l'ultimu byte di u campu "Select Command". U valore deve esse in a gamma da 1 à 7, inclusi. Se u valore hè 0, tutti i bits da l'ultimu byte da u campu "Select Command" sò trasmessi.
U campu "Select Command" deve cuntene un cumandamentu Select secondu ISO18000-3M3 senza trailing CRC-16c è deve avè a listessa lunghezza cum'è indicata in u campu "Select Command Length".
U campu "BeginRound Command" deve cuntene un cumandamentu BeginRound secondu ISO18000-3M3 senza trailing CRC-5. L'ultimi 7 bits di l'ultimu byte di "BeginRound Command" sò ignorati postu chì u cumandimu hà una durata attuale di 17 bits.
"Timeslot Processed Behavior" deve cuntene un valore da 0 à 2, inclusi.
Tabella 65. Valore di cumandamentu EPC_GEN2_INVENTORY Eseguite un Inventariu ISO 18000-3M3
U campu di carica | Lunghezza | Valore / descrizzione | |
Riprendi l'inventariu | 1 byte | 00 | GEN2_INVENTORY iniziale |
01 | Riprende u cumandamentu GEN2_INVENTORY - u restu
i campi sottu sò vioti (ogni carichi utile hè ignoratu) |
||
Selezziunà a lunghezza di u cumandamentu | 1 byte | 0 | Nisun cumandamentu Select hè stabilitu prima di u cumandimu BeginRound. U campu "Valid Bits in last Byte" è u campu "Select command" ùn deve esse presente. |
1 - 39 | Lunghezza (n) di u campu 'Select command'. | ||
Bits validi in l'ultimu byte | 1 byte | 0 | Tutti i bits di l'ultimu byte di u campu "Select command" sò trasmessi. |
1 - 7 | Numeru di bits da trasmette in l'ultimu byte di u campu "Select command". | ||
Selezziunà Command | n Byte | Se prisenti, stu campu cuntene u cumandamentu Select (sicondu ISO18000-3, Table 47) chì hè mandatu prima di u cumandamentu BeginRound. CRC-16c ùn deve esse inclusu. | |
BeginRound Command | 3 Byte | Stu campu cuntene u cumandamentu BeginRound (sicondu ISO18000-3, Table 49). CRC-5 ùn deve esse micca inclusu. | |
Cumportamentu Processatu di Timelot | 1 byte | 0 | A risposta cuntene max. Numero di intervalli di tempu chì ponu adattà in u buffer di risposta. |
1 | A risposta cuntene solu un intervallu di tempu. | ||
2 | A risposta cuntene solu un intervallu di tempu. Se a fascia di tempu cuntene una risposta valida di a carta, hè inclusa ancu u manicu di a carta. |
4.5.6.1.1 Risposta
A durata di a Risposta pò esse "1" in casu di currículum Inventariu.
Table 66. Valore di risposta EPC_GEN2_INVENTORY
Campu Payload | Lunghezza | Valore / Descrizzione | |||
Status | 1 byte | Status di l'operazione [Tabella 9]. I valori previsti sò quì sottu: | |||
PN5190_STATUS_SUCCESS (Leghjite u statutu di intervallu di tempu in u byte prossimu per Tag risposta) PN5190_STATUS_INSTR_ERROR (Ùn ci hè più dati) |
|||||
Fascia oraria [1…n] | 3 - 69 Bytes | Status di intervallu di tempu | 1 byte | 0 | Tag risposta disponibile. 'Tag Campu di Lunghezza di Risposta', Campu "Bits validi in l'ultimu byte" è "Tag rispondi 'campu prisenti. |
1 | Tag risposta disponibile. | ||||
2 | Innò tag hà rispostu in un intervallu di tempu. 'Tag U campu "Lunghezza di Risposta" è u campu "Bits validi in l'ultimu byte" deve esse pusatu à zero. 'Tag u campu di risposta ùn deve esse presente. | ||||
3 | Dui o più tags hà rispostu in u tempu. (collisione). 'Tag U campu "Lunghezza di Risposta" è u campu "Bits validi in l'ultimu byte" deve esse pusatu à zero. 'Tag u campu di risposta ùn deve esse presente. |
Tag Lunghezza di risposta | 1 byte | 0-66 | lunghezza di 'Tag Campu di risposta (i). Se Tag A lunghezza di risposta hè 0, allora u Tag U campu di risposta ùn hè micca presente. | ||
Bit validi in l'ultimu byte | 1 byte | 0 | Tutti i pezzi di l'ultimu byte di 'Tag u campu di risposta sò validi. | ||
1-7 | Numeru di bit validi di l'ultimu byte di 'Tag risposta 'campu. Se Tag A lunghezza di risposta hè zero, u valore di stu byte serà ignoratu. | ||||
Tag Rispondimi | 'n' Bytes | Risposta di u tag secondu ISO18000-3_2010, Table 56. | |||
Tag Maniglia | 0 o 2 byte | Mancu di u tag, in casu chì u campu "Status Timeslot" hè stabilitu à "1". Altrimenti u campu ùn hè micca presente. |
4.5.6.1.2 Avvenimentu
Ùn ci hè micca avvenimenti per questu cumandamentu.
4.5.7 Gestione di cunfigurazione RF
Riferite à a Sezione 6, per a cunfigurazione TX è RX per e diverse tecnulugia RF è e tassi di dati supportati da PN5190. I valori ùn sò micca prisenti in a gamma citata quì sottu, deve esse cunsideratu cum'è RFU.
4.5.7.1 LOAD_RF_CONFIGURATION
Questa struzzione hè aduprata per carica a cunfigurazione RF da EEPROM in i registri CLIF interni. A cunfigurazione RF si riferisce à una cumminazione unica di Tecnulugia RF, modalità (target / iniziatore) è baud rate. A cunfigurazione RF pò esse caricata separatamente per u receptore CLIF (configurazione RX) è u trasmettitore (configurazione TX). U valore 0xFF deve esse usatu se a cunfigurazione currispondente per una strada ùn deve esse cambiata.
4.5.7.1.1 Cundizioni
U campu "Configurazione TX" deve esse in a gamma da 0x00 à 0x2B, inclusi. Se u valore hè 0xFF, a cunfigurazione TX ùn hè micca cambiata.
U campu "Configurazione RX" deve esse in a gamma da 0x80 à 0xAB, inclusi. Se u valore hè 0xFF, a cunfigurazione RX ùn hè micca cambiata.
Una cunfigurazione speciale cù TX Configuration = 0xFF è RX Configuration = 0xAC hè aduprata per carricà i registri di Boot-up una volta.
Questa cunfigurazione speciale hè necessaria per aghjurnà e cunfigurazioni di u registru (sia TX è RX) chì sò diffirenti da i valori di reset IC.
4.5.7.1.2 Cumandamentu
Table 67. Valore di cumanda LOAD_RF_CONFIGURATION
Caricate i paràmetri RF TX è RX da E2PROM.
Campu Payload | Lunghezza | Valore / Descrizzione | |
Cunfigurazione TX | 1 byte | 0xFF | A cunfigurazione TX RF ùn hè micca cambiata. |
0x0 - 0x2B | Configurazione TX RF corrispondente caricata. | ||
Configurazione RX | 1 byte | 0xFF | A cunfigurazione RX RF ùn hè micca cambiata. |
0x80 - 0xAB | Cunfigurazione RX RF corrispondente caricata. |
4.5.7.1.3 Risposta
Table 68. Valore di risposta LOAD_RF_CONFIGURATION
Campu Payload | Lunghezza | Valore / Descrizzione |
Status | 1 byte | Status di l'operazione [Tabella 9]. I valori previsti sò quì sottu: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR |
4.5.7.1.4 Avvenimentu
Ùn ci hè micca avvenimenti per questu cumandamentu.
4.5.7.2 UPDATE_RF_CONFIGURATION
Questa struzzione hè aduprata per aghjurnà a cunfigurazione RF (vede a definizione in a Sezione 4.5.7.1) in E2PROM. L'istruzzioni permette l'aghjurnà à u valore di granularità di u registru, vale à dì micca u settore cumpletu deve esse aghjurnatu (ancu, hè pussibule di fà).
4.5.7.2.1 Cundizioni
A dimensione di a cunfigurazione di l'array di campu deve esse in a gamma da 1 à 15, inclusive. A Configurazione di l'array di campu deve cuntene un set di Configurazione RF, Indirizzu Registru è Valore. A cunfigurazione di u campu RF deve esse in a gamma da 0x0 - 0x2B per TX Configuration è 0x80 - 0xAB per a cunfigurazione RX, inclusa. L'indirizzu in u campu Registru Indirizzu deve esse in a rispettiva cunfigurazione RF. U valore di u campu deve cuntene un valore chì deve esse scrittu in u registru datu è deve esse 4 bytes longu (formatu little-endian).
4.5.7.2.2 Cumandamentu
Table 69. UPDATE_RF_CONFIGURATION valore di cumanda
Aghjurnate a cunfigurazione RF
Campu Payload | Lunghezza | Valore / Descrizzione | ||
Cunfigurazione[1…n] | 6 Byte | Configurazione RF | 1 byte | Configurazione RF per quale u registru deve esse cambiatu. |
Registru Indirizzu | 1 byte | Registrate l'indirizzu in a tecnulugia RF data. | ||
Valore | 4 Byte | Valore chì deve esse scrittu in u registru. (Little-Endian) |
4.5.7.2.3 Risposta
Table 70. UPDATE_RF_CONFIGURATION valore di risposta
Campu Payload | Lunghezza | Valore / Descrizzione |
Status | 1 byte | Status di l'operazione [Tabella 9]. I valori previsti sò quì sottu: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR PN5190_STATUS_MEMORY_ERROR |
4.5.7.2.4 Avvenimentu
Ùn ci hè micca avvenimenti per questu cumandamentu.
4.5.7.3 GET_ RF_CONFIGURATION
Questa struzzione hè aduprata per leghje una cunfigurazione RF. U registru indirizzu-valore-coppiu sò dispunibuli in a risposta. Per sapè quante coppie deve esse aspittatu, l'infurmazioni di prima dimensione ponu esse ritruvate da u primu TLV, chì indica a durata tutale di u payload.
4.5.7.3.1 Cundizioni
A cunfigurazione di u campu RF deve esse in a gamma da 0x0 - 0x2B per a Configurazione TX è 0x80 -0xAB per a cunfigurazione RX, inclusa.
4.5.7.3.2 Cumandamentu
Table 71. GET_ RF_CONFIGURATION valore di cumandamentu Retrieve a cunfigurazione RF.
Campu Payload | Lunghezza | Valore / Descrizzione |
Configurazione RF | 1 byte | Configurazione RF per quale deve esse recuperatu l'inseme di coppie di valori di registru. |
4.5.7.3.3 Risposta
Table 72. GET_ RF_CONFIGURATION Valore di risposta
Campu Payload | Lunghezza | Valore / Descrizzione | ||
Status | 1 byte | Status di l'operazione [Tabella 9]. I valori previsti sò quì sottu: | ||
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR (Ùn ci hè più dati) |
||||
Coppia[1…n] | 5 Byte | Registru Indirizzu | 1 byte | Registrate l'indirizzu in a tecnulugia RF data. |
Valore | 4 Byte | Valore di registru di 32 bit. |
4.5.7.3.4 Avvenimentu
Ùn ci hè micca avvenimentu per l'istruzzioni.
4.5.8 Manipulazione di u campu RF
4.5.8.1 RF_ON
Questa struzzione hè aduprata per attivà a RF. U regulamentu DPC à FieldOn iniziale serà trattatu in questu cumandamentu.
4.5.8.1.1 Cumandamentu
Table 73. Valore di cumandamentu RF_FIELD_ON
Configurate RF_FIELD_ON.
Campu Payload | Lunghezza | Valore / Descrizzione | ||
RF_on_config | 1 byte | Bit 0 | 0 | Aduprate evità di collisione |
1 | Disattivà a prevenzione di collisione | |||
Bit 1 | 0 | Nisun P2P attivu | ||
1 | P2P attivu |
4.5.8.1.2 Risposta
Table 74. Valore di risposta RF_FIELD_ON
Campu Payload | Lunghezza | Valore / Descrizzione |
Status | 1 byte | Status di l'operazione [Tabella 9]. I valori previsti sò quì sottu: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR PN5190_STATUS_RF_COLLISION_ERROR (U campu RF ùn hè micca attivatu per via di una collisione RF) PN5190_STATUS_TIMEOUT (campu RF ùn hè micca attivatu per via di u timeout) PN5190_STATUS_TXLDO_ERROR (errore TXLDO per via di VUP ùn hè micca dispunibule) PN5190_STATUS_RFCFG_NOT_APPLIED (a cunfigurazione RF ùn hè micca applicata prima di stu cumandamentu) |
4.5.8.1.3 Avvenimentu
Ùn ci hè micca avvenimentu per questa struzzione.
4.5.8.2 RF_OFF
Questa struzzione hè aduprata per disattivà u Campu RF.
4.5.8.2.1 Cumandamentu
Table 75. Valore di cumandamentu RF_FIELD_OFF
Campu Payload | Lunghezza | Valore / Descrizzione |
Viotu | Viotu | viotu |
4.5.8.2.2 Risposta
Table 76. Valore di risposta RF_FIELD_OFF
Campu Payload | Lunghezza | Valore / Descrizzione |
Status | 1 byte | Status di l'operazione [Tabella 9]. I valori previsti sò quì sottu: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR (Ùn ci hè più dati) |
4.5.8.2.3 Avvenimentu
Ùn ci hè micca avvenimentu per questa struzzione.
4.5.9 Pruvate a cunfigurazione di u bus
I signali di bus di prova dispunibuli nantu à e cunfigurazioni PAD selezziunate sò listati in a Sezione 7 per a riferenza.
Questi devenu esse riferiti per furnisce a cunfigurazione per l'istruzzioni di l'autobus di prova cum'è citatu quì sottu.
4.5.9.1 CONFIGURE _TESTBUS_DIGITAL
Questa struzzione hè aduprata per cambià u signale di bus di prova digitale dispunibule nantu à cunfigurazioni di pad selezionate.
4.5.9.1.1 Cumandamentu
Table 77. Valore di cumandamentu CONFIGURE_TESTBUS_DIGITAL
U campu di carica | Lunghezza | Valore / descrizzione | |
TB_SignalIndex | 1 byte | Riferite à Sezione 7 | |
TB_BitIndex | 1 byte | Riferite à Sezione 7 | |
TB_PadIndex | 1 byte | L'indice pad, nantu à quale u signale digitale da esse output | |
0x00 | Pin AUX1 | ||
0x01 | Pin AUX2 | ||
0x02 | Pin AUX3 | ||
0x03 | Pin GPIO0 | ||
0x04 | Pin GPIO1 | ||
0x05 | Pin GPIO2 | ||
0x06 | Pin GPIO3 | ||
0x07-0xFF | RFU |
4.5.9.1.2 Risposta
Table 78. Valore di risposta CONFIGURE_TESTBUS_DIGITAL
Campu Payload | Lunghezza | Valore / Descrizzione |
Status | 1 byte | Status di l'operazione [Tabella 9]. I valori previsti sò quì sottu: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR (Ùn ci hè più dati) |
4.5.9.1.3 Avvenimentu
Ùn ci hè micca avvenimentu per questa struzzione.
4.5.9.2 CONFIGURE_TESTBUS_ANALOG
Questa struzzione hè aduprata per uttene un signalu di bus di prova analogicu dispunibule nantu à cunfigurazioni di pad selezionate.
U signale nantu à u bus di prova analogicu pò esse acquistatu in diverse modi. Sò:
4.5.9.2.1 Modu RAW
In questu modu, u signale sceltu da TB_SignalIndex0 hè spustatu da Shift_Index0, mascheratu cù Mask0 è output in AUX1. In listessu modu, u signale sceltu da TB_SignalIndex1 hè spustatu da Shift_Index1, mascheratu cù Mask1 è output in AUX2.
Stu modu offre flessibilità per u cliente per emette qualsiasi signale chì hè 8 bits largu o menu è chì ùn deve micca bisognu di cunversione di segnu per esse uscita nantu à i pads analogichi.
4.5.9.2.2 Modu COMBINED
In questu modu, u signalu analogicu serà u valore ADCI/ADCQ/pcrm_if_rssi di 10 bit cunvertitu in un valore senza signu, scalatu à 8 bits è poi uscita nantu à i pads AUX1 o AUX2.
Solu unu di i valori cunvertiti ADCI/ADCQ (10-bit) pò esse trasmessi à AUX1/AUX2 in ogni mumentu.
Se u valore di u campu di carica di u Signal Combined_Mode hè 2 (Analogicu è Digitale Combined), allora u bus di prova analogicu è digitale hè instradatu nantu à AUX1 (Segnale Analogicu) è GPIO0 (Segnale Digitale).
I signali da esse instradati sò cunfigurati in l'indirizzu EEPROM citatu quì sottu:
0xCE9 - TB_SignalIndex
0xCEA - TB_BitIndex
0xCEB - TB_Index analogicu
L'indice di bus di prova è u bit di bus di prova anu da esse cunfigurati in EEPROM prima di emette u modu cumminatu cù l'opzione 2.
Nota:
L'ospite furnisce tutti i campi, indipendentemente da l'applicabilità di u campu in modu "cru" o "cumbinatu". U PN5190 IC cunsidereghja solu i valori di u campu applicabili.
4.5.9.2.3 Cumandamentu
Table 79. Valore di cumandamentu CONFIGURE_TESTBUS_ANALOG
U campu di carica | Lunghezza | Valore / descrizzione | Applicabilità di u campu per u modu cumminatu | |
bConfig | 1 byte | Bits cunfigurabili. Riferite à Tabella 80 | Iè | |
Signal_Mode Combined | 1 byte | 0 – ADCI/ADCQ 1 – pcrm_if_rssi |
Iè | |
2 - Analogicu è Digitale Cumminatu | ||||
3 - 0xFF - Riservatu |
TB_SignalIndex0 | 1 byte | Indice di signale di u signale analogicu. Riferite à Sezione 7 | Iè | |
TB_SignalIndex1 | 1 byte | Indice di signale di u signale analogicu. Riferite à Sezione 7 | Iè | |
Shift_Index0 | 1 byte | DAC0 input shift positions. A direzzione serà decisa per bit in bConfig [1]. | Innò | |
Shift_Index1 | 1 byte | DAC1 input shift positions. A direzzione serà decisa per bit in bConfig [2]. | Innò | |
maschera 0 | 1 byte | Mascara DAC0 | Innò | |
maschera 1 | 1 byte | Mascara DAC1 | Innò |
Table 80. Config bitmask
b7 | b6 | b5 | b4 | b3 | b2 | b1 | b0 | Descrizzione | Applicabile à u modu |
X | X | Gamma di variazione di output DAC1 - 0, 1, 2 | Crudu | ||||||
X | X | Gamma di variazione di output DAC0 - 0, 1, 2 | Crudu | ||||||
X | In modu cumminatu, signale nantu à u pin AUX1/AUX2 0 ➜ Signal su AUX1 1 ➜ Signal su AUX2 |
Cumminatu | |||||||
X | Direzzione di cambiamentu di input DAC1 0 ➜ Shift right 1 ➜ Sposta a sinistra |
Crudu | |||||||
X | Direzzione di cambiamentu di input DAC0 0 ➜ Shift right 1 ➜ Sposta a sinistra |
Crudu | |||||||
X | Modu. 0 ➜ Modu crudu 1 ➜ Modu cumminatu |
Crudu / Cumminatu |
4.5.9.2.4 Risposta
Table 81. Valore di risposta CONFIGURE_TESTBUS_ANALOG
Campu Payload | Lunghezza | Valore / Descrizzione |
Status | 1 byte | Status di l'operazione [Tabella 9]. I valori previsti sò quì sottu: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR (Ùn ci hè più dati) |
4.5.9.2.5 Avvenimentu
Ùn ci hè micca avvenimentu per questa struzzione.
4.5.9.3 CONFIGURE_MULTIPLE_TESTBUS_DIGITAL
Questa struzzione hè aduprata per cambià parechji segnali di bus di prova digitale dispunibili nantu à cunfigurazioni di pad selezionate.
Nota: Se sta lunghezza hè ZERO, un bus di prova digitale hè RESET.
4.5.9.3.1 Cumandamentu
Table 82. Valore di cumandamentu CONFIGURE_MULTIPLE_TESTBUS_DIGITAL
U campu di carica | Lunghezza | Valore / descrizzione | |
TB_SignalIndex #1 | 1 byte | Riferite à 8 sottu | |
TB_BitIndex #1 | 1 byte | Riferite à 8 sottu | |
TB_PadIndex #1 | 1 byte | L'indice pad, nantu à quale u signale digitale da esse output | |
0x00 | Pin AUX1 | ||
0x01 | Pin AUX2 | ||
0x02 | Pin AUX3 | ||
0x03 | Pin GPIO0 | ||
0x04 | Pin GPIO1 | ||
0x05 | Pin GPIO2 | ||
0x06 | Pin GPIO3 | ||
0x07-0xFF | RFU | ||
TB_SignalIndex #2 | 1 byte | Riferite à 8 sottu | |
TB_BitIndex #2 | 1 byte | Riferite à 8 sottu | |
TB_PadIndex #2 | 1 byte | L'indice pad, nantu à quale u signale digitale da esse output | |
0x00 | Pin AUX1 | ||
0x01 | Pin AUX2 | ||
0x02 | Pin AUX3 | ||
0x03 | Pin GPIO0 | ||
0x04 | Pin GPIO1 | ||
0x05 | Pin GPIO2 | ||
0x06 | Pin GPIO3 | ||
0x07-0xFF | RFU |
4.5.9.3.2 Risposta
Table 83. Valore di risposta CONFIGURE_MULTIPLE_TESTBUS_DIGITAL
Campu Payload | Lunghezza | Valore / Descrizzione |
Status | 1 byte | Status di l'operazione [Tabella 2]. I valori previsti sò quì sottu: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR (Ùn ci hè più dati) |
4.5.9.3.3 Avvenimentu
Ùn ci hè micca avvenimentu per questa struzzione.
4.5.10 Configurazione CTS
4.5.10.1 CTS_ENABLE
Questa struzzione hè aduprata per attivà / disattivà a funzione di logging CTS.
4.5.10.1.1 Cumandamentu
Table 84. Valore di cumanda CTS_ENABLE
Payload Field Lunghezza Valore / Descrizzione | ||||
Attivà / Disattivà | 1 byte | Bit 0 | 0 | Disattivà a Funzione di Logging CTS |
1 Attivate a Funzione di Logging CTS |
||||
Bit 1-7 | RFU |
4.5.10.1.2 Risposta
Table 85. Valore di risposta CTS_ENABLE
Campu Payload | Lunghezza | Valore / Descrizzione |
Status | 1 byte | Status di l'operazione [Tabella 9]. I valori previsti sò quì sottu: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR (Ùn ci hè più dati) |
4.5.10.1.3 Avvenimentu
A tabella seguente mostra i dati di l'avvenimentu chì saranu mandati cum'è parte di u messagiu di l'avvenimentu cum'è mostra in Figura 12 è Figura 13.
Table 86. Questu informa l'ospitu chì e dati sò stati ricevuti. EVT_CTS_FATTO
Campu Payload | Lunghezza | Valore / Descrizzione |
Avvenimentu | 1 byte | 00 ... TRIGGER hè accadutu, i dati sò pronti per a ricezione. |
4.5.10.2 CTS_CONFIGURE
Questa struzzione hè aduprata per cunfigurà tutti i registri CTS richiesti, cum'è triggers, registri bus test, sampcunfigurazione ling etc.,
Nota:
[1] furnisce una megliu comprensione di a cunfigurazione CTS. I dati catturati per esse mandati cum'è parte di a risposta à u cumandimu Section 4.5.10.3.
4.5.10.2.1 Cumandamentu
Table 87. Valore di cumanda CTS_CONFIGURE
Campu Payload | Lunghezza | Valore / Descrizzione |
PRE_TRIGGER_SHIFT | 1 byte | Definisce a durata di a sequenza di acquisizione dopu à u trigger in unità di 256 bytes. 0 significa senza turnu; n significa n * 256 bytes block shift. Nota: validu solu se TRIGGER_MODE hè "PRE" o "COMB". |
TRIGGER_MODE | 1 byte | Specifica u modu di Acquisizione per esse usatu. |
0x00 - Modu POST | ||
0x01 - RFU | ||
0x02 - Modu PRE | ||
0x03 - 0xFF - Invalidu | ||
RAM_PAGE_WIDTH | 1 byte | Specifica a quantità di memoria in chip chì hè coperta da una acquisizione. A granularità hè scelta da u disignu cum'è 256 Byte (vale à dì 64 parole 32-bit). I valori validi sò cum'è quì sottu: 0x00h - 256 bytes 0x02h - 768 bytes 0x01h - 512 bytes 0x03h - 1024 bytes 0x04h - 1280 bytes 0x05h - 1536 bytes 0x06h - 1792 bytes 0x07h - 2048 bytes 0x08h - 2304 bytes 0x09h - 2560 bytes 0x0Ah - 2816 bytes 0x0Bh - 3072 bytes 0x0Ch - 3328 bytes 0x0Dh - 3584 bytes 0x0Eh - 3840 bytes 0x0Fh - 4096 bytes 0x10h - 4352 bytes 0x11h - 4608 bytes 0x12h - 4864 bytes 0x13h - 5120 bytes 0x14h - 5376 bytes 0x15h - 5632 bytes 0x16h - 5888 bytes 0x17h - 6144 bytes 0x18h - 6400 bytes 0x19h - 6656 bytes 0x1Ah - 6912 bytes 0x1Bh - 7168 bytes 0x1Ch - 7424 bytes 0x1Dh - 7680 bytes 0x1Eh - 7936 bytes 0x1Fh - 8192 bytes |
SAMPLE_CLK_DIV | 1 byte | U valore decimale di stu campu specifica u fattore di divisione di a freccia di u clock per esse utilizatu durante l'acquisizione. CTS clock = 13.56 MHz / 2SAMPLE_CLK_DIV |
00-13560 kHz 01-6780 kHz 02-3390 kHz 03-1695 kHz 04-847.5 kHz 05-423.75 kHz 06-211.875 kHz 07-105.9375 kHz 08-52.96875 kHz 09-26.484375 kHz 10-13.2421875 kHz 11-6.62109375 kHz 12-3.310546875 kHz 13-1.6552734375 kHz 14-0.82763671875 kHz 15-0.413818359375 kHz |
||
SAMPLE_BYTE_SEL | 1 byte | Questi bits sò usati per specificà quale byte di i dui busi di input di 16 bits cuntribuiscenu à u mecanismu di interleave chì genera dati per esse trasferitu à a memoria in chip. U significatu è l'usu di elli dipende da SAMPLE_MODE_SEL valori.
Nota: U valore datu hè sempre mascheratu cù 0x0F è allora u valore efficace hè cunsideratu. |
SAMPLE_MODE_SEL | 1 byte | Sceglie u sampling interleave mode cum'è descrittu da e specifiche di cuncepimentu CTS. U valore decimale 3 hè riservatu è serà trattatu cum'è 0. Nota: U valore datu hè sempre mascheratu cù 0x03, è allora u valore efficace hè cunsideratu. |
TB0 | 1 byte | Sceglie quale bus di prova à esse cunnessu à TB0. Riferite à Sezione 7 (Valeur TB_ Signal_Index) |
TB1 | 1 byte | Sceglie quale bus di prova à esse cunnessu à TB1. Riferite à Sezione 7 (Valeur TB_ Signal_Index) |
TB2 | 1 byte | Sceglie quale bus di prova à esse cunnessu à TB2. Riferite à Sezione 7 (Valeur TB_ Signal_Index) |
TB3 | 1 byte | Sceglie quale bus di prova à esse cunnessu à TB3. Riferite à Sezione 7 (Valeur TB_ Signal_Index) |
TTB_SELECT | 1 byte | Sceglie quale TB da esse cunnessu à e fonti di trigger. Riferite à Sezione 7 (Valeur TB_Signal_Index) |
RFU | 4 Byte | Mandate sempre 0x00000000 |
MISC_CONFIG | 24 Byte | Trigger occurrences, polarity etc. Riferite à [1] per capiscenu a cunfigurazione CTS à aduprà. |
4.5.10.2.2 Risposta
Table 88. CTS_CONFIGURE valore di risposta
Campu Payload | Lunghezza | Valore / Descrizzione |
Status | 1 byte | Status di l'operazione [Tabella 9]. I valori previsti sò quì sottu: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR |
4.5.10.2.3 Avvenimentu
Ùn ci hè micca avvenimentu per questa struzzione.
4.5.10.3 CTS_RETRIEVE_LOG
Questa struzzione recupera u log di dati di i dati di bus di prova catturatiampless guardati in u buffer di memoria.
4.5.10.3.1 Cumandamentu
Table 89. Valore di cumanda CTS_RETRIEVE_LOG
Campu Payload | Lunghezza | Valore / Descrizzione | |
ChunkSize | 1 byte | 0x01-0xFF | Contene u numeru di bytes di dati previsti. |
4.5.10.3.2 Risposta
Table 90. Valore di risposta CTS_RETRIEVE_LOG
Campu Payload | Lunghezza | Valore / Descrizzione |
Status | 1 byte | Status di l'operazione [Tabella 9]. I valori previsti sò quì sottu: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR (Ùn ci hè più dati) PN5190_STATUS_SUCCSES_CHAINING |
||
Dati di log [1…n] | CTSRequest | catturatu Samples Data chunk |
Nota:
A dimensione massima di "Log Data" dipende da u "ChunkSize" chì hè statu furnitu cum'è parte di u cumandamentu.
A dimensione di u logu tutale deve esse dispunibule in a risposta di l'intestazione TLV.
4.5.10.3.3 Avvenimentu
Ùn ci hè micca avvenimentu per questa struzzione.
4.5.11 TEST_MODE Commands
4.5.11.1 ANTENNA_SELF_TEST
Questa struzzione hè aduprata per verificà se l'antenna hè cunnessa è i cumpunenti currispondenti sò populati / assemblati.
Nota:
Stu cumandamentu ùn hè ancu dispunibile. Vede e note di liberazione per a dispunibilità.
4.5.11.2 PRBS_TEST
Questa struzzione hè aduprata per generà a sequenza PRBS per e diverse cunfigurazioni di i protokolli di u Modu Reader è i bitrates. Una volta chì l'istruzzioni hè eseguita, a sequenza di teste PRBS serà dispunibule nantu à RF.
Nota:
L'ospite deve assicurassi chì a cunfigurazione di a tecnulugia RF adatta hè caricata cù a Sezione 4.5.7.1 è a RF hè attivata cù u cumandamentu di a Sezione 4.5.8.1 prima di mandà stu cumandamentu.
4.5.11.2.1 Cumandamentu
Table 91. Valore di cumanda PRBS_TEST
Campu Payload | Lunghezza | Valore / Descrizzione | |
prbs_type | 1 byte | 00 | PRBS9 (par défaut) |
01 | PRBS15 | ||
02-FF | RFU |
4.5.11.2.2 Risposta
Table 92. PRBS_TEST valore di risposta
Campu Payload | Lunghezza | Valore / Descrizzione |
Status | 1 byte | Status di l'operazione [Tabella 9]. I valori previsti sò quì sottu: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR PN5190_STATUS_NO_RF_FIELD |
4.5.11.2.3 Avvenimentu
Ùn ci hè micca avvenimentu per questa struzzione.
4.5.12 Chip Info Commands
4.5.12.1 GET_DIEID
Questa struzzione hè aduprata per leghje l'ID di u chip PN5190.
4.5.12.1.1 Cumandamentu
Table 93. GET_DIEID Valore di cumanda
Campu Payload | Lunghezza | Valore / Descrizzione |
– | – | Nisuna dati in carica |
4.5.12.1.2 Risposta
Table 94. Valore di risposta GET_DIEID
U campu di carica | Lunghezza | Valore / descrizzione |
Status | 1 byte | Status di l'operazione [Tabella 9]. I valori previsti sò quì sottu: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR (ùn ci hè più dati) |
||
I valori | 16 Byte | 16 bytes die ID. |
4.5.12.1.3 Avvenimentu
Ùn ci hè micca avvenimenti per questu cumandamentu.
4.5.12.2 GET_VERSION
Questa struzzione hè aduprata per leghje a versione HW, a versione ROM è a versione FW di u chip PN5190.
4.5.12.2.1 Cumandamentu
Table 95. Valore di cumandamentu GET_VERSION
Campu Payload | Lunghezza | Valore / Descrizzione |
– | – | Nisuna dati in carica |
Ci hè un cumandamentu DL_GET_VERSION (Section 3.4.4) dispunibule in u modu di scaricamentu chì pò esse usatu per leghje a versione HW, a versione ROM è a versione FW.
4.5.12.2.2 Risposta
Table 96. Valore di risposta GET_VERSION
Campu Payload | Lunghezza | Valore / Descrizzione |
Status | 1 byte | Status di l'operazione [Tabella 9]. I valori previsti sò quì sottu: |
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR (Ùn ci hè più dati) |
||
HW_V | 1 byte | Versione di hardware |
RO_V | 1 byte | codice ROM |
FW_V | 2 bytes | Versione di firmware (aduprata per scaricà) |
RFU1-RFU2 | 1-2 bytes | – |
A risposta prevista per una versione diversa di PN5190 IC hè citata in (Section 3.4.4)
4.5.12.2.3 Avvenimentu
Ùn ci hè micca avvenimenti per questu cumandamentu.
Appendice (Exampl)
Stu appendice hè custituitu da l'examples per i cumandamenti sopra citati. L'exampi sò solu per scopu illustrativu per vede u cuntenutu di u cumandamentu.
5.1 Esample per WRITE_REGISTER
A seguita sequenza di dati mandati da l'ospite per scrive un valore 0x12345678 in u registru 0x1F.
Quadru di cumanda mandatu à PN5190: 0000051F78563412
Host per aspittà una interruzzione.
Quandu l'ospite leghje u quadru di risposta ricevutu da PN5190 (indicazione di operazione successu): 00000100 5.2 Example per WRITE_REGISTER_OR_MASK
A seguita sequenza di dati mandati da l'ospite per fà una operazione logica OR in u registru 0x1F cù una maschera cum'è 0x12345678
Quadru di cumanda mandatu à PN5190: 0100051F78563412
Host per aspittà una interruzzione.
Quandu l'ospite leghje u quadru di risposta ricevutu da PN5190 (indicazione di operazione successu): 01000100
5.3 Esample per WRITE_REGISTER_AND_MASK
A seguita sequenza di dati mandati da l'ospite per fà una operazione logica AND in u registru 0x1F cù una maschera cum'è 0x12345678
Quadru di cumanda mandatu à PN5190: 0200051F78563412
Host per aspittà una interruzzione.
Quandu l'ospite leghje u quadru di risposta ricevutu da PN5190 (indicazione di operazione successu): 02000100
5.4 Esample per WRITE_REGISTER_MULTIPLE
Dopu a sequenza di dati mandati da l'ospite per eseguisce l'operazione logica AND in u registru 0x1F cù una maschera cum'è 0x12345678, è nantu à l'operazione logica OR in u registru 0x20 cù una maschera cum'è 0x11223344, è una scrittura per registrà 0x21 cù un valore cum'è 0xAABBCCDD.
Quadru di cumanda mandatu à PN5190: 0300121F03785634122002443322112101DDCCBBAA
Host per aspittà una interruzzione.
Quandu l'ospite leghje u quadru di risposta ricevutu da PN5190 (indicazione di operazione successu): 03000100
5.5 Esample per READ_REGISTER
Dopu a sequenza di dati mandati da l'ospite per leghje u cuntenutu di u registru 0x1F è assumendu chì u registru hà u valore di 0x12345678
Quadru di cumanda mandatu à PN5190: 0400011F
Host per aspittà una interruzzione.
Quandu l'ospite leghje u quadru di risposta ricevutu da PN5190 (indicazione di operazione successu): 0400050078563412
5.6 Esample per READ_REGISTER_MULTIPLE
Dopu a sequenza di dati mandati da l'ospite per leghje u cuntenutu di i registri 0x1F chì cuntenenu u valore di 0x12345678, è u registru 0x25 chì cuntenenu u valore di 0x11223344
Quadru di cumanda mandatu à PN5190: 0500021F25
Host per aspittà una interruzzione.
Quandu l'ospite hà lettu a risposta, u quadru ricevutu da PN5190 (indica l'operazione successu): 050009007856341244332211
5.7 Esample per WRITE_E2PROM
Dopu a sequenza di dati mandati da l'ospite per scrive à e locu E2PROM 0x0130 à 0x0134 cù u cuntenutu cum'è 0x11, 0x22, 0x33, 0x44, 0x55
Quadru di cumanda mandatu à PN5190: 06000730011122334455
Host per aspittà una interruzzione.
Quandu l'ospitu leghje a risposta, u quadru ricevutu da PN5190 (indica l'operazione successu): 06000100
5.8 Esample per READ_E2PROM
A seguita sequenza di dati mandati da l'ospite per leghje da e locu E2PROM 0x0130 à 0x0134 induve u cuntenutu almacenatu hè: 0x11, 0x22, 0x33, 0x44, 0x55
Quadru di cumanda mandatu à PN5190: 07000430010500
Host per aspittà una interruzzione.
Quandu l'ospite hà lettu a risposta, u quadru ricevutu da PN5190 (indica l'operazione successu): 070006001122334455
5.9 Esample per TRANSMIT_RF_DATA
Dopu a sequenza di dati mandati da l'ospite per mandà un cumandamentu REQA (0x26), cù u numeru di bit da trasmette cum'è '0x07', assumendu chì i registri richiesti sò impostati prima è RF hè attivatu.
Quadru di cumanda mandatu à PN5190: 0800020726
Host per aspittà una interruzzione.
Quandu l'ospitu leghje a risposta, u quadru ricevutu da PN5190 (indica l'operazione successu): 08000100
5.10 Esample per RETREIVE_RF_DATA
Dopu a sequenza di dati mandati da l'ospite per riceve i dati ricevuti / almacenati in u buffer CLIF internu (assumendu chì 0x05 hè statu ricevutu), assumendu chì un TRANSMIT_RF_DATA hè digià mandatu dopu chì RF hè attivatu.
Quadru di cumanda mandatu à PN5190: 090000
Host per aspittà una interruzzione.
Quandu l'ospitu leghje a risposta, u quadru ricevutu da PN5190 (indica l'operazione successu): 090003000400
5.11 Esample per EXCHANGE_RF_DATA
Dopu a sequenza di dati mandati da l'ospite per trasmette un REQA (0x26), cù u numeru di bit in l'ultimu byte per mandà stabilitu cum'è 0x07, cù tuttu u statu da riceve cù e dati. L'assunzione hè chì i registri RF richiesti sò digià impostati è RF hè attivatu.
Quadru di cumanda mandatu à PN5190: 0A0003070F26
Host per aspittà una interruzzione.
Quandu l'ospite hà lettu a risposta, u quadru ricevutu da PN5190 (indica l'operazione successu): 0A000 F000200000000000200000000004400
5.12 Esample per LOAD_RF_CONFIGURATION
Dopu a sequenza di dati mandati da l'ospite per stabilisce a cunfigurazione RF. Per TX, 0x00 è per RX, 0x80
Quadru di cumanda mandatu à PN5190: 0D00020080
Host per aspittà una interruzzione.
Quandu l'ospitu leghje a risposta, u quadru ricevutu da PN5190 (indica l'operazione successu): 0D000100
5.13 Esample per UPDATE_RF_CONFIGURATION
Dopu a sequenza di dati mandati da l'ospite per aghjurnà a cunfigurazione RF. Per TX, 0x00, cù indirizzu di registru per CLIF_CRC_TX_CONFIG è valore cum'è 0x00000001
Quadru di cumanda mandatu à PN5190: 0E0006001201000000
Host per aspittà una interruzzione.
Quandu l'ospite hà lettu a risposta, u quadru ricevutu da PN5190 (indica l'operazione successu): 0E000100
5.14 Esample per RF_ON
Dopu a sequenza di dati mandati da l'ospite per accende u campu RF utilizendu evità di collisione è No P2P attivu. Si assume, a cunfigurazione RF TX è RX currispondente sò digià stabilite in PN5190.
Quadru di cumanda mandatu à PN5190: 10000100
Host per aspittà una interruzzione.
Quandu l'ospitu leghje a risposta, u quadru ricevutu da PN5190 (indica l'operazione successu): 10000100
5.15 Esample per RF_OFF
A seguita sequenza di dati mandati da l'ospite per disattivà u campu RF.
Quadru di cumanda mandatu à PN5190: 110000
Host per aspittà una interruzzione.
Quandu l'ospitu leghje a risposta, u quadru ricevutu da PN5190 (indica l'operazione successu): 11000100
Appendice (indici di cunfigurazione di u protocolu RF)
Questu appendice hè custituitu da l'indici di cunfigurazione di u protocolu RF supportati da u PN5190.
I paràmetri di cunfigurazione TX è RX anu da esse aduprati in Section 4.5.7.1, Section 4.5.7.2, Section 4.5.7.3 cumandamenti.
Appendice (signali CTS è TESTBUS)
A tabella sottu specifica i diversi signali dispunibili da PN5190 per catturà cù l'istruzzioni CTS (Section 4.5.10) è l'istruzzioni TESTBUS.
Quessi anu da esse usatu per Section 4.5.9.1, Section 4.5.9.2, Section 4.5.10.2 cumanda.
Abbreviazioni
Table 97. Abbreviations
Abbr. | Sensu |
CLK | Clock |
DWL_REQ | Scaricate u pin di dumanda (chjamatu ancu DL_REQ) |
EEPROM | Memoria Programmable Elettricamente Sguassabile di Lettura Solu |
FW | Firmware |
GND | Terra |
GPIO | Purpose General Purpose Input Output |
HW | Hardware |
I²C | Circuitu Inter-Integratu (bus di dati seriale) |
IRQs | Interrupt Request |
ISO / IEC | Organizazione Standard Internaziunale / Cumunità Elettrotecnica Internaziunale |
NFC | Comunicazione vicinu à u campu |
OS | Sistema upirativu |
PCD | Dispositivu di accoppiamentu di prossimità (lettore senza cuntattu) |
PICC | Scheda di circuit integrata di prossimità (carta senza cuntattu) |
PMU | Unità di gestione di l'energia |
POR | Reset di putenza |
RF | Radiofrequenza |
RST | Resettate |
SFWU | modalità di scaricamentu di firmware sicuru |
SPI | Interfaccia Periferica Seriale |
VEN | V Abilita pin |
Referenze
[1] Parte di cunfigurazione CTS di NFC Cockpit, https://www.nxp.com/products/:NFC-COCKPIT[2] Scheda di dati PN5190 IC, https://www.nxp.com/docs/en/data-sheet/PN5190.pdf
L'infurmazione legale
10.1 Definizioni
Draft - Un statutu di prughjettu nantu à un documentu indica chì u cuntenutu hè sempre in re internuview è sottumessu à appruvazioni formale, chì pò esse risultatu in mudificazioni o aghjunte. NXP Semiconductors ùn dà alcuna rapprisintazioni o garanzie in quantu à l'accuratezza o a completezza di l'infurmazioni incluse in una versione bozza di un documentu è ùn hà micca responsabilità per e cunsequenze di l'usu di tali informazioni.
10.2 Disclaims
Garanzia limitata è responsabilità - L'infurmazione in stu documentu hè ritenuta precisa è affidabile. Tuttavia, NXP Semiconductors ùn dà alcuna rapprisintazioni o garanzie, espresse o implicite, in quantu à l'accuratezza o a completezza di tali informazioni è ùn anu micca responsabilità per e cunsequenze di l'usu di tali informazioni. NXP Semiconductors ùn assume micca rispunsabilità per u cuntenutu di stu documentu se furnitu da una fonte d'infurmazioni fora di NXP Semiconductors.
In nessun casu, NXP Semiconductors serà rispunsevule per danni indiretti, incidentali, punitivi, speciali o cunsequenziali (cumpresu - senza limitazione prufitti persi, risparmii persi, interruzioni di l'affari, costi ligati à a rimozione o a sostituzione di qualsiasi prudutti o carichi di rilavorazione) micca tali danni sò basati nantu à tort (cumpresa negligenza), garanzia, violazione di cuntrattu o qualsiasi altra teoria legale.
Nonostante qualsiasi dannu chì u cliente puderia incorre per qualsiasi ragione, a responsabilità cumulativa è cumulativa di NXP Semiconductors versu u cliente per i prudutti descritti quì serà limitata in cunfurmità cù u
Termini è cundizioni di vendita cummerciale di NXP Semiconductors.
U dirittu di fà cambiamenti - NXP Semiconductors si riserva u dirittu di fà cambiamenti à l'infurmazioni publicate in stu documentu, cumprese senza limitazione specificazioni è descrizzioni di i prudutti, in ogni mumentu è senza avvisu. Stu documentu rimpiazza è rimpiazza tutte l'infurmazioni furnite prima di a publicazione di questu.
Idoneità à l'usu - I prudutti NXP Semiconductors ùn sò micca cuncepiti, autorizati o garantiti per esse adattati per l'usu in supportu di vita, sistemi o equipaggiamenti critichi per a vita o per a sicurezza, nè in applicazioni induve fallimentu o malfunzionamentu di un pruduttu NXP Semiconductors pò esse ragionevolmente aspettatu. per risultatu in ferite persunale, morte o danni severi à a pruprietà o à l'ambiente. NXP Semiconductors è i so fornitori ùn accettanu alcuna responsabilità per l'inclusione è / o l'usu di i prudutti NXP Semiconductors in tali equipaghji o applicazioni è per quessa, tali inclusioni è / o usu sò à u risicu di u cliente.
Applicazioni - L'applicazioni chì sò descritte quì per qualsiasi di sti prudutti sò solu per scopi illustrativi. NXP Semiconductors ùn face alcuna rappresentanza o garanzia chì tali applicazioni seranu adattate per l'usu specificatu senza più teste o mudificazione.
I clienti sò rispunsevuli di u disignu è u funziunamentu di e so applicazioni è prudutti chì utilizanu i prudutti NXP Semiconductors, è NXP Semiconductors ùn accetta micca responsabilità per qualsiasi assistenza cù applicazioni o cuncepimentu di i prudutti di i clienti. Hè a sola rispunsabilità di u cliente per determinà se u pruduttu NXP Semiconductors hè adattatu è adattatu per l'applicazioni di u cliente è i prudutti pianificati, è ancu per l'applicazione pianificata è l'usu di i clienti di terze parti di u cliente. I Clienti duveranu furnisce un disignu adattatu è salvaguardi operativi per minimizzà i risichi assuciati cù e so applicazioni è prudutti.
NXP Semiconductors ùn accetta alcuna responsabilità in relazione à qualsiasi difettu, dannu, costi o prublema chì hè basatu annantu à qualsiasi debule o predefinitu in l'applicazioni o i prudutti di u cliente, o l'applicazione o l'usu da u cliente (s) terzu di u cliente. U Cliente hè rispunsevuli di fà tutte e teste necessarie per l'applicazioni è i prudutti di u cliente chì utilizanu i prudutti NXP Semiconductors per evità un difettu di l'applicazioni è i prudutti o di l'applicazione o l'usu da i clienti di terzu di u cliente. NXP ùn accetta alcuna responsabilità in questu rispettu.
NXP BV - NXP BV ùn hè micca una sucità operativa è ùn distribuisce o vende prudutti.
10.3 Licenze
Acquistu di IC NXP cù tecnulugia NFC - L'acquistu di un IC NXP Semiconductors chì hè in cunfurmità cù unu di i standard di Near Field Communication (NFC) ISO/IEC 18092 è ISO/IEC 21481 ùn trasmette micca una licenza implicita sottu à qualsiasi drittu di brevettu violatu da l'implementazione di qualsiasi di questi standard. L'acquistu di NXP Semiconductors IC ùn include micca una licenza per alcuna patente NXP (o altru dirittu IP) chì copre cumminazioni di quelli prudutti cù altri prudutti, sia hardware o software.
10.4 Marchi
Avvisu: Tutte e marche riferite, i nomi di i prudutti, i nomi di serviziu è i marchi sò a pruprietà di i so rispettivi pruprietarii.
NXP - a parolla è u logo sò marchi di NXP BV
EdgeVerse - hè una marca di NXP BV
FeliCa - hè una marca di Sony Corporation.
MIFARE - hè una marca di NXP BV
MIFARE Classic - hè una marca di NXP BV
Per piacè esse cuscenti chì avvisi impurtanti riguardanti stu documentu è u pruduttu (s) descritti quì, sò stati inclusi in a sezione "Informazioni legali".
© 2023 NXP BV
Per più infurmazione, visitate: http://www.nxp.com
Tutti i diritti riservati.
Data di liberazione: 25 May 2023
Identificatore di u documentu: UM11942
Documenti / Risorse
![]() |
NXP PN5190 NFC Frontend Controller [pdfManuale d'usu PN5190, PN5190 NFC Frontend Controller, NFC Frontend Controller, Controller, UM11942 |