0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何使用ESP32和ATtiny861制作NES模拟器游戏控制台

454398 来源:工程师wv 2019-08-27 14:20 次阅读

步骤1:硬件准备

如何使用ESP32和ATtiny861制作NES模拟器游戏控制台

ESP32开发板

这次我使用的是TTGO T8 ESP32开发板。该板内置Lipo充电和调节电路,可以帮助减少额外的元件。

显示

这次我使用的是2.4“IPS LCD。驱动控制器是ST7789V,分辨率为320 x 240.此分辨率最适合NES仿真器252 x 224分辨率。

电池

这次我使用的是454261 Lipo电池.4.5 mm是ESP32开发板的厚度,61 mm是板的宽度。

引脚接头

一个4针公头圆形针头和一个4针母头圆形针头用于连接I2C游戏手柄。

PETG板

用于支撑开发板和锂电池的小型PET/PETG板,您可以在产品包装中轻松找到它。

多用途PCB

需要2个PCB,1个0.4 mm厚用于支撑显示器,1个1.2 mm厚用于I2C游戏手柄。

按钮

A 5个方向按钮,2个用于选择和启动的小按钮,2个用于A和B按钮。

I2C游戏手柄控制器

这次我使用的是ATtiny8 61微控制器作为I2C游戏手柄控制器。

其他

1个SMD 12欧姆电阻,一个ISP编程器(例如TinyISP)

第2步:软件准备

Arduino IDE

下载并安装Arduino IDE

ATTinyCore支持

按照安装步骤操作如果还没有添加ATTinyCore支持

ESP-IDF

关注ESP-IDF入门指南如果还没有设置开发环境

第3步:3D打印

下载并打印案例:https://www.thingiverse.com/thing:3591170

第4步:LCD支持

切割24 x 27孔0.4 mm PCB以支持LCD。请记住为折叠LCD FPC预留一些空间。然后使用一些双面胶带将LCD固定在PCB上。

步骤5:准备PETG板

为开发板和Lipo电池支撑切出62 mm x 69 mm PETG板。

步骤6:修复ESP32开发板

使用双面胶带将开发板固定在PETG板上。

步骤7:修复Lipo电池

使用双面胶带修复除开发板外的Lipo电池。

步骤8:连接电池和电池;开发板

步骤9:准备显示引脚

LCD显示有很多变化形式不同供应商。请获取正确的数据表,并在任何补丁和连接之前阅读。

某些引脚保留用于触摸屏。由于这款LCD没有触摸屏,只需将这些引脚切断就可以减少干扰。

步骤10:连接GND引脚

在大多数情况下,很少有引脚需要连接到GND。为了减少焊接工作量,我切割铜带形状以到达所有GND引脚,然后完全焊接。

步骤11:连接Vcc引脚

需要连接Vcc,LCD电源LED电源的2个引脚。根据数据表,LCD电源可直接连接到开发板3.3 V引脚,但LED电源工作电压略低于3.3 V.因此最好在中间添加一个SMD电阻,例如12欧姆电阻。

步骤12:连接LCD&开发板支持

使用磁带连接LCD支持和开发板支持。两个支持都应保留约5毫米的间隙进行折叠。

步骤13:连接SPI引脚

以下是连接摘要:

LCD ESP32

GND -》 GND

RST -》 GPIO 33

SCL -》 GPIO 18

DC -》 GPIO 27

CS -》 GPIO 5

SDI -》 GPIO 23

SDO -》 not connected

Vcc -》 3.3 V

LED+ -》 12 Ohm resistor -》 3.3 V

LED- -》 GND

步骤14:Flash程序

在GitHub下载源代码:https://github.com/moononournation/esp32-nesemu

在源代码文件夹下,运行“make menuconfig”

选择“Nofrendo ESP32特定配置”

选择“要运行的硬件” - 》“自定义硬件”

选择“LCD类型” - 》“ST7789V LCD”

填充引脚设置:MISO - 》 -1,MOSI - 》 23,CLK - 》 18,CS - 》 5,DC - 》 27,RST - 》 33,背光 - 》 -1,IPS - 》 Y

退出并保存

运行“make -j5 flash”

运行“sh flashrom.sh PATH_TO_YOUR_ROM_FILE”

步骤15:I2C连接器

突破I2C引脚,ESP32默认I2C引脚为:

Pin 1 (SCL) -》 GPIO 22

Pin 2 (SDA) -》 GPIO 21

Pin 3 (Vcc) -》 3.3 V (no 5 V power while powered by Lipo battery)

Pin 4 (GND) -》 GND

Ste第16页:装配第1部分

按照视频步骤将所有部件折叠并挤压到外壳中。

步骤17:原型I2C游戏手柄

I2C游戏手柄的程序非常简单,只有15个代码行。但是焊接后对ATtiny861进行重新编程有点困难,所以最好先在面包板上对它进行测试。

从GitHub下载,编译和刷新程序:https://github.com/moononournation/attiny861_i2c _.。.

步骤18:构建I2C游戏手柄

以下是连接摘要:

ATtiny861 Button

GND -》 All buttons one pin

Pin 20 (PA0) -》 Up button

Pin 19 (PA1) -》 Down button

Pin 18 (PA2) -》 Left button

Pin 17 (PA3) -》 Right button

Pin 14 (PA4) -》 Select button

Pin 13 (PA5) -》 Start button

Pin 12 (PA6) -》 A button

Pin 11 (PA7) -》 B button

Pin 6 (GND) -》 I2C male pin header pin 4

Pin 5 (Vcc) -》 I2C male pin header pin 3

Pin 3 (SCL) -》 I2C male pin header pin 1

Pin 1 (SDA) -》 I2C male pin header pin 2

步骤19:装配第2部分

按照视频步骤将封面和I2C游戏手柄安装到主体上。

步骤20:可选:音频突破引脚

ESP32开发板引脚25和26输出模拟音频信号,很容易突破这两个引脚和电源引脚( 3.3 V和GND)在顶部。然后你可以修补一个耳机插上它。或者你甚至可以添加一个带扬声器的音频放大器模块来大声播放。

步骤21:下一步是什么?

NES模拟器不是ESP32唯一有趣的事情。例如。你可以用它构建一个微型python控制台。您需要更改的唯一组件是从I2C游戏手柄到I2C键盘。我认为使用ATtiny88控制器制作它并不困难。您可以按我的推特查看状态。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • ATtiny
    +关注

    关注

    3

    文章

    128

    浏览量

    19574
  • 模拟器
    +关注

    关注

    2

    文章

    865

    浏览量

    43156
  • ESP32
    +关注

    关注

    17

    文章

    955

    浏览量

    17068
收藏 人收藏

    评论

    相关推荐

    控制台窗口主机是什么

    控制台窗口主机(conhost),通常指的是在Windows操作系统中用于承载和控制控制台窗口(即命令行界面或CMD窗口)的进程。以下是对控制台窗口主机的介绍: 一、定义与功能 定义
    的头像 发表于 10-08 18:12 1253次阅读

    ESP32控制器系列指南

    2024-05-29 Don Wilcher [微控制器] ESP32控制器已成为物联网 (IoT) 和嵌入式控制器领域的核心部分。 ESP32
    的头像 发表于 10-02 18:21 1839次阅读
    <b class='flag-5'>ESP32</b> 微<b class='flag-5'>控制器</b>系列指南

    esp32esp8266代码共用吗

    本文将介绍ESP32ESP8266两款流行的微控制器在代码共用性方面的可能性与差异性。 一、引言 随着物联网技术的飞速发展,越来越多的智能设备开始进入我们的生活。其中,ESP32
    的头像 发表于 08-19 18:23 958次阅读

    esp32用什么软件编程

    ESP32是一款由乐鑫(Espressif)推出的低功耗、高性能的Wi-Fi和蓝牙双模微控制器,广泛应用于物联网、智能家居、智能穿戴等领域。要对ESP32进行编程,需要选择合适的编程软件和开发环境
    的头像 发表于 08-19 17:24 2745次阅读

    火语言RPA如何建立控制台应用

    火语言通过软件自带的丰富的颗粒组件库,开发出满足各种需求的应用。火语言中的应用分为两种常见类型,界面应用以及控制台应用。 下面详细介绍下控制台应用的定义以及构建方法。 控制台应用 控制台
    的头像 发表于 08-15 09:24 343次阅读
    火语言RPA如何建立<b class='flag-5'>控制台</b>应用

    苹果更新App Store指南,允许PC模拟器下载游戏

    明确宣布允许PC模拟器应用提供游戏下载功能。此前,虽然游戏模拟器应用已被允许包含游戏下载选项,但PC
    的头像 发表于 08-02 16:37 338次阅读

    请问ESP32C3如何重定向控制台串口?

    软件环境:esp-idf v4.4 硬件环境:esp32c3 问题描述:需要将控制台输出重定向到 UART1(RX: GPIO4,TX:GPIO5),UART0 用来做上下位机通信。 按照这个链接
    发表于 06-07 08:12

    超酷!基于ESP32自制一个蓝牙游戏手柄

    电路识别为游戏控制器。我还用两个 ESP32 测试了该电路,使用 ESP-NOW 关于它们之间的通信,结果也很成功。 如果你想知道还能用这个电路做什么,可以参考下面的几个项目。 你可以
    发表于 05-06 16:59

    苹果商店现已上架Delta游戏模拟器,支持多种经典主机游戏

    Delta游戏模拟器由Riley Testut开发,他就是曾在十几年前风靡一时的开源GBA4iOS模拟器的创造者。遗憾的是,尽管GBA4iOS短暂辉煌,但它为Delta的诞生奠定了坚实的基础。
    的头像 发表于 04-18 11:18 1303次阅读

    Delta模拟器随AltStore上线,苹果解禁复古游戏模拟器

     4月9日消息,开发者Riley Testut在Mastodon平台宣布已获得苹果公司确认,其研发的游戏模拟器应用程序Delta将随AltStore一同正式上线。
    的头像 发表于 04-09 11:08 921次阅读

    基于ESP32NES游戏 https://oshwhub.com/micespring/esp32-nese

    ESP32
    蛋黄酥
    发布于 :2024年02月15日 13:45:16

    如何使用ESP32和STC51芯片制作一个小小光立方呢?

    分享一个用ESP32和STC51芯片,以及0805贴片灯珠,手工焊接制作的小小光立方。
    的头像 发表于 01-09 15:37 1825次阅读
    如何使用<b class='flag-5'>ESP32</b>和STC51芯片<b class='flag-5'>制作</b>一个小小光立方呢?

    开源 | 超容易复刻的多功能ESP32游戏机,蓝牙手柄+NES模拟器+Wi-Fi投屏…

    复刻(确信)。 1 当前主要功能 目前已实现Raylib游戏、BLE手柄、NES模拟器、Wi-Fi投屏、音乐播放等多个功能,可通
    的头像 发表于 12-08 13:55 2444次阅读
    开源 | 超容易复刻的多功能<b class='flag-5'>ESP32</b><b class='flag-5'>游戏</b>机,蓝牙手柄+<b class='flag-5'>NES</b><b class='flag-5'>模拟器</b>+Wi-Fi投屏…

    python获取控制台输出内容

    在Python中,获取控制台输出内容可以使用多种方法。无论是在开发过程中调试程序,还是在分析程序执行结果时,获取控制台输出内容都是非常有用的。 最常见的方法就是使用print函数来输出内容到控制台
    的头像 发表于 11-22 14:08 2211次阅读

    5个步骤,让你的核桃派玩回当年火爆全球NES游戏

    1.准备好你的nes游戏nes游戏链接:链接:百度网盘 请输入提取码 提取码:k6sh 2.安装nes
    发表于 11-22 10:50