查看: 11430|回复: 1

[项目] Arduino制作:支持Basic和VGA显示器的复古计算机

[复制链接]
  • TA的每日心情

    2018-11-20 13:41
  • 签到天数: 3 天

    连续签到: 1 天

    [LV.2]偶尔看看I

    发表于 2019-2-14 17:06:16 | 显示全部楼层 |阅读模式
    分享到:
    1.jpg


    本期将为大家介如何用两个 Arduino 制作一个可以运行 BASIC 的复古8位计算机。更棒的是,这个计算机带有 VGA 接口和 PS2 键盘接口,已经还原了当年上微机课时所用的老爷机了(暴露年龄,逃~)。

    你可以使用 PS2 键盘输入变量和 BASIC 程序,文本最大可显示24列10行。字符采用4色5×6像素。




    2.jpg

    程序保存在 Arduino EEPROM 中,你甚至可以通过 Basic 指令来直接控制 I/O 脚。
    这个项目也可用于在显示器上打印简单文本消息,如图所示。

    3.jpg

    把其中一个 Arduino 看作为项目的“主机”,它运行 Tiny Basic Plus ,一款用 C 实现的 Tiny Basic,支持 Arduino 。它还可以驱动 PS2 键盘。其输出通过串口发送到另一个 Arduino ,由 VGAx 库,产生 VGA 输出信号。

    材料清单

    Arduino Uno Rev. 3×2 或 Nano 3.x×2(ATmega328)
    DSUB15连接器×1(VGA插座)
    电阻 68 欧 ×2
    电阻 470 欧 ×2
    PS2母头连接器×1
    电线×若干
    面包板或条形板×1


    用 TinyBasic、PS2 键盘制作 Arduino 主机

    TinyBasic Plus 和 VGAx 库适用于 Arduino IDE 1.6.4。
    1、从 Arduino 官方网页下载。如果你的 电脑 上有更新版本,最好以 .zip 格式下载并在 电脑 上解压缩。这个链接下载 Windows 版本。
    2、使用 PS2 键盘库。你可以在本页底部找到它。只需将其解压缩并复制到 arduino-1.6.4libraries 中的 PS2keyboard 文件夹即可
    3、在本项目文件库中下载文件TinyBasicPlus_PS2_VGAx.ino,解压缩并将其上传到你的 Arduino 上。
    这是标准 TinyBasic Plus 的变体,我添加了 PS2 库并修改了代码以接受来自它的变量。

    有关 TiniBasic Plus 和相关教程的更多详细信息,请猛击这里
    如果兼容性等其他的问题, Tiny Basic 就已经跑起来。你可以通过 电脑中的串行的显示器进行测试。我使用PuTTY ,但是还有许多其他程序可替代。

    你必须设置正确的 COM 端口(它与你在 Arduino IDE 中找到的相同)

    1. baud rate = 4800
    复制代码


    4、在 电脑 键盘上输入一些程序就可以测试它了。
    尝试如下:

    1. 10 PRINT“Hello,World!”
    2. 20 GOTO 10
    3. RUN
    复制代码


    5、只需键入 Ctrl + C 即可停止无限循环。
    请注意,此组合不适用于 PS2 键盘。
    TinyBasicPlus_PS2_VGAx.ino 和 PS2Keyboard.rar 文件请在项目文件库中下载:


    连接 PS2 键盘和 Arduino 的主机
    4.jpg

    请在这篇在Arduino 上使用 PS/2 键盘进行输入中获取所有的信息和库。

    四个引脚连接如下(如图):
    1、键盘数据连接到 Arduino 引脚8。
    2、键盘 IRQ (时钟)连接到 Arduino 引脚3。
    3、连接 GND 和+ 5 V 。
    PS2 所需引脚的功能如图所示。



    在第二个 Arduino 中上传 VGAx 库和代码
    5.jpg

    1、下载本项目文件库中的 VGAx-PC.ino 代码,然后将其复制到电脑上的同名目录中。

    2、从GitHub上的点击链接下载 VGAx 库。最简单的方法是将其复制到名为 “libraries” 的 Arduino 文件夹中,以便立即识别。
    注意:此库适用于 Arduno IDE 1.6.4,它与旧版本或新版本不完全兼容。

    3、在另一个 Arduino 板上传 VGAx-PC.ino (我测试它的 Nano 版本,但 Uno 应该也能正常运行)。
    内存不足的警告是正常的。如果你没有其他错误,一切正常,你可以马上开始构建自己的 8-bit 电脑。
    原理图如上图所示。请按照图中所示步骤中示出了完成的“控制台”的示例。


    可选:制作电路板
    6.jpg
    7.jpg
    8.jpg
    9.jpg

    你也可以使用一块小电路板来制作这款 Basic VGA 的电脑。你可以从图片中获取灵感,或者甚至可以设计自己的电路板。

    我使用了两条带15孔的母头线,用于视频输出 Arduino 。对于 Arduino 主机,我使用两条双排母排座。通过这种方式,我可以使用外部的插口与其他项目组件组合在一起,可以用 Basic 代码直接驱动。我还在中心添加几条预留的线,一个连接到5V ,另一个连接到 GND 。

    完成,喜欢这个项目就动手起来吧!


    相关文件下载
    Arduino制作:支持Basic和VGA显示器的复古计算机.zip (24.92 KB, 下载次数: 26)
    回复

    使用道具 举报

    该用户从未签到

    发表于 2019-12-15 17:17:26 来自手机 | 显示全部楼层
    我也说一句您好。这个case可以不用ps2键盘,现在的USB键盘嘛?
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /2 下一条



    手机版|小黑屋|与非网

    GMT+8, 2024-3-29 04:03 , Processed in 0.125716 second(s), 20 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2020, Tencent Cloud.