در جلسه قبل با نحوه دانلود کتابخانه RC522 و افزودن آن به نرم افزار Arduino آشنا شدیم و یکی از مثال های آن کتابخانه را اجرا کردیم در این جلسه قصد داریم تا برنامه آنرا بصورت خط به خط توضیح دهیم.
افزودن کتابخانه راه اندازی SPI به برنامه
افزودن کتابخانه مربوط به ماژول RC522
پیکربندی پایه های SS و RST مربوط به ماژول RC522 و نحوه اتصال آن به پایه های ESP32
متغیر های مربوط به رمز بلوک و مقدار UID تعریف می شوند و پس از آن به تابع setup می رسیم که در ابتدا واحد سریال با باودریت مورد نظر مشخص می شود و پس از آن واحد SPI پیکربندی و شروع به کار می کند و پس از آن RC522 پیکربندی می شود. در ادامه به یک حلقه for می رسیم که آرایه مربوط به رمز بلوک را با مقدار 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF مقدار دهی می کند این رمز، رمز پیشفرض بلوک ها می باشد. در انتها متن های مورد نظر جهت افزایش اطلاعات چاپ می شوند.
بعد از تابع setup به loop می رسیم که در این قسمت برخی توابع مدام در حال اجرا می باشند که در ابتدای آن بررسی می کند که آیا کارت مایفر جدیدی در محدوده آنتن ماژول قرار گرفته است یا خیر و همچنین شماره سریال کارت را می خواند.
در صورتیکه کارتی در محدوده آنتن ماژول قرار گیرد نوع کارت مایفر شناسایی و نمایش داده می شود و پس از آن بررسی می کند که اگر کارت جزو کارت های مشخص شده نباشد عبارتی نمایش داده می شود که مشخص می کند کارت جزو کارت های مایفر کلاسیک نمی باشد.
در صورتیکه که اطلاعات UID تگ خوانده شده با اطلاعات آرایه nuidPICC نا مساوی باشد به این معناست که این کارت جدید بر روی ماژول قرار گرفته و عبارت "A new card has been detected" چاپ می شود و پس از آن اطلاعات مربوط به UID این کارت در متغیر nuidPICC ذخیره می شود.
در ادامه شرط اطلاعات مربوط به UID تگ با فرمت هگزا و هگزا دسیمال در سریال پورت نمایش داده می شود.
در صورتیکه که کارت را از محدوده آنتن دور کنیم و مجدد به محدوده آنتن ماژول نزدیک با توجه به اینکه اطلاعات مربوط به UID در آرایه nuidPICC قرار دارد عبارت "Card read previously" در سریال مانیتور نمایش داده می شود.
این تابع اطلاعات مربوط به UID کارت را با فرمت هگز نمایش می دهد.
این تابع اطلاعات مربوط به UID را با فرمت دسیمال نمایش می دهد.
نحوه نمایش اطلاعات در سریال پورت مربوط به پروژه بالا می باشد که در ابتدا کارت مورد نظر روی ماژول قرار گرفته و اطلاعات مربوط به UID آن با دو فرمت هگز و دسیمال نمایش داده شده است و در ادامه با خارج نمودن کارت از محدوده ماژول و نزدیک کردن مجدد آن به ماژول عبارتی به معنی این کارت قبلا خوانده شده است در خروجی نمایش داده می شود.
در انتها تصویر مربوط به سیم بندی این پروژه قابل مشاهده می باشد.
جهت دانلود برنامه و فایل شماتیک بر روی لینک های زیر کلیک نمایید:
شادیتان مستدام، سلامتیتان پایدار
محمد هادی دشتی
برای مشاهده آموزش جلسه اول آموزش گام به گام ماژول ESP32(معرفی ماژول ESP32 ) کلیک کنید.
برای مشاهده آموزش جلسه دوم آموزش گام به گام ماژول ESP32(معرفینرم افزار Arduino ) کلیک کنید.
برای مشاهده آموزش جلسه سوم آموزش گام به گام ماژول ESP32(نحوه پروگرام کردن یک برنامه ساده) کلیک کنید.
برای مشاهده آموزش جلسه چهارم آموزش گام به گام ماژول ESP32(برنامه ال ای دی چشمک زن ) کلیک کنید.
برای مشاهده آموزش جلسه پنجم آموزش گام به گام ماژول ESP32(راه اندازی کلید(ورودی) ) کلیک کنید.
برای مشاهده آموزش جلسه ششم آموزش گام به گام ماژول ESP32(راه اندازی ADC) کلیک کنید.
برای مشاهده آموزش جلسه هفتم آموزش گام به گام ماژول ESP32(راه اندازی DAC ) کلیک کنید.
برای مشاهده آموزش جلسه هشتم آموزش گام به گام ماژول ESP32(راه اندازی PWM) کلیک کنید.
برای مشاهده آموزش جلسه نهم آموزش گام به گام ماژول ESP32(راه اندازی WiFi بصورت Client) کلیک کنید.
برای مشاهده آموزش جلسه دهم آموزش گام به گام ماژول ESP32(راه اندازی WiFi بصورت Server) کلیک کنید.
برای مشاهده آموزش جلسه یازدهم آموزش گام به گام ماژول ESP32(راه اندازیال سی دی کاراکتری) کلیک کنید.
برای مشاهده آموزش جلسه دوازدهم آموزش گام به گام ماژول ESP32(راه اندازی DS1307 (بخش اول)) کلیک کنید.
برای مشاهده آموزش جلسه سیزدهم آموزش گام به گام ماژول ESP32(راه اندازی DS1307 (بخش دوم)) کلیک کنید.
برای مشاهده آموزش جلسه چهاردهم آموزش گام به گام ماژول ESP32(راه اندازی ماژول RC522 (بخش اول)) کلیک کنید.