一个自由度超高的游戏机
只需完成硬件设计!
你就能根据我的软件架构,一句话生成游戏**!**
说“我想玩超级玛丽”

▼
“直接生成游戏”

是的!想要什么游戏,都可以DIY!都可以自定义!
*0***1
怎么设计硬件?
”
很简单!
首先,准备一块立创·ESP32-S3 R8N8开发板。
接着,嘉立创EDA启动!

原理图

PCB图

实物图
硬件参数
-
主控:立创·ESP32-S3 R8N8 开发板,双核 240MHz,8MB Flash + 8MB Octal PSRAM
-
显示:2.0″ ST7789 240×320 SPI 彩屏,PWM 背光控制
-
输入:五向摇杆(SW1) + 4 颗 XYAB 立贴轻触开关,共 9 路独立按键
-
音效:9mm 无源蜂鸣器(QMB-09B-03) + S8550 PNP 三极管驱动
-
外壳:3D 打印一体化机壳,主壳 + 底壳 + 摇杆帽 + 按键帽四件套
-
其他:五向弯脚开关 TSX101G100,10kΩ × 9 按键上拉电阻
*0***2
软件怎么设计?
”
01
软件栈
-
固件:ESP-Claw 框架,YAML 描述外设/设备的板级配置
-
显示驱动:esp_lcd_panel_st7789,SPI3 @ 40MHz,旋转 90°(swap_xy + mirror_x)
-
背光与音效:LEDC PWM @ 5kHz / 2.7kHz,10-bit 分辨率
-
按键:9 路 GPIO 输入,低电平有效,下拉默认电平 1
-
AI 生成:与大模型对话,自然语言一句话生成完整可玩游戏代码
如果你想做完硬件立刻用上,你可以直接烧录固件↓
01
固件烧录
提供两种烧录方式 —— esptool 命令行一键写入,或 ESP-Flash-Download-Tool 图形化操作,任选其一即可点亮掌机
方式一:esptool 命令行
FULL COMMAND · 完整命令
python -m esptool
SHORTCUT · 使用 flash_args
# 文件夹内已附带 flash_args 清单
烧录波特率 460800,DIO 模式 80MHz 8MB Flash,命令执行完自动硬复位
方式二:ESP-Flash-Download-Tool
GUI · 图形化烧录工具
-
打开 ESP-Flash-Download-Tool,芯片类型选择 ESP32-S3,工作模式选 Develop(或 Load Mode)
-
在 SPIDownload 页签逐行加载 7 个 .bin 文件,按下表填入对应地址并勾选
-
底部参数设置:CrystalFreq 80MHz · FlashMode DIO · FlashSize 8MB
-
选择正确的 COM 串口,波特率 115200,点击 START 等待进度条跑完
-
显示 FINISH 绿色即为成功,掌机自动重启进入游戏画面
也可加载配套的 flash_args 自动填充全部地址,或直接拖入整个固件文件夹,省去手工逐行输入
烧录前的小贴士
· Flash 模式必须为 DIO 80MHz,FlashSize 8MB,PSRAM 配置 Octal 80MHz
· 总占用约 6.7 MB,匹配 partitions_8MB.csv 分区表,不会溢出 8MB Flash
· USB 串口选择 Serial JTAG,Windows 免驱动;首次连接需确认 COM 端口号
· 烧录失败多为波特率过高 —— 可将 -b 460800 降到 -b 115200 重试
如果你想进一步研究其源码……
03
源码结构
ESP-CLAW 版型目录由 4 个 YAML / sdkconfig + 1 个 LCD 工厂入口 C 文件构成,零样板代码即可描述整块板
board_info.yaml
-
板卡身份信息:芯片型号(esp32s3)、版本、厂商。
-
本项目标识为 eda_ai_gamebox v1.0.0
board_peripherals.yaml
- 外设描述:SPI3 总线 (MOSI=13/SCLK=14)、9 路 GPIO 按键、2 路 LEDC PWM (背光 5kHz / 蜂鸣器 2.7kHz)
board_devices.yaml
- 设备配置:display_lcd(ST7789 + swap_xy 旋转)、lcd_brightness、5 路 D-Pad、4 路 XYAB 按键、buzzer。低电平有效,默认上拉 1
sdkconfig.defaults.board
- CPU 240MHz、Flash QIO 80MHz 8MB、PSRAM Octal 80MHz、ST7789 240×320、USB Serial JTAG 控制台
SETUP_DEVICE.C · LCD 工厂入口
BOARD_DEVICES.YAML · LCD 配置片段
BOARD_PERIPHERALS.YAML · 蜂鸣器 + 按键
所以
我只需要说“我要玩坦克大战,给我生成”

我就能玩上了??
能通过五向摇杆控制坦克移动
还支持A键开火,B键放炸弹,破坏砖墙
……

!!!
这么好玩!
小编也要做一个!
*0***3
开源网址
”
怎么样?你喜欢这个项目吗?想不想做一个玩玩?
如果你想给作者点赞or深入学习,欢迎前往开源网址~
开源网址:
https://oshwhub.com/course-examples/project\_daxlolei

评论区
登录后即可参与讨论
立即登录