UM11942
لایه دستورالعمل PN5190
کنترلر NFC Frontend
راهنمای کاربر
PN5190 NFC Frontend Controller
اطلاعات سند
اطلاعات | محتوا |
کلمات کلیدی | PN5190، NFC، جلوی NFC، کنترلر، لایه دستورالعمل |
چکیده | این سند دستورات لایه دستورالعمل و پاسخهای مربوط به کار از یک کنترلکننده میزبان را برای ارزیابی عملکرد کنترلر جلویی NXP PN5190 NFC توضیح میدهد. 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 | شرح پاسخ یکپارچگی بررسی پیشرفته در بخش 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 دارای دو حالت اصلی برای برقراری ارتباط با کنترلر میزبان است.
- ارتباط مبتنی بر HDLL زمانی استفاده میشود که دستگاه فعال میشود تا وارد شود:
آ. حالت دانلود امن رمزگذاری شده برای به روز رسانی سیستم عامل آن - ارتباط مبتنی بر پاسخ دستوری TLV (به عنوان مثال قبلی ارائه شده استample)
2.1 حالت HDLL
حالت HDLL برای فرمت تبادل بسته برای کار با حالت های عملیاتی زیر آی سی استفاده می شود:
- حالت دانلود ایمن سیستم عامل (SFWU)، به بخش 3 مراجعه کنید
2.1.1 شرح HDLL
HDLL لایه پیوندی است که توسط NXP برای اطمینان از دانلود FW قابل اعتماد توسعه یافته است.
یک پیام HDLL از یک هدر 2 بایتی و به دنبال آن یک فریم ساخته شده است که شامل کد عملیاتی و Payload فرمان است. همانطور که در تصویر زیر توضیح داده شده است، هر پیام با یک CRC 16 بیتی پایان می یابد:هدر HDLL شامل:
- یه ذره که نشان می دهد که آیا این پیام تنها یا آخرین تکه یک پیام است (تکه = 0). یا اگر حداقل یک تکه دیگر دنبال شود (تکه = 1).
- طول Payload روی 10 بیت کدگذاری شده است. بنابراین، HDLL Frame Payload می تواند تا 1023 بایت برود.
ترتیب بایت ها به صورت big-endian تعریف شده است، یعنی ابتدا خانم بایت.
CRC16 با استاندارد X.25 (CRC-CCITT، ISO/IEC13239) با چند جمله ای x^16 + x^12 + x^5 +1 و مقدار پیش بارگذاری 0xFFFF مطابقت دارد.
بر روی کل فریم HDLL، یعنی Header + Frame محاسبه می شود.
Sampپیاده سازی کد C:
static 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، اولین بایت همیشه یک HEADER (بایت نشان دهنده جریان) است، می تواند با توجه به عملیات نوشتن/خواندن 0x7F/0xFF باشد.
2.1.2.1 نوشتن دنباله از میزبان (جهت DH => PN5190)2.1.2.2 خواندن دنباله از میزبان (جهت PN5190 => DH)
2.1.3 پروتکل HDLL
HDLL یک پروتکل فرمان-پاسخ است. تمام عملیات ذکر شده در بالا از طریق یک دستور خاص راه اندازی شده و بر اساس پاسخ تایید می شود.
دستورات و پاسخ ها از نحو پیام HDLL پیروی می کنند، فرمان توسط میزبان دستگاه ارسال می شود و پاسخ توسط PN5190. Opcode نوع فرمان و پاسخ را نشان می دهد.
ارتباطات مبتنی بر 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 نشانگر جریانHOST همیشه به عنوان بایت اول بایت نشانگر جریان را ارسال می کند، چه بخواهد داده ها را از PN5190 بنویسد یا بخواند.
اگر درخواست خواندن وجود داشته باشد و داده ای در دسترس نباشد، پاسخ حاوی 0xFF است.
داده های بعد از بایت نشانگر جریان یک یا چند پیام است.
برای هر ادعای NTS، اولین بایت همیشه یک HEADER (بایت نشان دهنده جریان) است، می تواند با توجه به عملیات نوشتن/خواندن 0x7F/0xFF باشد.
2.2.3 نوع پیام
یک کنترل کننده میزبان باید با استفاده از پیام هایی که در فریم های SPI منتقل می شوند با PN5190 ارتباط برقرار کند.
سه نوع پیام مختلف وجود دارد:
- فرمان
- پاسخ
- رویداد
نمودار ارتباطی بالا مسیرهای مجاز برای انواع مختلف پیام را به شرح زیر نشان می دهد:
- فرمان و پاسخ.
- دستورات فقط از کنترلر میزبان به PN5190 ارسال می شوند.
- پاسخ ها و رویدادها فقط از PN5190 به کنترل کننده میزبان ارسال می شوند.
- پاسخ های فرمان با استفاده از پین IRQ همگام می شوند.
- میزبان فقط زمانی می تواند دستورات را ارسال کند که IRQ کم باشد.
- میزبان تنها زمانی میتواند پاسخ/رویداد را بخواند که IRQ بالا باشد.
2.2.3.1 توالی ها و قوانین مجازتوالی های مجاز فرمان، پاسخ، و رویدادها
- یک فرمان همیشه با یک پاسخ یا یک رویداد یا هر دو تأیید می شود.
- کنترلر میزبان قبل از اینکه به دستور قبلی پاسخی دریافت نکرده باشد اجازه ارسال دستور دیگری را ندارد.
- رویدادها ممکن است در هر زمان به صورت ناهمزمان ارسال شوند (در یک جفت فرمان/پاسخ در هم قرار نمی گیرند).
- پیام های EVENT هرگز با پیام های RESPONSE در یک فریم ترکیب نمی شوند.
توجه: در دسترس بودن یک پیام (یا RESPONSE یا EVENT) با بالا رفتن IRQ از پایین علامت گذاری می شود. IRQ بالا می ماند تا زمانی که تمام پاسخ یا فریم رویداد خوانده شود. فقط پس از کم شدن سیگنال IRQ، میزبان می تواند دستور بعدی را ارسال کند.
2.2.4 قالب پیام
هر پیام در ساختار TLV با بار n بایت برای هر پیام به جز دستور SWITCH_MODE_NORMAL کدگذاری می شود.هر TLV از موارد زیر تشکیل شده است:
نوع (T) => 1 بایت
نوع پیام بیت[7]
0: پیام COMMAN یا RESPONSE
1: پیام رویداد
Bit[6:0]: کد دستورالعمل
طول (L) => 2 بایت (باید در قالب big-endian باشد)
مقدار (V) => N بایت از مقدار/داده TLV (پارامترهای فرمان / دادههای پاسخ) بر اساس فیلد طول (قالب بزرگ endian)
2.2.4.1 قاب تقسیم شده
پیام COMMAND باید در یک فریم SPI ارسال شود.
پیام های RESPONSE و EVENT را می توان در چندین فریم SPI خواند، به عنوان مثال برای خواندن طول بایت.پیامهای RESPONSE یا EVENT را میتوان در یک فریم SPI خواند، اما در بین آنها با NO-CLOCK به تأخیر افتاد، به عنوان مثال، برای خواندن طول بایت.
حالت بوت عامل آی سی - حالت دانلود FW ایمن
3.1 مقدمه
بخشی از کد سیستم عامل PN5190 به طور دائم در رام ذخیره می شود، در حالی که بقیه کدها و داده ها در فلش تعبیه شده ذخیره می شوند. داده های کاربر در فلش ذخیره می شوند و توسط مکانیسم های ضد پارگی محافظت می شوند که یکپارچگی و در دسترس بودن داده ها را تضمین می کند. به منظور ارائه ویژگیهای مطابق با آخرین استانداردها (EMVCo، NFC Forum و غیره) به مشتریان NXP، میتوان هم کد و هم دادههای کاربر در FLASH را بهروزرسانی کرد.
اصالت و یکپارچگی سیستم عامل رمزگذاری شده با امضای کلید نامتقارن/متقارن و مکانیسم هش زنجیره ای معکوس محافظت می شود. اولین دستور DL_SEC_WRITE حاوی هش فرمان دوم است و توسط یک امضای RSA بر روی بار فریم اول محافظت می شود. سیستم عامل PN5190 از کلید عمومی RSA برای احراز هویت اولین دستور استفاده می کند. هش زنجیرهای در هر فرمان برای تأیید اعتبار دستور بعدی استفاده میشود تا اطمینان حاصل شود که کد و دادههای میانافزار توسط اشخاص ثالث قابل دسترسی نیستند.
محموله های دستورات DL_SEC_WRITE با یک کلید AES-128 رمزگذاری می شوند. پس از احراز هویت هر دستور، محتوای payload رمزگشایی شده و توسط سیستم عامل PN5190 روی فلش نوشته می شود.
برای میانافزار NXP، NXP وظیفه ارائه بهروزرسانیهای جدید سیستمافزار امن، همراه با دادههای کاربر جدید را بر عهده دارد.
رویه به روز رسانی مجهز به مکانیزمی برای محافظت از صحت، یکپارچگی و محرمانه بودن کد و داده های NXP است.
طرح بسته فریم مبتنی بر HDLL برای همه فرمان ها و پاسخ ها برای حالت ارتقای سیستم عامل ایمن استفاده می شود.
بخش 2.1 بیش از حد را ارائه می دهدview از طرح بسته قاب HDLL استفاده شده است.
آی سی های PN5190 بسته به نوع مورد استفاده، از دانلود FW ایمن رمزگذاری شده قدیمی و پروتکل دانلود ایمن FW رمزگذاری شده با کمک سخت افزار پشتیبانی می کنند.
این دو نوع عبارتند از:
- پروتکل دانلود ایمن FW قدیمی که فقط با نسخه آی سی PN5190 B0/B1 کار می کند.
- پروتکل دانلود ایمن FW به کمک رمزنگاری سخت افزاری که فقط با نسخه IC PN5190B2 کار می کند و از بلوک های رمزنگاری سخت افزاری روی تراشه استفاده می کند
بخشهای زیر دستورات و پاسخهای حالت دانلود سفتافزار امن را توضیح میدهند.
3.2 نحوه راه اندازی حالت "دانلود سیستم عامل امن"
در نمودار زیر و مراحل بعدی نحوه راهاندازی حالت دانلود سفتافزار امن را نشان میدهد.پیش شرط: PN5190 در حالت عملیاتی است.
سناریوی اصلی:
- شرایط ورود که در آن از پین DWL_REQ برای ورود به حالت "دانلود سیستم عامل امن" استفاده می شود.
آ. میزبان دستگاه پین DWL_REQ را بالا میکشد (فقط در صورت بهروزرسانی امن سیستم عامل از طریق پین DWL_REQ معتبر است) یا
ب میزبان دستگاه برای بوت کردن PN5190 یک هارد ریست انجام می دهد - شرایط ورود که در آن پین DWL_REQ برای ورود به حالت "دانلود سیستم عامل امن" (دانلود بدون پین) استفاده نمی شود.
آ. میزبان دستگاه برای بوت کردن PN5190 یک هارد ریست انجام می دهد
ب میزبان دستگاه SWITCH_MODE_NORMAL (بخش 4.5.4.5) را برای وارد شدن به حالت نرمال برنامه ارسال می کند.
ج. اکنون وقتی آی سی در حالت نرمال برنامه است، میزبان دستگاه SWITCH_MODE_DOWNLOAD (بخش 4.5.4.9) را برای وارد شدن به حالت دانلود ایمن ارسال می کند. - میزبان دستگاه دستور DL_GET_VERSION (بخش 3.4.4) یا DL_GET_DIE_ID (بخش 3.4.6) یا DL_GET_SESSION_STATE (بخش 3.4.5) را ارسال می کند.
- میزبان دستگاه، نسخه سخت افزار و سفت افزار فعلی، session، Die-id را از دستگاه می خواند.
آ. میزبان دستگاه وضعیت جلسه را در صورت تکمیل آخرین بارگیری بررسی می کند
ب میزبان دستگاه قوانین بررسی نسخه را برای تصمیم گیری در مورد شروع دانلود یا خروج از دانلود اعمال می کند. - بارگذاری میزبان دستگاه از a file کد باینری میانافزاری که باید دانلود شود
- میزبان دستگاه اولین دستور DL_SEC_WRITE (بخش 3.4.8) را ارائه می دهد که شامل:
آ. نسخه سیستم عامل جدید،
ب یک 16 بایت بدون مقادیر دلخواه که برای مبهم سازی کلید رمزگذاری استفاده می شود
ج. مقدار خلاصه فریم بعدی،
د امضای دیجیتال خود قاب - میزبان دستگاه دنباله پروتکل دانلود ایمن را با دستورات DL_SEC_WRITE (بخش 5190) در PN3.4.8 بارگیری می کند.
- هنگامی که آخرین دستور DL_SEC_WRITE (بخش 3.4.8) ارسال شد، میزبان دستگاه دستور DL_CHECK_INTEGRITY (بخش 3.4.7) را اجرا می کند تا بررسی کند که آیا حافظه ها با موفقیت نوشته شده اند یا خیر.
- میزبان دستگاه نسخه سیستم عامل جدید را می خواند و وضعیت جلسه را در صورت بسته بودن برای گزارش به لایه بالایی بررسی می کند
- میزبان دستگاه پین DWL_REQ را به پایین میکشد (اگر از پین DWL_REQ برای ورود به حالت دانلود استفاده شود)
- میزبان دستگاه برای راهاندازی مجدد PN5190، هارد ریست (تغییر پین VEN) را روی دستگاه انجام میدهد.
وضعیت پست: سیستم عامل به روز شده است. شماره نسخه سیستم عامل جدید گزارش شده است.
3.3 امضای سیستم عامل و کنترل نسخه
در حالت دانلود میانافزار PN5190، مکانیزمی تضمین میکند که فقط یک میانافزار امضا شده و تحویلشده توسط NXP برای میانافزار NXP پذیرفته میشود.
موارد زیر فقط برای سیستم عامل NXP ایمن رمزگذاری شده قابل اجرا است.
در طول یک جلسه دانلود، یک نسخه جدید سیستم عامل 16 بیتی ارسال می شود. از یک عدد اصلی و یک عدد کوچک تشکیل شده است:
- شماره اصلی: 8 بیت (MSB)
- عدد کوچک: 8 بیت (LSB)
PN5190 بررسی می کند که آیا شماره نسخه اصلی جدید بزرگتر یا برابر با شماره فعلی است. در غیر این صورت، دانلود سیستم عامل ایمن رد می شود و جلسه بسته نگه داشته می شود.
3.4 دستورات HDLL برای دانلود رمزگذاری شده قدیمی و کمک به رمزنگاری سخت افزاری دانلود رمزگذاری شده
این بخش اطلاعاتی در مورد دستورات و پاسخ هایی که برای هر دو نوع دانلود برای دانلود سیستم عامل NXP استفاده شده است را ارائه می دهد.
3.4.1 کدهای عملیاتی فرمان 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_OK_STAT جلوگیری می کند. بنابراین، فقط وضعیت اشتباه را می توان دریافت کرد.
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 RFU16 پاسخ: دریافت کننده قاب CRCXNUMX است]
جدول 3. به دستور GetVersion پاسخ دهید
میدان | بایت | توضیحات |
آمار | 1 | وضعیت |
HW_V | 2 | نسخه سخت افزاری |
RO_V | 3 | کد رام |
MODEL_ID | 4 | شناسه مدل |
FMxV | 5-6 | نسخه سیستم عامل (برای دانلود استفاده می شود) |
RFU1-RFU2 | 7-8 | – |
مقادیر مورد انتظار فیلدهای مختلف پاسخ و نگاشت آنها به شرح زیر است:
جدول 4. مقادیر مورد انتظار از پاسخ دستور GetVersion
نوع آی سی | نسخه HW (هگز) | نسخه رام (هگز) | شناسه مدل (هگز) | نسخه FW (هگز) |
PN5190 B0 | 0x51 | 0x02 | 0x00 | xx.yy |
PN5190 B1 | 0x52 | 0x02 | 0x00 | xx.yy |
PN5190 B2 | 0x53 | 0x03 | 0x00 | xx.yy |
3.4.5 دستور DL_GET_SESSION_STATE
تبادل فریم:
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 پاسخ دهید
میدان | بایت | توضیحات |
آمار | 1 | وضعیت |
SSTA | 2 | وضعیت جلسه • 0x00: بسته • 0x01: باز • 0x02: قفل شده (دانلود دیگر مجاز نیست) |
RFU | 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
ID10 ID11 ID12 ID13 ID14 ID15 CRC16] قاب payload پاسخ GetDieId عبارت است از:
جدول 6. پاسخ به دستور GetDieId
میدان | بایت | توضیحات |
آمار | 1 | وضعیت |
RFU | 2-4 | |
مردن | 5-20 | شناسه قالب (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 است]
جدول 7. به دستور CheckIntegrity پاسخ دهید
میدان | بایت | ارزش/توضیحات | |
آمار | 1 | وضعیت | |
داده های LEN | 2 | تعداد کل بخش های داده | |
کد لنز | 3 | تعداد کل بخش های کد | |
RFU | 4 | رزرو شده است | |
[CRC_INFO] | 58 | 32 بیت (کوچک اندین). اگر بیتی تنظیم شده باشد، CRC قسمت مربوطه اوکی است، در غیر این صورت نه OK است. | |
بیت | وضعیت یکپارچگی منطقه | ||
[31:28] | رزرو شده [3] | ||
[27:23] | رزرو شده [1] | ||
[22] | رزرو شده [3] | ||
[21:20] | رزرو شده [1] | ||
[19] | ناحیه پیکربندی RF (PN5190 B0/B1) [2] رزرو شده (PN5190 B2) [3] | ||
[18] | ناحیه پیکربندی پروتکل (PN5190 B0/B1) [2] ناحیه پیکربندی RF (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 به درستی کار کند (با ویژگی ها و یا دانلود FW رمزگذاری شده).
- [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
یک دستور نوشتن امن اولین دستور است اگر و فقط اگر:
- طول فریم 312 بایت است
- از آخرین بازنشانی، هیچ فرمان نوشتن ایمن دریافت نشده است.
- امضای جاسازی شده با موفقیت توسط PN5190 تأیید شد.
پاسخ به فرمان فریم اول به صورت زیر خواهد بود: [HDLL] <- [0x00 0x04 STAT 0x00 0x00 0x00 CRC16] STAT وضعیت بازگشتی است.
توجه: حداقل یک تکه از داده ها باید در طول eSFWu نوشته شود، حتی اگر داده های نوشته شده فقط یک بایت باشد. بنابراین، دستور اول همیشه حاوی هش دستور بعدی خواهد بود، زیرا حداقل دو دستور وجود دارد.
3.4.8.2 دستورات DL_SEC_WRITE میانی
یک دستور نوشتن ایمن یک "وسط" است اگر و فقط اگر:
- Opcode همانطور که در بخش 3.4.1 برای دستور DL_SEC_WRITE توضیح داده شده است.
- اولین دستور نوشتن ایمن قبلاً دریافت و قبلاً با موفقیت تأیید شده است
- هیچ بازنشانی از زمان دریافت اولین دستور نوشتن ایمن صورت نگرفته است
- طول فریم برابر با اندازه داده + اندازه سرصفحه + اندازه هش است: FLEN = SIZE + 6 + 32
- خلاصه کل فریم برابر با مقدار هش دریافت شده در فریم قبلی است
پاسخ به فرمان فریم اول به صورت زیر خواهد بود: [HDLL] <- [0x00 0x04 STAT 0x00 0x00 0x00 CRC16] STAT وضعیت بازگشتی است.
3.4.8.3 آخرین دستور DL_SEC_WRITE
یک دستور نوشتن امن آخرین دستور است اگر و فقط اگر:
- Opcode همانطور که در بخش 3.4.1 برای دستور DL_SEC_WRITE توضیح داده شده است.
- اولین دستور نوشتن ایمن قبلاً دریافت و قبلاً با موفقیت تأیید شده است
- هیچ بازنشانی از زمان دریافت اولین دستور نوشتن ایمن صورت نگرفته است
- طول فریم برابر با اندازه داده + اندازه سرصفحه: FLEN = SIZE + 6 است
- خلاصه کل فریم برابر با مقدار هش دریافت شده در فریم قبلی است
پاسخ به فرمان فریم اول به صورت زیر خواهد بود: [HDLL] <- [0x00 0x04 STAT 0x00 0x00 0x00 CRC16] STAT وضعیت بازگشتی است.
حالت بوت عملیاتی آی سی – حالت عملیات عادی
4.1 مقدمه
معمولاً آی سی PN5190 باید در حالت عادی کار کند تا عملکرد NFC را از آن دریافت کند.
وقتی آی سی PN5190 بوت می شود، همیشه منتظر دریافت دستورات از یک میزبان برای انجام عملیات است، مگر اینکه رویدادهایی که در آی سی PN5190 ایجاد می شوند منجر به بوت شدن آی سی PN5190 شود.
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،XNUMX | RFU |
0x19 | تا FW نسخه 2.01: RFU |
از FW نسخه 2.03 به بعد: RETRIEVE_RF_FELICA_EMD_DATA | |
0x1A | RECEIVE_RF_DATA |
0x1B-0x1F | RFU |
0x20 | SWITCH_MODE_NORMAL |
0x21 | SWITCH_MODE_AUTOCOLL |
0x22 | SWITCH_MODE_STANDBY |
0x23 | SWITCH_MODE_LPCD |
0x24 | RFU |
0x25 | SWITCH_MODE_DOWNLOAD |
0x26 | GET_DIEID |
0x27 | GET_VERSION |
0x28 | RFU |
0x29 | تا FW نسخه 2.05: RFU |
از FW نسخه 2.06 به بعد: GET_CRC_USER_AREA | |
0x2A | تا FW نسخه 2.03: RFU |
از FW نسخه 2.05 به بعد: CONFIGURE_MULTIPLE_TESTBUS_DIGITAL | |
0x2B-0x3F | RFU |
0x40 | ANTENNA_SELF_TEST (پشتیبانی نمی شود) |
0x41 | PRBS_TEST |
0x42-0x4F | RFU |
4.3 مقادیر وضعیت پاسخ
در زیر مقادیر وضعیت پاسخ آمده است که پس از عملیاتی شدن فرمان به عنوان بخشی از پاسخ از PN5190 برگردانده می شوند.
جدول 9. مقادیر وضعیت پاسخ PN5190
وضعیت پاسخگویی | مقدار وضعیت پاسخ | توضیحات |
PN5190_STATUS_SUCCESS | 0x00 | نشان می دهد که عملیات با موفقیت انجام شده است |
PN5190_STATUS_TIMEOUT | 0x01 | نشان می دهد که عملیات فرمان منجر به مهلت زمانی شده است |
PN5190_STATUS_INTEGRITY_ERROR | 0x02 | نشان می دهد که عملکرد فرمان منجر به خطای یکپارچگی داده RF شده است |
PN5190_STATUS_RF_COLLISION_ERROR | 0x03 | نشان می دهد که عملکرد فرمان منجر به خطای برخورد RF شده است |
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 | نشان می دهد که وجود میدان RF داخلی وجود ندارد یا خطایی وجود ندارد (فقط در حالت آغازگر/خواننده قابل اعمال است) |
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 | نشان می دهد که هیچ فیلد RF خارجی در طول اجرای دستور وجود ندارد (قابل استفاده فقط در حالت کارت/هدف) |
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 over RF ناموفق است |
PN5190_STATUS_NO_ANTENNA | 0x1B | نشان می دهد که هیچ آنتنی متصل/وجود ندارد |
PN5190_STATUS_TXLDO_ERROR | 0x1C | هنگامی که VUP در دسترس نیست و RF روشن است، در TXLDO خطایی وجود دارد. |
PN5190_STATUS_RFCFG_NOT_APPLIED | 0x1D | نشان می دهد که وقتی RF روشن است، پیکربندی RF بارگذاری نمی شود |
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
این رویدادها دسته بندی های زیر هستند:
- همیشه فعال - میزبان همیشه مطلع می شود
- توسط Host کنترل می شود - اگر بیت Enable مربوطه در رجیستر تنظیم شده باشد (EVENT_ENABLE (01h)) به میزبان اطلاع داده می شود.
وقفه های سطح پایین از IP های جانبی از جمله CLIF باید به طور کامل در میان افزار مدیریت شوند و میزبان فقط باید از رویدادهای فهرست شده در بخش رویدادها مطلع شود.
سفتافزار دو ثبت رویداد را بهعنوان رجیستر RAM پیادهسازی میکند که میتوان با استفاده از دستورات بخش 4.5.1.1 / بخش 4.5.1.5 نوشت/خواند.
ثبت نام EVENT_ENABLE (0x01) => اعلانهای خاص/همه رویداد را فعال کنید.
ثبت نام EVENT_STATUS (0x02) => بخشی از محموله پیام رویداد.
رویدادها پس از خواندن پیام رویداد توسط میزبان باید توسط میزبان پاک شود.
رویدادها ماهیت ناهمزمان دارند و در صورتی که در رجیستر EVENT_ENABLE فعال باشند، به میزبان اطلاع داده می شود.
در زیر لیستی از رویدادهایی است که باید به عنوان بخشی از پیام رویداد در دسترس میزبان قرار گیرد.
جدول 10. رویدادهای PN5190 (محتوای EVENT_STATUS)
بیت - محدوده | فیلد [1] | همیشه فعال (Y/N) | |
31 | 12 | RFU | NA |
11 | 11 | CTS_EVENT [2] | N |
10 | 10 | IDLE_EVENT | Y |
9 | 9 | LPCD_CALIBRATION_DONE_EVENT | Y |
8 | 8 | LPCD_EVENT | Y |
7 | 7 | AUTOCOLL_EVENT | Y |
6 | 6 | TIMER0_EVENT | N |
5 | 5 | TX_OVERCURRENT_EVENT | N |
4 | 4 | RFON_DET_EVENT [2] | N |
3 | 3 | RFOFF_DET_EVENT [2] | N |
2 | 2 | STANDBY_PREV_EVENT | Y |
1 | 1 | GENERAL_ERROR_EVENT | Y |
0 | 0 | BOOT_EVENT | Y |
- توجه داشته باشید که هیچ دو رویدادی به جز در صورت خطا کلاب نمی شود. در صورت بروز خطا در حین عملیات، رویداد عملکردی (به عنوان مثال BOOT_EVENT، AUTOCALL_EVENT و غیره) و GENERAL_ERROR_EVENT تنظیم خواهد شد.
- این رویداد پس از ارسال به میزبان به طور خودکار غیرفعال می شود. اگر میزبان میخواهد این رویدادها را به او اطلاع دهد، باید دوباره این رویدادها را فعال کند.
4.4.1.1 قالب های پیام رویداد
قالب پیام رویداد بسته به وقوع یک رویداد و وضعیت مختلف PN5190 متفاوت است.
میزبان باید بخواند tag (T) و طول پیام (L) و سپس تعداد بایت های مربوطه را به عنوان مقدار (V) رویدادها بخوانید.
به طور کلی، پیام رویداد (شکل 12 را ببینید) حاوی EVENT_STATUS همانطور که در جدول 11 تعریف شده است و داده رویداد مربوط به بیت رویداد مربوطه در EVENT_STATUS است.
توجه:
برای برخی رویدادها، بارگذاری وجود ندارد. به عنوان مثال، اگر TIMER0_EVENT فعال شود، فقط EVENT_STATUS به عنوان بخشی از پیام رویداد ارائه می شود.
جدول 11 همچنین نشان می دهد که آیا داده رویداد برای رویداد مربوطه در پیام رویداد وجود دارد یا خیر.GENERAL_ERROR_EVENT ممکن است با رویدادهای دیگر نیز رخ دهد.
در این سناریو، پیام رویداد (شکل 13 را ببینید) شامل EVENT_STATUS همانطور که در جدول 11 تعریف شده است و GENERAL_ERROR_STATUS_DATA همانطور که در جدول 14 تعریف شده است و سپس داده های رویداد مربوط به بیت رویداد مربوطه در EVENT_STATUS همانطور که در جدول 11 تعریف شده است.توجه:
فقط پس از BOOT_EVENT یا بعد از POR، STANDBY، ULPCD، میزبان میتواند با صدور دستورات ذکر شده در بالا در حالت عادی کار کند.
در صورت لغو یک دستور در حال اجرا موجود، تنها پس از IDLE_EVENT، میزبان میتواند با صدور دستورات ذکر شده در بالا، در حالت عادی کار کند.
4.4.1.2 تعاریف مختلف وضعیت EVENT
4.4.1.2.1 تعاریف بیت برای EVENT_STATUS
جدول 11. تعاریف بیت های EVENT_STATUS
بیت (به - از) | رویداد | توضیحات | داده های رویداد مربوط به رویداد (در صورت وجود) |
|
31 | 12 | RFU | رزرو شده است | |
11 | 11 | CTS_EVENT | زمانی که رویداد CTS تولید می شود، این بیت تنظیم می شود. | جدول 86 |
10 | 10 | IDLE_EVENT | این بیت زمانی تنظیم می شود که فرمان در حال انجام به دلیل صدور دستور SWITCH_MODE_NORMAL لغو شود. | داده رویداد وجود ندارد |
9 | 9 | LPCD_CALIBRATION_DONE_ رویداد |
این بیت زمانی تنظیم می شود که رویداد کالیبراسیون انجام شده LPCD ایجاد شود. | جدول 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 | این بیت زمانی تنظیم می شود که میدان RF خارجی شناسایی شود. | داده رویداد وجود ندارد |
3 | 3 | RFOFF_DET_EVENT | این بیت زمانی تنظیم می شود که میدان RF خارجی موجود از قبل ناپدید شود. | داده رویداد وجود ندارد |
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 | RFU | رزرو شده است |
26 | 26 | ULP_STANDBY | دلیل راه اندازی به دلیل خروج از ULP_STANDBY. |
25 | 23 | RFU | رزرو شده است |
22 | 22 | BOOT_ RX_ULPDET | RX ULPDET منجر به بوت شدن در حالت ULP-Standby شد |
21 | 21 | RFU | رزرو شده است |
20 | 20 | BOOT_SPI | دلیل بوت آپ به دلیل پایین آمدن سیگنال SPI_NTS |
19 | 17 | RFU | رزرو شده است |
16 | 16 | BOOT_GPIO3 | دلیل بوت آپ به دلیل انتقال GPIO3 از کم به بالا. |
15 | 15 | BOOT_GPIO2 | دلیل بوت آپ به دلیل انتقال GPIO2 از کم به بالا. |
14 | 14 | BOOT_GPIO1 | دلیل بوت آپ به دلیل انتقال GPIO1 از کم به بالا. |
13 | 13 | BOOT_GPIO0 | دلیل بوت آپ به دلیل انتقال GPIO0 از کم به بالا. |
12 | 12 | BOOT_LPDET | دلیل راهاندازی به دلیل حضور میدان RF خارجی در حالت STANDBY/SUSPEND |
11 | 11 | RFU | رزرو شده است |
10 | 8 | RFU | رزرو شده است |
7 | 7 | BOOT_SOFT_RESET | دلیل بوت آپ به دلیل ریست نرم آی سی |
6 | 6 | BOOT_VDDIO_LOSS | دلیل بوت آپ به دلیل از دست دادن VDDIO. به بخش 4.4.2.3 مراجعه کنید |
5 | 5 | BOOT_VDDIO_START | دلیل راهاندازی اگر STANDBY با VDDIO LOSS وارد شود. به بخش 4.4.2.3 مراجعه کنید |
4 | 4 | BOOT_WUC | دلیل راهاندازی به دلیل شمارنده بیدار شدن در طی هر دو عملیات STANDBY. |
3 | 3 | BOOT_TEMP | دلیل راه اندازی به دلیل دمای آی سی بیشتر از حد آستانه پیکربندی شده است. لطفاً به بخش 4.4.2.1 مراجعه کنید |
2 | 2 | BOOT_WDG | دلیل راهاندازی به دلیل تنظیم مجدد Watchdog |
1 | 1 | RFU | رزرو شده است |
0 | 0 | BOOT_POR | دلیل راهاندازی به دلیل بازنشانی روشن |
4.4.1.2.3 تعاریف بیت برای STANDBY_PREV_STATUS_DATA
جدول 13. تعاریف بیت های STANDBY_PREV_STATUS_DATA
کمی به | بیت از | پیشگیری در حالت آماده به کار | به دلیل جلوگیری از آماده به کار |
31 | 26 | RFU | رزرو شده است |
25 | 25 | RFU | رزرو شده است |
24 | 24 | PREV_TEMP | دمای کار آی سی ها خارج از آستانه است |
23 | 23 | RFU | رزرو شده است |
22 | 22 | PREV_HOSTCOMM | ارتباط رابط میزبان |
21 | 21 | PREV_SPI | سیگنال SPI_NTS در حال پایین آمدن است |
20 | 18 | RFU | رزرو شده است |
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 | تشخیص کم مصرف هنگامی رخ می دهد که یک سیگنال RF خارجی در فرآیند آماده به کار شناسایی شود. |
11 | 11 | PREV_RX_ULPDET | تشخیص قدرت فوق العاده کم RX. هنگامی رخ می دهد که سیگنال RF در فرآیند رفتن به ULP_STANDBY شناسایی شود. |
10 | 10 | RFU | رزرو شده است |
9 | 5 | RFU | رزرو شده است |
4 | 4 | RFU | رزرو شده است |
3 | 3 | RFU | رزرو شده است |
2 | 2 | RFU | رزرو شده است |
1 | 1 | RFU | رزرو شده است |
0 | 0 | RFU | رزرو شده است |
4.4.1.2.4 تعاریف بیت برای GENERAL_ERROR_STATUS_DATA
جدول 14. تعاریف برای بیت های GENERAL_ERROR_STATUS_DATA
کمی به | بیت از | وضعیت خطا | توضیحات |
31 | 6 | RFU | رزرو شده است |
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 | خطای ADC |
4.4.1.2.5 تعاریف بیت برای LPCD_STATUS_DATA
جدول 15. تعاریف بایت های LPCD_STATUS_DATA
کمی به | بیت از | قابلیت کاربرد بیت های وضعیت بر اساس عملیات اساسی LPCD یا ULPCD | توضیحات برای بیت مربوطه در بایت وضعیت تنظیم می شود. | ||
LPCD | ULPCD | ||||
31 | 7 | RFU | رزرو شده است | ||
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 | میدان RF خارجی | Y | Y | به دلیل میدان RF خارجی سقط شد |
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 انجام شد رویداد | توضیحات برای بیت مربوطه در بایت وضعیت تنظیم می شود. |
31 | 11 | رزرو شده است | |
10 | 0 | مقدار مرجع از کالیبراسیون ULPCD | مقدار RSSI اندازه گیری شده در طول کالیبراسیون ULPCD که به عنوان مرجع در طول ULPCD استفاده می شود |
جدول 17. تعاریف بایت های داده وضعیت LPCD_CALIBRATION_DONE برای LPCD
کمی به | بیت از | قابلیت کاربرد بیت های وضعیت بر اساس عملیات اساسی LPCD یا ULPCD | توضیحات برای بیت مربوطه در بایت وضعیت تنظیم می شود. | ||
2 | 2 | میدان RF خارجی | Y | Y | به دلیل میدان RF خارجی سقط شد |
1 | 1 | GPIO3 لغو شد | N | Y | به دلیل تغییر سطح GPIO3 لغو شد |
0 | 0 | کارت شناسایی شد | Y | Y | کارت شناسایی شد |
4.4.2 مدیریت سناریوهای مختلف بوت
آی سی PN5190 شرایط خطای مختلف مربوط به پارامترهای آی سی را به شرح زیر کنترل می کند.
4.4.2.1 مدیریت سناریوی بیش از حد دمای زمانی که PN5190 در حال کار است
هر زمان که دمای داخلی آی سی PN5190 به مقدار آستانه که در فیلد EEPROM TEMP_WARNING [2] پیکربندی شده است برسد، آی سی وارد حالت آماده به کار می شود. و در نتیجه اگر فیلد EEPROM ENABLE_GPIO0_ON_OVERTEMP [2] برای ارسال یک اعلان به میزبان پیکربندی شده باشد، آنگاه GPIO0 بالا کشیده میشود تا IC را در دمای بالا اعلام کند.
هنگامی که دمای آی سی به زیر مقدار آستانه که در فیلد EEPROM TEMP_WARNING [2] پیکربندی شده است، میرسد، آی سی مانند جدول 11 با BOOT_EVENT راهاندازی میشود و بیت وضعیت بوت BOOT_TEMP مطابق جدول 12 تنظیم میشود و GPIO0 پایین میآید.
4.4.2.2 مدیریت جریان اضافه
اگر آی سی PN5190 وضعیت جریان اضافه را حس کند، آی سی برق RF را خاموش می کند و 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، به سند [2] مراجعه کنید.
4.4.3 رسیدگی به سناریوهای سقط
آی سی PN5190 پشتیبانی از لغو دستورات اجرایی فعلی و رفتار آی سی PN5190 را دارد، هنگامی که چنین دستوری مانند بخش 4.5.4.5.2 به آی سی PN5190 ارسال می شود، همانطور که در جدول 18 نشان داده شده است.
توجه:
وقتی آی سی PN5190 در حالت ULPCD و ULP-Standby است، نمی توان آن را با ارسال بخش 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 بیتی (کوچک edian) در یک ثبات منطقی استفاده می شود.
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 بیتی که باید نوشته شود. (آندین کوچک) |
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
این دستورالعمل برای اصلاح محتوای ثبت با استفاده از عملیات OR منطقی استفاده می شود. محتوای رجیستر خوانده می شود و عملیات OR منطقی با ماسک ارائه شده انجام می شود. محتوای اصلاح شده به ثبت بازگردانده می شود.
4.5.1.2.1 شرایط
آدرس رجیستر باید وجود داشته باشد و رجیستر باید ویژگی READ-WRITE را داشته باشد.
4.5.1.2.2 فرمان
جدول 21. مقدار دستور WRITE_REGISTER_OR_MASK با استفاده از ماسک ارائه شده، عملیات OR منطقی را روی یک ثبات انجام دهید.
فیلد بار | طول | ارزش/توضیح |
آدرس ثبت نام | 1 بایت | آدرس ثبت نام |
ماسک | 4 بایت | بیت ماسک به عنوان عملوند برای عملیات منطقی OR استفاده می شود. (آندین کوچک) |
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
این دستورالعمل برای تغییر محتوای رجیستر با استفاده از عملیات AND منطقی استفاده می شود. محتوای رجیستر خوانده شده و عملیات AND منطقی با ماسک ارائه شده انجام می شود. محتوای اصلاح شده به ثبت بازگردانده می شود.
4.5.1.3.1 شرایط
آدرس رجیستر باید وجود داشته باشد و رجیستر باید ویژگی READ-WRITE را داشته باشد.
4.5.1.3.2 فرمان
جدول 23. مقدار دستور WRITE_REGISTER_AND_MASK با استفاده از ماسک ارائه شده، عملیات AND منطقی را روی یک ثبات انجام دهید.
فیلد بار | طول | ارزش/توضیح |
آدرس ثبت نام | 1 بایت | آدرس ثبت نام |
ماسک | 4 بایت | بیت ماسک به عنوان عملوند برای عملیات منطقی و استفاده می شود. (لیتل اندین) |
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 است، با امکان ترکیب آنها. در واقع، آرایه ای از register-type-value set را می گیرد و اقدام مناسب را انجام می دهد. نوع عملی را منعکس میکند که یا ثبت ثبت، عملیات منطقی یا عملیات منطقی روی یک ثبات یا عملیات منطقی AND در یک ثبات است.
4.5.1.4.1 شرایط
آدرس منطقی مربوط به ثبات در یک مجموعه باید وجود داشته باشد.
ویژگی دسترسی ثبت باید اجازه اجرای عمل مورد نیاز (نوع) را بدهد:
- عملکرد نوشتن (0x01): ویژگی READ-WRITE یا WRITE-ONLY
- عملکرد OR mask (0x02): ویژگی READ-WRITE
- عملکرد AND mask (0x03): ویژگی READ-WRITE
اندازه آرایه "Set" باید در محدوده 1 تا 43 باشد.
فیلد «نوع» باید در محدوده 1 تا 3 باشد
4.5.1.4.2 فرمان
جدول 25. مقدار دستور WRITE_REGISTER_MULTIPLE با استفاده از مجموعه ای از جفت های Register-Value، عملیات ثبت نوشتن را انجام دهید.
فیلد بار | طول | ارزش/توضیح | |||
تنظیم [1…n] | 6 بایت | آدرس ثبت نام | 1 بایت | آدرس منطقی ثبت نام | |
تایپ کنید | 1 بایت | 0x1 | ثبت نام را بنویسید | ||
0x2 | ثبت نام یا ماسک را بنویسید | ||||
0x3 | ثبت نام و ماسک را بنویسید | ||||
ارزش | 4 بایت | 32 مقدار ثبت Bite که باید نوشته شود یا از بیت ماسک برای عملیات منطقی استفاده شود. (آندین کوچک) |
نکته: در صورت استثنا، عملیات رول نمی شود، یعنی رجیسترهایی که اصلاح شده اند تا زمانی که استثنا رخ دهد، در حالت اصلاح شده باقی می مانند. میزبان باید اقدامات مناسبی را برای بازیابی به حالت تعریف شده انجام دهد.
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 بایت در قالب کمی اندین موجود است.
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 بیتی که خوانده شده است. (آندین کوچک) |
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 بیتی که خوانده شده است (کوچک-Endian). |
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 Address» باید در محدوده [2] باشد. تعداد بایتهای فیلد «مقادیر» باید در محدوده 1 تا 1024 (0×0400) باشد. عملیات Write نباید فراتر از آدرس EEPROM همانطور که در [2] ذکر شد باشد. اگر آدرس از فضای آدرس EEPROM مانند [2] بیشتر شود، پاسخ خطا به میزبان ارسال می شود.
4.5.2.1.2 فرمان
جدول 31. مقدار دستور WRITE_E2PROM مقادیر داده شده را به ترتیب به E2PROM بنویسید.
فیلد بار | طول | ارزش/توضیح |
آدرس E2PROM | 2 بایت | آدرس در EEPROM که عملیات نوشتن از آن شروع می شود. (کوچولو) |
ارزش ها | 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 Address' آدرس شروع عملیات خواندن را نشان می دهد. پاسخ حاوی داده های خوانده شده از E2PROM است.
4.5.2.2.1 شرایط
فیلد «آدرس E2PROM» باید در یک محدوده معتبر باشد.
فیلد "تعداد بایت" باید در محدوده 1 تا 256 باشد.
عملیات خواندن نباید فراتر از آخرین آدرس EEPROM قابل دسترسی باشد.
اگر آدرس از فضای آدرس EEPROM بیشتر باشد، پاسخ خطا به میزبان ارسال می شود.
4.5.2.2.2 فرمان
جدول 33. مقدار دستور READ_E2PROM مقادیر را از E2PROM به صورت متوالی بخوانید.
فیلد بار | طول | ارزش/توضیح |
آدرس E2PROM | 2 بایت | آدرس در E2PROM که عملیات خواندن از آن شروع می شود. (کوچولو) |
تعداد بایت ها | 2 بایت | تعداد بایت هایی که باید خوانده شوند. (آندین کوچک) |
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 استفاده می شود.
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 در قالب کمی اندین. |
4.5.2.3.3 رویداد
هیچ رویدادی برای این دستور وجود ندارد.
4.5.3 دستکاری داده های CLIF
دستورالعمل های شرح داده شده در این بخش، دستورات انتقال و دریافت RF را شرح می دهد.
4.5.3.1 EXCHANGE_RF_DATA
تابع تبادل RF انتقال داده های TX را انجام می دهد و منتظر دریافت هر داده RX است.
در صورت دریافت (اشتباه یا صحیح) یا مهلت زمانی، عملکرد برمی گردد. تایمر با END TRANSMISSION شروع می شود و با شروع دریافت متوقف می شود. مقدار مهلت زمانی که از قبل در EEPROM پیکربندی شده است، باید در مواردی که قبل از اجرای دستور Exchange پیکربندی نشده باشد، استفاده می شود.
اگر transceiver_state باشد
- در IDLE حالت TRANSCEIVE وارد می شود.
- در WAIT_RECEIVE، در صورت تنظیم بیت آغازگر، وضعیت فرستنده گیرنده به حالت TRANSCEIVE MODE بازنشانی می شود.
- در WAIT_TRANSMIT، در صورتی که بیت آغازگر تنظیم نشده باشد، وضعیت فرستنده گیرنده به حالت TRANSCEIVE MODE بازنشانی می شود.
فیلد «تعداد بیتهای معتبر در آخرین بایت» نشاندهنده طول دقیق دادهای است که باید ارسال شود.
4.5.3.1.1 شرایط
اندازه فیلد "TX Data" باید در محدوده 0 تا 1024 باشد.
فیلد "تعداد بیت های معتبر در آخرین بایت" باید در محدوده 0 تا 7 باشد.
این فرمان نباید در طول انتقال RF در حال انجام فراخوانی شود. فرماندهی باید از وضعیت مناسب فرستنده و گیرنده برای انتقال داده اطمینان حاصل کند.
توجه:
این دستور فقط برای حالت Reader و حالت P2P Passive/Active Initiator معتبر است.
4.5.3.1.2 فرمان
جدول 37. مقدار دستور EXCHANGE_RF_DATA
داده های TX را در بافر داخلی انتقال RF بنویسید و با استفاده از دستور transceive انتقال را شروع می کند و منتظر بمانید تا دریافت یا Time-Out برای پاسخ به میزبان آماده شود.
میدان بار | طول | ارزش/توضیحات | |
تعداد بیت های معتبر در آخرین بایت | 1 بایت | 0 | تمام بیت های آخرین بایت منتقل می شوند |
1 - 7 | تعداد بیت های موجود در آخرین بایت که باید منتقل شوند. | ||
RFExchangeConfig | 1 بایت | پیکربندی تابع RFExchange. جزئیات را در زیر ببینید |
جدول 37. مقدار دستور EXCHANGE_RF_DATA...ادامه دارد
داده های TX را در بافر داخلی انتقال RF بنویسید و با استفاده از دستور transceive انتقال را شروع می کند و منتظر بمانید تا دریافت یا Time-Out برای پاسخ به میزبان آماده شود.
میدان بار | طول | ارزش/توضیحات |
داده های TX | n بایت | داده های TX که باید از طریق CLIF با استفاده از دستور transceive ارسال شوند. n = 0 - 1024 بایت |
جدول 38. بیت ماسک RFexchangeConfig
b7 | b6 | b5 | b4 | b3 | b2 | b1 | b0 | توضیحات |
بیت های 4 تا 7 RFU هستند | ||||||||
X | اگر بیت روی 1b تنظیم شده باشد، داده های RX را بر اساس RX_STATUS درج کنید. | |||||||
X | اگر بیت روی 1b تنظیم شده باشد، ثبت EVENT_STATUS را در پاسخ لحاظ کنید. | |||||||
X | اگر بیت روی 1b تنظیم شده باشد، در پاسخ، رجیستر RX_STATUS_ERROR را وارد کنید. | |||||||
X | اگر بیت روی 1b تنظیم شده است، در پاسخ، ثبات RX_STATUS را وارد کنید. |
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 درخواست شده باشد (کمی ) |
EVENT_STATUS | 4 بایت | اگر EVENT_STATUS درخواست شده باشد (کمی ) |
داده های RX | 1 - 1024 بایت | اگر داده های RX درخواست شود. داده های RX دریافت شده در مرحله دریافت RF تبادل RF. |
4.5.3.1.4 رویداد
هیچ رویدادی برای این دستور وجود ندارد.
4.5.3.2 TRANSMIT_RF_DATA
این دستورالعمل برای نوشتن داده ها در بافر انتقال داخلی CLIF و شروع انتقال با استفاده از دستور transceive به صورت داخلی استفاده می شود. اندازه این بافر به 1024 بایت محدود شده است. پس از اجرای این دستورالعمل، دریافت RF به طور خودکار شروع می شود.
فرمان بلافاصله پس از اتمام ارسال برمی گردد و منتظر تکمیل دریافت نیست.
4.5.3.2.1 شرایط
تعداد بایتهای فیلد «TX Data» باید در محدوده 1 تا 1024 باشد.
این فرمان نباید در طول انتقال RF در حال انجام فراخوانی شود.
4.5.3.2.2 فرمان
جدول 40. مقدار دستور TRANSMIT_RF_DATA داده های TX را در بافر انتقال داخلی CLIF بنویسید.
میدان بار | طول | ارزش/توضیحات |
تعداد بیت های معتبر در آخرین بایت | 1 بایت | 0 همه بیت های آخرین بایت منتقل می شوند 1 تا 7 تعداد بیت های موجود در آخرین بایت که باید ارسال شود. |
RFU | 1 بایت | رزرو شده است |
داده های TX | 1 - 1024 بایت | داده های TX که باید در انتقال RF بعدی استفاده شوند. |
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 استفاده میشود، که حاوی دادههای پاسخ RF (در صورت وجود) است که از اجرای قبلی بخش 4.5.3.1 به آن ارسال شده است، با گزینهای برای شامل نشدن دادههای دریافتی در پاسخ یا بخش 4.5.3.2. دستور .XNUMX.
4.5.3.3.1 فرمان
جدول 42. مقدار دستور RETRIEVE_RF_DATA داده های RX را از بافر داخلی دریافت RF بخوانید.
میدان بار | طول | ارزش/توضیحات |
خالی | خالی | خالی |
4.5.3.3.2 پاسخ
جدول 43. مقدار پاسخ RETRIEVE_RF_DATA
میدان بار | طول | ارزش/توضیحات |
وضعیت | 1 بایت | وضعیت عملیات [جدول 9]. مقادیر مورد انتظار به شرح زیر است: |
میدان بار | طول | ارزش/توضیحات |
PN5190_STATUS_INSTR_SUCCESS PN5190_STATUS_INSTR_ERROR (اطلاعات بیشتری وجود ندارد) |
||
داده های RX | 1 - 1024 بایت | داده های RX که در آخرین دریافت موفق RF دریافت شده است. |
4.5.3.3.3 رویداد
هیچ رویدادی برای این دستور وجود ندارد.
4.5.3.4 RECEIVE_RF_DATA
این دستورالعمل منتظر داده های دریافت شده از طریق رابط RF خواننده است.
در حالت خواننده، این دستورالعمل یا در صورتی که دریافتی وجود داشته باشد (به اشتباه یا صحیح) یا یک مهلت زمانی FWT برمی گردد. تایمر با END TRANSMISSION شروع می شود و با شروع دریافت متوقف می شود. مقدار مهلت زمانی پیشفرض که در EEPROM از پیش پیکربندی شده است، باید در مواردی استفاده شود که تایم اوت قبل از اجرای دستور Exchange پیکربندی نشده باشد.
در حالت هدف، این دستورالعمل یا در صورت دریافت (اشتباه یا صحیح) یا خطای RF خارجی برمیگردد.
توجه:
این دستورالعمل باید با دستور 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 | اگر بیت روی 1b تنظیم شده باشد، داده های RX را بر اساس RX_STATUS درج کنید. | |||||||
X | اگر بیت روی 1b تنظیم شده باشد، ثبت EVENT_STATUS را در پاسخ لحاظ کنید. | |||||||
X | اگر بیت روی 1b تنظیم شده باشد، در پاسخ، رجیستر RX_STATUS_ERROR را وارد کنید. | |||||||
X | اگر بیت روی 1b تنظیم شده است، در پاسخ، ثبات RX_STATUS را وارد کنید. |
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 درخواست شده باشد (کمی ) |
EVENT_STATUS | 4 بایت | اگر EVENT_STATUS درخواست شده باشد (کمی ) |
داده های RX | 1 - 1024 بایت | اگر داده های RX درخواست شود. داده های RX دریافت شده از طریق RF. |
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 v02.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: اگر بیت روی 1b تنظیم شده باشد، رجیستر RX_STATUS_ ERROR را در پاسخ وارد کنید. بیت 0: در پاسخ، اگر بیت روی 1b تنظیم شده باشد، رجیستر RX_STATUS را وارد کنید. |
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_ ERROR | 4 بایت | اگر RX_STATUS_ERROR درخواست شده باشد (کمی ) |
فیلد بار | طول | ارزش/توضیح | |||
داده های RX | 1…1024 بایت | داده های FeliCa EMD RX که در آخرین دریافت ناموفق RF با استفاده از Exchange Command دریافت شده است. |
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 Autocoll
PN5190 به عنوان شنونده RF عمل می کند و فعال سازی حالت هدف را به صورت مستقل انجام می دهد (برای تضمین محدودیت های زمان واقعی)
4.5.4.5 SWITCH_MODE_NORMAL
دستور Switch Mode Normal سه مورد استفاده دارد.
4.5.4.5.1 UseCase1: پس از روشن شدن، وارد حالت عملکرد عادی شوید (POR)
برای بازنشانی به حالت Idle برای دریافت / پردازش دستور بعدی با وارد کردن حالت عملکرد عادی استفاده کنید.
4.5.4.5.2 UseCase2: پایان دادن به فرمان از قبل در حال اجرا برای تغییر حالت عملیات عادی (فرمان لغو)
برای بازنشانی به حالت Idle برای دریافت / پردازش دستور بعدی با پایان دادن به دستورات در حال اجرا استفاده کنید.
دستوراتی مانند آماده به کار، LPCD، Exchange، PRBS، و Autocoll باید با استفاده از این دستور خاتمه داده شوند.
این تنها فرمان خاصی است که پاسخی ندارد. در عوض، یک اعلان رویداد دارد.
برای اطلاعات بیشتر در مورد نوع رویدادهایی که در طول اجرای دستورات زیربنایی مختلف رخ می دهند، به بخش 4.4.3 مراجعه کنید.
4.5.4.5.2.1 UseCase2.1:
این دستور باید همه CLIF TX، RX و ثبت های کنترل فیلد را به حالت Boot بازنشانی کند. با صدور این فرمان، هر فیلد RF موجود را خاموش می کند.
4.5.4.5.2.2 UseCase2.2:
موجود از PN5190 FW نسخه 02.03 به بعد:
این دستور نباید CLIF TX، RX و ثبت های کنترل میدان را تغییر دهد، بلکه فقط باید فرستنده گیرنده را به حالت IDLE منتقل کند.
4.5.4.5.3 UseCase3: حالت عملکرد عادی در هنگام تنظیم مجدد/خروج از حالت آماده به کار، LPCD در این مورد، PN5190 مستقیماً با ارسال IDLE_EVENT به میزبان (شکل 12 یا شکل 13) وارد حالت عملکرد عادی می شود. بیت IDLE_EVENT" در جدول 11 تنظیم شده است.
هیچ الزامی برای ارسال دستور SWITCH_MODE_NORMAL وجود ندارد.
توجه:
پس از اینکه آی سی به حالت عادی تبدیل شد، تمام تنظیمات RF به حالت پیش فرض تغییر می کند. ضروری است که پیکربندی RF مربوطه و سایر رجیسترهای مربوطه باید با مقادیر مناسب قبل از انجام عملیات RF ON یا RF Exchange بارگذاری شوند.
4.5.4.5.4 فریم فرمان برای ارسال برای موارد استفاده مختلف
4.5.4.5.4.1 UseCase1: فرمان وارد حالت عملیات عادی هنگام روشن شدن (POR) 0x20 0x01 0x00
4.5.4.5.4.2 UseCase2: فرمان خاتمه دادن به دستورات در حال اجرا برای تغییر حالت عملیات عادی
مورد استفاده 2.1:
0x20 0x00 0x00
Use case 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 مراجعه کنید.
یک IDLE_EVENT (در ثبت نام EVENT_STATUS) تنظیم شده است که نشان می دهد حالت عادی وارد شده است و به میزبان ارسال می شود. برای اطلاعات رویداد به شکل 12 و شکل 13 مراجعه کنید.
یک BOOT_EVENT (در ثبات EVENT_STATUS) تنظیم شده است که نشان می دهد حالت عادی وارد شده است و برای میزبان ارسال می شود. برای اطلاعات رویداد به شکل 12 و شکل 13 مراجعه کنید.
4.5.4.6 SWITCH_MODE_AUTOCOLL
Switch Mode Autocoll به طور خودکار روند فعال سازی کارت را در حالت هدف انجام می دهد.
فیلد "Autocoll Mode" باید در محدوده 0 تا 2 باشد.
در صورتی که فیلد "Autocoll Mode" روی 2 تنظیم شده باشد (Autocoll): فیلد "RF Technologies" (جدول 50) باید حاوی یک بیت ماسک باشد که نشان دهنده فناوری های RF برای پشتیبانی در طول Autocoll باشد.
هنگام قرار گرفتن در این حالت، هیچ دستورالعملی نباید ارسال شود.
خاتمه با استفاده از یک وقفه نشان داده شده است.
4.5.4.6.1 فرمان
جدول 49. مقدار دستور SWITCH_MODE_AUTOCOLL
پارامتر | طول | ارزش/توضیحات | |
فناوری های RF | 1 بایت | بیت ماسک فناوری RF را برای گوش دادن در حین Autocoll نشان می دهد. | |
حالت Autocoll | 1 بایت | 0 | بدون حالت خودمختار، یعنی Autocoll زمانی خاتمه می یابد که میدان RF خارجی وجود نداشته باشد. |
فسخ در صورت | |||
• NO RF FIELD یا RF FIELD ناپدید شده است | |||
• PN5190 در حالت TARGET فعال می شود | |||
1 | حالت خودکار با حالت آماده به کار. هنگامی که فیلد RF وجود ندارد، Autocoll به طور خودکار وارد حالت Standby می شود. هنگامی که میدان RF خارجی RF شناسایی شد، PN5190 دوباره وارد حالت Autocoll می شود. | ||
فسخ در صورت | |||
• PN5190 در حالت TARGET فعال می شود | |||
از PN5190 FW نسخه 02.03 به بعد: اگر فیلد EEPROM "bCard ModeUltraLowPowerEnabled" در آدرس "0xCDF" روی "1" تنظیم شده باشد، PN5190 وارد حالت آماده به کار بسیار کم مصرف می شود. | |||
2 | حالت خودمختار بدون آماده به کار. وقتی فیلد RF وجود ندارد، PN5190 قبل از شروع الگوریتم Autocoll منتظر می ماند تا میدان RF وجود داشته باشد. Standby در این مورد استفاده نمی شود. | ||
فسخ در صورت • PN5190 در حالت TARGET فعال می شود |
جدول 50. RF Technologies Bitmask
b7 | b6 | b5 | b4 | b3 | b2 | b1 | b0 | توضیحات |
0 | 0 | 0 | 0 | RFU | ||||
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" نیست، بایت های داده دیگری "پروتکل" و "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_ FIELD | نشان می دهد که هیچ میدان RF خارجی در هنگام اجرای Autocoll در حالت غیر خودمختار وجود ندارد. | ||
PN5190_STATUS_USER_CANCELLED | نشان می دهد که دستور فعلی در حال انجام با دستور عادی حالت سوئیچ لغو می شود | ||
پروتکل | 1 بایت | 0x10 | به عنوان Passive TypeA فعال می شود |
0x11 | فعال شده به عنوان Passive TypeF 212 | ||
0x12 | فعال شده به عنوان Passive TypeF 424 | ||
0x20 | به عنوان Active TypeA فعال می شود | ||
0x21 | فعال شده به عنوان Active TypeF 212 | ||
0x22 | فعال شده به عنوان Active TypeF 424 | ||
ارزشهای دیگر | نامعتبر است | ||
کارت_فعال شد | 1 بایت | 0x00 | بدون فرآیند فعال سازی کارت مطابق با ISO 14443-3 |
0x01 | نشان می دهد که دستگاه در حالت Passive فعال شده است |
توجه:
پس از خواندن دادههای رویداد، دادههای دریافتی از کارت/دستگاه فعال شده (مانند «n» بایت ATR_REQ/RATS مطابق با ISO18092/ISO1443-4)، باید با استفاده از دستور بخش 4.5.3.3 خوانده شوند.
4.5.4.6.4 ارتباطات سابقample
4.5.4.7 SWITCH_MODE_STANDBY
حالت Switch Mode Standby به طور خودکار آی سی را در حالت Standby قرار می دهد. آی سی پس از پیکربندی منابع بیدار با شرایط بیدار شدن، بیدار می شود.
توجه:
انقضای شمارنده برای ULP STANDBY و لغو HIF برای STANDBY به طور پیش فرض برای خروج از حالت آماده به کار در دسترس هستند.
4.5.4.7.1 فرمان
جدول 53. مقدار دستور SWITCH_MODE_STANDBY
پارامتر | طول | ارزش/توضیحات |
پیکربندی | 1 بایت | بیت ماسک کنترل منبع بیداری مورد استفاده و حالت آماده به کار برای ورود. رجوع شود به جدول 54 |
ارزش ضد | 2 بایت | مقدار استفاده شده برای شمارنده بیدار شدن در میلی ثانیه. حداکثر مقدار پشتیبانی شده برای حالت آماده به کار 2690 است. حداکثر مقدار پشتیبانی شده برای حالت آماده به کار ULP 4095 است. مقدار ارائه شده در قالب کمی اندین است. محتویات این پارامتر فقط در صورتی معتبر است که "Config Bitmask" برای بیدار شدن در زمان انقضای شمارنده فعال باشد. |
جدول 54. پیکربندی بیت ماسک
b7 | b6 | b5 | b4 | b3 | b2 | b1 | b0 | توضیحات |
X | اگر بیت روی 1b تنظیم شده است، در حالت آماده به کار ULP را وارد کنید اگر بیت روی 0b تنظیم شده است، در حالت آماده به کار وارد شوید. | |||||||
0 | RFU | |||||||
X | اگر بیت روی 3b تنظیم شده باشد، وقتی GPIO-1 زیاد است، بیدار می شود. (برای حالت آماده به کار ULP قابل استفاده نیست) | |||||||
X | اگر بیت روی 2b تنظیم شده باشد، وقتی GPIO-1 زیاد است، بیدار می شود. (برای حالت آماده به کار ULP قابل استفاده نیست) | |||||||
X | اگر بیت روی 1b تنظیم شده باشد، وقتی GPIO-1 زیاد است، بیدار می شود. (برای حالت آماده به کار ULP قابل استفاده نیست) | |||||||
X | اگر بیت روی 0b تنظیم شده باشد، وقتی GPIO-1 زیاد است، بیدار می شود. (برای حالت آماده به کار ULP قابل استفاده نیست) | |||||||
X | اگر بیت روی 1b تنظیم شده باشد، بیدار شدن در شمارنده بیدار شدن منقضی می شود. برای ULP-Standby، این گزینه به طور پیش فرض فعال است. | |||||||
X | بیدار شدن در میدان RF خارجی، اگر بیت روی 1b تنظیم شده باشد. |
توجه: از PN5190 FW نسخه 02.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
4.5.4.8 SWITCH_MODE_LPCD
Switch Mode LPCD به دلیل تغییر محیط اطراف آنتن، تشخیص جداسازی آنتن را انجام می دهد.
2 حالت مختلف LPCD وجود دارد. راه حل مبتنی بر HW (ULPCD) مصرف توان رقابتی با حساسیت کاهش یافته را ارائه می دهد. راه حل مبتنی بر FW (LPCD) با افزایش مصرف انرژی، بهترین حساسیت را در کلاس خود ارائه می دهد.
در حالت تکی مبتنی بر FW (LPCD)، هیچ رویداد کالیبراسیونی برای میزبان ارسال نمیشود.
هنگامی که حالت تک فراخوانی می شود، کالیبراسیون و اندازه گیری های متوالی پس از خروج از حالت آماده به کار انجام می شود.
برای رویداد کالیبراسیون در حالت تک، ابتدا یک حالت را با دستور رویداد کالیبراسیون صادر کنید. پس از کالیبراسیون، یک رویداد کالیبراسیون LPCD دریافت می شود که پس از آن فرمان تک حالت باید با مقدار مرجع به دست آمده از مرحله قبل به عنوان پارامتر ورودی ارسال شود.
پیکربندی LPCD در تنظیمات EEPROM/Flash Data قبل از فراخوانی دستور انجام می شود.
توجه:
قطع GPIO3 برای ULPCD، HIF abor برای LPCD به طور پیشفرض برای خروج از حالتهای کم مصرف در دسترس هستند.
بیدار شدن به دلیل انقضای شمارنده همیشه فعال است.
برای ULPCD، پیکربندی DC-DC باید در تنظیمات EEPROM/Flash Data غیرفعال باشد و باید VUP را از طریق VBAT فراهم کند. تنظیمات جامپر لازم باید انجام شود. برای تنظیمات EEPROM/Flash Data، به سند [2] مراجعه کنید.
اگر دستور برای کالیبراسیون LPCD/ULPCD باشد، میزبان همچنان باید فریم کامل را ارسال کند.
4.5.4.8.1 فرمان
جدول 56. مقدار دستور SWITCH_MODE_LPCD
پارامتر | طول | ارزش/توضیح | |
bControl | 1 بایت | 0x00 | کالیبراسیون ULPCD را وارد کنید. فرمان پس از کالیبراسیون متوقف می شود و یک رویداد با مقدار مرجع برای میزبان ارسال می شود. |
0x01 | ULPCD را وارد کنید | ||
0x02 | کالیبراسیون LPCD فرمان پس از کالیبراسیون متوقف می شود و یک رویداد با مقدار مرجع برای میزبان ارسال می شود. | ||
0x03 | LPCD را وارد کنید | ||
0x04 | حالت تک | ||
0x0C | حالت تک با رویداد کالیبراسیون | ||
ارزش های دیگر | RFU | ||
کنترل بیداری | 1 بایت | بیت ماسک کنترل منبع بیدار شدن برای استفاده برای LPCD/ULPCD. محتوای این فیلد برای کالیبراسیون در نظر گرفته نمی شود. رجوع شود به جدول 57 | |
مقدار مرجع | 4 بایت | مقدار مرجع برای استفاده در طول ULPCD/LPCD. برای ULPCD، بایت 2 که دارای مقدار تضعیف کننده HF است، در هر دو مرحله کالیبراسیون و اندازه گیری استفاده می شود. برای LPCD، محتوای این فیلد برای کالیبراسیون و حالت تک در نظر گرفته نمی شود. رجوع شود به جدول 58 برای اطلاعات صحیح در مورد تمام 4 بایت. |
|
ارزش ضد | 2 بایت | مقدار برای بیدار شدن شمارنده در میلی ثانیه. حداکثر مقدار پشتیبانی شده برای LPCD 2690 است. حداکثر مقدار پشتیبانی شده برای ULPCD 4095 است. مقدار ارائه شده در قالب کمی اندین است. محتوای این فیلد برای کالیبراسیون LPCD در نظر گرفته نشده است. برای حالت تک و حالت تک با رویداد کالیبراسیون، مدت زمان آماده به کار قبل از کالیبراسیون را می توان از پیکربندی EEPROM پیکربندی کرد: LPCD_SETTINGS->wCheck Period. برای حالت تک با کالیبراسیون، مقدار WUC غیر صفر باشد. |
جدول 57. بیت ماسک کنترل بیداری
b7 | b6 | b5 | b4 | b3 | b2 | b1 | b0 | توضیحات |
0 | 0 | 0 | 0 | 0 | 0 | 0 | RFU | |
X | بیدار شدن در میدان RF خارجی، اگر بیت روی 1b تنظیم شده باشد. |
جدول 58. اطلاعات بایت مقدار مرجع
بایت های ارزش مرجع | ULPCD | LPCD |
بایت 0 | بایت مرجع 0 | کانال 0 مرجع بایت 0 |
بایت 1 | بایت مرجع 1 | کانال 0 مرجع بایت 1 |
بایت 2 | مقدار تضعیف کننده HF | کانال 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 Communication Example |
4.5.4.9 SWITCH_MODE_DOWNLOAD
دستور Switch Mode Download وارد حالت دانلود Firmware می شود.
تنها راه برای بیرون آمدن از حالت دانلود، تنظیم مجدد 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 Classic Authentication
4.5.5.1 MFC_AUTHENTICATE
این دستورالعمل برای انجام احراز هویت کلاسیک MIFARE بر روی کارت فعال شده استفاده می شود. برای احراز هویت در آدرس بلوک داده شده، کلید، UID کارت و نوع کلید مورد نیاز است. پاسخ حاوی یک بایت است که وضعیت احراز هویت را نشان می دهد.
4.5.5.1.1 شرایط
کلید فیلد باید 6 بایت باشد. نوع کلید فیلد باید حاوی مقدار 0x60 یا 0x61 باشد. آدرس بلوک ممکن است شامل هر آدرسی از 0x0 تا 0xff باشد. UID فیلد باید بایت طول داشته باشد و باید شامل 4 بایت UID کارت باشد. یک کارت ISO14443-3 MIFARE کلاسیک مبتنی بر محصول باید قبل از اجرای این دستورالعمل در حالت ACTIVE یا ACTIVE* قرار گیرد.
در صورت بروز خطای زمان اجرا مربوط به احراز هویت، این فیلد "وضعیت احراز هویت" مطابق با آن تنظیم می شود.
4.5.5.1.2 فرمان
جدول 63. دستور MFC_AUTHENTICATE
احراز هویت را روی کارت فعال شده مبتنی بر محصول MIFARE Classic انجام دهید.
میدان بار | طول | ارزش/توضیحات | |
کلید | 6 بایت | کلید احراز هویت برای استفاده | |
نوع کلید | 1 بایت | 0x60 | کلید نوع A |
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
فیلد «انتخاب طول فرمان» باید دارای طول فیلد «انتخاب فرمان» باشد، که باید در محدوده 1 تا 39 باشد. اگر "انتخاب طول فرمان" 0 باشد، فیلدهای "بیت های معتبر در آخرین بایت" و "انتخاب فرمان" نباید وجود داشته باشند.
فیلد Bits در آخرین بایت باید شامل تعداد بیت هایی باشد که در آخرین بایت فیلد "Select Command" ارسال می شود. مقدار باید در محدوده 1 تا 7 باشد. اگر مقدار 0 باشد، تمام بیت های آخرین بایت از فیلد "Select Command" منتقل می شوند.
فیلد "Select Command" باید حاوی دستور Select مطابق با ISO18000-3M3 بدون CRC-16c باشد و باید همان طولی داشته باشد که در قسمت "Select Command Length" نشان داده شده است.
فیلد "BeginRound Command" باید حاوی فرمان BeginRound مطابق با ISO18000-3M3 بدون CRC-5 باشد. 7 بیت آخر از آخرین بایت "BeginRound Command" نادیده گرفته می شود زیرا این فرمان دارای طول واقعی 17 بیت است.
«رفتار پردازش شده در زمانبندی» باید حاوی مقداری از 0 تا 2 باشد.
جدول 65. مقدار دستور EPC_GEN2_INVENTORY یک فهرست ISO 18000-3M3 را انجام دهید
فیلد بار | طول | ارزش/توضیح | |
رزومه موجودی | 1 بایت | 00 | GEN2_INVENTORY اولیه |
01 | دستور GEN2_INVENTORY را از سر بگیرید - باقیمانده
فیلدهای زیر خالی هستند (هر باری نادیده گرفته می شود) |
||
Command Length را انتخاب کنید | 1 بایت | 0 | هیچ دستور Select قبل از دستور BeginRound تنظیم نشده است. فیلد «بیتهای معتبر در آخرین بایت» و فیلد «دستور انتخاب» نباید وجود داشته باشد. |
1 - 39 | طول (n) فیلد 'Select command'. | ||
بیت های معتبر در آخرین بایت | 1 بایت | 0 | تمام بیت های آخرین بایت فیلد "Select command" منتقل می شوند. |
1 - 7 | تعداد بیت هایی که باید در آخرین بایت فیلد "Select command" منتقل شوند. | ||
Command را انتخاب کنید | n بایت | در صورت وجود، این فیلد حاوی دستور Select (طبق ISO18000-3، جدول 47) است که قبل از دستور BeginRound ارسال می شود. CRC-16c نباید شامل شود. | |
دستور شروع دور | 3 بایت | این فیلد حاوی دستور BeginRound است (طبق ISO18000-3، جدول 49). CRC-5 نباید گنجانده شود. | |
رفتار پردازش شده Timeslot | 1 بایت | 0 | پاسخ شامل حداکثر تعداد بازههای زمانی که ممکن است در بافر پاسخ قرار بگیرند. |
1 | پاسخ فقط شامل یک بازه زمانی است. | ||
2 | پاسخ فقط شامل یک بازه زمانی است. اگر Timeslot حاوی پاسخ کارت معتبر باشد، دسته کارت نیز گنجانده شده است. |
4.5.6.1.1 پاسخ
طول پاسخ ممکن است "1" در صورت موجودی رزومه باشد.
جدول 66. مقدار پاسخ EPC_GEN2_INVENTORY
میدان بار | طول | ارزش/توضیحات | |||
وضعیت | 1 بایت | وضعیت عملیات [جدول 9]. مقادیر مورد انتظار به شرح زیر است: | |||
PN5190_STATUS_SUCCESS (وضعیت Timeslot را در بایت بعدی بخوانید Tag پاسخ) PN5190_STATUS_INSTR_ERROR (اطلاعات بیشتری وجود ندارد) |
|||||
فاصله زمانی [1…n] | 3 - 69 بایت | وضعیت Timeslot | 1 بایت | 0 | Tag پاسخ در دسترس است. 'Tag فیلد طول پاسخ، فیلد «بیتهای معتبر در آخرین بایت» و «Tag پاسخ" فیلد موجود است. |
1 | Tag پاسخ در دسترس است. | ||||
2 | خیر tag در بازه زمانی پاسخ داد. 'Tag فیلد Reply Length و Valid bit در آخرین بایت باید روی صفر تنظیم شود. 'Tag فیلد پاسخ نباید وجود داشته باشد. | ||||
3 | دو یا بیشتر tags در بازه زمانی پاسخ داد. (برخورد). 'Tag فیلد Reply Length و Valid bit در آخرین بایت باید روی صفر تنظیم شود. 'Tag فیلد پاسخ نباید وجود داشته باشد. |
Tag طول پاسخ | 1 بایت | 0-66 | طول "Tag فیلد پاسخ (i). اگر Tag طول پاسخ 0 است، سپس Tag فیلد پاسخ وجود ندارد. | ||
بیت های معتبر در آخرین بایت | 1 بایت | 0 | همه بیت های آخرین بایت از 'Tag فیلد پاسخ معتبر است. | ||
1-7 | تعداد بیت های معتبر آخرین بایت از 'Tag فیلد پاسخ اگر Tag طول پاسخ صفر است، مقدار این بایت نادیده گرفته می شود. | ||||
Tag پاسخ دهید | "n" بایت | پاسخ از tag مطابق با ISO18000- 3_2010، جدول 56. | |||
Tag دسته | 0 یا 2 بایت | دسته از tag، در صورتی که فیلد «وضعیت Timeslot» روی «1» تنظیم شود. در غیر این صورت فیلد وجود ندارد. |
4.5.6.1.2 رویداد
هیچ رویدادی برای این دستور وجود ندارد.
4.5.7 مدیریت پیکربندی RF
برای پیکربندی TX و RX برای فناوریهای مختلف RF و نرخ داده پشتیبانی شده توسط PN6، به بخش 5190 مراجعه کنید. مقادیر در محدوده ذکر شده در زیر وجود ندارند، باید به عنوان RFU در نظر گرفته شوند.
4.5.7.1 LOAD_RF_CONFIGURATION
این دستورالعمل برای بارگذاری پیکربندی RF از EEPROM در ثبات های داخلی CLIF استفاده می شود. پیکربندی RF به ترکیبی منحصر به فرد از فناوری RF، حالت (هدف / آغازگر) و نرخ باود اشاره دارد. پیکربندی RF را می توان به طور جداگانه برای مسیر گیرنده CLIF (پیکربندی RX) و فرستنده (پیکربندی TX) بارگذاری کرد. اگر پیکربندی مربوط به یک مسیر نباید تغییر کند، مقدار 0xFF باید استفاده شود.
4.5.7.1.1 شرایط
فیلد «پیکربندی TX» باید در محدوده 0x00 – 0x2B باشد. اگر مقدار 0xFF باشد، پیکربندی TX تغییر نمی کند.
فیلد «پیکربندی RX» باید در محدوده 0x80 – 0xAB باشد. اگر مقدار 0xFF باشد، پیکربندی RX تغییر نمی کند.
یک پیکربندی خاص با پیکربندی TX = 0xFF و پیکربندی RX = 0xAC برای بارگیری رجیسترهای Boot-up یک بار استفاده میشود.
این پیکربندی ویژه برای بهروزرسانی پیکربندیهای رجیستر (هر دو TX و RX) که با مقادیر تنظیم مجدد آی سی متفاوت هستند، مورد نیاز است.
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
این دستورالعمل برای به روز رسانی پیکربندی RF (به تعریف در بخش 4.5.7.1 مراجعه کنید) در E2PROM استفاده می شود. این دستورالعمل بهروزرسانی را با مقدار دانهبندی رجیستر اجازه میدهد، یعنی مجموعه کامل نیاز به بهروزرسانی ندارد (البته، انجام آن ممکن است).
4.5.7.2.1 شرایط
اندازه آرایه فیلد پیکربندی باید در محدوده 1 تا 15 باشد. آرایه فیلد پیکربندی باید شامل مجموعه ای از پیکربندی RF، آدرس ثبت نام و مقدار باشد. پیکربندی میدان RF باید در محدوده 0x0 - 0x2B برای پیکربندی TX و 0x80 - 0xAB برای پیکربندی RX باشد. آدرس داخل فیلد ثبت آدرس باید در پیکربندی RF مربوطه وجود داشته باشد. مقدار فیلد باید حاوی مقداری باشد که باید در رجیستر داده شده نوشته شود و باید 4 بایت باشد (قالب اندکی).
4.5.7.2.2 فرمان
جدول 69. مقدار دستور UPDATE_RF_CONFIGURATION
پیکربندی RF را به روز کنید
میدان بار | طول | ارزش/توضیحات | ||
پیکربندی[1…n] | 6 بایت | پیکربندی RF | 1 بایت | پیکربندی RF که رجیستر آن باید تغییر کند. |
آدرس ثبت نام | 1 بایت | آدرس ثبت نام در فناوری RF داده شده. | ||
ارزش | 4 بایت | مقداری که باید در رجیستر نوشته شود. (آندین کوچک) |
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
این دستورالعمل برای خواندن یک پیکربندی RF استفاده می شود. جفت آدرس-مقدار-رجیستر در پاسخ موجود است. برای اینکه بدانید چند جفت باید مورد انتظار باشد، اطلاعات اندازه اول را می توان از اولین TLV بازیابی کرد که طول کل محموله را نشان می دهد.
4.5.7.3.1 شرایط
پیکربندی میدان RF باید در محدوده 0x0 - 0x2B برای پیکربندی TX و 0x80 -0xAB برای پیکربندی RX، شامل باشد.
4.5.7.3.2 فرمان
جدول 71. مقدار دستور GET_ RF_CONFIGURATION پیکربندی RF را بازیابی کنید.
میدان بار | طول | ارزش/توضیحات |
پیکربندی RF | 1 بایت | پیکربندی RF که برای آن مجموعه جفت های مقدار ثبات باید بازیابی شوند. |
4.5.7.3.3 پاسخ
جدول 72. مقدار پاسخ GET_ RF_CONFIGURATION
میدان بار | طول | ارزش/توضیحات | ||
وضعیت | 1 بایت | وضعیت عملیات [جدول 9]. مقادیر مورد انتظار به شرح زیر است: | ||
PN5190_STATUS_SUCCESS PN5190_STATUS_INSTR_ERROR (اطلاعات بیشتری وجود ندارد) |
||||
جفت [1…n] | 5 بایت | آدرس ثبت نام | 1 بایت | آدرس ثبت نام در فناوری RF داده شده. |
ارزش | 4 بایت | مقدار ثبت 32 بیتی. |
4.5.7.3.4 رویداد
رویدادی برای آموزش وجود ندارد.
4.5.8 RF Field Handling
4.5.8.1 RF_ON
این دستورالعمل برای فعال کردن RF استفاده می شود. مقررات 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 (فیلد RF به دلیل برخورد RF روشن نمی شود) PN5190_STATUS_TIMEOUT (فیلد RF به دلیل مهلت زمانی روشن نیست) PN5190_STATUS_TXLDO_ERROR (خطای TXLDO به دلیل VUP در دسترس نیست) PN5190_STATUS_RFCFG_NOT_APPLIED (پیکربندی RF قبل از این دستور اعمال نمی شود) |
4.5.8.1.3 رویداد
هیچ رویدادی برای این دستورالعمل وجود ندارد.
4.5.8.2 RF_OFF
این دستورالعمل برای غیرفعال کردن فیلد RF استفاده می شود.
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 CONFIGURE _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 | RFU |
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 حالت ترکیبی
در این حالت، سیگنال آنالوگ مقدار ADCI/ADCQ/pcrm_if_rssi با امضای 10 بیتی خواهد بود که به یک مقدار بدون علامت تبدیل شده، به 8 بیت کاهش یافته و سپس بر روی پدهای AUX1 یا AUX2 خروجی میشود.
فقط یکی از مقادیر تبدیل شده ADCI/ADCQ (10 بیتی) می تواند در هر زمان به AUX1/AUX2 خروجی شود.
اگر مقدار میدان محموله سیگنال Combined_Mode 2 باشد (آنالوگ و دیجیتال ترکیبی)، سپس گذرگاه آزمایشی آنالوگ و دیجیتال روی AUX1 (سیگنال آنالوگ) و GPIO0 (سیگنال دیجیتال) هدایت میشوند.
سیگنال هایی که باید مسیریابی شوند در آدرس EEPROM که در زیر ذکر شده است پیکربندی می شوند:
0xCE9 - TB_SignalIndex
0xCEA – TB_BitIndex
0xCEB - TB_Index آنالوگ
قبل از اینکه حالت ترکیبی را با گزینه 2 صادر کنیم، Index گذرگاه آزمایشی و بیت گذرگاه آزمایشی باید در EEPROM پیکربندی شوند.
توجه:
میزبان باید تمام فیلدها را بدون توجه به کاربرد فیلد در حالت "خام" یا "ترکیب" ارائه کند. آی سی 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 ➜ حالت خام 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
این دستورالعمل برای جابجایی چندین سیگنال گذرگاه تست دیجیتال موجود در پیکربندیهای پد انتخاب شده استفاده میشود.
توجه: اگر این طول صفر باشد، یک گذرگاه تست دیجیتال RESET می شود.
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 | RFU | ||
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 | RFU |
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 Logging را غیرفعال کنید |
1 ویژگی CTS Logging را فعال کنید |
||||
بیت 1-7 | RFU |
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 مورد نیاز مانند تریگرها، رجیسترهای گذرگاه آزمایشی و s استفاده می شود.ampپیکربندی لینگ و غیره،
توجه:
[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 بایت | حالت Acquisition مورد استفاده را مشخص می کند. |
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 بیتی به مکانیزم interleave کمک می کند که داده ها را برای انتقال به حافظه روی تراشه تولید می کند، استفاده می شود. معنی و کاربرد آنها بسته به S استAMPمقادیر LE_MODE_SEL.
توجه: مقدار داده شده همیشه با 0x0F پوشانده می شود و سپس مقدار موثر در نظر گرفته می شود. |
SAMPLE_MODE_SEL | 1 بایت | s را انتخاب می کندampحالت ling interleave همانطور که در مشخصات طراحی 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) |
RFU | 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 قطعه داده |
توجه:
حداکثر اندازه "Log Data" به "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 برای پیکربندی های مختلف پروتکل های حالت Reader و نرخ بیت استفاده می شود. هنگامی که دستورالعمل اجرا شد، توالی تست PRBS در RF در دسترس خواهد بود.
توجه:
میزبان باید مطمئن شود که پیکربندی مناسب فناوری RF با استفاده از بخش 4.5.7.1 بارگذاری شده است و RF با استفاده از دستور بخش 4.5.8.1 قبل از ارسال این دستور روشن است.
4.5.11.2.1 فرمان
جدول 91. مقدار دستور PRBS_TEST
میدان بار | طول | ارزش/توضیحات | |
prbs_type | 1 بایت | 00 | PRBS9 (پیشفرض) |
01 | PRBS15 | ||
02-FF | RFU |
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 بایتی. |
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 بایت | نسخه سخت افزاری |
RO_V | 1 بایت | کد رام |
FW_V | 2 بایت | نسخه سیستم عامل (برای دانلود استفاده می شود) |
RFU1-RFU2 | 1-2 بایت | – |
پاسخ مورد انتظار برای نسخه های مختلف آی سی PN5190 در (بخش 3.4.4) ذکر شده است.
4.5.12.2.3 رویداد
هیچ رویدادی برای این دستور وجود ندارد.
ضمیمه (مثالampلس)
این پیوست شامل موارد قبلی استamples برای دستورات ذکر شده در بالا. سابقamples فقط به منظور توضیح برای نشان دادن محتویات دستور است.
5.1 سابقampبرای WRITE_REGISTER
دنباله ای از داده های ارسال شده از میزبان برای نوشتن مقدار 0x12345678 در ثبات 0x1F.
فریم فرمان ارسال شده به PN5190: 0000051F78563412
میزبان منتظر وقفه باشد.
وقتی میزبان فریم پاسخ دریافتی از PN5190 را می خواند (نشان دهنده عملکرد موفقیت آمیز): 00000100 5.2 Exampبرای WRITE_REGISTER_OR_MASK
دنباله ای از داده های ارسال شده از میزبان برای انجام عملیات OR منطقی در ثبات 0x1F با ماسک به عنوان 0x12345678
فریم فرمان ارسال شده به PN5190: 0100051F78563412
میزبان منتظر وقفه باشد.
وقتی میزبان فریم پاسخ دریافتی از PN5190 را می خواند (نشان دهنده عملکرد موفقیت آمیز): 01000100
5.3 سابقampبرای WRITE_REGISTER_AND_MASK
دنباله ای از داده های ارسال شده از میزبان برای انجام عملیات AND منطقی در ثبات 0x1F با ماسک به عنوان 0x12345678
فریم فرمان ارسال شده به PN5190: 0200051F78563412
میزبان منتظر وقفه باشد.
وقتی میزبان فریم پاسخ دریافتی از PN5190 را می خواند (نشان دهنده عملکرد موفقیت آمیز): 02000100
5.4 سابقampبرای WRITE_REGISTER_MULTIPLE
دنباله ای از داده های ارسال شده از میزبان برای انجام عملیات AND منطقی در ثبات 0x1F با ماسک به عنوان 0x12345678 و در عملیات OR منطقی در ثبات 0x20 با ماسک به عنوان 0x11223344 و نوشتن برای ثبت 0x21 با مقدار 0xABBCCDD.
فریم فرمان ارسال شده به 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برای RETRIEVE_RF_DATA
به دنبال دنباله ای از داده های ارسال شده از میزبان برای دریافت داده های دریافتی/ذخیره شده در بافر داخلی CLIF (با فرض اینکه 0x05 دریافت شده است)، با این فرض که یک TRANSMIT_RF_DATA از قبل پس از روشن شدن RF ارسال شده است.
فریم فرمان ارسالی به PN5190: 090000
میزبان منتظر وقفه باشد.
وقتی میزبان پاسخ را می خواند، فریم دریافتی از PN5190 (نشان دهنده عملکرد موفقیت آمیز): 090003000400
5.11 سابقampبرای EXCHANGE_RF_DATA
دنباله ای از داده های ارسال شده از میزبان برای انتقال یک REQA (0x26)، با تعداد بیت ها در آخرین بایت برای ارسال به عنوان 0x07 تنظیم شده است، با تمام وضعیت باید همراه با داده ها دریافت شود. فرض بر این است که رجیسترهای RF مورد نیاز از قبل تنظیم شده اند و RF روشن است.
فریم فرمان ارسال شده به PN5190: 0A0003070F26
میزبان منتظر وقفه باشد.
وقتی میزبان پاسخ را خواند، فریم از PN5190 دریافت شد (نشان دهنده عملکرد موفقیت آمیز): 0A000 F000200000000000200000000004400
5.12 سابقampبرای LOAD_RF_CONFIGURATION
دنباله ای از داده های ارسال شده از میزبان برای تنظیم پیکربندی RF. برای TX، 0x00 و برای RX، 0x80
فریم فرمان ارسال شده به PN5190: 0D00020080
میزبان منتظر وقفه باشد.
وقتی میزبان پاسخ را می خواند، فریم دریافتی از PN5190 (نشان دهنده عملکرد موفقیت آمیز): 0D000100
5.13 سابقampبرای UPDATE_RF_CONFIGURATION
دنباله ای از داده های ارسال شده از میزبان برای به روز رسانی پیکربندی RF. برای TX، 0x00، با آدرس ثبت نام برای CLIF_CRC_TX_CONFIG و مقدار 0x00000001
فریم فرمان ارسال شده به PN5190: 0E0006001201000000
میزبان منتظر وقفه باشد.
وقتی میزبان پاسخ را خواند، فریم از PN5190 دریافت شد (نشان دهنده عملکرد موفقیت آمیز): 0E000100
5.14 سابقampبرای RF_ON
دنباله ای از داده های ارسال شده از میزبان برای روشن کردن میدان RF با استفاده از اجتناب از برخورد و بدون فعال بودن P2P. فرض بر این است که پیکربندی RF TX و RX مربوطه قبلاً در PN5190 تنظیم شده است.
فریم فرمان ارسالی به PN5190: 10000100
میزبان منتظر وقفه باشد.
وقتی میزبان پاسخ را می خواند، فریم دریافتی از PN5190 (نشان دهنده عملکرد موفقیت آمیز): 10000100
5.15 سابقampبرای RF_OFF
دنباله ای از داده های ارسال شده از میزبان برای خاموش کردن فیلد RF.
فریم فرمان ارسالی به PN5190: 110000
میزبان منتظر وقفه باشد.
وقتی میزبان پاسخ را می خواند، فریم دریافتی از PN5190 (نشان دهنده عملکرد موفقیت آمیز): 11000100
پیوست (شاخص های پیکربندی پروتکل RF)
این پیوست شامل نمایه های پیکربندی پروتکل RF است که توسط PN5190 پشتیبانی می شود.
تنظیمات پیکربندی TX و RX باید در دستورات بخش 4.5.7.1، بخش 4.5.7.2، بخش 4.5.7.3 استفاده شوند.
پیوست (سیگنال های CTS و TESTBUS)
جدول زیر سیگنال های مختلف موجود از PN5190 برای گرفتن با استفاده از دستورالعمل های CTS (بخش 4.5.10) و دستورالعمل های TESTBUS را مشخص می کند.
اینها باید برای دستور بخش 4.5.9.1، بخش 4.5.9.2، بخش 4.5.10.2 استفاده شوند.
اختصارات
جدول 97. اختصارات
اببر | معنی |
CLK | ساعت |
DWL_REQ | پین درخواست دانلود (همچنین 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 Cockpit، https://www.nxp.com/products/:NFC-COCKPIT[2] برگه داده آی سی PN5190، 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.
حق ایجاد تغییرات — NXP Semiconductors این حق را برای خود محفوظ می دارد که در هر زمان و بدون اطلاع قبلی، در اطلاعات منتشر شده در این سند، از جمله بدون محدودیت مشخصات و توضیحات محصول، تغییراتی ایجاد کند. این سند جایگزین و جایگزین تمام اطلاعات ارائه شده قبل از انتشار در اینجا می شود.
مناسب برای استفاده - محصولات نیمه هادی NXP برای استفاده در پشتیبانی از حیات، سیستم ها یا تجهیزات حیاتی یا حیاتی ایمنی، و همچنین در برنامه هایی که به طور منطقی می توان انتظار خرابی یا نقص در یک محصول نیمه هادی NXP را داشت، طراحی، مجاز یا تضمین نشده است. منجر به صدمات شخصی، مرگ یا آسیب شدید مالی یا محیطی شود. NXP Semiconductors و تامین کنندگان آن هیچ مسئولیتی در قبال گنجاندن و/یا استفاده از محصولات NXP Semiconductors در چنین تجهیزات یا برنامههایی نمیپذیرند و بنابراین چنین گنجاندن و/یا استفاده به عهده خود مشتری است.
برنامه های کاربردی - برنامه هایی که در اینجا برای هر یک از این محصولات توضیح داده شده اند، فقط برای اهداف توضیحی هستند. NXP Semiconductors هیچ گونه تضمین یا تضمینی مبنی بر مناسب بودن چنین برنامه هایی برای استفاده مشخص شده بدون آزمایش یا اصلاح بیشتر ارائه نمی دهد.
مشتریان مسئول طراحی و بهره برداری از برنامه ها و محصولات خود با استفاده از محصولات NXP Semiconductors هستند و NXP Semiconductors هیچ مسئولیتی در قبال هیچ گونه کمکی در مورد برنامه ها یا طراحی محصول مشتری نمی پذیرد. این تنها مسئولیت مشتری است که تشخیص دهد آیا محصول NXP Semiconductors برای برنامههای کاربردی مشتری و محصولات برنامهریزیشده مناسب و مناسب است یا خیر، و همچنین برای برنامهریزیشده و استفاده از مشتری (های) شخص ثالث مشتری. مشتریان باید برای به حداقل رساندن خطرات مرتبط با برنامهها و محصولات خود، طراحی و اقدامات حفاظتی مناسب را ارائه دهند.
NXP Semiconductors هیچ گونه مسئولیتی را در رابطه با هرگونه پیشفرض، آسیب، هزینه یا مشکلی که بر اساس هر گونه ضعف یا پیشفرض در برنامهها یا محصولات مشتری، یا برنامه یا استفاده توسط مشتری(های) شخص ثالث مشتری باشد، نمیپذیرد. مشتری مسئول انجام کلیه آزمایشات لازم برای برنامه ها و محصولات مشتری با استفاده از محصولات نیمه هادی NXP به منظور جلوگیری از پیش فرض برنامه ها و محصولات یا برنامه یا استفاده توسط مشتری (های) شخص ثالث مشتری است. NXP هیچ گونه مسئولیتی در این زمینه نمی پذیرد.
NXP BV - NXP BV یک شرکت عامل نیست و محصولاتی را توزیع یا نمی فروشد.
10.3 مجوزها
خرید آی سی های NXP با فناوری NFC — خرید یک آی سی نیمه هادی NXP که با یکی از استانداردهای ارتباطات میدان نزدیک (NFC) ISO/IEC 18092 و ISO/IEC 21481 مطابقت دارد، مجوز ضمنی تحت هیچ گونه حق اختراع نقض شده را منتقل نمی کند. هر یک از آن استانداردها خرید آی سی NXP Semiconductors شامل مجوزی برای هیچ حق ثبت اختراع NXP (یا سایر حق IP) نمی شود که ترکیبی از آن محصولات را با سایر محصولات، اعم از سخت افزار یا نرم افزار، پوشش دهد.
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
اسناد / منابع
![]() |
NXP PN5190 NFC Frontend Controller [pdf] دفترچه راهنمای کاربر PN5190, PN5190 NFC Frontend Controller, NFC Frontend Controller, Controller, UM11942 |