Логотип NXPUM11942
Рівень інструкцій PN5190
Інтерфейсний контролер NFC

Посібник користувача

Інтерфейсний контролер NFC PN5190

Інформація про документ

Інформація Зміст
Ключові слова PN5190, NFC, інтерфейс NFC, контролер, рівень інструкцій
Анотація Цей документ описує команди рівня інструкцій і відповіді на роботу з хост-контролера для оцінки роботи зовнішнього контролера NFC NXP PN5190. PN5190 — це інтерфейсний контролер NFC нового покоління. Метою цього документа є опис команд інтерфейсу для роботи з інтерфейсним контролером NFC PN5190. Щоб отримати додаткові відомості про роботу зовнішнього контролера NFC PN5190, перегляньте специфікацію та додаткову інформацію.

Історія переглядів

Рев Дата опис
3.7 20230525 • Тип і назву документа змінено з доповнення до опису продукту до посібника користувача
• Редакційне очищення
• Оновлені редакційні терміни для сигналів SPI
• Додано команду GET_CRC_USER_AREA в таблицю 8 у розділі 4.5.2.3
• Оновлено різні диференційовані деталі для PN5190B1 і PN5190B2 у розділі 3.4.1
• Оновлена ​​відповідь розділу 3.4.7
3.6 20230111 Опис відповіді Enhanced Check Integrity у Розділі 3.4.7
3.5 20221104 Розділ 4.5.4.6.3 «Подія»: додано
3.4 20220701 • Додано команду CONFIGURE_MULTIPLE_TESTBUS_DIGITAL у таблицю 8 у розділі 4.5.9.3
• Оновлено Розділ 4.5.9.2.2
3.3 20220329 Покращено опис апаратного забезпечення в розділі 4.5.12.2.1 «Команда» та розділі 4.5.12.2.2 «Відповідь»
3.2 20210910 Номери версій мікропрограми оновлено з 2.1 до 2.01 і 2.3 до 2.03
3.1 20210527 Додано опис команди RETRIEVE_RF_FELICA_EMD_DATA
3 20210118 Перша офіційна версія

вступ

1.1 Вступ
Цей документ описує інтерфейс хоста PN5190 та API. Інтерфейсом фізичного хоста, який використовується в документації, є SPI. Фізична характеристика SPI в документі не розглядається.
Розділення кадрів і керування потоком є ​​частиною цього документа.
1.1.1 Сфера застосування
Документ описує логічний рівень, код інструкцій, API, які є актуальними для клієнта.

Спілкування з хостом закінченоview

PN5190 має два основних режими роботи для зв’язку з головним контролером.

  1. Зв’язок на основі HDLL використовується, коли пристрій запускає вхід:
    a. Зашифрований безпечний режим завантаження для оновлення мікропрограми
  2. Зв'язок на основі команд-відповідей TLV (наведено як напрample).

2.1 Режим HDLL
Режим HDLL використовується для формату обміну пакетами для роботи з наведеними нижче режимами роботи IC:

  1. Режим захищеного завантаження мікропрограми (SFWU), див. розділ 3

2.1.1 Опис HDLL
HDLL — це рівень зв’язку, розроблений NXP для забезпечення надійного завантаження FW.
Повідомлення HDLL складається з 2-байтового заголовка, за яким слідує кадр, що містить код операції та корисне навантаження команди. Кожне повідомлення закінчується 16-бітним CRC, як описано на малюнку нижче:Інтерфейсний контролер NFC NXP PN5190 -Заголовок HDLL містить:

  • Трохи шматка. Що вказує, чи це повідомлення є єдиною чи останньою частиною повідомлення (фрагмент = 0). Або якщо, принаймні, йде ще один фрагмент (фрагмент = 1).
  • Довжина корисного навантаження, кодована 10 бітами. Отже, корисне навантаження кадру HDLL може досягати 1023 байтів.

Порядок байтів був визначений як big-endian, що означає Ms Byte спочатку.
CRC16 сумісний зі стандартом X.25 (CRC-CCITT, ISO/IEC13239) із поліномом x^16 + x^12 + x^5 +1 і значенням попереднього завантаження 0xFFFF.
Він обчислюється для всього кадру HDLL, тобто заголовок + кадр.
SampРеалізація C-коду:
статичний uint16_t phHal_Host_CalcCrc16(uint8_t* p, uint32_t dwLength)
{
uint32_t i ;
uint16_t crc_new ;
uint16_t crc = 0xffffU;
для (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;
}
повернення crc;
}
2.1.2 Транспортне відображення через SPI
Для кожного твердження NTS перший байт завжди є ЗАГОЛОВКОМ (байт індикації потоку), він може бути або 0x7F/0xFF щодо операції запису/читання.
2.1.2.1 Послідовність запису з хоста (напрямок DH => PN5190)NXP PN5190 NFC Frontend Controller - Послідовність запису SPI.2.1.2.2 Читання послідовності з хоста (напрямок PN5190 => DH)NXP PN5190 NFC Frontend контролер - послідовність читання2.1.3 Протокол HDLL
HDLL — це протокол команди-відповіді. Усі згадані вище операції запускаються за допомогою певної команди та перевіряються на основі відповіді.
Команди та відповіді відповідають синтаксису повідомлень HDLL: команда надсилається хостом пристрою, відповідь – PN5190. Код операції вказує на тип команди та відповіді.
Зв’язок на основі HDLL, використовується лише тоді, коли PN5190 запускається для переходу в режим «Захищене завантаження мікропрограми».
2.2 Режим TLV
TLV означає Tag Значення довжини.
2.2.1 Визначення фрейму
Кадр SPI починається з спадного фронту NTS і закінчується наростаючим фронтом NTS. SPI за фізичним визначенням є повнодуплексним, але PN5190 використовує SPI в напівдуплексному режимі. Режим SPI обмежений CPOL 0 і CPHA 0 з максимальною тактовою частотою, як зазначено в [2]. Кожен кадр SPI складається з 1 байта заголовка та n байт тіла.
2.2.2 Індикація витратиNXP PN5190 NFC Frontend контролер - індикація потокуХОСТ завжди надсилає як перший байт байт індикації потоку, незалежно від того, чи хоче він записати або прочитати дані з PN5190.
Якщо є запит на читання, а дані відсутні, відповідь містить 0xFF.
Дані після байта індикації потоку є одним або кількома повідомленнями.
Для кожного твердження NTS перший байт завжди є ЗАГОЛОВКОМ (байт індикації потоку), він може бути або 0x7F/0xFF щодо операції запису/читання.
2.2.3 Тип повідомлення
Хост-контролер повинен спілкуватися з PN5190 за допомогою повідомлень, які транспортуються в кадрах SPI.
Існує три типи повідомлень:

  • Команда
  • Відповідь
  • Подія

NXP PN5190 NFC Frontend Controller - хост-контролерНаведена вище діаграма зв’язку показує дозволені вказівки для різних типів повідомлень:

  • Команда і відповідь.
  • Команди надсилаються лише з головного контролера на PN5190.
  • Відповіді та події надсилаються лише з PN5190 до хост-контролера.
  • Відповіді на команди синхронізуються за допомогою контакту IRQ.
  • Хост може надсилати команди, лише коли IRQ низький.
  • Хост може прочитати відповідь/подію лише за високого рівня IRQ.

2.2.3.1 Дозволені послідовності та правилаNXP PN5190 NFC Frontend Controller – Дозволені послідовностіДозволені послідовності команд, відповідей і подій

  • Команда завжди підтверджується відповіддю, або подією, або тим і іншим.
  • Контролеру хосту заборонено надсилати іншу команду, доки не буде отримано відповідь на попередню команду.
  • Події можуть надсилатися асинхронно в будь-який час (НЕ чергуватися в парі команда/відповідь).
  • Повідомлення EVENT ніколи не поєднуються з повідомленнями RESPONSE в одному кадрі.

Примітка: Доступність повідомлення (ВІДПОВІДЬ або ПОДІЯ) сигналізується за допомогою підвищення IRQ з низького. IRQ залишається високим, доки не буде прочитано весь кадр відповіді або події. Лише після того, як сигнал IRQ буде низьким, хост може надіслати наступну команду.
2.2.4 Формат повідомлення
Кожне повідомлення закодовано в структурі TLV з корисним навантаженням у n байтів для кожного повідомлення, за винятком команди SWITCH_MODE_NORMAL.NXP PN5190 NFC Frontend Controller - Формат повідомленняКожен TLV складається з:NXP PN5190 NFC Frontend Controller - TLV складається зТип (T) => 1 байт
Біт [7] Тип повідомлення
0: повідомлення COMMAND або RESPONSE
1: повідомлення ПОДІЯ
Біт [6:0]: код інструкції
Довжина (L) => 2 байти (має бути у форматі big-endian)
Значення (V) => N байт значення/даних TLV (параметри команди / дані відповіді) на основі поля довжини (формат старшого порядку байтів)
2.2.4.1 Розділений кадр
Повідомлення COMMAND має бути надіслано в одному кадрі SPI.
Повідомлення RESPONSE і EVENT можна зчитувати в кількох кадрах SPI, наприклад, щоб зчитувати байт довжини.NXP PN5190 NFC Frontend Controller - кілька кадрів SPIПовідомлення RESPONSE або EVENT можна прочитати в одному SPI-кадрі, але із затримкою NO-CLOCK між ними, наприклад, щоб зчитати байт довжини.NXP PN5190 NFC Frontend Controller - один кадр SPI

Операційний режим завантаження IC – захищений режим завантаження програмного забезпечення

3.1 Вступ
Частина коду мікропрограми PN5190 постійно зберігається в ПЗП, а решта коду та дані зберігаються у вбудованій флеш-пам’яті. Дані користувача зберігаються у флеш-пам’яті та захищені механізмами захисту від розриву, які забезпечують цілісність і доступність даних. Щоб надати клієнтам NXP функції, сумісні з останніми стандартами (EMVCo, NFC Forum тощо), можна оновлювати як код, так і дані користувача у FLASH.
Автентичність і цілісність зашифрованого мікропрограмного забезпечення захищено асиметричним/симетричним підписом ключа та механізмом хешування зворотного зв’язку. Перша команда DL_SEC_WRITE містить хеш другої команди та захищена підписом RSA в корисному навантаженні першого кадру. Прошивка PN5190 використовує відкритий ключ RSA для автентифікації першої команди. Зв’язаний хеш у кожній команді використовується для автентифікації наступної команди, щоб гарантувати, що сторонні особи не матимуть доступу до коду мікропрограми та даних.
Корисне навантаження команд DL_SEC_WRITE зашифровано за допомогою ключа AES-128. Після автентифікації кожної команди вміст корисного навантаження розшифровується та записується у флеш-пам’ять мікропрограмою PN5190.
Для мікропрограми NXP NXP відповідає за доставку нових безпечних оновлень мікропрограми разом із новими даними користувача.
Процедура оновлення оснащена механізмом захисту автентичності, цілісності та конфіденційності коду й даних NXP.
Схема кадрових пакетів на основі HDLL використовується для всіх команд і відповідей для захищеного режиму оновлення мікропрограми.
У розділі 2.1 наведено перелікview використаної схеми кадрового пакету HDLL.
Мікросхеми PN5190 підтримують як застаріле зашифроване захищене завантаження програмного забезпечення, так і зашифрований захищений протокол завантаження програмного забезпечення з апаратним шифруванням залежно від використовуваного варіанту.
Це два типи:

  • Застарілий безпечний протокол завантаження FW, який працює лише з версією PN5190 B0/B1 IC.
  • Захищений протокол завантаження FW з апаратним криптографуванням, який працює лише з версією PN5190B2 IC, яка використовує апаратні криптоблоки на чіпі

У наступних розділах пояснюються команди та відповіді режиму безпечного завантаження мікропрограми.
3.2 Як запустити режим «Захищене завантаження прошивки».
На схемі нижче та наступних кроках показано, як запустити режим безпечного завантаження мікропрограми.NXP PN5190 NFC Frontend Controller - режим завантаження прошивкиПопередня умова: PN5190 знаходиться в робочому стані.
Основний сценарій:

  1. Умова входу, коли PIN-код DWL_REQ використовується для входу в режим «Захищене завантаження мікропрограми».
    a. Хост пристрою отримує високий рівень контакту DWL_REQ (дійсно, лише якщо безпечне оновлення мікропрограми через контакт DWL_REQ) АБО
    b. Хост пристрою виконує апаратне скидання для завантаження PN5190
  2. Умова входу, коли PIN-код DWL_REQ не використовується для входу в режим «Захищене завантаження прошивки» (безпінове завантаження).
    a. Хост пристрою виконує апаратне скидання для завантаження PN5190
    b. Хост пристрою надсилає SWITCH_MODE_NORMAL (розділ 4.5.4.5), щоб увійти в звичайний режим програми.
    в. Тепер, коли IC перебуває в звичайному режимі програми, хост пристрою надсилає SWITCH_MODE_DOWNLOAD (розділ 4.5.4.9), щоб увійти в безпечний режим завантаження.
  3. Хост пристрою надсилає команду DL_GET_VERSION (розділ 3.4.4), DL_GET_DIE_ID (розділ 3.4.6) або DL_GET_SESSION_STATE (розділ 3.4.5).
  4. Хост пристрою зчитує з пристрою поточну версію обладнання та мікропрограми, сеанс, Die-id.
    a. Хост пристрою перевіряє статус сеансу, якщо останнє завантаження було завершено
    b. Хост пристрою застосовує правила перевірки версії, щоб вирішити, розпочати завантаження чи завершити завантаження.
  5. Хост пристрою завантажується з a file двійковий код мікропрограми для завантаження
  6. Хост пристрою надає першу команду DL_SEC_WRITE (розділ 3.4.8), яка містить:
    a. Версія нової прошивки,
    b. 16-байтовий nonce довільних значень, які використовуються для обфускації ключа шифрування
    в. Значення дайджесту наступного кадру,
    d. Цифровий підпис самого кадру
  7. Хост пристрою завантажує безпечну послідовність протоколу завантаження в PN5190 за допомогою команд DL_SEC_WRITE (розділ 3.4.8).
  8. Після надсилання останньої команди DL_SEC_WRITE (розділ 3.4.8) хост пристрою виконує команду DL_CHECK_INTEGRITY (розділ 3.4.7), щоб перевірити, чи пам’яті були успішно записані.
  9. Хост пристрою зчитує нову версію мікропрограми та перевіряє статус сеансу, якщо він закритий, для звітування на верхній рівень
  10. Хост пристрою підтягує контакт DWL_REQ до низького рівня (якщо для входу в режим завантаження використовується контакт DWL_REQ)
  11. Хост пристрою виконує апаратне скидання (перемикання контакту VEN) на пристрої, щоб перезавантажити PN5190
    Постумова: мікропрограму оновлено; повідомляється номер нової версії мікропрограми.

3.3 Підпис прошивки та контроль версій
У режимі завантаження мікропрограми PN5190 механізм гарантує, що для мікропрограми NXP буде прийматися лише мікропрограма, підписана та доставлена ​​NXP.
Наведене нижче стосується лише зашифрованої безпечної мікропрограми NXP.
Під час сеансу завантаження надсилається нова 16-бітна версія мікропрограми. Він складається з великого та другорядного чисел:

  • Основне число: 8 біт (MSB)
  • Друге число: 8 біт (LSB)

PN5190 перевіряє, чи новий номер основної версії більший або дорівнює поточному. Якщо ні, захищене завантаження мікропрограми відхиляється, а сеанс залишається закритим.
3.4 Команди HDLL для старого зашифрованого завантаження та апаратного шифрування зашифроване завантаження
У цьому розділі міститься інформація про команди та відповіді, які використовувалися для обох типів завантажень для завантаження мікропрограми NXP.
3.4.1 Коди OP команди HDLL
Примітка: Кадри команд HDLL вирівняні по 4 байти. Невикористані байти корисного навантаження залишаються нульовими.
Таблиця 1. Список кодів OP команд HDLL

PN5190 B0/ B1
(Старе завантаження)
PN5190 B2
(Завантаження за допомогою крипто)
Псевдонім команди опис
0xF0 0xE5 DL_RESET Виконує програмне скидання
0xF1 0xE1 DL_GET_VERSION Повертає номери версій
0xF2 0xDB DL_GET_SESSION_STATE Повертає поточний стан сеансу
0xF4 0xDF DL_GET_DIE_ID Повертає ідентифікатор кубика
0xE0 0xE7 DL_CHECK_INTEGRITY Перевіряє та повертає CRC для різних областей, а також позначки статусу «пройшов/не пройшов» для кожної
0xC0 0x8C DL_SEC_WRITE Записує x байт у пам'ять, починаючи з абсолютної адреси y

3.4.2 Коди операцій відповіді HDLL
Примітка: Кадри відповіді HDLL вирівняні по 4 байти. Невикористані байти корисного навантаження залишаються нульовими. Лише відповіді DL_OK можуть містити значення корисного навантаження.
Таблиця 2. Список кодів OP відповіді HDLL

опкод Псевдонім відповіді опис
0x00 DL_OK Команда пройшла
0x01 DL_INVALID_ADDR Адреса не дозволена
0x0B DL_UNKNOW_CMD Невідома команда
0x0C DL_ABORTED_CMD Послідовність фрагментів завелика
0x1E DL_ADDR_RANGE_OFL_ERROR Адреса поза діапазоном
0x1F DL_BUFFER_OFL_ERROR Буфер занадто малий
0x20 DL_MEM_BSY Пам'ять зайнята
0x21 DL_SIGNATURE_ERROR Невідповідність підпису
0x24 DL_FIRMWARE_VERSION_ERROR Поточна версія дорівнює або вище
0x28 DL_PROTOCOL_ERROR Помилка протоколу
0x2A DL_SFWU_DEGRADED Пошкодження флеш-даних
0x2D PH_STATUS_DL_FIRST_CHUNK Перший шматок отримав
0x2E PH_STATUS_DL_NEXT_CHUNK Зачекайте на наступний шматок
0xC5 PH_STATUS_INTERNAL_ERROR_5 Невідповідність довжини

3.4.3 Команда DL_RESET
Обмін кадрів:
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] Скидання перешкоджає PN5190 надсилати відповідь DL_STATUS_OK. Тому можна отримати лише помилковий статус.
STAT – статус повернення.
3.4.4 Команда DL_GET_VERSION
Обмін кадрів:
PN5190 B0/B1: [HDLL] -> [0x00 0x04 0xF1 0x00 0x00 0x00 0x6E 0xEF] PN5190 B2: [HDLL] -> [0x00 0x04 0xE1 0x00 0x00 0x00 0x75 0x48] [HDLL] <- [0x00 0x08 STAT HW_V RO_V MODEL_ID FM1V FM2V RFU1 RFU2 CRC16] Кадр корисного навантаження відповіді GetVersion:
Таблиця 3. Відповідь на команду GetVersion

Поле Байт опис
STAT 1 Статус
HW_V 2 Апаратна версія
РО_В 3 код ПЗУ
MODEL_ID 4 Ідентифікатор моделі
FMxV 5-6 Версія мікропрограми (використовується для завантаження)
RFU1-RFU2 7-8

Очікувані значення різних полів відповіді та їх відображення наведені нижче:
Таблиця 4. Очікувані значення відповіді команди GetVersion

Тип IC Версія HW (шістнадцяткова) Версія ПЗУ (шістнадцяткова) ID моделі (шістнадцятковий) Версія FW (шістнадцяткова)
PN5190 B0 0x51 0x02 0x00 хх.рр
PN5190 B1 0x52 0x02 0x00 хх.рр
PN5190 B2 0x53 0x03 0x00 хх.рр

3.4.5 Команда DL_GET_SESSION_STATE
Обмін кадрів:
PN5190 B0/B1: [HDLL] -> [0x00 0x04 0xF2 0x00 0x00 0x00 0xF5 0x33] PN5190 B2: [HDLL] -> [0x00 0x04 0xDB 0x00 0x00 0x00 0x31 0x0A] [HDLL] <- [0x00 0x04 STAT SSTA RFU CRC16] Кадр корисного навантаження відповіді GetSession:
Таблиця 5. Відповідь на команду GetSession

Поле Байт опис
STAT 1 Статус
SSTA 2 Стан сесії
• 0x00: закрито
• 0x01: відкрито
• 0x02: заблоковано (більше заборонено завантажувати)
РФУ 3-4

3.4.6 Команда DL_GET_DIE_ID
Обмін кадрів:
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] Кадр корисного навантаження відповіді GetDieId:
Таблиця 6. Відповідь на команду GetDieId

Поле Байт опис
STAT 1 Статус
РФУ 2-4
DIEID 5-20 ID кубика (16 байт)

3.4.7 Команда DL_CHECK_INTEGRITY
Обмін кадрів:
PN5190 B0/B1: [HDLL] -> [0x00 0x04 0xE0 0x00 0x00 0x00 CRC16] PN5190 B2: [HDLL] -> [0x00 0x04 0xE7 0x00 0x00 0x00 0x52 0xD1] [HDLL] <- [0x00 0x20 STAT LEN_DATA LEN_CODE 0x00 [CRC_INFO] [CRC32] CRC16] Кадр корисного навантаження відповіді CheckIntegrity:
Таблиця 7. Відповідь на команду CheckIntegrity

Поле Байт Значення/опис
STAT 1 Статус
ДАНІ LEN 2 Загальна кількість розділів даних
КОД LEN 3 Загальна кількість розділів коду
РФУ 4 Зарезервовано
[CRC_INFO] 58 32 біти (з прямим порядком байтів). Якщо встановлено біт, CRC відповідного розділу є ОК, інакше – Не ОК.
біт Статус цілісності території
[31:28] Зарезервовано [3]
[27:23] Зарезервовано [1]
[22] Зарезервовано [3]
[21:20] Зарезервовано [1]
[19] Область радіочастотної конфігурації (PN5190 B0/B1) [2] Зарезервовано (PN5190 B2) [3]
[18] Область конфігурації протоколу (PN5190 B0/B1) [2] Область конфігурації РЧ (PN5190 B2) [2]
[17] Зарезервовано (PN5190 B0/B1) [3] Область конфігурації користувача (PN5190 B2) [2]
[16:6] Зарезервовано [3]
[5:4] Зарезервовано для PN5190 B0/B1 [3] Зарезервовано для PN5190 B2 [1]
[3:0] Зарезервовано [1]
[CRC32] 9-136 CRC32 з 32 розділів. Кожен CRC складається з 4 байтів, які зберігаються у форматі маленького порядку байтів.
Перші 4 байти CRC мають біт CRC_INFO[31], наступні 4 байти CRC мають біт CRC_INFO[30] і так далі.
  • [1] Цей біт має бути 1, щоб PN5190 працював належним чином (з функціями та/або зашифрованим завантаженням програмного забезпечення).
  • [2] Цей біт встановлено на 1 за замовчуванням, але змінені користувачем налаштування роблять CRC недійсним. Не впливає на функціональність PN5190..
  • [3] Це значення біта, навіть якщо воно дорівнює 0, не має значення. Це значення біта можна ігнорувати.

3.4.8 Команда DL_SEC_WRITE
Команду DL_SEC_WRITE слід розглядати в контексті послідовності команд безпечного запису: зашифроване «захищене завантаження мікропрограми» (часто називають eSFWu).
Команда безпечного запису спочатку відкриває сеанс завантаження та проходить автентифікацію RSA. Наступні передають зашифровані адреси та байти для запису у флеш-пам’ять PN5190. Усі, крім останнього, містять хеш наступних, отже повідомляючи, що вони не останні, і криптографічно об’єднують кадри послідовності.
Інші команди (крім DL_RESET і DL_CHECK_INTEGRITY) можна вставляти між захищеними командами запису послідовності, не порушуючи її.
3.4.8.1 Перша команда DL_SEC_WRITE
Захищена команда запису є першою тоді і тільки тоді, коли:

  1. Довжина кадру 312 байт
  2. Жодної команди безпечного запису не отримано з моменту останнього скидання.
  3. Вбудований підпис успішно перевірено PN5190.

Відповідь на першу команду кадру буде такою: [HDLL] <- [0x00 0x04 STAT 0x00 0x00 0x00 CRC16] STAT — статус повернення.
Примітка: Принаймні один фрагмент даних має бути записаний під час eSFWu, навіть якщо записані дані можуть мати лише один байт. Таким чином, перша команда завжди міститиме хеш наступної команди, оскільки буде щонайменше дві команди.
3.4.8.2 Середні команди DL_SEC_WRITE
Захищена команда запису є «середньою» тоді і тільки тоді, коли:

  1. Код операції такий, як описано в розділі 3.4.1 для команди DL_SEC_WRITE.
  2. Перша захищена команда запису вже була отримана та успішно перевірена раніше
  3. З моменту отримання першої команди захищеного запису скидання не відбулося
  4. Довжина кадру дорівнює розміру даних + розміру заголовка + розміру хешу: FLEN = SIZE + 6 + 32
  5. Дайджест всього кадру дорівнює хеш-значенню, отриманому в попередньому кадрі

Відповідь на першу команду кадру буде такою: [HDLL] <- [0x00 0x04 STAT 0x00 0x00 0x00 CRC16] STAT — статус повернення.
3.4.8.3 Остання команда DL_SEC_WRITE
Захищена команда запису є останньою тоді і тільки якщо:

  1. Код операції такий, як описано в розділі 3.4.1 для команди DL_SEC_WRITE.
  2. Перша захищена команда запису вже була отримана та успішно перевірена раніше
  3. З моменту отримання першої команди захищеного запису скидання не відбулося
  4. Довжина кадру дорівнює розміру даних + розміру заголовка: FLEN = SIZE + 6
  5. Дайджест всього кадру дорівнює хеш-значенню, отриманому в попередньому кадрі

Відповідь на першу команду кадру буде такою: [HDLL] <- [0x00 0x04 STAT 0x00 0x00 0x00 CRC16] STAT — статус повернення.

Режим завантаження IC – звичайний режим роботи

4.1 Вступ
Зазвичай мікросхема PN5190 має працювати в нормальному режимі, щоб отримати від неї функціональність NFC.
Коли PN5190 IC завантажується, він завжди очікує на отримання команд від хоста для виконання операції, якщо тільки події, згенеровані в PN5190 IC, не призвели до завантаження PN5190 IC.
4.2 Перелік командview
Таблиця 8. Список команд PN5190

Код команди Назва команди
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 НАЛАШТУВАТИ TESTBUS_DIGITAL
0x13 CONFIGURE_TESTBUS_ANALOG
0x14 CTS_ENABLE
0x15 CTS_CONFIGURE
0x16 CTS_RETRIEVE_LOG
0x17-0x18 РФУ
0x19 до FW v2.01: RFU
починаючи з версії FW 2.03 і далі: RETRIEVE_RF_FELICA_EMD_DATA
0x1A RECEIVE_RF_DATA
0x1B-0x1F РФУ
0x20 SWITCH_MODE_NORMAL
0x21 SWITCH_MODE_AUTOCOLL
0x22 SWITCH_MODE_STANDBY
0x23 SWITCH_MODE_LPCD
0x24 РФУ
0x25 SWITCH_MODE_DOWNLOAD
0x26 GET_DIEID
0x27 GET_VERSION
0x28 РФУ
0x29 до FW v2.05: RFU
починаючи з версії FW 2.06 і далі: GET_CRC_USER_AREA
0x2A до FW v2.03: RFU
починаючи з FW v2.05 і далі: CONFIGURE_MULTIPLE_TESTBUS_DIGITAL
0x2B-0x3F РФУ
0x40 ANTENNA_SELF_TEST (не підтримується)
0x41 PRBS_TEST
0x42-0x4F РФУ

4.3 Значення статусу відповіді
Нижче наведено значення статусу відповіді, які повертаються як частина відповіді від PN5190 після виконання команди.
Таблиця 9. Значення статусу відповіді PN5190

Статус відповіді Значення статусу відповіді опис
PN5190_STATUS_SUCCESS 0x00 Вказує на те, що операція завершена успішно
PN5190_STATUS_TIMEOUT 0x01 Вказує на те, що виконання команди спричинило тайм-аут
PN5190_STATUS_INTEGRITY_ERROR 0x02 Вказує на те, що виконання команди призвело до помилки цілісності радіочастотних даних
PN5190_STATUS_RF_COLLISION_ERROR 0x03 Вказує на те, що виконання команди призвело до помилки радіочастотного зіткнення
PN5190_STATUS_RFU1 0x04 Зарезервовано
PN5190_STATUS_INVALID_COMMAND 0x05 Вказує, що задана команда недійсна/нереалізована
PN5190_STATUS_RFU2 0x06 Зарезервовано
PN5190_STATUS_AUTH_ERROR 0x07 Вказує на помилку автентифікації MFC (дозвіл відмовлено)
PN5190_STATUS_MEMORY_ERROR 0x08 Вказує на те, що виконання команди призвело до помилки програмування або помилки внутрішньої пам’яті
PN5190_STATUS_RFU4 0x09 Зарезервовано
PN5190_STATUS_NO_RF_FIELD 0x0A Вказує на те, що у внутрішньому радіочастотному полі немає або є помилка (застосовується лише в режимі ініціатора/зчитувача)
PN5190_STATUS_RFU5 0x0B Зарезервовано
PN5190_STATUS_SYNTAX_ERROR 0x0C Вказує на те, що отримано недійсну довжину кадру команди
PN5190_STATUS_RESOURCE_ERROR 0x0D Вказує на те, що сталася помилка внутрішнього ресурсу
PN5190_STATUS_RFU6 0x0E Зарезервовано
PN5190_STATUS_RFU7 0x0F Зарезервовано
PN5190_STATUS_NO_EXTERNAL_RF_FIELD 0x10 Вказує на те, що під час виконання команди немає зовнішнього радіочастотного поля (застосовується лише в режимі картки/цілі)
PN5190_STATUS_RX_TIMEOUT 0x11 Вказує на те, що дані не отримані після запуску RFExchange і минув час очікування RX.
PN5190_STATUS_USER_CANCELLED 0x12 Вказує, що поточну команду, що виконується, перервано
PN5190_STATUS_PREVENT_STANDBY 0x13 Вказує на те, що PN5190 не може перейти в режим очікування
PN5190_STATUS_RFU9 0x14 Зарезервовано
PN5190_STATUS_CLOCK_ERROR 0x15 Вказує на те, що годинник для CLIF не запустився
PN5190_STATUS_RFU10 0x16 Зарезервовано
PN5190_STATUS_PRBS_ERROR 0x17 Вказує на те, що команда PRBS повернула помилку
PN5190_STATUS_INSTR_ERROR 0x18 Вказує на помилку виконання команди (це може включати помилку в параметрах інструкції, синтаксичну помилку, помилку в самій операції, попередні вимоги до інструкції не виконано тощо)
PN5190_STATUS_ACCESS_DENIED 0x19 Вказує на те, що доступ до внутрішньої пам’яті заборонено
PN5190_STATUS_TX_FAILURE 0x1A Вказує на те, що TX через RF не вдалося
PN5190_STATUS_NO_ANTENNA 0x1B Вказує на відсутність антени
PN5190_STATUS_TXLDO_ERROR 0x1C Вказує на наявність помилки в TXLDO, коли VUP недоступний і радіочастоту ввімкнено.
PN5190_STATUS_RFCFG_NOT_APPLIED 0x1D Вказує на те, що РЧ конфігурація не завантажується, коли РЧ увімкнено
PN5190_STATUS_TIMEOUT_WITH_EMD_ERROR 0x1E до FW 2.01: не очікується
починаючи з FW 2.03 і далі:
Вказує на те, що під час обміну з LOG ENABLE BIT встановлено в реєстрі FeliCa EMD, спостерігалася помилка FeliCa EMD
PN5190_STATUS_INTERNAL_ERROR 0x7F Вказує на помилку операції NVM
PN5190_STATUS_SUCCSES_CHAINING 0xAF Вказує, що, крім того, дані очікують на читання

4.4 Події завершеноview
Існує два способи сповіщення хоста про події.
4.4.1 Звичайні події через контакт IRQ
Ці події є такими категоріями:

  1. Завжди ввімкнено – хост завжди отримує сповіщення
  2. Керується хостом – хост отримує сповіщення, якщо в регістрі встановлено відповідний біт дозволу події (EVENT_ENABLE (01h)).

Переривання низького рівня від периферійних IP-адрес, включаючи CLIF, повністю обробляються в мікропрограмі, а хост отримує сповіщення лише про події, перелічені в розділі подій.
Мікропрограмне забезпечення реалізує два регістри подій як регістри оперативної пам’яті, які можна записувати/читати за допомогою команд розділу 4.5.1.1/розділу 4.5.1.5.
Регістр EVENT_ENABLE (0x01) => Увімкнути сповіщення про певні/всі події.
Регістр EVENT_STATUS (0x02) => частина корисного навантаження повідомлення про подію.
Події повинні бути очищені хостом після того, як хост прочитає повідомлення про подію.
Події мають асинхронний характер і сповіщаються хосту, якщо вони ввімкнені в реєстрі EVENT_ENABLE.
Нижче наведено список подій, які мають бути доступні хосту як частина повідомлення про подію.
Таблиця 10. Події PN5190 (вміст EVENT_STATUS)

Біт – діапазон Поле [1] Завжди Увімкнено (Так/Ні)
31 12 РФУ 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
  1. Зауважте, що дві події не об’єднуються, за винятком випадків помилок. У разі помилок під час операції буде встановлено функціональну подію (наприклад, BOOT_EVENT, AUTOCALL_EVENT тощо) і GENERAL_ERROR_EVENT.
  2. Цю подію буде автоматично вимкнено після публікації на хості. Хост повинен знову ввімкнути ці події, якщо він бажає отримувати сповіщення про ці події.

4.4.1.1 Формати повідомлень про події
Формат повідомлення про подію відрізняється залежно від появи події та іншого стану PN5190.
Господар повинен читати tag (T) і довжину повідомлення (L), а потім прочитати відповідну кількість байтів як значення (V) подій.
Загалом повідомлення про подію (див. малюнок 12) містить EVENT_STATUS, як визначено в таблиці 11, а дані події відповідають відповідному біту події, встановленому в EVENT_STATUS.
Примітка:
Для деяких подій корисне навантаження не існує. Наприклад, якщо спрацьовує TIMER0_EVENT, лише EVENT_STATUS надається як частина повідомлення про подію.
Таблиця 11 також детально визначає, чи присутні дані події для відповідної події в повідомленні про подію.NXP PN5190 NFC Frontend Controller – виникли помилкиGENERAL_ERROR_EVENT також може відбуватися з іншими подіями.
У цьому сценарії повідомлення про подію (див. малюнок 13) містить EVENT_STATUS, як визначено в таблиці 11, і GENERAL_ERROR_STATUS_DATA, як визначено в таблиці 14, а потім дані події відповідають відповідному біту події, встановленому в EVENT_STATUS, як визначено в таблиці 11.NXP PN5190 NFC Frontend Controller - форматування, коли сталася помилкаПримітка:
Лише після BOOT_EVENT або після POR, STANDBY, ULPCD хост зможе працювати в нормальному режимі роботи, видаючи команди, перелічені вище.
У разі переривання існуючої запущеної команди, лише після IDLE_EVENT, хост зможе працювати в нормальному режимі роботи, видавши команди, перелічені вище.
4.4.1.2 Різні визначення статусу ПОДІЇ
4.4.1.2.1 Визначення бітів для EVENT_STATUS
Таблиця 11. Визначення для бітів EVENT_STATUS

Біт (До – Від) Подія опис Дані події відповідної події
(якщо є)
31 12 РФУ Зарезервовано
11 11 CTS_EVENT Цей біт встановлюється, коли генерується подія CTS. Таблиця 86
10 10 IDLE_EVENT Цей біт встановлюється, коли поточна команда скасовується через видачу команди SWITCH_MODE_NORMAL. Немає даних про події
9 9 LPCD_CALIBRATION_DONE_
ПОДІЯ
Цей біт встановлюється, коли генерується подія LPCD calibrationdone. Таблиця 16
8 8 LPCD_EVENT Цей біт встановлюється, коли генерується подія LPCD. Таблиця 15
7 7 AUTOCOLL_EVENT Цей біт встановлюється після завершення операції AUTOCOLL. Таблиця 52
6 6 TIMER0_EVENT Цей біт встановлюється, коли відбувається подія TIMER0. Немає даних про події
5 5 TX_OVERCURRENT_ERROR_
ПОДІЯ
Цей біт встановлюється, коли струм на драйвері TX перевищує визначене порогове значення в EEPROM. За цієї умови поле автоматично вимикається перед повідомленням хосту. Зверніться до розділу 4.4.2.2. Немає даних про події
4 4 RFON_DET_EVENT Цей біт встановлюється, коли виявлено зовнішнє радіочастотне поле. Немає даних про події
3 3 RFOFF_DET_EVENT Цей біт встановлюється, коли вже існуюче зовнішнє радіочастотне поле зникає. Немає даних про події
2 2 STANDBY_PREV_EVENT Цей біт встановлюється, коли режим очікування заблоковано через наявність умов запобігання Таблиця 13
1 1 GENERAL_ERROR_EVENT Цей біт встановлюється, якщо існують загальні умови помилки Таблиця 14
0 0 BOOT_EVENT Цей біт встановлюється, коли PN5190 завантажується з POR/Standby Таблиця 12

4.4.1.2.2 Визначення бітів для BOOT_STATUS_DATA
Таблиця 12. Визначення бітів BOOT_STATUS_DATA

Біт до Біт від Статус завантаження Причина завантаження через
31 27 РФУ Зарезервовано
26 26 ULP_STANDBY Причина завантаження через вихід із ULP_STANDBY.
25 23 РФУ Зарезервовано
22 22 BOOT_ RX_ULPDET RX ULPDET призвело до завантаження в режимі ULP-Standby
21 21 РФУ Зарезервовано
20 20 BOOT_SPI Причина завантаження через низький рівень сигналу SPI_NTS
19 17 РФУ Зарезервовано
16 16 BOOT_GPIO3 Причина завантаження через перехід GPIO3 з низького на високий.
15 15 BOOT_GPIO2 Причина завантаження через перехід GPIO2 з низького на високий.
14 14 BOOT_GPIO1 Причина завантаження через перехід GPIO1 з низького на високий.
13 13 BOOT_GPIO0 Причина завантаження через перехід GPIO0 з низького на високий.
12 12 BOOT_LPDET Причина завантаження через наявність зовнішнього радіочастотного поля в режимі очікування/призупинення
11 11 РФУ Зарезервовано
10 8 РФУ Зарезервовано
7 7 BOOT_SOFT_RESET Причина завантаження через програмне скидання IC
6 6 BOOT_VDDIO_LOSS Причина завантаження через втрату VDDIO. Див. розділ 4.4.2.3
5 5 BOOT_VDDIO_START Причина завантаження, якщо в режим очікування введено з VDDIO LOSS.
Зверніться до розділу 4.4.2.3
4 4 BOOT_WUC Причина завантаження через лічильник пробудження, який минув під час роботи в режимі очікування.
3 3 BOOT_TEMP Причина завантаження через те, що температура мікросхеми перевищує налаштоване порогове значення. Зверніться до розділу 4.4.2.1
2 2 BOOT_WDG Причина завантаження через скидання сторожового таймера
1 1 РФУ Зарезервовано
0 0 BOOT_POR Bootup Reason через скидання живлення

4.4.1.2.3 Визначення бітів для STANDBY_PREV_STATUS_DATA
Таблиця 13. Визначення бітів STANDBY_PREV_STATUS_DATA

Біт до  Біт від  Профілактика режиму очікування Перехід у режим очікування заблоковано через
31 26 РФУ ЗАРЕЗЕРВОВАНО
25 25 РФУ ЗАРЕЗЕРВОВАНО
24 24 PREV_TEMP Робоча температура мікросхеми виходить за порогове значення
23 23 РФУ ЗАРЕЗЕРВОВАНО
22 22 PREV_HOSTCOMM Зв'язок інтерфейсу хоста
21 21 PREV_SPI Сигнал SPI_NTS знижується
20 18 РФУ ЗАРЕЗЕРВОВАНО
17 17 PREV_GPIO3 Перехід сигналу GPIO3 з низького на високий
16 16 PREV_GPIO2 Перехід сигналу GPIO2 з низького на високий
15 15 PREV_GPIO1 Перехід сигналу GPIO1 з низького на високий
14 14 PREV_GPIO0 Перехід сигналу GPIO0 з низького на високий
13 13 PREV_WUC Минув лічильник пробудження
12 12 PREV_LPDET Виявлення низької потужності. Виникає, коли зовнішній радіочастотний сигнал виявляється під час переходу в режим очікування.
11 11 PREV_RX_ULPDET Виявлення наднизької потужності RX. Виникає, коли радіочастотний сигнал виявляється під час переходу до ULP_STANDBY.
10 10 РФУ ЗАРЕЗЕРВОВАНО
9 5 РФУ ЗАРЕЗЕРВОВАНО
4 4 РФУ ЗАРЕЗЕРВОВАНО
3 3 РФУ ЗАРЕЗЕРВОВАНО
2 2 РФУ ЗАРЕЗЕРВОВАНО
1 1 РФУ ЗАРЕЗЕРВОВАНО
0 0 РФУ ЗАРЕЗЕРВОВАНО

4.4.1.2.4 Визначення бітів для GENERAL_ERROR_STATUS_DATA
Таблиця 14. Визначення бітів GENERAL_ERROR_STATUS_DATA

Біт до  Трохи з  Статус помилки опис
31 6 РФУ Зарезервовано
5 5 XTAL_START_ERROR Не вдалося запустити XTAL під час завантаження
4 4 SYS_TRIM_RECOVERY_ERROR Виникла помилка внутрішнього обрізання пам’яті системи, але відновлення не вдається. Система працює в зниженому режимі.
3 3 SYS_TRIM_RECOVERY_SUCCESS Сталася внутрішня помилка обрізки пам’яті системи, і відновлення було успішним. Хост має виконати перезавантаження PN5190, щоб відновлення набуло чинності.
2 2 TXLDO_ERROR Помилка TXLDO
1 1 CLOCK_ERROR Помилка годинника
0 0 GPADC_ERROR Помилка АЦП

4.4.1.2.5 Визначення бітів для LPCD_STATUS_DATA
Таблиця 15. Визначення байтів LPCD_STATUS_DATA

Біт до Біт від Застосовність бітів стану відповідно до основної операції LPCD або ULPCD Опис для відповідного біта встановлюється в байті стану.
LPCD ULPCD
31 7 РФУ Зарезервовано
6 6 Abort_HIF Y N Перервано через активність HIF
5 5 Помилка CLKDET N Y Перервано через помилку CLKDET
4 4 Час очікування XTAL N Y Перервано через тайм-аут XTAL
3 3 Надструм VDDPA LDO N Y Перервано через перевищення струму VDDPA LDO
2 2 Зовнішнє радіочастотне поле Y Y Перервано через зовнішнє радіочастотне поле
1 1 GPIO3 Скасувати N Y Перервано через зміну рівня GPIO3
0 0 Картку виявлено Y Y Картку виявлено

4.4.1.2.6 Визначення бітів для даних стану LPCD_CALIBRATION_DONE
Таблиця 16. Визначення для байтів даних стану LPCD_CALIBRATION_DONE для ULPCD

Біт до Біт від Статус LPCD_CALIBRATION DONE подія Опис для відповідного біта встановлюється в байті стану.
31 11 Зарезервовано
10 0 Еталонне значення від калібрування ULPCD Виміряне значення RSSI під час калібрування ULPCD, яке використовується як еталон під час ULPCD

Таблиця 17. Визначення для байтів даних стану LPCD_CALIBRATION_DONE для LPCD

Біт до Біт від Застосовність бітів стану відповідно до основної операції LPCD або ULPCD Опис для відповідного біта встановлюється в байті стану.
2 2 Зовнішнє радіочастотне поле Y Y Перервано через зовнішнє радіочастотне поле
1 1 GPIO3 Скасувати N Y Перервано через зміну рівня GPIO3
0 0 Картку виявлено Y Y Картку виявлено

4.4.2 Обробка різних сценаріїв завантаження
PN5190 IC обробляє різні умови помилок, пов’язані з параметрами IC, як показано нижче.
4.4.2.1 Обробка сценарію перегріву, коли PN5190 працює
Щоразу, коли внутрішня температура мікросхеми PN5190 досягає порогового значення, налаштованого в полі TEMP_WARNING EEPROM [2], мікросхема переходить у режим очікування. І, отже, якщо поле EEPROM ENABLE_GPIO0_ON_OVERTEMP [2] налаштоване для надсилання сповіщення хосту, тоді GPIO0 буде піднятий на високий рівень, щоб сповістити IC про перегрівання.
Коли температура IC падає нижче порогового значення, налаштованого в полі EEPROM TEMP_WARNING [2], IC завантажуватиметься з BOOT_EVENT, як у таблиці 11, а біт стану завантаження BOOT_TEMP встановлюється, як у таблиці 12, і GPIO0 буде знижено.
4.4.2.2 Управління надструмом
Якщо PN5190 IC виявляє умову перевантаження по струму, IC вимикає радіочастотне живлення та надсилає TX_OVERCURRENT_ERROR_EVENT, як у таблиці 11.
Тривалість стану перевантаження по струму можна контролювати шляхом зміни поля EEPROM TXLDO_CONFIG [2].
Інформацію про перевищення поточного порогу IC див. у документі [2].
Примітка:
Якщо є інші незавершені події або відповідь, їх буде надіслано хосту.
4.4.2.3 Втрата VDDIO під час роботи
Якщо мікросхема PN5190 виявляє відсутність VDDIO (втрата VDDIO), мікросхема переходить у режим очікування.
IC завантажується лише тоді, коли доступний VDDIO, з BOOT_EVENT, як у таблиці 11, і BOOT_VDDIO_START біт статусу завантаження встановлено, як у таблиці 12.
Інформацію про статичні характеристики PN5190 IC див. у документі [2].
4.4.3 Обробка сценаріїв переривання
PN5190 IC підтримує переривання поточних команд виконання, і поведінка PN5190 IC, коли така команда переривання, наприклад Розділ 4.5.4.5.2, надсилається до PN5190 IC, як показано в таблиці 18.
Примітка:
Коли мікросхема PN5190 перебуває в режимі очікування ULPCD і ULP, її не можна перервати, надіславши Розділ 4.5.4.5.2, АБО розпочавши транзакцію SPI (піднімаючи низький рівень сигналу SPI_NTS).
Таблиця 18. Очікувана відповідь на подію, коли різні команди завершуються розділом 4.5.4.5.2

Команди Поведінка під час надсилання команди Switch Mode Normal
Усі команди, де не введено низьку потужність EVENT_STAUS встановлено на “IDLE_EVENT”
Режим перемикання LPCD EVENT_STATUS встановлено на «LPCD_EVENT» із «LPCD_ STATUS_DATA», що вказує на біти стану як «Abort_HIF»
Перемикання режиму очікування EVENT_STAUS встановлено на «BOOT_EVENT» із «BOOT_ STATUS_DATA», що вказує на біти «BOOT_SPI»
Автоматичний режим перемикання (без автономного режиму, автономний режим із режимом очікування та автономний режим без режиму очікування) EVENT_STAUS встановлено на “AUTOCOLL_EVENT” із бітами STATUS_DATA, які вказують на те, що користувач скасував команду.

4.5 Детальна інструкція з експлуатації в нормальному режимі
4.5.1 Маніпуляції з реєстром
Інструкції цього розділу використовуються для доступу до логічних регістрів PN5190.
4.5.1.1 WRITE_REGISTER
Ця інструкція використовується для запису 32-розрядного значення (порядок редагування) до логічного регістру.
4.5.1.1.1 Умови
Адреса реєстру повинна існувати, і реєстр повинен мати атрибут READ-WRITE або WRITE-ONLY.
4.5.1.1.2 Команда
Таблиця 19. Значення команди WRITE_REGISTER Запис 32-бітного значення в регістр.

Поле корисного навантаження Довжина Значення/опис
Адреса реєстрації 1 байт Адреса реєстру.

Таблиця 19. Значення команди WRITE_REGISTER… продовження
Записати 32-розрядне значення в регістр.

Поле корисного навантаження Довжина Значення/опис
Значення 4 байт 32-розрядне значення регістра, яке потрібно записати. (Little-endian)

4.5.1.1.3 Відповідь
Таблиця 20. Значення відповіді WRITE_REGISTER

Поле корисного навантаження Довжина Значення/опис
Статус 1 байт Статус операції [Таблиця 9]. Очікувані значення:
PN5190_STATUS_SUCCESS
PN5190_STATUS_INSTR_ERROR

4.5.1.1.4 Подія
Для цієї команди немає подій.
4.5.1.2 WRITE_REGISTER_OR_MASK
Ця інструкція використовується для зміни вмісту реєстру за допомогою логічної операції АБО. Зчитується вміст реєстру та виконується логічна операція АБО з наданою маскою. Змінений вміст записується назад до реєстру.
4.5.1.2.1 Умови
Адреса реєстру повинна існувати, і реєстр повинен мати атрибут READ-WRITE.
4.5.1.2.2 Команда
Таблиця 21. Значення команди WRITE_REGISTER_OR_MASK Виконайте логічну операцію АБО над регістром за допомогою наданої маски.

Поле корисного навантаження Довжина Значення/опис
Адреса реєстрації 1 байт Адреса реєстру.
Маска 4 байт Бітова маска, яка використовується як операнд для логічної операції АБО. (Little-endian)

4.5.1.2.3 Відповідь
Таблиця 22. Значення відповіді WRITE_REGISTER_OR_MASK

Поле корисного навантаження Довжина Значення/опис
Статус 1 байт Статус операції [Таблиця 9]. Очікувані значення:
PN5190_STATUS_SUCCESS
PN5190_STATUS_INSTR_ERROR

4.5.1.2.4 Подія
Для цієї команди немає подій.
4.5.1.3 WRITE_REGISTER_AND_MASK
Ця інструкція використовується для зміни вмісту реєстру за допомогою логічної операції І. Зчитується вміст реєстру та виконується логічна операція І з наданою маскою. Змінений вміст записується назад до реєстру.
4.5.1.3.1 Умови
Адреса реєстру повинна існувати, і реєстр повинен мати атрибут READ-WRITE.
4.5.1.3.2 Команда
Таблиця 23. Значення команди WRITE_REGISTER_AND_MASK Виконайте логічну операцію І над реєстром, використовуючи надану маску.

Поле корисного навантаження Довжина Значення/опис
Адреса реєстрації 1 байт Адреса реєстру.
Маска 4 байт Бітова маска, яка використовується як операнд для логічної операції І. (Little-endian )

4.5.1.3.3 Відповідь
Таблиця 24. Значення відповіді WRITE_REGISTER_AND_MASK

Поле корисного навантаження Довжина Значення/опис
Статус 1 байт Статус операції [Таблиця 9]. Очікувані значення:
PN5190_STATUS_SUCCESS
PN5190_STATUS_INSTR_ERROR

4.5.1.3.4 Подія
Для цієї команди немає подій.
4.5.1.4 WRITE_REGISTER_MULTIPLE
Функціональність цієї інструкції подібна до Розділу 4.5.1.1, Розділу 4.5.1.2, Розділу 4.5.1.3, з можливістю їх комбінування. Фактично, він приймає масив набору значень типу регістру та виконує відповідну дію. Тип відображає дію, якою є запис у регістр, логічна операція АБО над регістром або логічна операція І над регістром.
4.5.1.4.1 Умови
Повинна існувати відповідна логічна адреса реєстру в наборі.
Атрибут доступу до реєстру повинен дозволяти виконання необхідної дії (типу):

  • Дія запису (0x01): атрибут READ-WRITE або WRITE-ONLY
  • Дія маски АБО (0x02): атрибут READ-WRITE
  • Дія маски AND (0x03): атрибут READ-WRITE

Розмір масиву «Set» повинен бути в діапазоні від 1 до 43 включно.
Поле «Тип» має бути в діапазоні від 1 до 3 включно

4.5.1.4.2 Команда
Таблиця 25. Значення команди WRITE_REGISTER_MULTIPLE Виконайте операцію запису регістру, використовуючи набір пар «Регістр-значення».

Поле корисного навантаження Довжина Значення/опис
Набір [1…n] 6 байт Адреса реєстрації 1 байт Логічна адреса реєстру.
Тип 1 байт 0x1 Напишіть Реєстр
0x2 Напишіть Реєстр АБО Маска
0x3 Напишіть Реєстр І Маска
Значення 4 байт 32 Значення регістра біта, яке потрібно записати, або бітова маска, що використовується для логічної операції. (Little-endian)

Примітка: у випадку виняткової ситуації операція не відкочується, тобто регістри, які були змінені, поки не станеться виняткова ситуація, залишаються в зміненому стані. Хост повинен вжити належних заходів для відновлення до визначеного стану.
4.5.1.4.3 Відповідь
Таблиця 26. Значення відповіді WRITE_REGISTER_MULTIPLE

Поле корисного навантаження Довжина Значення/опис
Статус 1 байт Статус операції [Таблиця 9]. Очікувані значення:
PN5190_STATUS_SUCCESS
PN5190_STATUS_INSTR_ERROR

4.5.1.4.4 Подія
Для цієї команди немає подій.
4.5.1.5 READ_REGISTER
Ця інструкція використовується для читання вмісту логічного регістру. Вміст присутній у відповіді як 4-байтове значення у форматі little-endian.
4.5.1.5.1 Умови
Адреса логічного регістру має існувати. Атрибут доступу до реєстру має бути READ-WRITE або READ-ONLY.
4.5.1.5.2 Команда
Таблиця 27. Значення команди READ_REGISTER
Прочитати вміст реєстру.

Поле корисного навантаження Довжина Значення/опис
Адреса реєстрації 1 байт Адреса логічного реєстру

4.5.1.5.3 Відповідь
Таблиця 28. Значення відповіді READ_REGISTER

Поле корисного навантаження Довжина Значення/опис
Статус 1 байт Статус операції [Таблиця 9]. Очікувані значення:
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR (Більше даних немає)
Значення реєстру 4 байт 32-розрядне значення регістра, яке було зчитано. (Little-endian)

4.5.1.5.4 Подія
Для цієї команди немає подій.
4.5.1.6 READ_REGISTER_MULTIPLE
Ця інструкція використовується для читання кількох логічних регістрів одночасно. Результат (вміст кожного реєстру) надається у відповіді на вказівку. Сама реєстраційна адреса не включена у відповідь. Порядок вмісту реєстру у відповіді відповідає порядку адрес реєстру в інструкції.
4.5.1.6.1 Умови
Усі адреси реєстру в інструкції повинні існувати. Атрибут доступу для кожного регістру має бути READ-WRITE або READ-ONLY. Розмір масиву «Адреса реєстрації» має бути в діапазоні від 1 до 18 включно.
4.5.1.6.2 Команда
Таблиця 29. Значення команди READ_REGISTER_MULTIPLE Виконайте операцію читання регістра для набору регістрів.

Поле корисного навантаження Довжина Значення/опис
Адреса реєстрації[1…n] 1 байт Адреса реєстрації

4.5.1.6.3 Відповідь
Таблиця 30. Значення відповіді READ_REGISTER_MULTIPLE

Поле корисного навантаження Довжина Значення/опис
Статус 1 байт Статус операції [Таблиця 9]. Очікувані значення:
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR (Більше даних немає)
Значення реєстру [1…n] 4 байт Значення 4 байт 32-розрядне значення регістра, яке було зчитано (порядок редагування).

4.5.1.6.4 Подія
Для цієї команди немає подій.
4.5.2 Маніпуляції E2PROM
Доступна область в E2PROM відповідає карті EEPROM і адресному розміру.
Примітка:
1. Скрізь, де в наведених нижче інструкціях згадується «адреса E2PROM», це стосується розміру адресної області EEPROM.
4.5.2.1 WRITE_E2PROM
Ця інструкція використовується для запису одного або кількох значень в E2PROM. Поле «Значення» містить дані для запису в E2PROM, починаючи з адреси, заданої полем «Адреса E2PROM». Дані записуються в послідовному порядку.
Примітка:
Зауважте, що це команда блокування, це означає, що NFC FE заблоковано під час операції запису. Це може зайняти кілька мілісекунд.
4.5.2.1.1 Умови
Поле «Адреса E2PROM» має бути в діапазоні відповідно до [2]. Кількість байтів у полі «Значення» має бути в діапазоні від 1 до 1024 (0x0400) включно. Операція запису не повинна виходити за межі адреси EEPROM, як зазначено в [2]. Відповідь про помилку надсилається на хост, якщо адреса перевищує адресний простір EEPROM, як у [2].
4.5.2.1.2 Команда
Таблиця 31. Значення команди WRITE_E2PROM Послідовно запишіть задані значення в E2PROM.

Поле корисного навантаження Довжина Значення/опис
Адреса E2PROM 2 байт Адреса в EEPROM, з якої починається операція запису. (Little-endian)
Цінності 1 – 1024 байт Значення, які потрібно записати в E2PROM у послідовному порядку.

4.5.2.1.3 Відповідь
Таблиця 32. Значення відповіді WRITE_EEPROM

Поле корисного навантаження Довжина Значення/опис
Статус 1 байт Статус операції [Таблиця 9]. Очікувані значення:
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR PN5190_STATUS_MEMORY_ERROR

4.5.2.1.4 Подія
Для цієї команди немає подій.
4.5.2.2 READ_E2PROM
Ця інструкція використовується для зчитування даних із області пам’яті E2PROM. Поле «Адреса E2PROM» вказує початкову адресу операції читання. Відповідь містить дані, зчитані з E2PROM.
4.5.2.2.1 Умови
Поле «Адреса E2PROM» має бути в допустимому діапазоні.
Поле «Кількість байтів» має бути в діапазоні від 1 до 256 включно.
Операція читання не повинна виходити за межі останньої доступної адреси EEPROM.
Відповідь про помилку надсилається на хост, якщо адреса перевищує адресний простір EEPROM.
4.5.2.2.2 Команда
Таблиця 33. Значення команди READ_E2PROM Послідовне зчитування значень з E2PROM.

Поле корисного навантаження Довжина Значення/опис
Адреса E2PROM 2 байт Адреса в E2PROM, з якої починається операція читання. (Little-endian)
Кількість байтів 2 байт Кількість байтів для зчитування. (Little-endian)

4.5.2.2.3 Відповідь
Таблиця 34. Значення відповіді READ_E2PROM

Поле корисного навантаження Довжина Значення/опис
Статус 1 байт Статус операції [Таблиця 9]. Очікувані значення:
PN5190_STATUS_SUCCESS
PN5190_STATUS_INSTR_ERROR (Дані відсутні)
Цінності 1 – 1024 байт Значення, які були прочитані в послідовному порядку.

4.5.2.2.4 Подія
Для цієї команди немає подій.
4.5.2.3 GET_CRC_USER_AREA
Ця інструкція використовується для обчислення CRC для повної області конфігурації користувача, включаючи область протоколу PN5190 IC.
4.5.2.3.1 Команда
Таблиця 35. Значення команди GET_CRC_USER_AREA
Зчитування CRC області конфігурації користувача, включаючи область протоколу.

Поле корисного навантаження Довжина Значення/опис
Немає даних у корисному навантаженні

4.5.2.3.2 Відповідь
Таблиця 36. Значення відповіді GET_CRC_USER_AREA

Поле корисного навантаження Довжина Значення/опис
Статус 1 байт Статус операції [Таблиця 9]. Очікувані значення:
PN5190_STATUS_SUCCESS
PN5190_STATUS_INSTR_ERROR (Дані відсутні)
Цінності 4 байт 4 байти даних CRC у форматі little-endian.

4.5.2.3.3 Подія
Для цієї команди немає подій.
4.5.3 Маніпулювання даними CLIF
Інструкції, описані в цьому розділі, описують команди для радіочастотної передачі та прийому.
4.5.3.1 EXCHANGE_RF_DATA
Функція радіочастотного обміну виконує передачу даних TX і очікує на отримання будь-яких даних RX.
Функція повертається у разі прийому (помилкового або правильного) або тайм-ауту. Таймер запускається з КІНЦЕМ ПЕРЕДАЧІ та зупиняється з ПОЧАТКОМ ОТРИМАННЯ. Значення тайм-ауту, попередньо налаштоване в EEPROM, має використовуватися, якщо тайм-аут не налаштовано перед виконанням команди Exchange.
Якщо transceiver_state є

  • в IDLE вводиться режим TRANSCEIVE.
  • У WAIT_RECEIVE стан трансивера скидається до РЕЖИМУ ПЕРЕДАЧІ, якщо встановлено біт ініціатора
  • У WAIT_TRANSMIT стан трансивера скидається до TRANSCEIVE MODE, якщо біт ініціатора НЕ встановлений

Поле «Кількість дійсних бітів в останньому байті» вказує точну довжину даних для передачі.

4.5.3.1.1 Умови
Розмір поля «TX Data» має бути в діапазоні від 0 до 1024 включно.
Поле «Кількість дійсних бітів в останньому байті» має бути в діапазоні від 0 до 7.
Команду не можна викликати під час поточної радіочастотної передачі. Команда повинна забезпечувати правильний стан трансивера для передачі даних.
Примітка:
Ця команда дійсна лише для режиму читання та режиму пасивного/активного ініціатора P2P.
4.5.3.1.2 Команда
Таблиця 37. Значення команди EXCHANGE_RF_DATA
Запишіть дані передачі у внутрішній буфер радіочастотної передачі та почніть передачу за допомогою команди передачі та зачекайте до прийому або тайм-ауту, щоб підготувати відповідь хосту.

Поле корисного навантаження Довжина Значення/опис
Кількість дійсних бітів в останньому байті 1 байт 0 Передаються всі біти останнього байта
1 – 7 Кількість бітів в останньому байті для передачі.
RFExchangeConfig 1 байт Конфігурація функції RFExchange. Подробиці дивіться нижче

Таблиця 37. Значення команди EXCHANGE_RF_DATA… продовження
Запишіть дані передачі у внутрішній буфер радіочастотної передачі та почніть передачу за допомогою команди передачі та зачекайте до прийому або тайм-ауту, щоб підготувати відповідь хосту.

Поле корисного навантаження Довжина Значення/опис
Дані передачі n байт Дані TX, які мають бути надіслані через CLIF за допомогою команди прийому-передачі. n = 0 – 1024 байт

Таблиця 38. Бітова маска RFexchangeConfig

b7 b6 b5 b4 b3 b2 b1 b0 опис
Біти 4-7 є RFU
X Включати дані RX у відповідь на основі RX_STATUS, якщо біт встановлено на 1b.
X Включіть у відповідь регістр EVENT_STATUS, якщо біт встановлено на 1b.
X Включити регістр RX_STATUS_ERROR у відповідь, якщо біт встановлено на 1b.
X Включити регістр RX_STATUS у відповідь, якщо біт встановлено на 1b.

4.5.3.1.3 Відповідь
Таблиця 39. Значення відповіді EXCHANGE_RF_DATA

Поле корисного навантаження Довжина Значення/опис
Статус 1 байт Статус операції [Таблиця 9]. Очікувані значення:
PN5190_STATUS_INSTR_SUCCESS
PN5190_STATUS_INSTR_ERROR (Більші дані відсутні) PN5190_STATUS_TIMEOUT PN5190_STATUS_RX_TIMEOUT PN5190_STATUS_NO_RF_FIELD PN5190_STATUS_TIMEOUT_WITH_EMD_ERROR
RX_STATUS 4 байт Якщо запитується RX_STATUS (порядок редагування)
RX_STATUS_ERROR 4 байт Якщо запитується RX_STATUS_ERROR (порядок редагування)
СТАТУС ПОДІЇ 4 байт Якщо запитується EVENT_STATUS (порядок редагування)
Дані RX 1 – 1024 байт Якщо запитуються дані RX. RX-дані, отримані під час фази радіочастотного прийому радіочастотного обміну.

4.5.3.1.4 Подія
Для цієї команди немає подій.
4.5.3.2 TRANSMIT_RF_DATA
Ця інструкція використовується для запису даних у внутрішній буфер передачі CLIF і початку передачі за допомогою внутрішньої команди transceive. Розмір цього буфера обмежений 1024 байтами. Після виконання цієї інструкції автоматично розпочнеться радіочастотний прийом.
Команда повертається відразу після завершення передачі, не чекаючи завершення прийому.
4.5.3.2.1 Умови
Кількість байтів у полі «TX Data» має бути в діапазоні від 1 до 1024 включно.
Команду не можна викликати під час поточної радіочастотної передачі.
4.5.3.2.2 Команда
Таблиця 40. Значення команди TRANSMIT_RF_DATA Запис даних передачі у внутрішній буфер передачі CLIF.

Поле корисного навантаження Довжина Значення/опис
Кількість дійсних бітів в останньому байті 1 байт 0 Передано всі біти останнього байту 1 – 7 Кількість бітів в останньому байті для передачі.
РФУ 1 байт Зарезервовано
Дані передачі 1 – 1024 байт Дані TX, які будуть використані під час наступної радіочастотної передачі.

4.5.3.2.3 Відповідь
Таблиця 41. Значення відповіді TRANSMIT_RF_DATA

Поле корисного навантаження Довжина Значення/опис
Статус 1 байт Статус операції [Таблиця 9]. Очікувані значення:
PN5190_STATUS_INSTR_SUCCESS PN5190_STATUS_INSTR_ERROR PN5190_STATUS_NO_RF_FIELD PN5190_STATUS_NO_EXTERNAL_RF_FIELD

4.5.3.2.4 Подія
Для цієї команди немає подій.
4.5.3.3 RETRIEVE_RF_DATA
Ця інструкція використовується для читання даних із внутрішнього буфера CLIF RX, який містить дані радіочастотної відповіді (якщо такі є), опубліковані в ньому після попереднього виконання Розділу 4.5.3.1 з опцією не включати отримані дані у відповідь або Розділ 4.5.3.2 .XNUMX команда.
4.5.3.3.1 Команда
Таблиця 42. Значення команди RETRIEVE_RF_DATA Читання даних прийому з внутрішнього буфера прийому РЧ.

Поле корисного навантаження Довжина Значення/опис
Порожній Порожній Порожній

4.5.3.3.2 Відповідь
Таблиця 43. Значення відповіді RETRIEVE_RF_DATA

Поле корисного навантаження Довжина Значення/опис
Статус 1 байт Статус операції [Таблиця 9]. Очікувані значення:
Поле корисного навантаження Довжина Значення/опис
PN5190_STATUS_INSTR_SUCCESS
PN5190_STATUS_INSTR_ERROR (Дані відсутні)
Дані RX 1 – 1024 байт Дані RX, які були отримані під час останнього успішного прийому радіочастот.

4.5.3.3.3 Подія
Для цієї команди немає подій.
4.5.3.4 RECEIVE_RF_DATA
Ця інструкція очікує даних, отриманих через радіочастотний інтерфейс зчитувача.
У режимі зчитування ця інструкція повертається, якщо є прийом (помилковий або правильний) або виник тайм-аут FWT. Таймер запускається з КІНЦЕМ ПЕРЕДАЧІ та зупиняється з ПОЧАТКОМ ОТРИМАННЯ. Значення часу очікування за замовчуванням, попередньо налаштоване в EEPROM, має використовуватися, якщо час очікування не налаштовано перед виконанням команди Exchange.
У цільовому режимі ця інструкція повертається у разі прийому (помилкового або правильного) або зовнішньої радіочастотної помилки.
Примітка:
Цю інструкцію слід використовувати з командою TRANSMIT_RF_DATA для виконання операцій TX і RX…
4.5.3.4.1 Команда
Таблиця 44. Значення команди RECEIVE_RF_DATA

Поле корисного навантаження Довжина Значення/опис
ReceiveRFConfig 1 байт Конфігурація функції ReceiveRFConfig. Побачити Таблиця 45

Таблиця 45. Бітова маска ReceiveRFConfig

b7 b6 b5 b4 b3 b2 b1 b0 опис
Біти 4-7 є RFU
X Включати дані RX у відповідь на основі RX_STATUS, якщо біт встановлено на 1b.
X Включіть у відповідь регістр EVENT_STATUS, якщо біт встановлено на 1b.
X Включити регістр RX_STATUS_ERROR у відповідь, якщо біт встановлено на 1b.
X Включити регістр RX_STATUS у відповідь, якщо біт встановлено на 1b.

4.5.3.4.2 Відповідь
Таблиця 46. Значення відповіді RECEIVE_RF_DATA

Поле корисного навантаження Довжина Значення/опис
Статус 1 байт Статус операції [Таблиця 9]. Очікувані значення:
PN5190_STATUS_INSTR_SUCCESS
PN5190_STATUS_INSTR_ERROR (Дані відсутні)
PN5190_STATUS_TIMEOUT
Поле корисного навантаження Довжина Значення/опис
PN5190_STATUS_NO_RF_FIELD
PN5190_STATUS_NO_EXTERNAL_RF_FIELD
RX_STATUS 4 байт Якщо запитується RX_STATUS (порядок редагування)
RX_STATUS_ERROR 4 байт Якщо запитується RX_STATUS_ERROR (порядок редагування)
СТАТУС ПОДІЇ 4 байт Якщо запитується EVENT_STATUS (порядок редагування)
Дані RX 1 – 1024 байт Якщо запитуються дані RX. Дані RX отримані через радіочастоту.

4.5.3.4.3 Подія
Для цієї команди немає подій.
4.5.3.5 RETRIEVE_RF_FELICA_EMD_DATA (Конфігурація FeliCa EMD)
Ця інструкція використовується для читання даних із внутрішнього буфера CLIF RX, який містить дані відповіді FeliCa EMD (якщо такі є), надіслані до нього після попереднього виконання команди EXCHANGE_RF_DATA, що повертається зі статусом «PN5190_STATUS_TIMEOUT_WITH_EMD_ERROR».
Примітка: Ця команда доступна з версії PN5190 FW 02.03.
4.5.3.5.1 Команда
Зчитування даних RX із внутрішнього буфера прийому RF.
Таблиця 47. Значення команди RETRIEVE_RF_FELICA_EMD_DATA

Поле корисного навантаження Довжина Значення/опис
FeliCaRFRetrieveConfig 1 байт 00 – FF Конфігурація функції RETRIEVE_RF_FELICA_EMD_DATA
опис конфігурації (бітової маски). біт 7..2: RFU
біт 1: включити регістр RX_STATUS_ ERROR у відповідь, якщо біт встановлено на 1b.
біт 0: включити регістр RX_STATUS у відповідь, якщо біт встановлено на 1b.

4.5.3.5.2 Відповідь
Таблиця 48. Значення відповіді RETRIEVE_RF_FELICA_EMD_DATA

Поле корисного навантаження Довжина Значення/опис
Статус 1 байт Статус операції. Очікувані значення наведені нижче: PN5190_STATUS_INSTR_SUCCESS PN5190_STATUS_INSTR_ERROR (додаткових даних немає)
RX_STATUS 4 байт Якщо запитується RX_STATUS (порядок редагування)
RX_STATUS_ ПОМИЛКА 4 байт Якщо запитується RX_STATUS_ERROR (порядок редагування)
Поле корисного навантаження Довжина Значення/опис
Дані RX 1…1024 байт Дані FeliCa EMD RX, які були отримані під час останнього невдалого радіочастотного прийому за допомогою команди Exchange.

4.5.3.5.3 Подія
Для цієї команди немає подій.
4.5.4 Перемикання режиму роботи
PN5190 підтримує 4 різних режими роботи:
4.5.4.1 Нормальний
Це стандартний режим, у якому дозволені всі інструкції.
4.5.4.2 Режим очікування
PN5190 перебуває в режимі очікування/сну для економії енергії. Необхідно встановити умови пробудження, щоб визначити, коли знову виходити з режиму очікування.
4.5.4.3 LPCD
PN5190 перебуває в режимі виявлення карти з низьким енергоспоживанням, де він намагається виявити картку, яка входить до робочого обсягу, з найменшим можливим енергоспоживанням.
4.5.4.4 Автозбір
PN5190 діє як РЧ-слухач, виконуючи активацію цільового режиму автономно (щоб гарантувати обмеження в реальному часі)
4.5.4.5 SWITCH_MODE_NORMAL
Команда Switch Mode Normal має три варіанти використання.
4.5.4.5.1 Випадок використання 1: перехід у звичайний робочий режим після ввімкнення (POR)
Використовуйте для повернення до стану очікування для отримання/обробки наступної команди шляхом входу в нормальний режим роботи.
4.5.4.5.2 Випадок використання 2: завершення вже запущеної команди для переходу в нормальний робочий режим (команда переривання)
Використовуйте для повернення до стану очікування для отримання/обробки наступної команди шляхом припинення виконання вже запущених команд.
Такі команди, як standby, LPCD, Exchange, PRBS і Autocoll, повинні бути можливими для завершення за допомогою цієї команди.
Це єдина спеціальна команда, яка не має відповіді. Натомість має сповіщення про ПОДІЮ.
Зверніться до Розділу 4.4.3, щоб дізнатися більше про типи подій, які відбуваються під час виконання різних базових команд.
4.5.4.5.2.1 Випадок використання 2.1:
Ця команда скидає всі регістри CLIF TX, RX і Field Control у стан завантаження. Видача цієї команди вимкне будь-яке існуюче радіочастотне поле.
4.5.4.5.2.2 Випадок використання 2.2:
Доступно з PN5190 FW v02.03 і далі:
Ця команда не змінює CLIF TX, RX і регістри керування полем, а лише переводить трансивер у стан IDLE.
4.5.4.5.3 UseCase3: нормальний режим роботи після м’якого скидання/виходу з режиму очікування, LPCD У цьому випадку PN5190 безпосередньо переходить у звичайний режим роботи, надсилаючи IDLE_EVENT на хост (Малюнок 12 або Малюнок 13) і « IDLE_EVENT” біт встановлено в таблиці 11.
Немає вимоги надсилати команду SWITCH_MODE_NORMAL.
Примітка:
Після того, як IC переходить у звичайний режим, усі параметри радіочастот змінюються до стану за замовчуванням. Вкрай важливо, щоб відповідна конфігурація РЧ та інші пов’язані регістри були завантажені з відповідними значеннями перед виконанням операції РЧ УВІМКНЕННЯ або РЧ обміну.
4.5.4.5.4 Командний кадр для надсилання для різних варіантів використання
4.5.4.5.4.1 Випадок використання1: команда переходить у звичайний робочий режим після ввімкнення (POR) 0x20 0x01 0x00
4.5.4.5.4.2 UseCase2: команда для завершення вже запущених команд для переходу в нормальний режим роботи
Випадок використання 2.1:
0x20 0x00 0x00
Випадок використання 2.2: (Починаючи з FW v02.02 і далі):
0x20 0x02 0x00
4.5.4.5.4.3 UseCase3: команда для нормального режиму роботи після м’якого скидання/виходу з режиму очікування, LPCD, ULPCD
Жодного. PN5190 безпосередньо переходить у нормальний режим роботи.
4.5.4.5.5 Відповідь
Жодного
4.5.4.5.6 Подія
BOOT_EVENT (у регістрі EVENT_STATUS) встановлюється, вказуючи, що введено звичайний режим і надсилається на хост. Зверніться до малюнків 12 і 13 для даних подій.

Інтерфейсний контролер NFC NXP PN5190 – нормальна робота

IDLE_EVENT (у регістрі EVENT_STATUS) встановлюється, що вказує на введення нормального режиму та надсилається на хост. Зверніться до малюнків 12 і 13 для даних подій.NXP PN5190 NFC Frontend Controller – уже припиняється

BOOT_EVENT (у регістрі EVENT_STATUS) встановлюється, що вказує на введення нормального режиму та надсилається на хост. Зверніться до малюнків 12 і 13 для даних подій.

NXP PN5190 NFC Frontend Controller - Режим роботи при Warm

4.5.4.6 SWITCH_MODE_AUTOCOLL
Автоматичний режим перемикання автоматично виконує процедуру активації картки в цільовому режимі.
Поле «Autocoll Mode» має бути в діапазоні від 0 до 2 включно.
У випадку, якщо для поля «Режим автоколл» встановлено значення 2 (Автоколл): Поле «РЧ-технології» (Таблиця 50) має містити бітову маску, що вказує РЧ-технології, які підтримуються під час автоколл.
У цьому режимі не можна надсилати жодні інструкції.
Завершення позначається за допомогою переривання.
4.5.4.6.1 Команда
Таблиця 49. Значення команди SWITCH_MODE_AUTOCOLL

Параметр Довжина Значення/опис
радіочастотні технології 1 байт Бітова маска, що вказує радіочастотну технологію, яку потрібно прослухати під час автоматичного збору.
Режим Autocoll 1 байт 0 Немає автономного режиму, тобто Autocoll припиняється, коли зовнішнє радіочастотне поле відсутнє.
Розірвання в разі
• НЕМАЄ РЧ-ПОЛЯ або РЧ-ПОЛЕ зникло
• PN5190 АКТИВОВАНО в режимі TARGET
1 Автономний режим з режимом очікування. Якщо радіочастотне поле відсутнє, Autocoll автоматично переходить у режим очікування. Після виявлення зовнішнього радіочастотного поля PN5190 знову переходить у режим автоматичного встановлення.
Розірвання в разі
• PN5190 АКТИВОВАНО в режимі TARGET
Від PN5190 FW v02.03 і далі: якщо поле EEPROM «bCard ModeUltraLowPowerEnabled» за адресою «0xCDF» встановлено на «1», тоді PN5190 переходить у режим очікування з наднизьким енергоспоживанням.
2 Автономний режим без режиму очікування. Якщо радіочастотне поле відсутнє, PN5190 очікує, поки радіочастотне поле буде присутнім, перш ніж запускати алгоритм Autocoll. Режим очікування в цьому випадку не використовується.
Розірвання в разі
• PN5190 АКТИВОВАНО в режимі TARGET

Таблиця 50. Бітова маска RF Technologies

b7 b6 b5 b4 b3 b2 b1 b0 опис
0 0 0 0 РФУ
X Якщо встановлено значення 1b, увімкнено прослуховування NFC-F Active. (Недоступний).
X Якщо встановлено значення 1b, увімкнено прослуховування NFC-A Active. (Недоступний).
X Якщо встановлено значення 1b, увімкнено прослуховування NFC-F.
X Якщо встановлено значення 1b, увімкнено прослуховування NFC-A.

4.5.4.6.2 Відповідь
Відповідь лише сигналізує про виконання команди.
Таблиця 51. Значення відповіді SWITCH_MODE_AUTOCOLL

Поле корисного навантаження Довжина Значення/опис
Статус 1 байт Статус операції [Таблиця 9]. Очікувані значення:
PN5190_STATUS_INSTR_SUCCESS
PN5190_STATUS_INSTR_ERROR (Режим перемикання не введено через неправильні налаштування)

4.5.4.6.3 Подія
Повідомлення про подію надсилається після завершення виконання команди та переходу в звичайний режим. Хост має зчитувати байти відповіді на основі значення події.
Примітка:
Якщо статус не є «PN5190_STATUS_INSTR_SUCCESS», тоді додаткові байти даних «Protocol» і «Card_Activated» відсутні.
Технологічна інформація отримується з реєстрів за допомогою команд Розділу 4.5.1.5, Розділу 4.5.1.6.
У наступній таблиці показано дані про подію, які надсилаються як частина повідомлення про подію (рис. 12 і рис. 13).
Таблиця 52. EVENT_SWITCH_MODE_AUTOCOLL – дані AUTOCOLL_EVENT Подія Autocoll перемикання режиму роботи

Поле корисного навантаження Довжина Значення/опис
Статус 1 байт Статус операції
PN5190_STATUS_INSTR_SUCCESS PN5190 АКТИВОВАНО в режимі TARGET.
Подальші дані в цій події дійсні.
PN5190_STATUS_PREVENT_STANDBY Вказує на те, що PN5190 не може перейти в режим очікування. Цей статус дійсний лише тоді, коли режим Autocoll вибрано як «Автономний режим із режимом очікування».
PN5190_STATUS_NO_EXTERNAL_RF_ ПОЛЕ Вказує на відсутність зовнішнього радіочастотного поля під час виконання Autocoll в неавтономному режимі
PN5190_STATUS_USER_CANCELLED Вказує на те, що поточну команду, що виконується, перервано командою перемикання нормального режиму
Протокол 1 байт 0x10 Активовано як пасивний тип A
0x11 Активовано як Passive TypeF 212
0x12 Активовано як Passive TypeF 424
0x20 Активовано як Active TypeA
0x21 Активований як Active TypeF 212
0x22 Активований як Active TypeF 424
Інші цінності Недійсний
Card_Activated 1 байт 0x00 Немає процесу активації картки відповідно до ISO 14443-3
0x01 Вказує на те, що пристрій активовано в пасивному режимі

Примітка:
Після зчитування даних події дані, отримані від активованої картки/пристрою (наприклад, «n» байтів ATR_REQ/RATS згідно з ISO18092/ISO1443-4), мають бути зчитані за допомогою команди Розділу 4.5.3.3.
4.5.4.6.4 Комунікація прample

NXP PN5190 NFC Frontend Controller - Зв'язок example

4.5.4.7 SWITCH_MODE_STANDBY
Перемикання режиму очікування автоматично переводить мікросхему в режим очікування. IC вийде з режиму сну після того, як налаштовані джерела пробудження відповідають умовам пробудження.
Примітка:
За замовчуванням для виходу з режимів очікування доступні лічильник закінчення для ULP STANDBY і скасування HIF для STANDBY.

4.5.4.7.1 Команда
Таблиця 53. Значення команди SWITCH_MODE_STANDBY

Параметр Довжина Значення/опис
Конфігурація 1 байт Бітова маска, яка керує джерелом пробудження, яке буде використовуватися, і режимом очікування для переходу. Відноситься до Таблиця 54
Лічильник значення 2 байт Використане значення для лічильника пробудження в мілісекундах. Максимальне підтримуване значення становить 2690 для режиму очікування. Максимальне підтримуване значення становить 4095 для режиму очікування ULP. Значення, яке потрібно надати, має формат від маленького кінця.
Вміст цього параметра дійсний, лише якщо «Бітова маска конфігурації» ввімкнено для пробудження після закінчення терміну дії лічильника.

Таблиця 54. Конфігурація Bitmask

b7 b6 b5 b4 b3 b2 b1 b0 опис
X Перейти в режим очікування ULP, якщо біт встановлено на 1b. Увійти в режим очікування, якщо біт встановлено на 0b.
0 РФУ
X Пробудження на GPIO-3, коли він високий, якщо біт встановлено на 1b. (Не застосовується для режиму очікування ULP)
X Пробудження на GPIO-2, коли він високий, якщо біт встановлено на 1b. (Не застосовується для режиму очікування ULP)
X Пробудження на GPIO-1, коли він високий, якщо біт встановлено на 1b. (Не застосовується для режиму очікування ULP)
X Пробудження на GPIO-0, коли він високий, якщо біт встановлено на 1b. (Не застосовується для режиму очікування ULP)
X Лічильник пробудження після пробудження закінчується, якщо біт встановлено на 1b. Для ULP-Standby цей параметр увімкнено за замовчуванням.
X Пробудження від зовнішнього радіочастотного поля, якщо біт встановлено на 1b.

Примітка: Починаючи з PN5190 FW v02.03, якщо поле EEPROM «CardModeUltraLowPowerEnabled» за адресою «0xCDF» має значення «1», конфігурація режиму очікування ULP не може використовуватися з командою SWITCH_MODE_STANDBY.
4.5.4.7.2 Відповідь
Відповідь лише сигналізує про те, що команда була оброблена, і стан очікування буде введено лише після того, як відповідь буде повністю прочитано хостом.
Таблиця 55. Значення відповіді SWITCH_MODE_STANDBY Перемикач режиму очікування

Поле корисного навантаження Довжина Значення/опис
Статус 1 байт Статус операції [Таблиця 9]. Очікувані значення:
PN5190_STATUS_INSTR_SUCCESS
PN5190_STATUS_INSTR_ERROR (режим перемикання не введено – через неправильні налаштування)

4.5.4.7.3 Подія
Повідомлення про подію надсилається після завершення виконання команди та переходу в звичайний режим. Зверніться до формату події, яка буде надіслана після завершення команди, як на рисунках 12 і 13.
У випадку, якщо PN5190 заборонено переходити в режим очікування, тоді біт події «STANDBY_PREV_EVENT», установлений у EVENT_STATUS, як зазначено в таблиці 11, надсилається на хост відповідно до причини запобігання режиму очікування, як зазначено в таблиці 13.
4.5.4.7.4 Комунікація Прample

NXP PN5190 NFC Frontend Controller - зв'язок Example1

4.5.4.8 SWITCH_MODE_LPCD
Режим перемикання LPCD виконує виявлення розстроювання антени через зміну середовища навколо антени.
Є 2 різні режими LPCD. Рішення на основі HW (ULPCD) пропонує конкурентоспроможне енергоспоживання зі зниженою чутливістю. Рішення на основі FW (LPCD) пропонує найкращу в своєму класі чутливість із збільшеним енергоспоживанням.
В єдиному режимі FW на основі (LPCD) подія калібрування не надсилається на хост.
Коли активовано одиночний режим, калібрування та послідовні вимірювання виконуються після виходу з режиму очікування.
Для події калібрування в одиночному режимі спочатку видайте одиночний режим командою події калібрування. Після калібрування надходить подія калібрування LPCD, після чого необхідно надіслати команду одного режиму з опорним значенням, отриманим на попередньому кроці, як вхідний параметр.
Конфігурація LPCD виконується в налаштуваннях EEPROM/Flash Data перед викликом команди.
Примітка:
Переривання GPIO3 для ULPCD, переривання HIF для LPCD доступні за замовчуванням для виходу з режимів низького споживання.
Пробудження через закінчення терміну дії лічильника завжди ввімкнено.
Для ULPCD конфігурація DC-DC має бути вимкнена в налаштуваннях EEPROM/Flash Data і повинна забезпечувати живлення VUP через VBAT. Необхідно встановити необхідні перемички. Для налаштувань EEPROM/Flash Data зверніться до документа [2].
Якщо команда призначена для калібрування LPCD/ULPCD, хост все одно має надіслати повний кадр.

4.5.4.8.1 Команда
Таблиця 56. Значення команди SWITCH_MODE_LPCD

Параметр Довжина Значення/опис
bКонтроль 1 байт 0x00 Введіть калібрування ULPCD. Команда припиняється після калібрування, і подія з еталонним значенням надсилається на хост.
0x01 Введіть ULPCD
0x02 Калібрування LPCD. Команда припиняється після калібрування, і подія з еталонним значенням надсилається на хост.
0x03 Введіть LPCD
0x04 Одномісний режим
0x0C Одиночний режим із подією калібрування
Інші значення РФУ
Контроль пробудження 1 байт Бітова маска, що керує джерелом пробудження, яке буде використовуватися для LPCD/ULPCD. Вміст цього поля не враховується для калібрування. Відноситься до Таблиця 57
Довідкове значення 4 байт Еталонне значення для використання під час ULPCD/LPCD.
Для ULPCD байт 2, який містить значення HF Attenuator, використовується під час фази калібрування та вимірювання.
Для LPCD вміст цього поля не враховується для калібрування та одиночного режиму. Відноситься до Таблиця 58 для правильної інформації про всі 4 байти.
Лічильник значення 2 байт Значення для лічильника пробудження в мілісекундах. Максимальне підтримуване значення становить 2690 для LPCD. Максимальне підтримуване значення – 4095 для ULPCD. Значення, яке потрібно надати, має формат від маленького кінця.
Вміст цього поля не враховується для калібрування LPCD.
Для одного режиму та одного режиму з подією калібрування тривалість очікування перед калібруванням можна налаштувати в конфігурації EEPROM: LPCD_SETTINGS->wCheck Period.
Для одиночного режиму з калібруванням значення WUC має бути ненульовим.

Таблиця 57. Бітова маска керування пробудженням

b7 b6 b5 b4 b3 b2 b1 b0 опис
0 0 0 0 0 0 0 РФУ
X Пробудження від зовнішнього радіочастотного поля, якщо біт встановлено на 1b.

Таблиця 58. Інформація про байт контрольного значення

Довідкове значення байтів ULPCD LPCD
Байт 0 Посилальний байт 0 Канал 0 Опорний байт 0
Байт 1 Посилальний байт 1 Канал 0 Опорний байт 1
Байт 2 Значення ВЧ аттенюатора Канал 1 Опорний байт 0
Байт 3 NA Канал 1 Опорний байт 1

4.5.4.8.2 Відповідь
Таблиця 59. Значення відповіді SWITCH_MODE_LPCD

Поле корисного навантаження Довжина Значення/опис
Статус 1 байт Статус операції [Таблиця 9]. Очікувані значення:
PN5190_STATUS_INSTR_SUCCESS
PN5190_STATUS_INSTR_ERROR (режим перемикання не введено – через неправильні налаштування)

4.5.4.8.3 Подія
Повідомлення про подію надсилається, коли команда завершується, і вводиться звичайний режим із такими даними як частина події, згаданої на рисунках 12 і 13.
Таблиця 60. EVT_SWITCH_MODE_LPCD

Поле корисного навантаження Довжина Значення/опис
Статус LPCD Див. Таблицю 15 Зверніться до таблиці 154.5.4.8.4 Зв'язок Прample

NXP PN5190 NFC Frontend Controller - Example

4.5.4.9 SWITCH_MODE_DOWNLOAD
Команда Switch Mode Download переходить у режим завантаження мікропрограми.
Єдиний спосіб вийти з режиму завантаження – виконати скидання до PN5190.
4.5.4.9.1 Команда
Таблиця 61. Значення команди SWITCH_MODE_DOWNLOAD

Параметр Довжина Значення/опис
Жодного значення

4.5.4.9.2 Відповідь
Відповідь лише сигналізує про те, що команда була оброблена, і режим завантаження має бути введено після того, як відповідь буде прочитано хостом.
Таблиця 62. Значення відповіді SWITCH_MODE_DOWNLOAD
Переключити режим роботи Autocoll

Поле корисного навантаження Довжина Значення/опис
Статус 1 байт Статус операції [Таблиця 9]. Очікувані значення:
PN5190_STATUS_SUCCESS
PN5190_STATUS_INSTR_ERROR (режим перемикання не введено)

4.5.4.9.3 Подія
Немає генерації подій.
4.5.4.9.4 Комунікація Прample
4.5.5 Класична автентифікація MIFARE
4.5.5.1 MFC_AUTHENTICATE
Ця інструкція використовується для виконання MIFARE Classic Authentication на активованій картці. Для автентифікації за вказаною адресою блоку потрібні ключ, UID картки та тип ключа. Відповідь містить один байт, що вказує на статус автентифікації.
4.5.5.1.1 Умови
Ключ поля має мати довжину 6 байт. Тип ключа поля має містити значення 0x60 або 0x61. Адреса блоку може містити будь-яку адресу від 0x0 до 0xff включно. Поле UID має мати довжину в байтах і містити 4-байтовий UID картки. Перед виконанням цієї інструкції картку ISO14443-3 MIFARE Classic слід перевести в стан ACTIVE або ACTIVE*.
У разі помилки виконання, пов’язаної з автентифікацією, це поле «Статус автентифікації» встановлюється відповідно.
4.5.5.1.2 Команда
Таблиця 63. Команда MFC_AUTHENTICATE
Виконайте автентифікацію на активованій картці продукту MIFARE Classic.

Поле корисного навантаження Довжина Значення/опис
ключ 6 байт Ключ автентифікації для використання.
Тип ключа 1 байт 0x60 Тип ключа А
0x61 Тип ключа B
Блокувати адресу 1 байт Адреса блоку, для якого необхідно виконати аутентифікацію.
UID 4 байт UID картки.

4.5.5.1.3 Відповідь
Таблиця 64. Відповідь MFC_AUTHENTICATE
Відповідь на MFC_AUTHENTICATE.

Поле корисного навантаження Довжина Значення/опис
Статус 1 байт Статус операції [Таблиця 9]. Очікувані значення:
PN5190_STATUS_INSTR_SUCCESS PN5190_STATUS_INSTR_ERROR PN5190_STATUS_TIMEOUT PN5190_STATUS_AUTH_ERROR

4.5.5.1.4 Подія
Для цієї інструкції немає події.
4.5.6 Підтримка ISO 18000-3M3 (EPC GEN2).
4.5.6.1 EPC_GEN2_INVENTORY
Ця інструкція використовується для проведення інвентаризації ISO18000-3M3 tags. Він реалізує автономне виконання кількох команд відповідно до ISO18000-3M3, щоб гарантувати час, визначений цим стандартом.
За наявності в корисному навантаженні інструкції спочатку виконується команда Select, а потім команда BeginRound.
Якщо в першому часовому інтервалі є дійсна відповідь (без тайм-ауту, без конфлікту), інструкція надсилає ACK і зберігає отриманий PC/XPC/UII. Потім інструкція виконує дію відповідно до поля «Поведінка обробки часових інтервалів»:

  • Якщо це поле має значення 0, для обробки наступного часового інтервалу видається команда NextSlot. Це повторюється, доки внутрішній буфер не заповниться
  • Якщо в цьому полі встановлено значення 1, алгоритм призупиняється
  • Якщо для цього поля встановлено значення 2, команда Req_Rn видається, якщо і тільки якщо був дійсний tag відповідь у цьому timeslotCommand

Поле «Select Command Length» має містити довжину поля «Select Command», яка має бути в діапазоні від 1 до 39 включно. Якщо «Довжина команди вибору» дорівнює 0, поля «Дійсні біти в останньому байті» та «Вибір команди» не повинні бути присутніми.
Поле «Біти в останньому байті» має містити кількість бітів, які потрібно передати в останньому байті поля «Вибір команди». Значення має бути в діапазоні від 1 до 7 включно. Якщо значення дорівнює 0, передаються всі біти останнього байта з поля «Вибір команди».
Поле «Вибір команди» має містити команду вибору відповідно до ISO18000-3M3 без CRC-16c у кінці та мати таку ж довжину, як указано в полі «Вибір довжини команди».
Поле «Команда BeginRound» має містити команду BeginRound відповідно до ISO18000-3M3 без кінцевого CRC-5. Останні 7 бітів останнього байта «Команди BeginRound» ігноруються, оскільки фактична довжина команди становить 17 бітів.
«Поведінка обробки тимчасового інтервалу» має містити значення від 0 до 2 включно.
Таблиця 65. Значення команди EPC_GEN2_INVENTORY Виконайте інвентаризацію ISO 18000-3M3

Поле корисного навантаження Довжина Значення/опис
Відновити інвентаризацію 1 байт 00 Початковий GEN2_INVENTORY
01 Відновити команду GEN2_INVENTORY – залишилося

поля нижче порожні (будь-яке корисне навантаження ігнорується)

Виберіть Довжина команди 1 байт 0 Жодна команда Select не встановлена ​​перед командою BeginRound. Поля «Дійсні біти в останньому байті» та «Вибір команди» не повинні бути присутніми.
1 – 39 Довжина (n) поля «Вибрати команду».
Дійсні біти в останньому байті 1 байт 0 Передаються всі біти останнього байта поля «Вибір команди».
1 – 7 Кількість бітів, які потрібно передати в останньому байті поля «Вибір команди».
Виберіть команду n байт Якщо присутнє, це поле містить команду Select (відповідно до ISO18000-3, таблиця 47), яка надсилається перед командою BeginRound. CRC-16c не включається.
Команда BeginRound 3 байт Це поле містить команду BeginRound (відповідно до ISO18000-3, табл. 49). CRC-5 не включається.
Поведінка обробки в часовому інтервалі 1 байт 0 Відповідь містить макс. Кількість часових інтервалів, які можуть поміститися в буфер відповіді.
1 Відповідь містить лише один часовий інтервал.
2 Відповідь містить лише один часовий інтервал. Якщо часовий інтервал містить дійсну відповідь картки, також включається дескриптор картки.

4.5.6.1.1 Відповідь
Довжина відповіді може бути «1» у випадку резюме інвентаризації.
Таблиця 66. Значення відповіді EPC_GEN2_INVENTORY

Поле корисного навантаження Довжина Значення/опис
Статус 1 байт Статус операції [Таблиця 9]. Очікувані значення:
PN5190_STATUS_SUCCESS (Прочитати стан часового інтервалу в наступному байте для Tag відповідь)
PN5190_STATUS_INSTR_ERROR (Дані відсутні)
Часовий інтервал [1…n] 3 – 69 байт Статус часового інтервалу 1 байт 0 Tag доступна відповідь. 'Tag Поле «Довжина відповіді», поле «Дійсні біти в останньому байті» та «Tag присутнє поле відповіді.
1 Tag доступна відповідь.
2 немає tag відповів у часовий проміжок. 'Tag Поля «Довжина відповіді» та «Дійсні біти в останньому байті» мають бути встановлені на нуль. 'Tag поле відповіді не повинно бути присутнім.
3 Два або більше tags відповів у часовий проміжок. (Зіткнення). 'Tag Поля «Довжина відповіді» та «Дійсні біти в останньому байті» мають бути встановлені на нуль. 'Tag поле відповіді не повинно бути присутнім.
Tag Довжина відповіді 1 байт 0-66 Довжина 'Tag Поле для відповіді (i). Якщо Tag Довжина відповіді 0, потім Tag Поле для відповіді відсутнє.
Дійсні біти в останньому байті 1 байт 0 Усі біти останнього байта 'Tag поля відповіді є дійсними.
1-7 Кількість дійсних бітів останнього байта 'Tag поле відповіді. Якщо Tag Довжина відповіді дорівнює нулю, значення цього байта ігноруватиметься.
Tag Відповісти 'n' Bytes Відповідь в tag згідно ISO18000-3_2010, табл. 56.
Tag Ручка 0 або 2 байти Ручка tag, якщо для поля «Статус тимчасового інтервалу» встановлено значення «1». Інакше поле відсутнє.

4.5.6.1.2 Подія
Для цієї команди немає подій.
4.5.7 Керування радіочастотною конфігурацією
Зверніться до Розділу 6 щодо конфігурації TX і RX для різних радіочастотних технологій і швидкості передачі даних, які підтримує PN5190. Значення, які не знаходяться в діапазоні, зазначеному нижче, повинні розглядатися як RFU.
4.5.7.1 LOAD_RF_CONFIGURATION
Ця інструкція використовується для завантаження радіочастотної конфігурації з EEPROM у внутрішні регістри CLIF. Радіочастотна конфігурація стосується унікальної комбінації радіочастотної технології, режиму (ціль/ініціатор) і швидкості передачі даних. Радіочастотну конфігурацію можна завантажити окремо для приймача CLIF (конфігурація RX) і передавача (конфігурація TX). Значення 0xFF необхідно використовувати, якщо відповідна конфігурація для шляху не буде змінена.
4.5.7.1.1 Умови
Поле «TX Configuration» має бути в діапазоні від 0x00 до 0x2B включно. Якщо значення дорівнює 0xFF, конфігурація TX не змінюється.
Поле 'RX Configuration' має бути в діапазоні від 0x80 до 0xAB включно. Якщо значення дорівнює 0xFF, конфігурація RX не змінюється.
Спеціальна конфігурація з конфігурацією TX = 0xFF і конфігурацією RX = 0xAC використовується для одноразового завантаження регістрів завантаження.
Ця спеціальна конфігурація потрібна для оновлення конфігурацій реєстру (як TX, так і RX), які відрізняються від значень скидання IC.

4.5.7.1.2 Команда
Таблиця 67. Значення команди LOAD_RF_CONFIGURATION
Завантажте параметри RF TX і RX з E2PROM.

Поле корисного навантаження Довжина Значення/опис
Конфігурація TX 1 байт 0xFF Конфігурація TX RF не змінена.
0x0 – 0x2B Завантажено відповідну конфігурацію TX RF.
Конфігурація RX 1 байт 0xFF Конфігурація RX RF не змінена.
0x80 – 0xAB Завантажено відповідну конфігурацію RX RF.

4.5.7.1.3 Відповідь
Таблиця 68. Значення відповіді LOAD_RF_CONFIGURATION

Поле корисного навантаження Довжина Значення/опис
Статус 1 байт Статус операції [Таблиця 9]. Очікувані значення:
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR

4.5.7.1.4 Подія
Для цієї команди немає подій.
4.5.7.2 UPDATE_RF_CONFIGURATION
Ця інструкція використовується для оновлення радіочастотної конфігурації (див. визначення в розділі 4.5.7.1) в E2PROM. Інструкція дозволяє оновлювати за значенням деталізації регістра, тобто оновлювати потрібно не весь набір (хоча це можна зробити).
4.5.7.2.1 Умови
Розмір поля масиву Configuration має бути в діапазоні від 1 до 15 включно. Масив полів Configuration повинен містити набір RF Configuration, Register Address і Value. Конфігурація RF поля має бути в діапазоні від 0x0 до 0x2B для конфігурації TX та 0x80 – 0xAB для конфігурації RX включно. Адреса в полі Register Address має існувати у відповідній радіочастотній конфігурації. Поле «Значення» має містити значення, яке має бути записане в даний регістр і має мати довжину 4 байти (формат порядкового порядку).
4.5.7.2.2 Команда
Таблиця 69. Значення команди UPDATE_RF_CONFIGURATION
Оновіть конфігурацію РЧ

Поле корисного навантаження Довжина Значення/опис
Конфігурація[1…n] 6 байт Конфігурація радіочастот 1 байт Конфігурація РЧ, для якої необхідно змінити реєстр.
Адреса реєстрації 1 байт Реєстрація адреси в рамках даної радіочастотної технології.
Значення 4 байт Значення, яке необхідно внести до реєстру. (Little-endian)

4.5.7.2.3 Відповідь
Таблиця 70. Значення відповіді UPDATE_RF_CONFIGURATION

Поле корисного навантаження Довжина Значення/опис
Статус 1 байт Статус операції [Таблиця 9]. Очікувані значення:
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR PN5190_STATUS_MEMORY_ERROR

4.5.7.2.4 Подія
Для цієї команди немає подій.
4.5.7.3 GET_ RF_CONFIGURATION
Ця інструкція використовується для зчитування радіочастотної конфігурації. Пари реєстру адреса-значення доступні у відповіді. Щоб дізнатися, скільки пар слід очікувати, першу інформацію про розмір можна отримати з першого TLV, який вказує загальну довжину корисного навантаження.
4.5.7.3.1 Умови
Радіочастотна конфігурація поля має бути в діапазоні від 0x0 до 0x2B для конфігурації TX та 0x80 –0xAB для конфігурації RX включно.
4.5.7.3.2 Команда
Таблиця 71. Значення команди GET_ RF_CONFIGURATION Отримати радіочастотну конфігурацію.

Поле корисного навантаження Довжина Значення/опис
Конфігурація радіочастот 1 байт Радіочастотна конфігурація, для якої необхідно отримати набір пар значень регістру.

4.5.7.3.3 Відповідь
Таблиця 72. Значення відповіді GET_ RF_CONFIGURATION

Поле корисного навантаження Довжина Значення/опис
Статус 1 байт Статус операції [Таблиця 9]. Очікувані значення:
PN5190_STATUS_SUCCESS
PN5190_STATUS_INSTR_ERROR (Дані відсутні)
Пара [1…n] 5 байт Адреса реєстрації 1 байт Реєстрація адреси в рамках даної радіочастотної технології.
Значення 4 байт 32-розрядне значення регістра.

4.5.7.3.4 Подія
Немає події для інструкції.
4.5.8 Керування радіочастотним полем
4.5.8.1 RF_ON
Ця інструкція використовується для ввімкнення РЧ. Регулювання DPC на початковому FieldOn має оброблятися цією командою.
4.5.8.1.1 Команда
Таблиця 73. Значення команди RF_FIELD_ON
Налаштуйте RF_FIELD_ON.

Поле корисного навантаження Довжина Значення/опис
RF_on_config 1 байт Біт 0 0 Використовуйте уникнення зіткнень
1 Вимкнути уникнення зіткнень
Біт 1 0 Немає активних P2P
1 P2P активний

4.5.8.1.2 Відповідь
Таблиця 74. Значення відповіді RF_FIELD_ON

Поле корисного навантаження Довжина Значення/опис
Статус 1 байт Статус операції [Таблиця 9]. Очікувані значення:
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR
PN5190_STATUS_RF_COLLISION_ERROR (радіочастотне поле не ввімкнено через радіочастотну колізію)
PN5190_STATUS_TIMEOUT (радіочастотне поле не ввімкнено через тайм-аут) PN5190_STATUS_TXLDO_ERROR (помилка TXLDO через VUP недоступна)
PN5190_STATUS_RFCFG_NOT_APPLIED (радіочастотна конфігурація не застосовується до цієї команди)

4.5.8.1.3 Подія
Для цієї інструкції немає події.
4.5.8.2 RF_OFF
Ця інструкція використовується для вимкнення радіочастотного поля.
4.5.8.2.1 Команда
Таблиця 75. Значення команди RF_FIELD_OFF

Поле корисного навантаження Довжина Значення/опис
Порожній Порожній порожній

4.5.8.2.2 Відповідь
Таблиця 76. Значення відповіді RF_FIELD_OFF

Поле корисного навантаження Довжина Значення/опис
Статус 1 байт Статус операції [Таблиця 9]. Очікувані значення:
PN5190_STATUS_SUCCESS
PN5190_STATUS_INSTR_ERROR (Дані відсутні)

4.5.8.2.3 Подія
Для цієї інструкції немає події.
4.5.9 Перевірка конфігурації шини
Доступні сигнали тестової шини для вибраних конфігурацій PAD перераховані в Розділі 7 для довідки.
Вони повинні бути використані для надання конфігурації для інструкцій тестової шини, як зазначено нижче.
4.5.9.1 НАЛАШТУВАННЯ _TESTBUS_DIGITAL
Ця інструкція використовується для перемикання доступного сигналу цифрової тестової шини на вибраних конфігураціях панелей.
4.5.9.1.1 Команда
Таблиця 77. Значення команди CONFIGURE_TESTBUS_DIGITAL

Поле корисного навантаження Довжина Значення/опис
TB_SignalIndex 1 байт Зверніться до Розділ 7
TB_BitIndex 1 байт Зверніться до Розділ 7
TB_PadIndex 1 байт Індекс контактної площадки, на якій виводиться цифровий сигнал
0x00 контакт AUX1
0x01 контакт AUX2
0x02 контакт AUX3
0x03 контакт GPIO0
0x04 контакт GPIO1
0x05 контакт GPIO2
0x06 контакт GPIO3
0x07-0xFF РФУ

4.5.9.1.2 Відповідь
Таблиця 78. Значення відповіді CONFIGURE_TESTBUS_DIGITAL

Поле корисного навантаження Довжина Значення/опис
Статус 1 байт Статус операції [Таблиця 9]. Очікувані значення:
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR (Більше даних немає)

4.5.9.1.3 Подія
Для цієї інструкції немає події.
4.5.9.2 CONFIGURE_TESTBUS_ANALOG
Ця інструкція використовується для отримання доступного сигналу аналогової тестової шини на вибраних конфігураціях колодок.
Сигнал на аналоговій тестовій шині можна отримати в різних режимах. Це:
4.5.9.2.1 Режим RAW
У цьому режимі сигнал, вибраний TB_SignalIndex0, зсувається Shift_Index0, маскується Mask0 і виводиться на AUX1. Подібним чином сигнал, вибраний TB_SignalIndex1, зсувається Shift_Index1, маскується Mask1 і виводиться на AUX2.
Цей режим пропонує клієнту гнучкість для виведення будь-якого сигналу шириною 8 біт або менше і не потребує перетворення знака для виведення на аналогові панелі.
4.5.9.2.2 КОМБІНОВАНИЙ режим
У цьому режимі аналоговим сигналом буде 10-бітове значення ADCI/ADCQ/pcrm_if_rssi зі знаком, перетворене на значення без знаку, масштабоване назад до 8 біт, а потім виведене на колодки AUX1 або AUX2.
Тільки одне з перетворених ADCI/ADCQ (10-бітних) значень може бути виведено на AUX1/AUX2 у будь-який час.
Якщо значення поля корисного навантаження Combined_Mode Signal дорівнює 2 (аналоговий і цифровий комбінований), тоді аналогова та цифрова тестова шина направляється на AUX1 (аналоговий сигнал) і GPIO0 (цифровий сигнал).
Сигнали для маршрутизації налаштовуються в адресі EEPROM, згаданій нижче:
0xCE9 – TB_SignalIndex
0xCEA – TB_BitIndex
0xCEB – аналоговий TB_Index
Індекс тестової шини та біт тестової шини потрібно налаштувати в EEPROM, перш ніж ми запустимо комбінований режим із опцією 2.
Примітка:
Хост надає всі поля, незалежно від застосовності полів у «необробленому» або «комбінованому» режимі. ІС PN5190 враховує лише відповідні значення полів.
4.5.9.2.3 Команда
Таблиця 79. Значення команди CONFIGURE_TESTBUS_ANALOG

Поле корисного навантаження Довжина Значення/опис Польова застосовність для комбінованого режиму
bConfig 1 байт Конфігуровані біти. Зверніться до Таблиця 80 так
Комбінований_режим сигналу 1 байт 0 – ADCI/ADCQ
1 – pcrm_if_rssi
так
2 – Об’єднаний аналоговий і цифровий
3 – 0xFF – Зарезервовано
TB_SignalIndex0 1 байт Індекс сигналу аналогового сигналу. Зверніться до Розділ 7 так
TB_SignalIndex1 1 байт Індекс сигналу аналогового сигналу. Зверніться до Розділ 7 так
Shift_Index0 1 байт Позиції зсуву входу DAC0. Напрямок буде визначено бітом у bConfig[1]. немає
Shift_Index1 1 байт Позиції зсуву входу DAC1. Напрямок буде визначено бітом у bConfig[2]. немає
Маска0 1 байт Маска DAC0 немає
Маска1 1 байт Маска DAC1 немає

Таблиця 80. Конфігурація бітової маски

b7 b6 b5 b4 b3 b2 b1 b0 опис Застосовується до режиму
X X Діапазон зсуву виходу DAC1 – 0, 1, 2 Сирий
X X Діапазон зсуву виходу DAC0 – 0, 1, 2 Сирий
X У комбінованому режимі сигнал на контакті AUX1/AUX2
0 ➜ Сигнал на AUX1
1 ➜ Сигнал на AUX2
Комбінована
X Напрямок зміщення входу DAC1
0 ➜ Зсув праворуч
1 ➜ Зсув ліворуч
Сирий
X Напрямок зміщення входу DAC0
0 ➜ Зсув праворуч
1 ➜ Зсув ліворуч
Сирий
X Режим.
0 ➜ Режим Raw
1 ➜ Комбінований режим
Сирий/Комбінований

4.5.9.2.4 Відповідь
Таблиця 81. Значення відповіді CONFIGURE_TESTBUS_ANALOG

Поле корисного навантаження Довжина Значення/опис
Статус 1 байт Статус операції [Таблиця 9]. Очікувані значення:
PN5190_STATUS_SUCCESS
PN5190_STATUS_INSTR_ERROR (Дані відсутні)

4.5.9.2.5 Подія
Для цієї інструкції немає події.
4.5.9.3 CONFIGURE_MULTIPLE_TESTBUS_DIGITAL
Ця інструкція використовується для перемикання кількох доступних сигналів цифрової тестової шини на вибраних конфігураціях колодок.
Примітка: Якщо ця довжина НУЛЬОВА, то цифрова тестова шина скидається.
4.5.9.3.1 Команда
Таблиця 82. Значення команди CONFIGURE_MULTIPLE_TESTBUS_DIGITAL

Поле корисного навантаження Довжина Значення/опис
TB_SignalIndex #1 1 байт Зверніться до 8 нижче
TB_BitIndex #1 1 байт Зверніться до 8 нижче
TB_PadIndex #1 1 байт Індекс контактної площадки, на якій виводиться цифровий сигнал
0x00 контакт AUX1
0x01 контакт AUX2
0x02 контакт AUX3
0x03 контакт GPIO0
0x04 контакт GPIO1
0x05 контакт GPIO2
0x06 контакт GPIO3
0x07-0xFF РФУ
TB_SignalIndex #2 1 байт Зверніться до 8 нижче
TB_BitIndex #2 1 байт Зверніться до 8 нижче
TB_PadIndex #2 1 байт Індекс контактної площадки, на якій виводиться цифровий сигнал
0x00 контакт AUX1
0x01 контакт AUX2
0x02 контакт AUX3
0x03 контакт GPIO0
0x04 контакт GPIO1
0x05 контакт GPIO2
0x06 контакт GPIO3
0x07-0xFF РФУ

4.5.9.3.2 Відповідь
Таблиця 83. Значення відповіді CONFIGURE_MULTIPLE_TESTBUS_DIGITAL

Поле корисного навантаження Довжина Значення/опис
Статус 1 байт Статус операції [Таблиця 2]. Очікувані значення:
PN5190_STATUS_SUCCESS
PN5190_STATUS_INSTR_ERROR (Дані відсутні)

4.5.9.3.3 Подія
Для цієї інструкції немає події.
4.5.10 Конфігурація CTS
4.5.10.1 CTS_ENABLE
Ця інструкція використовується для ввімкнення/вимкнення функції журналювання CTS.
4.5.10.1.1 Команда
Таблиця 84. Значення команди CTS_ENABLE

Значення/опис довжини поля корисного навантаження
Увімкнути/вимкнути 1 байт Біт 0 0 Вимкніть функцію ведення журналу CTS

1 Увімкніть функцію ведення журналу CTS

Біт 1-7 РФУ

4.5.10.1.2 Відповідь
Таблиця 85. Значення відповіді CTS_ENABLE

Поле корисного навантаження Довжина Значення/опис
Статус 1 байт Статус операції [Таблиця 9]. Очікувані значення:
PN5190_STATUS_SUCCESS
PN5190_STATUS_INSTR_ERROR (Дані відсутні)

4.5.10.1.3 Подія
У наступній таблиці показано дані про подію, які будуть надіслані як частина повідомлення про подію, як показано на рисунках 12 і 13.
Таблиця 86. Це інформує хост про те, що дані були отримані. EVT_CTS_DONE

Поле корисного навантаження Довжина Значення/опис
Подія 1 байт 00 … TRIGGER стався, дані готові до прийому.

4.5.10.2 CTS_CONFIGURE
Ця інструкція використовується для налаштування всіх необхідних регістрів CTS, таких як тригери, регістри тестової шини, sampконфігурація ling тощо,
Примітка:
[1] забезпечує краще розуміння конфігурації CTS. Зібрані дані надсилаються як частина відповіді на команду Розділу 4.5.10.3.

4.5.10.2.1 Команда
Таблиця 87. Значення команди CTS_CONFIGURE

Поле корисного навантаження Довжина Значення/опис
PRE_TRIGGER_SHIFT 1 байт Визначає довжину послідовності збору після запуску в 256 байтах.
0 означає відсутність зсуву; n означає зсув блоку n*256 байт.
Примітка: дійсний, лише якщо TRIGGER_MODE є режимом запуску «PRE» або «COMB».
TRIGGER_MODE 1 байт Визначає режим збору, який буде використовуватися.
0x00 – режим POST
0x01 – RFU
0x02 – режим PRE
0x03 – 0xFF – недійсний
RAM_PAGE_WIDTH 1 байт Визначає обсяг вбудованої пам’яті, який охоплюється отриманням. Деталізація вибрана за проектом як 256 байт (тобто 64 32-бітних слова).
Допустимі значення наведено нижче:
0x00h – 256 байт
0x02h – 768 байт
0x01h – 512 байт
0x03h – 1024 байт
0x04h – 1280 байт
0x05h – 1536 байт
0x06h – 1792 байт
0x07h – 2048 байт
0x08h – 2304 байт
0x09h – 2560 байт
0x0Ah – 2816 байт
0x0Bh – 3072 байти
0x0Ch – 3328 байт
0x0Dh – 3584 байти
0x0Eh – 3840 байт
0x0Fh – 4096 байт
0x10h – 4352 байт
0x11h – 4608 байт
0x12h – 4864 байт
0x13h – 5120 байт
0x14h – 5376 байт
0x15h – 5632 байт
0x16h – 5888 байт
0x17h – 6144 байт
0x18h – 6400 байт
0x19h – 6656 байт
0x1Ah – 6912 байт
0x1Bh – 7168 байти
0x1Ch – 7424 байт
0x1Dh – 7680 байти
0x1Eh – 7936 байт
0x1Fh – 8192 байт
SAMPLE_CLK_DIV 1 байт Десяткове значення цього поля вказує коефіцієнт ділення тактової частоти, який буде використовуватися під час отримання даних.
Тактова частота CTS = 13.56 МГц / 2SAMPLE_CLK_DIV
00 – 13560 кГц
01 – 6780 кГц
02 – 3390 кГц
03 – 1695 кГц
04 – 847.5 кГц
05 – 423.75 кГц
06 – 211.875 кГц
07 – 105.9375 кГц
08 – 52.96875 кГц
09 – 26.484375 кГц
10 – 13.2421875 кГц
11 – 6.62109375 кГц
12 – 3.310546875 кГц
13 – 1.6552734375 кГц
14 – 0.82763671875 кГц
15 – 0.413818359375 кГц
SAMPLE_BYTE_SEL 1 байт Ці біти використовуються для визначення того, які байти двох 16-бітних шин введення вносять внесок у механізм чергування, який генерує дані для передачі у вбудовану пам’ять. Значення та використання їх залежить від SAMPзначення LE_MODE_SEL.

Примітка. Дане значення завжди маскується 0x0F, а потім враховується ефективне значення.

SAMPLE_MODE_SEL 1 байт Вибирає sampрежим чергування ling, як описано в специфікаціях дизайну CTS. Десяткове значення 3 зарезервовано та розглядатиметься як 0.
Примітка. Дане значення завжди маскується 0x03, а потім враховується ефективне значення.
TB0 1 байт Вибирає тестову шину для підключення до TB0. Зверніться до Розділ 7 (TB_ Signal_Index значення)
TB1 1 байт Вибирає тестову шину для підключення до TB1. Зверніться до Розділ 7 (TB_ Signal_Index значення)
TB2 1 байт Вибирає тестову шину для підключення до TB2. Зверніться до Розділ 7 (TB_ Signal_Index значення)
TB3 1 байт Вибирає тестову шину для підключення до TB3. Зверніться до Розділ 7 (TB_ Signal_Index значення)
TTB_SELECT 1 байт Вибирає, який ТБ підключити до джерел запуску. Зверніться до Розділ 7 (значення TB_Signal_Index)
РФУ 4 байт Завжди надсилайте 0x00000000
MISC_CONFIG 24 байт Випадки запуску, полярність тощо. Див [1] для розуміння конфігурації CTS для використання.

4.5.10.2.2 Відповідь
Таблиця 88. Значення відповіді CTS_CONFIGURE

Поле корисного навантаження Довжина Значення/опис
Статус 1 байт Статус операції [Таблиця 9]. Очікувані значення:
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR

4.5.10.2.3 Подія
Для цієї інструкції немає події.
4.5.10.3 CTS_RETRIEVE_LOG
Ця інструкція отримує журнал даних захоплених даних тестової шиниampфайли, що зберігаються в буфері пам'яті.
4.5.10.3.1 Команда
Таблиця 89. Значення команди CTS_RETRIEVE_LOG

Поле корисного навантаження Довжина Значення/опис
ChunkSize 1 байт 0x01-0xFF Містить очікувану кількість байтів даних.

4.5.10.3.2 Відповідь
Таблиця 90. Значення відповіді CTS_RETRIEVE_LOG

Поле корисного навантаження Довжина Значення/опис
Статус 1 байт Статус операції [Таблиця 9]. Очікувані значення:
PN5190_STATUS_SUCCESS
PN5190_STATUS_INSTR_ERROR (Дані відсутні)
PN5190_STATUS_SUCCSES_CHAINING
Дані журналу [1…n] CTSRequest Полонений Сamples Послідовність даних

Примітка:
Максимальний розмір «Даних журналу» залежить від «ChunkSize», який було надано як частину команди.
Загальний розмір журналу має бути доступним у відповіді заголовка TLV.
4.5.10.3.3 Подія
Для цієї інструкції немає події.
4.5.11 Команди TEST_MODE
4.5.11.1 ANTENNA_SELF_TEST
Ця інструкція використовується, щоб перевірити, чи антену під’єднано, а відповідні компоненти заповнено/зібрано.
Примітка:
Ця команда ще не доступна. Перегляньте примітки до випуску щодо доступності.
4.5.11.2 PRBS_TEST
Ця інструкція використовується для генерації послідовності PRBS для різних конфігурацій протоколів режиму читання та швидкості передачі даних. Після виконання інструкції тестова послідовність PRBS буде доступна на радіочастоті.
Примітка:
Перед надсиланням цієї команди хост повинен переконатися, що за допомогою розділу 4.5.7.1 завантажено відповідну конфігурацію радіочастотної технології, а радіочастоту ввімкнено за допомогою команди розділу 4.5.8.1.
4.5.11.2.1 Команда
Таблиця 91. Значення команди PRBS_TEST

Поле корисного навантаження Довжина Значення/опис
prbs_type 1 байт 00 PRBS9 (за замовчуванням)
01 PRBS15
02-ФФ РФУ

4.5.11.2.2 Відповідь
Таблиця 92. Значення відповіді PRBS_TEST

Поле корисного навантаження Довжина Значення/опис
Статус 1 байт Статус операції [Таблиця 9]. Очікувані значення:
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR PN5190_STATUS_NO_RF_FIELD

4.5.11.2.3 Подія
Для цієї інструкції немає події.
4.5.12 Команди інформації про мікросхему
4.5.12.1 GET_DIEID
Ця інструкція використовується для зчитування ідентифікатора кристала мікросхеми PN5190.
4.5.12.1.1 Команда
Таблиця 93. Значення команди GET_DIEID

Поле корисного навантаження Довжина Значення/опис
Немає даних у корисному навантаженні

4.5.12.1.2 Відповідь
Таблиця 94. Значення відповіді GET_DIEID

Поле корисного навантаження Довжина Значення/опис
Статус 1 байт Статус операції [Таблиця 9]. Очікувані значення:
PN5190_STATUS_SUCCESS
PN5190_STATUS_INSTR_ERROR (більше даних немає)
Цінності 16 байт 16 байт die ID.

4.5.12.1.3 Подія
Для цієї команди немає подій.
4.5.12.2 GET_VERSION
Ця інструкція використовується для зчитування версії HW, версії ROM та версії FW мікросхеми PN5190.
4.5.12.2.1 Команда
Таблиця 95. Значення команди GET_VERSION

Поле корисного навантаження Довжина Значення/опис
Немає даних у корисному навантаженні

Існує команда DL_GET_VERSION (Розділ 3.4.4), доступна в режимі завантаження, яку можна використовувати для зчитування версії HW, версії ROM і версії FW.
4.5.12.2.2 Відповідь
Таблиця 96. Значення відповіді GET_VERSION

Поле корисного навантаження Довжина Значення/опис
Статус 1 байт Статус операції [Таблиця 9]. Очікувані значення:
PN5190_STATUS_SUCCESS
PN5190_STATUS_INSTR_ERROR (Дані відсутні)
HW_V 1 байт Апаратна версія
РО_В 1 байт код ПЗУ
FW_V 2 байти Версія мікропрограми (використовується для завантаження)
RFU1-RFU2 1-2 байт

Очікувана відповідь для іншої версії PN5190 IC згадується в (Розділ 3.4.4)
4.5.12.2.3 Подія
Для цієї команди немає подій.

Додаток (Напрampлес)

Цей додаток складається з прampфайли для вищезгаданих команд. КолишнійampФайли призначені лише для ілюстрації, щоб показати вміст команди.
5.1 Прикладampфайл для WRITE_REGISTER
Наступна послідовність даних, надіслана з хоста для запису значення 0x12345678 у регістр 0x1F.
Командний кадр, надісланий до PN5190: 0000051F78563412
Хост для очікування переривання.
Коли хост зчитує кадр відповіді, отриманий від PN5190 (вказує на успішну операцію): 00000100 5.2 Пр.ampфайл для WRITE_REGISTER_OR_MASK
Наступна послідовність даних, надіслана з хоста для виконання логічної операції АБО в регістрі 0x1F з маскою 0x12345678
Командний кадр, надісланий до PN5190: 0100051F78563412
Хост для очікування переривання.
Коли хост читає кадр відповіді, отриманий від PN5190 (вказує на успішну операцію): 01000100
5.3 Прикладampфайл для WRITE_REGISTER_AND_MASK
Наступна послідовність даних, надіслана з хоста для виконання логічної операції І в регістрі 0x1F з маскою 0x12345678
Командний кадр, надісланий до PN5190: 0200051F78563412
Хост для очікування переривання.
Коли хост читає кадр відповіді, отриманий від PN5190 (вказує на успішну операцію): 02000100
5.4 Прикладampфайл для WRITE_REGISTER_MULTIPLE
Наступна послідовність даних, надіслана з хоста для виконання логічної операції І в регістрі 0x1F з маскою 0x12345678, і логічної операції АБО в регістрі 0x20 з маскою 0x11223344 і запису в регістр 0x21 зі значенням 0xAABBCCDD.
Командний кадр, надісланий до PN5190: 0300121F03785634122002443322112101DDCCBBAA
Хост для очікування переривання.
Коли хост читає кадр відповіді, отриманий від PN5190 (вказує на успішну операцію): 03000100
5.5 Прикладampфайл для READ_REGISTER
Наступна послідовність даних, надіслана з хоста для читання вмісту регістра 0x1F, припускаючи, що регістр має значення 0x12345678
Командний кадр, надісланий на PN5190: 0400011F
Хост для очікування переривання.
Коли хост читає кадр відповіді, отриманий від PN5190 (вказує на успішну операцію): 0400050078563412
5.6 Прикладampфайл для READ_REGISTER_MULTIPLE
Наступна послідовність даних, надіслана з хоста для читання вмісту регістрів 0x1F, які містять значення 0x12345678, і регістра 0x25, які містять значення 0x11223344
Командний кадр, надісланий до PN5190: 0500021F25
Хост для очікування переривання.
Коли хост прочитав відповідь, кадр, отриманий від PN5190 (вказує на успішну операцію): 050009007856341244332211
5.7 Прикладampфайл для WRITE_E2PROM
Наступна послідовність даних, надісланих із хоста для запису в розташування E2PROM від 0x0130 до 0x0134 із вмістом 0x11, 0x22, 0x33, 0x44, 0x55
Командний кадр, надісланий до PN5190: 06000730011122334455
Хост для очікування переривання.
Коли хост читає відповідь, кадр, отриманий від PN5190 (вказує на успішну операцію): 06000100
5.8 Прикладampфайл для READ_E2PROM
Наступна послідовність даних, надісланих із хоста для читання з місць E2PROM 0x0130 до 0x0134, де зберігається вміст: 0x11, 0x22, 0x33, 0x44, 0x55
Командний кадр, надісланий до PN5190: 07000430010500
Хост для очікування переривання.
Коли хост прочитав відповідь, кадр, отриманий від PN5190 (вказує на успішну операцію): 070006001122334455
5.9 Прикладampфайл для TRANSMIT_RF_DATA
Наступна послідовність даних, надісланих із хоста для надсилання команди REQA (0x26), з кількістю бітів, які мають бути передані як «0x07», припускаючи, що необхідні регістри встановлені раніше та RF увімкнено.
Командний кадр, надісланий до PN5190: 0800020726
Хост для очікування переривання.
Коли хост читає відповідь, кадр, отриманий від PN5190 (вказує на успішну операцію): 08000100
5.10 Прикладampфайл для RETREIVE_RF_DATA
Наступна послідовність даних, надісланих із хоста для отримання даних, отриманих/збережених у внутрішньому буфері CLIF (припускаючи, що отримано 0x05), припускаючи, що TRANSMIT_RF_DATA вже надіслано після ввімкнення RF.
Командний кадр, надісланий до PN5190: 090000
Хост для очікування переривання.
Коли хост читає відповідь, кадр, отриманий від PN5190 (вказує на успішну операцію): 090003000400
5.11 Прикладampфайл для EXCHANGE_RF_DATA
Наступна послідовність даних, надісланих із хоста для передачі REQA (0x26), із кількістю бітів в останньому байті для надсилання, встановленим як 0x07, із усім статусом, який буде отримано разом із даними. Припущення полягає в тому, що необхідні радіочастотні регістри вже налаштовані, а РЧ увімкнено.
Командний кадр, надісланий до PN5190: 0A0003070F26
Хост для очікування переривання.
Коли хост прочитав відповідь, кадр, отриманий від PN5190 (вказує на успішну операцію): 0A000 F000200000000000200000000004400
5.12 Прикладampфайл для LOAD_RF_CONFIGURATION
Наступна послідовність даних, надіслана з хоста для встановлення конфігурації РЧ. Для TX, 0x00 і для RX, 0x80
Командний кадр, надісланий на PN5190: 0D00020080
Хост для очікування переривання.
Коли хост читає відповідь, кадр, отриманий від PN5190 (вказує на успішну операцію): 0D000100
5.13 Прикладampфайл для UPDATE_RF_CONFIGURATION
Наступна послідовність даних, надіслана з хоста для оновлення конфігурації РЧ. Для TX, 0x00, з адресою реєстру для CLIF_CRC_TX_CONFIG і значенням 0x00000001
Командний кадр, надісланий до PN5190: 0E0006001201000000
Хост для очікування переривання.
Коли хост прочитав відповідь, кадр, отриманий від PN5190 (вказує на успішну операцію): 0E000100
5.14 Прикладample для RF_ON
Наступна послідовність даних, надісланих із хоста для ввімкнення радіочастотного поля з використанням уникнення зіткнень і відсутності активного P2P. Передбачається, що відповідна конфігурація RF TX і RX вже встановлена ​​в PN5190.
Командний кадр, надісланий до PN5190: 10000100
Хост для очікування переривання.
Коли хост читає відповідь, кадр, отриманий від PN5190 (вказує на успішну операцію): 10000100
5.15 Прикладample для RF_OFF
Наступна послідовність даних, надіслана з хоста для вимкнення радіочастотного поля.
Командний кадр, надісланий до PN5190: 110000
Хост для очікування переривання.
Коли хост читає відповідь, кадр, отриманий від PN5190 (вказує на успішну операцію): 11000100

Додаток (індекси конфігурації радіочастотного протоколу)

Цей додаток містить індекси конфігурації радіочастотного протоколу, які підтримуються PN5190.
Параметри конфігурації TX і RX потрібно використовувати в командах Розділу 4.5.7.1, Розділу 4.5.7.2, Розділу 4.5.7.3.

NXP PN5190 NFC Frontend Controller - індекси конфігурації

Додаток (сигнали CTS і TESTBUS)

У таблиці нижче наведено різні сигнали, доступні від PN5190 для захоплення за допомогою інструкцій CTS (розділ 4.5.10) та інструкцій TESTBUS.

Інтерфейсний контролер NFC NXP PN5190 - Додаток

Їх потрібно використовувати для команд Розділу 4.5.9.1, Розділу 4.5.9.2, Розділу 4.5.10.2.

Скорочення

Таблиця 97. Скорочення

скорочення Значення
CLK Годинник
DWL_REQ Завантажити PIN-код запиту (також називається DL_REQ)
EEPROM Електрично стирається програмована постійна пам'ять
FW Прошивка
GND Земля
GPIO Вхідний вихід загального призначення
HW Обладнання
I²C Міжінтегральна схема (послідовна шина даних)
IRQ Запит на переривання
ISO / IEC Міжнародна організація зі стандартизації / Міжнародне електротехнічне співтовариство
NFC Комунікація ближнього поля
OS Операційна система
PCD Пристрій безконтактного з’єднання (безконтактний зчитувач)
PICC Безконтактна картка з інтегральною схемою (безконтактна картка)
PMU Блок управління живленням
POR Скидання увімкнення живлення
RF Радіочастота
RST Скинути
SFWU безпечний режим завантаження прошивки
SPI Послідовний периферійний інтерфейс
VEN V Увімкнути пін

Список літератури

[1] Частина конфігурації CTS кабіни NFC, https://www.nxp.com/products/:NFC-COCKPIT
[2] Специфікація PN5190 IC, https://www.nxp.com/docs/en/data-sheet/PN5190.pdf

Правова інформація

10.1 Визначення
Чернетка — Статус чернетки в документі вказує на те, що вміст все ще перебуває на внутрішній перевірціview і підлягає офіційному затвердженню, яке може призвести до змін або доповнень. NXP Semiconductors не дає жодних заяв або гарантій щодо точності чи повноти інформації, включеної до чорнової версії документа, і не несе відповідальності за наслідки використання такої інформації.
10.2 Відмова від відповідальності
Обмежена гарантія та відповідальність — Інформація в цьому документі вважається точною та надійною. Однак компанія NXP Semiconductors не дає жодних заяв або гарантій, явних чи непрямих, щодо точності чи повноти такої інформації та не несе відповідальності за наслідки використання такої інформації. NXP Semiconductors не несе відповідальності за вміст цього документа, якщо він наданий джерелом інформації за межами NXP Semiconductors.
NXP Semiconductors ні в якому разі не несе відповідальності за будь-які непрямі, випадкові, штрафні, спеціальні чи непрямі збитки (включаючи, без обмеження, втрачені прибутки, втрачені заощадження, перерву в бізнесі, витрати, пов’язані з видаленням або заміною будь-яких продуктів або витрати на переробку), незалежно від того чи такі збитки не ґрунтуються на делікті (включаючи недбалість), гарантії, порушенні контракту чи будь-якій іншій юридичній теорії.
Незважаючи на будь-які збитки, яких клієнт може понести з будь-якої причини, загальна та кумулятивна відповідальність NXP Semiconductors перед клієнтом за продукти, описані в цьому документі, обмежена відповідно до
Умови комерційного продажу NXP Semiconductors.
Право на внесення змін — NXP Semiconductors залишає за собою право вносити зміни в інформацію, опубліковану в цьому документі, включаючи, без обмежень, специфікації та описи продуктів, у будь-який час і без попередження. Цей документ замінює та замінює всю інформацію, надану до публікації цього документа.
Придатність до використання. Продукція NXP Semiconductors не розроблена, не авторизована та не гарантується як придатна для використання в життєзабезпеченні, життєво важливих або критично важливих для безпеки системах чи обладнанні, а також у програмах, де можна обґрунтовано очікувати збій або несправність продукту NXP Semiconductors. призвести до травм, смерті або серйозної шкоди майну чи навколишньому середовищу. NXP Semiconductors та її постачальники не несуть відповідальності за включення та/або використання продуктів NXP Semiconductors у такому обладнанні чи програмах, тому таке включення та/або використання здійснюється на власний ризик клієнта.
Додатки — Додатки, описані в цьому документі для будь-якого з цих продуктів, призначені лише для ілюстрації. Компанія NXP Semiconductors не заявляє та не гарантує, що такі програми будуть придатними для вказаного використання без подальшого тестування чи модифікації.
Клієнти несуть відповідальність за розробку та роботу своїх додатків і продуктів, які використовують продукти NXP Semiconductors, і NXP Semiconductors не несе відповідальності за будь-яку допомогу з додатками чи розробкою продуктів клієнта. Замовник несе виключну відповідальність за визначення того, чи підходить продукт NXP Semiconductors для додатків і запланованих продуктів замовника, а також для запланованого застосування та використання сторонніми клієнтами. Клієнти повинні забезпечувати відповідні запобіжні заходи щодо конструкції та експлуатації, щоб мінімізувати ризики, пов’язані з їхніми програмами та продуктами.
NXP Semiconductors не бере на себе жодної відповідальності, пов’язаної з будь-яким невиконанням зобов’язань, пошкодженням, витратами або проблемами, які ґрунтуються на будь-якій слабкості чи невиконанні замовчування в програмах або продуктах клієнта, або застосуванні чи використанні сторонніми клієнтами клієнта. Клієнт несе відповідальність за проведення всіх необхідних тестувань для програм і продуктів клієнта з використанням продуктів NXP Semiconductors, щоб уникнути замовчування програм і продуктів або програми або використання сторонніми клієнтами клієнта. NXP не несе жодної відповідальності з цього приводу.

NXP BV – NXP BV не є операційною компанією та не розповсюджує та не продає продукти.

10.3 Ліцензії
Придбання мікросхем NXP із технологією NFC. Придбання мікросхеми NXP Semiconductors, яка відповідає одному зі стандартів зв’язку ближнього поля (NFC) ISO/IEC 18092 та ISO/IEC 21481, не означає непрямої ліцензії на будь-які патентні права, порушені впровадженням будь-який із цих стандартів. Придбання NXP Semiconductors IC не включає ліцензію на будь-який патент NXP (або інше право інтелектуальної власності), що охоплює поєднання цих продуктів з іншими продуктами, апаратними чи програмними засобами.

10.4 Торгові марки
Примітка. Усі згадувані бренди, назви продуктів, назви послуг і товарні знаки є власністю відповідних власників.
NXP — словесний знак і логотип є торговими марками NXP BV
EdgeVerse — торгова марка NXP BV
FeliCa — торгова марка Sony Corporation.
MIFARE — торгова марка NXP BV
MIFARE Classic — торгова марка NXP BV

Майте на увазі, що важливі зауваження щодо цього документа та продуктів, описаних у ньому, включено до розділу «Юридична інформація».
© 2023 NXP BV
Для отримання додаткової інформації відвідайте: http://www.nxp.com
Всі права захищені.
Дата випуску: 25 травня 2023 року
Ідентифікатор документа: UM11942

Документи / Ресурси

Інтерфейсний контролер NFC NXP PN5190 [pdfПосібник користувача
PN5190, PN5190 інтерфейсний контролер NFC, інтерфейсний контролер NFC, контролер, UM11942

Список літератури

Залиште коментар

Ваша електронна адреса не буде опублікована. Обов'язкові поля позначені *