สารบัญ:

คอมพิวเตอร์ทำเองง่ายๆ: Z80-MBC2!: 9 ขั้นตอน (พร้อมรูปภาพ)
คอมพิวเตอร์ทำเองง่ายๆ: Z80-MBC2!: 9 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: คอมพิวเตอร์ทำเองง่ายๆ: Z80-MBC2!: 9 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: คอมพิวเตอร์ทำเองง่ายๆ: Z80-MBC2!: 9 ขั้นตอน (พร้อมรูปภาพ)
วีดีโอ: TASM + VS Code, using a vintage DOS cross compiler w/VS Code for 8bit development 2024, พฤศจิกายน
Anonim
Image
Image
ส่วนประกอบและ PCB
ส่วนประกอบและ PCB

หากคุณสงสัยว่าคอมพิวเตอร์ทำงานอย่างไรและโต้ตอบกับ "สิ่งภายนอก" ในปัจจุบันมีบอร์ดจำนวนมากที่พร้อมจะเล่น เช่น Arduino หรือ Raspberry และอื่นๆ อีกมากมาย แต่บอร์ดนี้มี "ขีดจำกัด" เหมือนกันทั้งหมด… พวกเขาซ่อนส่วนด้านในเพราะใช้ MCU (Micro Controller Unit) หรือ SOC (System On Chip) ดังนั้นคุณจึงไม่สามารถสัมผัส CPU, I/O, บัสภายในได้ และสิ่งเหล่านี้ที่ทำให้คอมพิวเตอร์ทำงานได้

มีตัวเลือกอื่นที่ใช้ชิ้นส่วนที่เก่ากว่าเป็นซีพียู 8 บิต (ที่เรียกว่า "retrocomputing") เข้าใจง่าย และคุณสามารถหาเอกสารและหนังสือจำนวนมากได้ฟรี และอนุญาตให้สร้างคอมพิวเตอร์จริงด้วยบล็อกฟังก์ชันที่จำเป็นทั้งหมด (CPU, I/O, RAM, ROM/EPROM ฯลฯ…)

แต่โดยทั่วไปจะใช้ชิ้นส่วนที่หายาก และต้องใช้เครื่องมือที่ล้าสมัย เช่น โปรแกรมเมอร์และยางลบ EPROM หรือโปรแกรมเมอร์ GAL และเครื่องมือที่ง่ายกว่านั้นมีคุณสมบัติที่จำกัดมาก

ดังนั้นฉันจึงผสมชิ้นส่วนเก่าและ "ใหม่" เข้าด้วยกันเพื่อสร้างการออกแบบที่ไม่เหมือนใครซึ่งไม่ต้องการโปรแกรมเมอร์ EPROM รุ่นเก่าหรือไอซีแฟนซี โดยใช้ส่วนประกอบที่หาง่าย Atmega32A MCU ทำหน้าที่เป็นระบบย่อย I/O "จำลอง" EPROM และส่วนประกอบ I/O ทั้งหมด เพิ่มเติม โดยใช้ Arduino bootloader มันสามารถตั้งโปรแกรมได้อย่างง่ายดายด้วย Arduino IDE ที่รู้จักกันดี

ไอซีที่จำเป็นคือ:

  • Z80 CPU CMOS (Z84C00) 8Mhz หรือสูงกว่า
  • Atmega32A
  • TC551001-70 (แรม 128KB)
  • 74HC00

หากคุณต้องการขยาย 16x GPIO (ตัวเลือก GPE) ให้เพิ่ม MCP23017 ด้วย

Z80-MBC2 มีความสามารถมัลติบูตและสามารถรัน CP/M 2.2, QP/M 2.71 และ CP/M 3 (รองรับหน่วยความจำสำรอง 128KB) ดังนั้นคุณจึงสามารถใช้ SW จำนวนมากกับมันได้ (เช่น คุณสามารถทำได้ ค้นหาคอมไพเลอร์ Basic, C, Assembler, Pascal, Fortran, Cobol ได้อย่างง่ายดาย และบางส่วนมีให้ในดิสก์เสมือนบน SD แล้ว)

ฮาร์ดดิสก์ถูกจำลองโดยใช้รูปแบบ microSD FAT16 หรือ FAT32 (microSD 1GB ก็เพียงพอแล้ว) ดังนั้นจึงง่ายในการแลกเปลี่ยนไฟล์กับพีซีของคุณ (รองรับ 16 HD สำหรับทุกระบบปฏิบัติการ) โดยใช้ cpmtoolsGUI

แน่นอน คุณต้องมีเทอร์มินัลเพื่อโต้ตอบกับ Z80-MBC2 และอะแดปเตอร์ USB-serial ทั่วไปพร้อมกับเทอร์มินัลอีมูเลชัน SW จะเป็นทางเลือกที่ราคาถูกและเรียบง่าย

ขั้นตอนที่ 1: ส่วนประกอบและ PCB

อย่างแรกเลยคือหาส่วนประกอบทั้งหมดเพื่อสร้างบอร์ด ฉันได้เตรียมไฟล์ (A040618 BOM v2.ods) พร้อมส่วนประกอบที่จำเป็นทั้งหมดที่คุณสามารถหาได้ง่าย แน่นอนว่าจำเป็นต้องมีทักษะพื้นฐาน และควรจะสามารถหาส่วนประกอบ "รอบๆ" ได้…

เกี่ยวกับ PCB ฉันได้เตรียม "ลิงก์ง่าย" เพื่อสั่งซื้อ PCB ชุดเล็ก (5 ชิ้นต่อนาที) ที่นี่

ขั้นตอนที่ 2: โมดูลที่คุณต้องการเช่นกัน…

โมดูลที่คุณต้องการเช่นกัน…
โมดูลที่คุณต้องการเช่นกัน…
โมดูลที่คุณต้องการเช่นกัน…
โมดูลที่คุณต้องการเช่นกัน…
โมดูลที่คุณต้องการเช่นกัน…
โมดูลที่คุณต้องการเช่นกัน…

คุณต้องซื้อ (ถ้ายังไม่มี) โมดูลราคาถูกทั่วไป (ดูรูป):

  • อะแดปเตอร์ USB-Serial;
  • โมดูล microSD;
  • โมดูล DS3231 RTC (อุปกรณ์เสริม);
  • โปรแกรมเมอร์ USBasp (เพื่อแฟลช bootloader Arduino ลงใน Atmega32a);
  • อะแดปเตอร์ AVR 10pin ถึง 6pin (อุปกรณ์เสริม)

ขั้นตอนที่ 3: สร้างบอร์ด

สร้างบอร์ด
สร้างบอร์ด

ในการสร้างบอร์ด ให้ปฏิบัติตาม Assembly Guide (A040618 PCB Layout Guide.zip) กับตำแหน่งของส่วนประกอบบน PCB (โดยมีทั้งส่วนอ้างอิงและค่าต่างๆ) Schematic (A040618 - SCH.pdf) ก็มีประโยชน์เช่นกัน

เริ่มประสานส่วนประกอบที่บางที่สุด เช่น ตัวต้านทานและไดโอด จากนั้นจึงใช้ตัวเก็บประจุเซรามิก และอื่นๆ ตัวเชื่อมต่อและตัวเก็บประจุด้วยไฟฟ้าจะเป็นตัวสุดท้าย

ขั้นตอนที่ 4: ติดตั้ง Arduino IDE และ "MightyCore"

ติดตั้ง Arduino IDE และ
ติดตั้ง Arduino IDE และ

ในการโหลด Arduino "sketch" ลงใน Atmega32a คุณต้องติดตั้ง Arduino IDE และ "MightyCore" จากที่นี่โดยใช้ Arduino IDE "Board Manager"

ด้วยวิธีนี้ การสนับสนุนสำหรับ Atmega32a จะถูกเพิ่มลงใน Arduino IDE และคุณจะสามารถเลือก Atmega32a เป็นอุปกรณ์เป้าหมายได้ (ดูรูป)

อย่าลืมเลือกตัวเลือกอื่นๆ ตามภาพ

ขั้นตอนที่ 5: แฟลช Bootloader

แฟลช Bootloader
แฟลช Bootloader

เพื่อให้ Z80-MBC2 ทำงานได้ คุณต้องแฟลช Arduino bootloader ลงใน Atmega32a

สิ่งนี้จะช่วยให้คุณสามารถรวบรวมและโหลด Sketch ลงใน Atmega32a โดยใช้ Arduino IDE

มีหลายวิธีในการแฟลช bootloader วิธีที่ฉันแนะนำคือการใช้โปรแกรมเมอร์ USBasp ราคาถูกและเบิร์น bootloader โดยใช้ Arduino IDE

ในการเชื่อมต่อ USBasp กับขั้วต่อ ICSP ของ Z80-MBC2 คุณสามารถใช้อะแดปเตอร์ 10 พิน-6 พินทั่วไป (ดูรูป)

อย่าลืมถอดขั้วต่ออื่นเมื่อใช้ ICSP นอกจากนี้ ต้องถอดทั้งโมดูล SD และ RTC (ถ้ามี) ออกจากบอร์ดเมื่อใช้งานพอร์ต ICSP

ข้อมูลเพิ่มเติมเกี่ยวกับขั้นตอนนี้สามารถพบได้ที่นี่

ขั้นตอนที่ 6: โหลด "ร่าง"

โหลด
โหลด

ถึงเวลาโหลดภาพสเก็ตช์ลงใน Atmega32a โดยใช้ Arduino IDE เพื่อที่คุณจะต้องเชื่อมต่ออะแดปเตอร์อนุกรม USB (ดูรูป) กับพอร์ต SERIAL (J2) ของ Z80-MBC2

คุณต้องเชื่อมต่อพิน GND, +5V/VCC, DTR, TXD, RXD ของอะแดปเตอร์อนุกรม USB และพอร์ต SERIAL ของ Z80-MBC2

ตอนนี้แตกไฟล์ zip แบบร่าง "S220718-R190918_IOS-Z80-MBC2.zip" ลงในโฟลเดอร์ คอมไพล์แล้วโหลดด้วย Arduino IDE..

ขั้นตอนที่ 7: เพิ่ม SD และ RTC

เพิ่ม SD และ RTC
เพิ่ม SD และ RTC

ตอนนี้แตกไฟล์ zip SD "SD-S220718-R191018-v1.zip" ลงใน microSD ที่ฟอร์แมต FAT16 หรือ FAT32 (microSD 1GB เพียงพอแล้ว)

ถอดอะแดปเตอร์ซีเรียล USB ออกจากพีซี และเพิ่มโมดูล SD ลงใน Z80-MBC2 (ด้วย microSD ด้านใน) และโมดูล RTC (หากมี)

ใส่ใจในการติดตั้งโมดูลให้ตรงตามที่แสดงในภาพ เนื่องจากไม่สามารถ "เปลี่ยนได้" ในตำแหน่ง และความเสียหายถาวรอาจเกิดขึ้นหากคุณเปลี่ยน!

ตอนนี้คุณพร้อมที่จะรัน Z80-MBC2 โดยใช้ USB-serial adapter และ terminal emulator แล้ว!

ขั้นตอนที่ 8: วิธีเข้าสู่เมนู "Select Boot…"

วิธีเข้าสู่
วิธีเข้าสู่
วิธีเข้าสู่
วิธีเข้าสู่

ในการเข้าสู่ "เลือกโหมดการบูตหรือพารามิเตอร์ระบบ" คุณต้องกดปุ่ม RESET (SW2) ปล่อยและกดปุ่ม USER (SW1) ทันทีและกดค้างไว้จนกว่าไฟ LED IOS จะเริ่มกะพริบ

อีกวิธีหนึ่งคือการกดทั้งสองปุ่ม ปล่อยปุ่ม RESET โดยกดปุ่ม USER ค้างไว้จนกว่าไฟ LED ของ IOS จะเริ่มกะพริบ หรือคุณเห็นเมนูบนหน้าจอ

ขั้นตอนที่ 9: ข้อมูลเพิ่มเติม…

ข้อมูลเพิ่มเติม…
ข้อมูลเพิ่มเติม…
ข้อมูลเพิ่มเติม…
ข้อมูลเพิ่มเติม…
ข้อมูลเพิ่มเติม…
ข้อมูลเพิ่มเติม…

คุณสามารถหาข้อมูลเพิ่มเติมและรายละเอียดทางเทคนิคเกี่ยวกับ Z80-MBC2 ได้ที่นี่

แนะนำ: