ورکشاپ آموزشی - آیسی مدار
رفتن به محتوا

مینی کامپیوتر خانگی واقعی با پردازنده Z80-MBC2

ابزار و گجت
۰ نظر
۷۲ نفر
کد ۴۶۰۴

خیلی وقت‌ها فکر می‌کنیم ساختن یک کامپیوتر واقعی کار غیرممکنیه و فقط از پس شرکت‌های بزرگ برمیاد، اما اصلا این‌طور نیست. تو این پروژه قراره با هم یک کامپیوتر کلاسیک و واقعی بسازیم که قابلیت‌های جالبی داره و حسابی مهارت‌های الکترونیکت رو به چالش می‌کشه. این مینی کامپیوتر که به اسم Z80-MBC2 شناخته می‌شه، یه برد جمع‌وجوره که با پردازنده‌های قدیمی و قدرتمند کار می‌کنه و می‌تونی سیستم‌عامل‌های کلاسیک رو روش اجرا کنی.

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

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

  • پردازنده Z80 مدل CMOS (Z84C00) با فرکانس 8 مگاهرتز یا بیشتر
  • میکروکنترلر Atmega32A
  • آیسی رم 128 کیلوبایت (TC551001-70)
  • آیسی گیت منطقی 74HC00
مرحله ۱

اولین قدم: تهیه قطعات و برد مدار چاپی

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

برای برد مدار چاپی (PCB) هم می‌تونی فایل‌های طراحی رو به شرکت‌های چاپ برد بفرستی تا برات با کیفیت بالا تولید کنن. این‌طوری نتیجه نهایی خیلی تمیزتر و حرفه‌ای‌تر درمیاد و کار مونتاژ هم راحت‌تر می‌شه.

مرحله ۲

ماژول‌های جانبی که باید روی میزت باشه

حالا که قطعات اصلی رو آماده کردی، به چند تا ماژول کاربردی هم نیاز داری تا سیستم کامل بشه. این ماژول‌ها رو می‌تونی تو تصاویر همین مرحله ببینی:

  • مبدل USB به سریال
  • ماژول کارت حافظه microSD
  • ماژول ساعت زمان واقعی DS3231 (اختیاری)
  • پروگرامر USBasp (برای فلش کردن بوت‌لودر آردوینو روی Atmega32a)
  • مبدل 10 پین به 6 پین AVR (اختیاری)
مرحله ۳

بریم سراغ لحیم‌کاری و مونتاژ برد

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

بهترین روش برای لحیم‌کاری اینه که اول از قطعات کوتاه‌تر و باریک‌تر مثل مقاومت‌ها و دیودها شروع کنی. بعدش برو سراغ خازن‌های عدسی و سوکت‌های آیسی.

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

مرحله ۴

نصب نرم‌افزار آردوینو و هسته MightyCore

برای اینکه بتونی کدهای برنامه رو روی میکروکنترلر Atmega32a بریزی، اول باید نرم‌افزار Arduino IDE رو روی سیستمت نصب کنی. بعد از اون، از طریق بخش Board Manager نرم‌افزار، هسته MightyCore رو به آردوینو اضافه کن تا میکروکنترلر ما رو بشناسه.

با این کار، پشتیبانی از سری میکروهای مختلف به آردوینو اضافه می‌شه و حالا می‌تونی از منوی بردها، گزینه Atmega32a رو به عنوان هدف انتخاب کنی. حواست باشه که بقیه تنظیمات رو هم دقیقا مثل چیزی که تو تصویر نشون داده شده تنظیم کنی تا موقع آپلود کد به مشکل نخوری.

مرحله ۵

فلش کردن بوت‌لودر روی میکروکنترلر

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

راه‌های زیادی برای ریختن بوت‌لودر وجود داره، اما راحت‌ترینش استفاده از یه پروگرامر ساده USBasp هست. پروگرامر رو به کمک مبدل 10 پین به 6 پین، به پورت ICSP روی برد متصل کن و از داخل محیط آردوینو، عملیات رایت بوت‌لودر رو انجام بده.

یک نکته خیلی مهم! زمانی که داری از پورت ICSP استفاده می‌کنی، حتما هر اتصال دیگه‌ای رو از برد جدا کن. مخصوصا ماژول‌های کارت حافظه و ساعت (RTC) باید حتما از روی برد برداشته بشن تا تداخلی تو کار پروگرام کردن به وجود نیاد.

مرحله ۶

آپلود کدهای اصلی روی برد

حالا وقتشه کدهای اصلی پروژه رو با نرم‌افزار آردوینو روی برد بریزی. برای این کار مبدل USB به سریال رو بردار و به پورت J2 روی برد وصل کن. پایه‌های GND، VCC (یا همون 5 ولت)، DTR، TXD و RXD مبدل باید دقیقا به پین‌های متناظرشون روی برد متصل بشن.

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

مرحله ۷

اضافه کردن حافظه و ساعت سیستم

برای راه‌اندازی سیستم‌عامل، به یک کارت حافظه microSD نیاز داری. مموری رو با فرمت FAT16 یا FAT32 فرمت کن (یک مموری 1 گیگابایتی هم براش کاملا کافیه) و فایل‌های مربوط به سیستم رو مستقیما داخلش کپی کن. حالا کابل مبدل سریال رو از کامپیوتر جدا کن. کارت حافظه رو داخل ماژولش بذار و ماژول‌های SD و RTC رو روی برد اصلی نصب کن.

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

مرحله ۸

ورود به منوی تنظیمات بوت

وقتی سیستم رو روشن می‌کنی، برای اینکه وارد منوی انتخاب حالت بوت یا تنظیمات سیستم بشی، باید دکمه ریست (SW2) روی برد رو یک بار فشار بدی و رها کنی، و بلافاصله دکمه USER (همون SW1) رو فشار بدی و نگه‌داری تا زمانی که چراغ IOS شروع به چشمک زدن کنه.

یک روش دیگه‌اش هم اینه که هر دو دکمه رو با هم فشار بدی، اول دکمه ریست رو رها کنی ولی دکمه USER رو همچنان پایین نگه‌داری. وقتی چراغ IOS چشمک زد یا منو رو روی صفحه مانیتورت دیدی، می‌تونی دکمه رو ول کنی.

مرحله ۹

پایان پروژه و یک قدم رو به جلو

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

حتما اپلیکیشن آیسی‌مدار رو روی گوشیت نصب داشته باش تا هر روز با کلی ایده و آموزش‌های الکترونیکی جدید سورپرایز بشی. بساز، تست کن و از یادگیری لذت ببر!

فایل‌های پیوست

ODS A040618 BOM v2.ods
ZIP A040618 PCB Layout Guide.zip
PDF A040618 - SCH.pdf

تو میتونی اولین سازنده باشی!

اگه پروژه رو ساختی به اشتراک بزار و اعتبار هدیه بگیر

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

آموزش‌های مشابه

گفتگو‌های کاربران

هنوز نظری ثبت نشده؛ تو شروع کن!