ESP32|基于ESP32制作的低成本、可拓展性高的NES游戏机(1)(开源ESP32 NES模拟器)-效果演示及介绍

文章目录

  • 前言
  • 需求分析
  • 硬件选择
  • 硬件概览
  • ESP32 NES模拟器
    • 效果图
    • 项目介绍
  • 源码、硬件获取
  • 视频教程
  • 待续。。。

ESP32|爷青回!ESP32(单片机) NES模拟器

前言

ESP32|基于ESP32制作的低成本、可拓展性高的NES游戏机(1)(开源ESP32 NES模拟器)-效果演示及介绍_第1张图片

小时候我们都喜欢玩FC,现在仍有很多人想做出属于自己的游戏机(模拟器),玩上几把小时候最喜欢玩的游戏,而nes模拟器正是不二之选,通过制作模拟器我们能学习到软硬件各方面的知识,可谓是很多程序员走向编程开发道路上不可缺少的一环。
好处有那么多,但是从零开始制作一台游戏到底难不难呢?

需求分析

制作一台游戏机我希望是不用涉及太多的硬件方面的知识,如果要自己动手画一个电路板并且焊接元件上去,就太麻烦了!我只想凭自己现有的能力,使用常见的硬件模块搭建出一台游戏机,而且后面这些硬件可以用于到其他的实验或者项目就更好了!

上面的演示视频已经满足了我们的需求,所有的硬件我们都是像搭建积木那样搭建起来,所有的功能都可以通过配置文件进行裁剪!

硬件选择

  • 开发板:如果板子能连接互联网或者局域网,我们就可以通过外网下载我们所需的文件或者进行固件升级;通过局域网可建立面对面对面加入游戏,就像真的玩游戏机那样的体验。而选择搭载了WROOM-32D模组的乐鑫公板ESP32-DevKitC v4开发板是比较理想的选择。
  • 存储部分:所有文件保存在SD卡中读取存储起来非常方便,这需要使用到SPI SD卡模块
  • 显示部分:FC游戏机的显示分辨率是256x224,我们使用2.2寸(240x320)的显示屏就足够了,这里我选择常见的2.2寸(240x320)ILI9341显示屏。
  • 音频输出部分:为了方便接耳机或者音响,选择3.5mm的音频座模块是最理想的
  • 最后为了能将这些硬件连接起来,还需要用到面包板和一些面包线或者杜邦线。

硬件概览

ESP32|基于ESP32制作的低成本、可拓展性高的NES游戏机(1)(开源ESP32 NES模拟器)-效果演示及介绍_第2张图片

名称 数量
ESP32主板 1
MicroUSB数据线 1
面包板+面包线 2
TFT ILI9341屏幕(240x320) 1
SPI TF卡模块 1
16GB TF卡 1
NES游戏手柄+转接板 1
CJMCUTRRS 3.5mm音频座模块 1

ESP32 NES模拟器

效果图

控制方法有三种,大家可以在源码里面配置:

  • 使用PCF8574模块,直接接按键肝(要接很多线,玩起来一点都不方便、没有手感)
  • 使用九针或者七针的NES游戏手柄控制游戏(手柄玩起来很有手感,但接口比较奇葩,要接五根线:VCC、GND、LATCH、CLOCK、DATA)
  • 使用(MINI、Micro)USB接口的游戏手柄控制游戏(手柄玩起来很有手感,而且常见接口,使用通过转接板非常方便,要接5根线:VCC、GND、ID、D+、D-)

ESP32|基于ESP32制作的低成本、可拓展性高的NES游戏机(1)(开源ESP32 NES模拟器)-效果演示及介绍_第3张图片

项目介绍

硬件组合合理,成本低、可DIY性高,模块化的硬件可重复利用到其他项目或者实验,本项目功能特点:

  • 通过 SPI sd卡模块 从外挂的micro sd 卡(SPI)中加载游戏文件(Fat文件系统)
  • 2.2寸ILI9341显示屏 (SPI接口240x320分辨率)显示游戏图象
  • 支持开机动画、菜单选择游戏运行
  • 支持音频输出(I2S),使用 CJMCUTRRS 3.5mm音频座模块 输出音频更方便!
  • 支持PCF8574 I/O拓展模块(I2C接口)控制游戏,拓展的8个I/O引脚用于游戏按键(上、下、左、右、A、B、select、start)
  • 支持使用国内 7针、9针NES游戏手柄 控制游戏
  • 支持国内 MicroUSB接口的游戏手柄 控制游戏

项目使用 VScode+platformio插件开发,以上功能均可在 ./platformio.ini 文件裁剪。
请将NES游戏文件存放在sd卡中的 /nes 文件夹。

源码、硬件获取

https://item.taobao.com/item.htm?id=642291784020
ESP32|基于ESP32制作的低成本、可拓展性高的NES游戏机(1)(开源ESP32 NES模拟器)-效果演示及介绍_第4张图片

视频教程

  • 百问网官网: https://www.100ask.net/
  • Bilibili:https://www.bilibili.com/video/BV1ef4y1W7En

待续。。。

你可能感兴趣的:(ESP32,单片机,NES模拟器,游戏,单片机,嵌入式)