بسته ST UM2766 X-LINUX-NFC5 برای توسعه خواننده NFC/RFID
مقدمه
این بسته توسعه نرم افزار STM32 MPU OpenSTLinux نشان می دهد که چگونه می توانید ارتباطات NFC/RF را برای یک سیستم لینوکس استاندارد با استفاده از کتابخانه انتزاعی فرکانس رادیویی ما (RFAL) توسعه دهید. درایور رابط مشترک RFAL تضمین می کند که عملکرد کاربر و نرم افزار کاربردی با هر آی سی خواننده ST25R NFC/RFID سازگار است.
بسته X-LINUX-NFC5 RFAL را روی کیت Discovery با ریزپردازنده سری STM32MP1 که لینوکس را اجرا می کند، برای راه اندازی یک قسمت جلویی NFC ST25R3911B بر روی برد توسعه STM32 Nucleo، منتقل می کند. بسته شامل به عنوانampنرم افزار le برای کمک به شما در درک تشخیص انواع مختلف NFC tags و تلفن های همراهی که از P2P پشتیبانی می کنند.
کد منبع برای قابلیت حمل در طیف وسیعی از واحدهای پردازشی در حال اجرا لینوکس طراحی شده است و از تمام لایه های پایین تر و برخی از پروتکل های لایه بالاتر IC های ST25R برای ارتباطات انتزاعی RF پشتیبانی می کند.
کتابخانه انتزاعی فرکانس رادیویی برای لینوکس
RFAL |
پروتکل ها | ISO DEP | NFC DEP | ||||
فن آوری ها | NFC-A | NFC-B | NFC-F | NFC-V | T1T |
ST25TB |
|
HAL |
RF | ||||||
تنظیمات RF |
|||||||
ST25R3911B |
X-LINUX-NFC5 Overview
ویژگی های اصلی
بسته توسعه نرم افزار X-LINUX-NFC5 شامل ویژگی های زیر است:
- درایور فضای کاربر لینوکس (لایه انتزاعی RF) را برای ساخت برنامههای دارای NFC با استفاده از قسمتهای جلویی ST25R3911B/ST25R391x NFC با حداکثر توان خروجی 1.4 وات تکمیل کنید.
- ارتباط میزبان لینوکس با ST25R3911B/ST25R391x از طریق رابط SPI با سرعت بالا.
- انتزاع کامل RF/NFC (RFAL) برای تمام فناوریهای اصلی و پروتکلهای لایه بالاتر:
- NFC-A (ISO14443-A)
- NFC-B (ISO14443-B)
- NFC-F (FeliCa)
- NFC-V (ISO15693)
- P2P (ISO18092)
- ISO-DEP (پروتکل تبادل اطلاعات ISO، ISO14443-4)
- NFC-DEP (پروتکل تبادل داده NFC، ISO18092)
- فناوری های اختصاصی (Kovio، B'، iClass، Calypso و غیره)
- Sampپیادهسازی با برد توسعه X-NUCLEO-NFC05A1 متصل به STM32MP157F-DK2 در دسترس است
- Sampبرنامه ای برای شناسایی چندین NFC tags انواع
معماری پکیج
بسته نرم افزاری بر روی هسته A7 سری STM32MP1 اجرا می شود. X-LINUX-NFC5 با کتابخانه های لایه های پایین تر و خطوط SPI که توسط چارچوب نرم افزار لینوکس در معرض دید قرار گرفته اند، تعامل دارد.
معماری کاربردی X-LINUX-NFC5 در محیط لینوکس
راه اندازی سخت افزار
مورد نیاز سخت افزار:
- رایانه شخصی/ماشین مجازی مبتنی بر اوبونتو نسخه 16.04 یا بالاتر
- برد STM32MP157F-DK2 (کیت دیسکاوری)
- X-NUCLEO-NFC05A1
- کارت micro SD 8 گیگابایتی برای بوت شدن STM32MP157F-DK2
- کارت خوان SD / اتصال LAN
- کابل USB Type-A به Type-micro B USB
- کابل USB نوع A به نوع C
- منبع تغذیه 5 ولت 3 آمپر سازگار با USB PD
رایانه شخصی/ماشین مجازی پلتفرم توسعه متقابل را برای ساخت کتابخانه RFAL و کد برنامه برای شناسایی و برقراری ارتباط با دستگاه های NFC از طریق آی سی ST25R3911B تشکیل می دهد.
نحوه اتصال سخت افزار
مرحله 1. برد توسعه X-NUCLEO-NFC05A1 را به کانکتورهای آردوینو در سمت پایین برد اکتشاف STM32MP157F-DK2 وصل کنید.
کانکتورهای برد Nucleo و Discovery board Arduino
- برد توسعه X-NUCLEO-NFC05A1
- برد کشف STM32MP157F-DK2
- کانکتورهای آردوینو
مرحله 2. برنامه نویس/اشکال زدای ST-LINK تعبیه شده روی برد اکتشافی را از طریق درگاه USB micro B نوع (CN11) به کامپیوتر میزبان خود وصل کنید.
مرحله 3. برد کشف را از طریق درگاه USB نوع C (CN6) روشن کنید.
راه اندازی اتصال کامل سخت افزار
لینک های مرتبط
برای اطلاعات بیشتر در مورد منبع تغذیه و پورت های ارتباطی به این ویکی مراجعه کنید
راه اندازی نرم افزار
قبل از شروع، کیت STM32MP157F-DK2 Discovery را از طریق منبع تغذیه 5 V، 3 A سازگار با USB PD روشن کنید و بسته شروع را طبق دستورالعملهای ویکی شروع به کار نصب کنید. برای فلش کردن تصاویر قابل بوت به حداقل 2 گیگابایت کارت microSD نیاز دارید.
برای اجرای برنامه، پیکربندی پلتفرم باید با بهروزرسانی درخت دستگاه بهروزرسانی شود تا تجهیزات جانبی مربوطه فعال شود. شما می توانید این کار را به سرعت با استفاده از تصاویر از پیش ساخته شده در دسترس انجام دهید، یا می توانید درخت دستگاه را توسعه دهید و تصاویر هسته خود را بسازید.
همچنین می توانید (به صورت اختیاری) این بسته نرم افزاری را با قرار دادن لایه Yocto (meta-nfc5) در بسته توزیع ST بسازید. این عملیات کد منبع را ایجاد می کند و شامل تغییرات درخت دستگاه به همراه باینری های کامپایل شده در تصاویر قابل فلش نهایی می شود. برای جزئیات مراحل توصیف فرآیند، بخش 3.5 را ببینید.
میتوانید از طریق رایانه میزبان از طریق شبکه TCP/IP با استفاده از دستورات ssh و scp یا از طریق پیوندهای سریال UART یا USB با استفاده از ابزارهایی مانند minicom برای لینوکس یا Tera Term برای Windows، به کیت Discovery متصل شوید.
مراحل ارزیابی سریع نرم افزار
- مرحله 01: بسته شروع را روی کارت SD فلش کنید.
- مرحله 02: برد را با Starter Package بوت کنید.
- مرحله 03: اتصال اینترنت را روی برد از طریق اترنت یا Wi-Fi فعال کنید. برای راهنمایی به صفحات ویکی مربوطه مراجعه کنید.
- مرحله 04: تصاویر از پیش ساخته شده را از X-LINUX-NFC5 دانلود کنید web صفحه در ST webسایت
- مرحله 05: از دستورات زیر برای کپی کردن حباب درخت دستگاه و به روز رسانی پیکربندی پلت فرم جدید استفاده کنید:
اگر اتصال شبکه در دسترس نیست، می توانید آن را انتقال دهید fileبا استفاده از Tera Term به صورت محلی از رایانه ویندوزی خود به کیت Discovery بروید.
برای جزئیات بیشتر در مورد انتقال داده ها fileبا استفاده از Tera Term.
- مرحله 06: پس از بوت شدن برد، باینری برنامه و lib مشترک را در برد کشف کپی کنید.
پس از اجرای این دستورات برنامه شروع به اجرا می کند.
نحوه به روز رسانی پیکربندی پلتفرم در بسته توسعه دهنده
مراحل زیر به شما امکان می دهد محیط توسعه را راه اندازی کنید.
- مرحله 01: بسته توسعه دهنده را دانلود کنید و SDK را در ساختار پوشه پیش فرض در دستگاه اوبونتو خود نصب کنید.
می توانید دستورالعمل ها را در اینجا بیابید: SDK را نصب کنید - مرحله 02: درخت دستگاه را باز کنید file 'stm32mp157f-dk2.dts' در کد منبع بسته برنامهنویس و قطعه کد زیر را به file:
این درخت دستگاه را به روز می کند تا رابط درایور SPI4 را فعال و پیکربندی کند.
- مرحله 03: بسته Developer را برای دریافت stm32mp157f-dk2.dtb کامپایل کنید file.
نحوه ساخت کد برنامه RFAL Linux
قبل از شروع، SDK باید دانلود، نصب و فعال شود. برنامه را از لینک: X-LINUX-NFC5 دانلود کنید
- مرحله 1. برای کامپایل کردن کد، دستورات زیر را اجرا کنید:
این دستورات زیر را می سازند files:- سابقampبرنامه کاربردی: nfc_poller_st25r3911
- lib مشترک برای اجرای سابقampبرنامه کاربردی: librfal_st25r3911.so
نحوه اجرای برنامه لینوکس RFAL در STM32MP157F-DK2
- مرحله 01: باینری های تولید شده را با استفاده از دستورات زیر در کیت Discovery کپی کنید
- مرحله 02: ترمینال را روی برد Discovery Kit باز کنید یا از ssh login استفاده کنید و برنامه را با استفاده از دستورات زیر اجرا کنید.
کاربر پیام زیر را روی صفحه نمایش می بیند:
- مرحله 03: هنگامی که NFC tag نزدیک گیرنده NFC، UID و NFC قرار می گیرد tag نوع روی صفحه نمایش داده می شود.
کیت Discovery در حال اجرای برنامه nfcPoller
نحوه گنجاندن لایه Meta-nfc5 در بسته توزیع
- مرحله 01: بسته توزیع را در دستگاه لینوکس خود دانلود و کامپایل کنید.
- مرحله 02: ساختار دایرکتوری پیشفرض پیشنهاد شده توسط صفحه ST ویکی را دنبال کنید تا این سند را به طور همزمان دنبال کنید.
- مرحله 03: بسته برنامه X-LINUX-NFC5 را دانلود کنید:
- مرحله 04: پیکربندی ساخت را تنظیم کنید.
- مرحله 05: لایه meta-nfc5 را به پیکربندی ساخت پیکربندی بسته توزیع اضافه کنید.
- مرحله 06: پیکربندی را برای افزودن اجزای جدید به تصویر خود به روز کنید.
- مرحله 07: لایه خود را جداگانه بسازید و سپس لایه توزیع کامل را بسازید.
توجه: ساختن صفحه توزیع برای اولین بار ممکن است چندین ساعت طول بکشد. با این حال، ساخت لایه meta-nfc5 و نصب فایل های اجرایی در تصاویر نهایی تنها چند دقیقه طول می کشد. پس از تکمیل ساخت، تصاویر در دایرکتوری زیر وجود دارند: build- - /tmp-glibc/deploy/images/stm32mp1.
- مرحله 08: دستورالعمل های صفحه ST ویکی را دنبال کنید: تصویر ساخته شده را فلش کنید تا تصاویر ساخته شده جدید را روی صفحه فلش کنید.
کیت کشف - مرحله 09: برنامه را همانطور که در مرحله 2 از بخش 3.4 ذکر شد اجرا کنید.
نحوه انتقال Files استفاده از Tera Term
می توانید از یک برنامه شبیه ساز ترمینال ویندوز مانند Tera Term برای انتقال استفاده کنید fileاز رایانه شخصی خود به کیت Discovery برسید.
- مرحله 01: برق USB را به کیت Discovery تامین کنید.
- مرحله 02: کیت Discovery را از طریق کانکتور USB micro B (CN11) به رایانه شخصی خود وصل کنید.
- مرحله 03: شماره پورت COM مجازی را در مدیر دستگاه بررسی کنید.
در تصویر زیر، شماره پورت COM 14 است.
اسکرین شات از مدیر دستگاه در حال نمایش پورت کام مجازی
- مرحله 04: Tera Term را روی رایانه شخصی خود باز کنید و پورت COM شناسایی شده در مرحله قبل را انتخاب کنید. نرخ باود باید 115200 باد باشد.
عکس فوری از ترمینال راه دور از طریق Tera Term
- مرحله 05: برای انتقال یک file از کامپیوتر میزبان به کیت دیسکاوری، [File]>[انتقال]>[ZMODEM]>[ارسال] در گوشه سمت چپ بالای پنجره Tera Term.
ترم ترا File منوی انتقال
- مرحله 06: انتخاب کنید file برای انتقال در file مرورگر را انتخاب کنید و [Open] را انتخاب کنید.
File پنجره مرورگر برای ارسال Files
.
- مرحله 07: نوار پیشرفت وضعیت را نشان می دهد file منتقل کردن.
File نوار پیشرفت انتقال
تاریخچه تجدید نظر
تاریخچه ویرایش سند
تاریخ |
نسخه |
تغییرات |
30 اکتبر 2020 |
1 |
انتشار اولیه |
15-ژوئیه-2021 |
2 |
به روز شد بخش 1.1 ویژگی های اصلی, بخش 2 راه اندازی سخت افزار, بخش 2.1 چگونه سخت افزار را وصل کنید, بخش 3 راه اندازی نرم افزار, بخش 3.1 مراحل ارزیابی سریع نرم افزار, بخش 3.2 نحوه به روز رسانی پیکربندی پلت فرم در بسته توسعه دهنده و بخش 3.3 نحوه ساخت کد برنامه لینوکس RFAL.
اضافه شد بخش 3.5 نحوه گنجاندن لایه meta-nfc5 در بسته توزیع. اطلاعات سازگاری کیت کشف STM32MP157F-DK2 اضافه شد. |
اسناد / منابع
![]() |
بسته ST UM2766 X-LINUX-NFC5 برای توسعه خواننده NFC/RFID [pdf] دفترچه راهنمای کاربر UM2766، بسته X-LINUX-NFC5 برای توسعه خواننده NFC-RFID، در حال توسعه خواننده NFC-RFID، خواننده NFC-RFID، بسته X-LINUX-NFC5، X-LINUX-NFC5 |