سلام

در دو پست قبلی اندکی با محیط توسعه‌ی بسیار جذاب DesignLab آشنا شدیم (بخش اول، بخش دوم).

در این پست قصد داریم با انجام یک پروژه‌ی دیگر، با بخش دیگری از قابلیت‌های این محیط آشنا شویم. در این پروژه که با استفاده از برد پازج-۱ و مگاوینگ LogiX1 انجام میشود، با نحوه‌ی استفاده از IP-Core های Seven Segment و HQVGA جهت راه اندازی و تست اینترفیس‌های سون-سگمنت و VGA روی برد مگاوینگ LogiX1 آشنا خواهیم شد.

 گام اول: دانلود و نصب جدیدترین نسخه‌ی patch پازج برای DesignLab

در ابتدا لازم است جدیدترین نسخه‌ی patch پازج برای محیط توسعه‌ی DesignLab را از لینک مقابل دانلود و مطابق توضیحات ارائه شده در پست قبلی نصب کنید. اگر به تازگی این کار را انجام داده‌اید و از به روز بودن patch خود اطمینان دارید نیازی به تکرار مجدد آن کار نیست.

گام دوم: اتصال برد، انتخاب برد و شماره پورت سریال

در این مرحله نیز ابتدا برد پازج-۱ مجهز به مگاوینگ LogiX1 را به کامپیوتر خود متصل نموده و سپس مطابق توضیحات ارائه شده در پست قبلی، با اجرای نرم‌افزار DesignLab، نوع برد (posedge_one) و شماره پورت سریال مربوط به برد را انتخاب کنید.

گام سوم: انتخاب پروژه

اکنون با رفتن به منوی File -> Examples -> posedge_one -> Logix1_Megawing -> posedge_one پروژه‌ی MegaWing_Logix1_Verification را انتخاب نمایید.

انتخاب پروژه از لیست پروژه‌های نمونه

با انجام این کار پروژه‌ی مذکور در پنجره‌ی جدیدی باز می‌شود.

گام چهارم: اصلاح کد متناسب با نسخه‌ی مگاوینگ (صرفا برای نسخه‌ی ۱.۱ مگاوینگ)

در پنجره‌ی جدید، کد نرم‌افزاری (Sketch) پروژه‌ را مشاهده می‌کنید که با عبارت

#define circuit Logix1_Megawing_1.1

شروع شده است. در صورتی که مگاوینگ شما نسخه‌ی ۱.۱ است، این خط را uncomment کنید (با حذف “//” در ابتدای خط) و به جای آن عبارت

#define circuit Logix1_MegaWing_1.2

که چند خط پایین‌تر قرار دارد را به حالت comment تبدیل کنید (با اضافه کردن “//” در ابتدای خط).

در صورتی که نسخه‌ی مگاوینگ شما ۱.۲ می‌باشد، نیازی به انجام تغییر فوق ندارید.

گام چهارم: Load circuit

اکنون آماده‌ایم تا بخش سخت‌افزاری پروژه را بر روی FPGA بارگذاری نمائیم. قبل از انجام این کار اجازه دهید با کلیک بر روی آیکن  در نوار ابزار بالای نرم‌افزار، شماتیک طرح سخت‌افزاری مورد استفاده در این پروژه را بررسی کنیم. با انجام این کار یک فایل pdf بصورت اتوماتیک باز خواهد شد که حاوی شماتیک مربوط به top_module سخت‌افزار مورد استفاده در این پروژه است که در ادبیات DesignLab به آن Circuit گفته می‌شود.

شماتیک بخش سخت‌افزاری (circuit) پروژه

همانطور که ملاحظه می‌کنید، Circuit این پروژه متشکل از یک هسته‌ی ZPUino به عنوان بخش مرکزی و پریفرال‌های Seven-segment (متصل به اسلات wishbone شماره ۱۱)،  HQVGA (متصل به اسلات wishbone شماره ۹) و VGA_char_map (متصل به اسلات wishbone شماره‌ی ۱۰) می‌باشد. با این توضیح مختصر به سراغ ادامه‌ی کار می‌رویم.

با کلیک بر روی آیکن Load Circuit در نوار ابزار بالا، فایل فایل .bit مربوط به آن (که از قبل سنتز شده و در پوشه‌ی پروژه قرار گرفته است) بر روی حافظه‌ی Flash موجود روی برد پازج-۱ بارگذاری میشود و چراغ آبی رنگ روی برد یک بار خاموش و روشن میشود.

مرحله پنجم: پروگرام کردن (Upload Sketch)

اکنون کافی است با کلیک بر روی آیکن Upload از نوار ابزار بالای DesignLab، منتظر بمانید تا کد نرم‌افزاری (یا همان Sketch در ادبیات آردوینو) روی برد پروگرام شود.

مرحله ششم: نتیجه را ببینید!

با توجه به کد Sketch این پروژه، انتظار داریم مقدار باینری تنظیم شده روی دیپ سوئیچ‌های مگاوینگ، عینا بر روی LED ها نمایش داده شود. این کار را با تغییر مقدار دیپ سوئیچ بیازمایید. همچنین انتظار داریم با فشردن هر یک از چهار سوئیچ S1 تا S4، مقدار دیپ سوئیچ به ترتیب روی رقم‌های اول تا چهارم سون سگمنت نمایش داده شود. همچنین با اتصال پورت VGA مگاوینگ به مانیتور خود، عبارت Hello Word را در چندین رنگ مختلف به نمایش درمی‌آید. با تغییر مختصری در Sketch، به جای Hello Word میتوانید با یک تبریک بهارانه به خودتان این پروژه‌ی لذت بخش را به پایان ببرید!

یک تبریک پازجی در خروجی VGA!

پیشنهاد می‌کنم شما نیز یک بار بطور کامل این پروژه را روی برد خود اجرا کنید و در پایان پیام دلخواه اختصاصی خودتان را روی خروجی VGA قرار دهید و تصویر آن را در قسمت نظرات همین مطلب یا گروه تلگرامی پازج به اشتراک بگذارید تا دیگران نیز در این تجربه‌ی جذاب با شما شریک شوند.

ویدئوی اجرای گام به گام پروژه

در آموزش ویدئویی زیر، می‌توانید کلیه‌ی مراحل انجام این پروژه را به طور کامل و با جزئیات دقیق‌تر، ملاحظه نمایید. مدرس این ویدئو آقای مهندس مهدی چنگانی از اعضای تیم پازج هستند.

 

امیدوارم این آموزش مورد توجه شما قرار گرفته باشد. در صورتی که از این مطلب خوشتان آمده، خواهش می‌کنم از طریق ابزارک شبکه‌های اجتماعی در پایین همین پست، آن را در شبکه‌های اجتماعی با دوستانتان به اشتراک بگذارید.