پارس‌کدرز چگونه کار می‌کند؟

از پارس‌کدرز بیشترین بهره را ببرید و رویای کاری خود را زندگی کنید.

پارس‌کدرز خریداران یا کارفرمایان را به مجری‌ها /فریلنسرهای خبره‌ای متصل می‌کند که برای انجام پروژه آماده هستند.

پروژه میکروپروسسور/ میکرو کنترلر - 101787

یک ماه پیش منتشر شده

تعداد بازدید: 89

کد پروژه: 582412


شرح پروژه

درود

پروژه ریز پردازنده دارم

🧠 ۱. مفهوم کلی پروژه

بازی Simon یک بازی حافظه‌ای است که دستگاه یک دنباله‌ای از صداها و چراغ‌ها را پخش می‌کند و بازیکن باید همان دنباله را تکرار کند.

با هر مرحله جدید، طول دنباله یک مرحله بیشتر می‌شود و بازی سخت‌تر می‌شود.

روی برد QUTy:

 • چهار دکمه‌ی فشاری (S1 تا S4) نقش چهار دکمه رنگی Simon را دارند.

 • هر دکمه با بخش خاصی از نمایشگر ۷Segment و یک فرکانس صدا مرتبط است.

🕹 ۲. عملکرد اصلی بازی (Gameplay)

 • وقتی برد ریست می‌شود یا بازی شروع می‌شود، طول دنباله برابر ۱ است.

 • Simon یک دنباله از صدا و نور پخش می‌کند. (هر مرحله یک قدم اضافه‌تر نسبت به مرحله قبل دارد.)

 • بازیکن باید همان دنباله را با فشار دادن دکمه‌های S1 تا S4 تکرار کند.

 • اگر بازیکن درست بزند:

 • الگوی موفقیت (SUCCESS) نمایش داده می‌شود.

 • طول دنباله +۱ می‌شود و مرحله بعد شروع می‌شود.

 • اگر بازیکن اشتباه بزند:

 • الگوی خطا (FAIL) نمایش داده می‌شود.

 • امتیاز (score) بازیکن نمایش داده می‌شود.

 • بازی از ابتدا شروع می‌شود.

 • امتیاز همان طول دنباله در لحظه خطا است. مثلاً اگر در مرحله ۵ اشتباه کند، امتیاز ۵ است.

📟 نمایشگر:

 • امتیاز از ۱ تا ۹۹ نشان داده می‌شود.

 • SUCCESS یعنی همه ۷ بخش هر دو ۷Segment روشن شود.

 • FAIL یعنی فقط بخش G روشن شود.

🔢 ۳. تولید دنباله (Sequence Generation)

 • دنباله با استفاده از یک LFSR (Linear Feedback Shift Register) و ماسک 0xE2025CAB تولید می‌شود.

 • seed اولیه این LFSR باید شماره دانشجویی شما باشد (به صورت Hex).

 • مثال: n11936819 → 0x11936819

 • برای هر مرحله:

 • با استفاده از الگوریتم مشخص، یک STEP بین ۰ تا ۳ ساخته می‌شود.

 • STEP=0 → دکمه S1 (E(high))

STEP=1 → S2 (C♯)

STEP=2 → S3 (A)

STEP=3 → S4 (E(low))

❌ نکته:

ذخیره کردن کل دنباله در آرایه ممنوع است. شما باید با تابع next() مقدار بعدی را در لحظه تولید کنید.

⏳ ۴. تاخیر پخش (Playback Delay)

 • زمان بین هر مرحله توسط پتانسیومتر تعیین می‌شود.

 • بازه زمانی بین ۰٫۲۵ تا ۲ ثانیه است.

 • با چرخاندن پتانسیومتر، بازی سریع‌تر یا کندتر می‌شود.

 • این مقدار باید هر بار در ابتدای پخش صدا محاسبه شود.

🎧 ۵. فرکانس صداها (Playback Frequency)

 • ۴ صدای مختلف از روی ۲ رقم آخر شماره دانشجویی محاسبه می‌شوند.

 • فرمول‌ها در جدول داده شده‌اند (در فایل).

 • مثال: اگر xy = 40 باشد:

 • E(high) = 330 Hz

 • C♯ = 277 Hz

 • A = 440 Hz

 • E(low) = 165 Hz

 • با ارسال دستورات UART می‌توان فرکانس‌ها را یک اکتاو بالا یا پایین برد:

 • INC FREQ (زیاد کردن)

 • DEC FREQ (کم کردن

)

 • اگر امتیاز بازیکن بین ۵ امتیاز برتر بود:

 • از او خواسته می‌شود نام خود را وارد کند.

 • این اطلاعات در حافظه SRAM ذخیره می‌شود (بعد از RESET پاک می‌شود).

 • نام بازیکن حداکثر ۲۰ کاراکتر است.

 • جدول امتیاز باید مرتب‌شده ارسال شود

Alice 20

Bob 18

David 9

Charlie 9

م

 • استفاده از bit banging ممنوع است.

 • نباید از کتابخانه‌های آماده QUTy I/O یا QUTy Serial استفاده کنید.

 • در نسخه نهایی هیچ متن Debug نباید چاپ شود.

 • همه ارتباط‌ها باید طبق مشخصات بخش UART باشد.

 • زمان تحویل: 11:59 شب - 24 اکتبر

📦 ۹. خروجی و تحویل

 • تنها چیزی که باید تحویل دهید:

 • کد منبع (Source Code) روی Gradescope

 • کل پروژه ۳۰٪ نمره کل درس است.

✅ جمع‌بندی کاری که باید انجام دهید:

 1. راه‌اندازی دکمه‌ها، ۷Segment و buzzer روی برد QUTy

 2. پیاده‌سازی الگوریتم تولید دنباله با LFSR و seed شماره دانشجویی

 3. پخش صدا و نمایش LED برای هر مرحله

 4. دریافت ورودی بازیکن و بررسی صحت دنباله

 5. مدیریت SUCCESS و FAIL

 6. کنترل تاخیر با پتانسیومتر

 7. محاسبه فرکانس‌ها بر اساس شماره دانشجویی

 8. (اختیاری برای نمره بیشتر) اضافه کردن کنترل UART و جدول امتیازا

عرضم به حضورتون که:

پروژه

microprocessors , microcontrollers 

هست

تسک های هفتگی هست که هرکدوم بخشی از این پروژه هست که حل شده بیشترش 

و خدمتتون ارسال میشه( جزو این پروژه نیست ولی کمک کننده هست)

بعد گرید اسکوپ هست که کد رو شما به اون میدید و  همونجا نتیجه رو خدمتتون میگه که چقدرش درسته یا نه

یعنی اتمام کار اونجا مشخص هست

رمز و پسوردش در اختیارتون قرار میگیره

و اینکه فرصت  محدوده

 تا  ۲ ابان ۱ بعد   از ظهر وقت هست

که اگه مایل باشه کسی تا  دو روز وقت اضافه هم میشه اضافه کرد

یعنی یکشنبه ساعت ۲ با هماهنگی قبلی  

 بیشترم بخوان باید صحبت کنیم

هزینه هم پیشنهادی خودشون

ولی به کارشون مطئن باشند و وقت شناس

سپاس

این پروژه شامل 1 فایل مهم است، لطفا قبل از ارسال پیشنهاد حتما نسبت به بررسی این فایل اقدام فرمایید.

مهارت ها و تخصص های مورد نیاز


مهلت برای انجام

7روز

وضعیت مناقصه

بسته


درباره کارفرما

عضویت سه سال پیش

22010 پروژه ثبت شده ،
17 پروژه در حال انجام ،
146 پروژه آماده دریافت پیشنهاد ،
نرخ پذیرش پیشنهاد 15%

برای پیدا کردن پروژه‌های مشابه ثبت نام کنید و پروفایل خود را بسازید.

ورود با گوگل
یا
نام نباید خالی باشد.
نام خانوادگی نباید خالی باشد.

نیاز به استخدام فریلنسر یا سفارش پروژه مشابه دارید؟

سفارش پروژه مشابه

نیاز به استخدام فریلنسر یا سفارش پروژه مشابه دارید؟

سفارش پروژه مشابه

قادر به انجام این پروژه هستید؟

ثبت نام کنید

متأسفانه مهلت ارسال پیشنهاد این پروژه به پایان رسیده و پروژه بسته شده است؛ اما فرصت‌های متعددی در سایت موجود می‌باشد.

سری به پروژه‌های مشابه بزنید

روش کار در پارس‌کدرز

به رایگان یک حساب کاربری بسازید

مهارت‌ها و تخصص‌های خود را ثبت کنید، رزومه و نمونه‌کارهای خود را نشان دهید و سوابق کاری خود را شرح دهید.

به شیوه‌ای که دوست دارید کار کنید

برای پروژه‌های دلخواه در زمان دلخواه پیشنهاد قیمت خود را ثبت کنید و به فرصت‌های شغلی منحصر به فرد دسترسی پیدا کنید.

با اطمینان دستمزد دریافت کنید

از زمان شروع کار تا انتهای کار به امنیت مالی شما کمک خواهیم کرد. وجه پروژه را از ابتدای کار به امانت در سایت نگه خواهیم داشت تا تضمین شودکه بعد از تحویل کار دستمزد شما پرداخت خواهد شد.

می‌خواهید شروع به کار کنید؟

یک حساب کاربری بسازید


بهترین مشاغل فریلنسری را پیدا کنید
رشد شغلی شما به راحتی ایجاد یک حساب کاربری رایگان و یافتن کار (پروژه) متناسب با مهارت‌های شما است.

پیدا کردن کار (پروژه)

تماشای دمو روش کار