找回密码
 立即注册
查看: 162|回复: 6

STC32G144K246上运行NES模拟器 ,9帧/秒刷新,放上源码,期待大神优化完善

[复制链接]
  • 打卡等级:常住居民III
  • 打卡总天数:153
  • 最近打卡:2026-04-30 11:28:51
已绑定手机

2

主题

19

回帖

460

积分

中级会员

积分
460
发表于 2026-4-19 10:59:21 | 显示全部楼层 |阅读模式
1:系统主频144MHZ,SPI 时钟=78MHZ,SPI DMA传输
2:LCD为320*240的ST7789 ,spi接口
3:nes模拟器源码来自于网友:xiaowei061的NES模拟器,只实现了显示部分,按键控制还没调通,音频也没加
4:目前只测试了mapper简单的超级马利,读取rom正常,显示正常,帧率9帧/秒。
5:不懂汇编,没做进一步优化,或者将模拟器部分放置在sram运行,是否能进一步加速?

整体

整体

频率设置

频率设置

NES_SPI_DMA_ST7789.zip

181.23 KB, 下载次数: 3

源码

video.mp4

3.25 MB, 下载次数: 0

测试视频

回复

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:153
  • 最近打卡:2026-04-30 11:28:51
已绑定手机

2

主题

19

回帖

460

积分

中级会员

积分
460
发表于 2026-4-19 11:03:10 | 显示全部楼层
源码文件目录结构
截图202604191102548388.jpg
回复

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:40
  • 最近打卡:2026-04-22 01:56:59

30

主题

136

回帖

640

积分

高级会员

积分
640
发表于 2026-4-22 01:56:59 | 显示全部楼层
才9帧,有点慢吧,至少30帧以上才有搞头。
回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:261
  • 最近打卡:2026-05-01 07:39:25

18

主题

246

回帖

568

积分

高级会员

积分
568
发表于 2026-4-22 08:10:55 | 显示全部楼层
感觉已经很轻大了,不过应该可以更流畅,只是这样的话就需要深度融合NES模拟器的软件和STC的硬件了
回复

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:153
  • 最近打卡:2026-04-30 11:28:51
已绑定手机

2

主题

19

回帖

460

积分

中级会员

积分
460
发表于 2026-4-22 12:02:57 | 显示全部楼层
这里有基于ARM M3汇编实现的NES 6502核心,据说在32F103ZE上跑出 30pfs以上的刷屏效果,带按键声音

M3汇编版模拟器代码

M3汇编版模拟器代码

NES.zip

353.3 KB, 下载次数: 2

回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:229
  • 最近打卡:2026-04-25 21:43:57

3

主题

64

回帖

802

积分

高级会员

积分
802
发表于 6 天前 | 显示全部楼层
屏幕换成并口屏,是不是帧率会更高一些,不知道加入DMA没有,如果没有加的话,在程序中加上帧率应该会更高。
回复

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:153
  • 最近打卡:2026-04-30 11:28:51
已绑定手机

2

主题

19

回帖

460

积分

中级会员

积分
460
发表于 前天 09:59 | 显示全部楼层
采用SPI DMA+双缓冲;经测试 模拟器解算游戏帧耗费时间是瓶颈所在,当计算进行到一半时,数据传输已经完成。
回复

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2026-5-1 10:31 , Processed in 0.120621 second(s), 82 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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