找回密码
立即注册
搜索
热搜: Java Python Linux Go
发回帖 发新帖

3776

积分

0

好友

522

主题
发表于 16 小时前 | 查看: 2| 回复: 0

除了 SimpleZ80 项目,Grant Searle 还设计了另一款经典的单板计算机 Simple6502。顾名思义,它的核心是 6502 CPU,项目的原始资料可以在 http://searle.x10host.com/6502/Simple6502.html 找到。

之前成功制作 SimpleZ80 的经历带来了不少乐趣,所以我决定把 Simple6502 也复刻出来。不过,上次体验的“绕线大法”实在有些费时费力,这次就决定换一种更“现代化”的方式——自己设计并打样一块 PCB 来玩。

原版电路分析与修改思路

首先,我们来看看 Grant 设计的原始电路图。这是一个典型的 6502 最小系统,包含了 CPU、RAM、ROM、串口以及必要的时钟和复位电路。

Grant Searle 原版6502计算机最小系统电路图

在动手前,我结合自己手头的元件和实际需求,对原设计进行了一系列调整,目标是让电路更精简、更符合我的使用习惯。这些修改主要基于对 计算机基础 知识的灵活应用。

  1. 时钟电路简化:我手头的 6502 CPU 可以直接支持 4MHz 时钟。因此,原图中 U8(74LS14)分频器和 U7A、U7B 组成的晶体振荡电路都可以省去,直接使用一个有源晶振提供时钟信号。
  2. 逻辑器件替代:原设计使用 74LS00 与非门芯片(U6)来实现地址译码等组合逻辑。我计划用一颗 ATF16V8B 可编程逻辑器件(PLD)来替代它。使用 PLD 的好处是逻辑定义更加灵活自由,修改起来也方便,无需变动硬件连线。
  3. 存储器配置优化:我打算使用一颗 32KB 的 ROM,并通过一个跳线(Jumper)来选择使用其高 16K 或低 16K 空间。这样,我可以通过拨动跳线,轻松在不同固件或操作系统之间切换。
  4. 复位电路增强:在 RESET 回路中增加了一个电容,与电阻构成简单的 RC 延时电路,确保上电复位信号更稳定可靠。
  5. 串口连接现代化:原电路使用 MAX232 芯片进行 RS-232 电平转换。我打算直接使用常见的 USB 转 TTL 串口模块连接 MC68B50 串行接口芯片,这样既省去了 MAX232,也方便用现代电脑进行调试。
  6. 供电方式选择:增加了一个 Type-C 插座作为电源输入,并设置了一个供电选择跳线。可以选择由 USB 端口供电,或者由串口模块的 5V 输出供电,增加了灵活性。

经过这一番“瘦身”和优化,整个系统所需的集成电路数量大幅减少,核心部分仅需 5 颗芯片,电路结构清晰了不少。

原理图与PCB设计

基于以上的修改思路,我使用立创EDA绘制了新的原理图。下图展示了修改后的核心电路连接。

基于立创EDA修改后的Simple6502原理图

原理图确认无误后,便进入了 PCB 布局布线阶段。考虑到这个电路的时钟频率不到 2MHz,对布线要求并不苛刻,我“偷了个懒”,大量使用了自动布线功能以提高效率。当然,关键的网络(如电源、时钟、复位信号)还是进行了手动优化。

最终的 PCB 布局如下图所示,整体尺寸紧凑,元件排列也考虑了焊接和调试的便利性。

Simple6502单板计算机PCB布局图

设计文件检查完毕后,我已经将 PCB 图纸发送给板厂打样,目前正在生产中。手边还缺一颗合适频率的有源晶振,需要另外下单采购。等所有元器件到齐,就可以开始焊接和调试了。

硬件制作的过程本身就是一种乐趣,它融合了设计、动手和调试的全流程。如果你也对这类复古计算机DIY感兴趣,欢迎来 云栈社区 交流分享你的项目和心得。

延伸阅读:在开始这个PCB项目之前,我曾尝试在面包板上搭建过一个更基础的6502系统,相关经历可以参阅此文:分享:面包板上的 6502 计算机。从面包板的混乱到PCB的规整,这个过程本身就体现了对系统 架构 理解的深化。




上一篇:2026年伊朗斩首事件:安保漏洞深度分析与战略启示
下一篇:智能硬件出海遇冷?破解北美线下市场壁垒的三大核心策略
您需要登录后才可以回帖 登录 | 立即注册

手机版|小黑屋|网站地图|云栈社区 ( 苏ICP备2022046150号-2 )

GMT+8, 2026-3-5 21:51 , Processed in 0.387694 second(s), 40 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2026 云栈社区.

快速回复 返回顶部 返回列表