An Easy to Build Real Homemade Computer: Z80-MBC2!

7570个

42岁

5

关于:aka superabius

如果你对计算机是如何工作和与“外部事物”交互感到好奇,现在有很多棋盘可以打,比如阿杜尼奥、覆盆子等等。But this boards have all the same "limit"...它们隐藏了内部部分,因为它们使用了一个MCU(微控制器单元)或一个SOC(片上系统),所以你不能触摸CPU,I/O,the internal bus and all these stuff that are what makes a computer work.

还有另一种选择,使用一些较旧的部件作为8位CPU(所谓的“逆向计算”)。They are simple to understand and you can find a lot of documentation and books for free,and allow to build real computers with all the needed function blocks (CPU,I/O,猛撞,ROM/EPROM,etc...).

But generally they use hard to find parts,and require outdated instruments like an EPROM programmer and eraser or a GAL programmer,更简单的功能也非常有限。

So I've mixed old and "new" parts to make an unique design that doesn't need any legacy EPROM programmer or fancy ICs,使用易于查找的组件。The Atmega32A MCU acts as an I/O subsystem,“模拟”EPROM和所有I/O组件。更多,使用Arduino引导加载程序,It can be easily programmed with the well known Arduino IDE.

The needed ICs are:

  • Z80 CPU CMOS(Z84C00)8MHz或更高
  • Atmega32A
  • TC551001-70 (128KB RAM)
  • 74HC00

If you want the 16x GPIO expansion (GPE option) add a MCP23017 too.

The Z80-MBC2 has a multi-boot capability and can run CP/M 2.2,QP/M 2.71 and CP/M 3 (128KB banked memory supported),so you can use a very large amount of SW with it (e.g.you can easily find Basic,C、C、装配工,帕斯卡,Fortran,COBOL编译器,其中一些已经在sd上的虚拟磁盘中提供了)。

Hard Disks are emulated using a microSD FAT16 or FAT32 formatted (a 1GB microSD is enough),因此,使用CPM工具用户界面.

当然,您需要一个终端来与Z80-MBC2交互,and a common USB-serial adapter together with a terminal emulation SW will be a cheap and simple choice.

Step 1: Components and PCB

首先,找到所有的组件来构建电路板。我准备了一个文件(a040618 bom v2.ods),其中包含了您可以轻松找到的所有必需组件。当然需要基本技能,假设你能找到“周围”的组件…

关于印刷电路板,我准备了一个“简单链接”来订购一小批(5个)。印刷电路板最小值)在这里.


Step 2: Modules You Need Too...

You need also to buy (if you haven't) some common cheap modules (see photos):

  • An USB-Serial adapter;
  • A microSD module;
  • A DS3231 RTC module (optional);
  • An USBasp programmer (to flash the Arduino bootloader into the Atmega32a);
  • An AVR 10pin to 6pin adapter (optional).

Step 3: Build the Board

要构建电路板,请遵循组装指南(a040618 pcb layout guide.zip),说明元件在pcb上的位置(包括零件参考和值)。此外,示意图(A040618-sch.pdf)也很方便。

Start to solder the thinnest components like resistors and diodes,then the ceramic capacitors and so on.The connectors and the electrolytic capacitors will be the last ones.

Step 4: Install the Arduino IDE and "MightyCore"

要将Arduino“草图”加载到ATMega32A中,您需要从安装Arduino IDE和“Mightycore”在这里using the Arduino IDE "Board Manager".

这样,ATMega32A的支持将添加到Arduino IDE中,您将能够选择atmega32a作为目标设备(见图)。

Remember to select the other options as in the photo.

Step 5: Flash the Bootloader

要使Z80-MBC2工作,您需要将Arduino引导加载程序闪存到ATMega32A中。

这将使您能够使用Arduino IDE编译草图并将其加载到atmega32a中。

有很多方法可以刷新引导装载程序。The way I suggest is to use a cheap USBasp programmer and burn the bootloader using Arduino IDE.

To connect the USBasp to the ICSP connector of the Z80-MBC2 you can use a common 10pin-6pin adapter (see the photo).

记住断开任何其他接头使用ICSP时。Alsoboth SD and RTC modules(如果有)must be removedfrom the board when the ICSP port is in use.

More info on this step can be found在这里.

Step 6: Load the "sketch"

Now is time to load the sketch into the Atmega32a using the Arduino IDE.For that you need to connect the USB-serial adapter (see photo) to the SERIAL port (J2) of the Z80-MBC2.

您必须连接GND,+5V/VCC,DTR,热膨胀系数USB串行适配器的RxD插脚和Z80-MBC2的串行端口。

现在将草图压缩文件“s220718-r190918_ios-z80-mbc2.zip”解压缩到一个文件夹中,编译它并用Arduino IDE加载它。

Step 7: Add the SD and the RTC

现在,将sd-zip文件“sd-s220718-r191018-v1.zip”解压缩到FAT16或FAT32格式的microSD中(一个1GB microSD就足够了)。

Disconnect the USB-serial adpter from the PC,and add to the Z80-MBC2 the SD module (with the microSD inside) and the RTC module (if you have it).

Pay attention to install the modules exactly as shown in the photo,because they aren't "swappable" in their positions,and permanent damages may occur if you exchange them!

现在,您可以使用USB串行适配器和终端仿真器运行Z80-MBC2了!

Step 8: How Enter in the "Select Boot..." Menu

To enter in the "Select boot mode or system parameters" you must press the RESET key (SW2),release it and press immediately the USER key (SW1) and keep it pressed until the IOS led starts to blink.

An other way is to press both keys,release the RESET key holding the USER key down until the IOS led starts to blink,或者你看到屏幕上的菜单。

第9步:更多信息…

您可以找到更多关于Z80-MBC2的信息和技术细节在这里.

Electronics Tips & Tricks Challenge

参加了
Electronics Tips & Tricks Challenge

6个人做了这个项目!

Recommendations

  • DIY Summer Camp Contest

    DIY Summer Camp Contest
  • Games Contest

    Games Contest
  • 传感器竞赛

    传感器竞赛

5 Discussions

0
无
pixel45

2个月前的Step 9

酷项目!
我的想法很相似。Low chipcount,an atmega chip for eprom emulation,I/O,特别是串行通信,为了控制这台小电脑。
The port expansion is a brilliant solution (this (mbc2) is better than previous one).
I'm ready to build and I will restructure it with a little +.
谢谢分享……It's a worth!

灵活的家庭或工业自动化解决方案,etc..
Im just waiting for PCB now..

Update:
PCB arrived!

0
无
PatrykR2

5个月前

I made RC2014 mini,a Grant Searle 7 chip z80 simple computer (universal pcb and lots of kynar),现在我订购了Z80-MBC2的印刷电路板。Z80 CPU是我的新爱:)

0
无
竹编工程师

9 months ago

Beautiful,期待着尽快设计我自己的Z80电脑

0
无
Thorondor95

9 months ago

…我们自己制造电脑,the homeschool family!(clap clap)
当我看到这个的时候,我想到了一个亚当斯家族的恶作剧。

0
无
DIY黑客和如何

9 months ago

Great tutorial.Very detailed and well written.