用小安派玩小霸王游戏,其乐无穷
“啊哈!小霸王!其乐无穷啊!”,还记得小时候玩的小霸王游戏机吗?这次小安派的用户来带大家回忆起童年啦,来看看安信可社区大佬如何用小安派玩小霸王游戏。
本作品由安信可社区用户 bzhou830制作
01 硬件说明
硬件上使用到了AiPi-Eye-S1开发板以及3.5寸 240*320像素的电容触摸屏,使用时可以使用USB Type-C线通过开发板上的Type-C接口为设备进行供电。也可以使用锂电池给板子供电,实测壳体的液晶屏和PCB之间的间距足够放下一个3.7v的锂电池。程序下载使用USB转TTL工具。
02 软件部分
2.1开发环境
个人是在WSL ubuntu18.04环境下使用VSCode进行项目的开发,具体的环境搭建过程可参考帖子: 【轻松上手】1.小安派开箱及开发环境搭建
2.2ui设计
本项目直接使用了LCD的bsp驱动来进行UI的绘制。UI界面分为两层,底层是game的界面,上浮的一层显示的是game手柄的8个触摸按键。为了方便的确定触摸按键的位置,特地在solidworks中绘制了一个草图,用草图的尺寸来方便确定每个按键的屏幕像素坐标。
额外需要说明的是,显示使用的横向的坐标系,但是触摸驱动使用的是纵向的坐标系。它们的坐标原点是不一样的,需要进行坐标的变换。
程序设计思路
本项目程序直接使用官方SDK的example/hello案例上进行添加代码的,其整体的实现思路如下:
系统初始化
基于FreeRTOS创建两个任务
(1) button_task任务负责对触摸屏进行实时的读取。
(2) main_task中对输入的game rom进行读取,然后解析并模拟6502的执行。整个game的核心就在这个任务中。在完成每一行的解码后,在这个task中会及时的去渲染屏幕中的对应行。
03 使用说明
3.1 固件烧录
以下操作需要再环境配置完成后进行。
程序编译
在项目根目录下打开终端,输入make
如无错误,最终会显示以下内容
固件烧录
在终端中输入make flash COMX=COMxx 其中xx为实际连接的下载器的COM口号,如下图中COM口为39。
烧录正常输出:
3.2 Rom替换
理论上这个项目的模拟器是支持所有不带多合一的rom的。而且由于模组的rom空间比较大,其实可以放下很多的game数据。当前预放了三个gamerom, 需要运行哪一个就去掉哪一个的注释,然后编译烧录。rom替换的具体方法可以参考:【轻松上手】小安派nes game rom替换
04 更多资料
因为模拟器是我在多年前用C写的,方便调试该模拟器可以运行在Windows平台上,使用SDL显示画面。当然因为当时写模拟器的时候也没有考虑音频解码,所以game是没有声音的。后续有兴趣我们可以一起来讲更优秀的nofrendo模拟器移植过来,它是支持音频的。
当前nofrendo的移植已经编译通过正在调试。
当前触摸屏太小了,所以操作起来不是很方便。所以也在考虑使用uniapp在手机端做一个基于wifi连接的手柄。
- |
- +1 赞 0
- 收藏
- 评论 0
本文由出山转载自安信可科技公众号,原文标题为:用小安派玩小霸王游戏,其乐无穷~,本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。
相关推荐
Ai-BS21系列烧录指导——开发板or模组
本篇以Ai-BS21-32S_Kit为例指导烧录固件,这是由深圳市安信可科技有限公司开发的蓝牙星闪开发板。该模块核心处理器芯片Hi2821是一款高集成2.4GHzSoCBLE&SLE芯片,支持BLE5.4/SLE1.0,集成RF电路,RF包含功率放大器PA、低噪声放大器、TX/RXSwitch、集成电源管理等模块,支持1M/2M/4M3种带宽,最大支持12Mbit/s速率。
用Ai-WB2开发板做智能家居全彩LED小夜灯
介绍用Ai-WB2开发板做智能家居全彩LED小夜灯的方法及技术要求。
星闪开发板or模组烧录指导
Ai-BS21-32S_Kit是由安信可科技开发的蓝牙星闪开发板。该模块核心处理器芯片Hi2821是一款高集成2.4GHzSoCBLE&SLE芯片,支持BLE5.4/SLE1.0,集成RF电路,RF包含功率放大器PA、低噪声放大器、TX/RXSwitch、集成电源管理等模块,支持1M/2M/4M3种带宽,最大支持12Mbit/s速率。
低能耗、低时延、快速度,星闪开发板Ai-BS21-32S-Kit更多场景应用,邀您一起来探索!
万众期待的星闪开发板上架了!Ai-BS21-32S-Kit 低延迟,高效率!话不多说!先回顾下基本参数信息。
高性能开发板Ai-M61-32S-Kit助力Wi-Fi6+BLE5.3模组
Ai-M61-32S-Kit是针对Ai-M61-32S模组设计的开发板。Ai-M61-32S是由深圳市安信可科技有限公司开发的Wi-Fi6+BLE5.3模组,该模组搭载BL618芯片作为核心处理器,支持Wi-Fi 802.11b/g/n/ax协议和BLE协议,支持Thread协议。
Ra-09系列开发板入门教程,标准LoRaWAN协议对接国外 TTN LoRaWAN 开源服务器
本文章将说明如何在TTN中创建应用与节点设备,配置安信可Ra-09模块连接至TTN服务,实现数据发送与接收。
安信可推出基于Ai-M61-32S的屏幕驱动开发板,支持2.8/3.5寸等30Pin SPI显示屏
小安派-DSL(AiPi-DSL) 是安信可开源团队专门为 Ai-M61-32S 设计的一款屏幕驱动开发板,支持 2.8/3.5 寸等 30Pin SPI 显示屏、2.4 寸及 1.28 寸等 18Pin SPI 显示屏。
安信可星闪开发板与西门子PLC通信的应用探索
星闪技术作为一项中国原生的、具有竞争力的近距离无线通信技术,通过技术创新和标准体系建设,打破了传统蓝牙和Wi-Fi在特定应用领域的一些局限性,为物联网、车联网、工业互联网等场景带来了更高性能、更安全、更具成本效益的无线连接解决方案。随着相关产品的不断推出和生态系统的持续完善,星闪技术有望在全球范围内产生深远影响,成为未来短距离无线通信领域的重要力量。
零基础开发小安派-Eyes-S1【入门篇】——工程文件架构
AiPi-Eyes-S1是安信可开源团队为Ai-M61-32S模组设计的开发板,支持WiFi6和BLE5.3,具备丰富的外设接口。开发板集成了多种接口,包括SPI屏幕、DVP摄像头、ES8388音频编解码器,并预留TF卡座和USB接口。开发资源包括入门教程、工程文件说明和烧录配置文件,适合初学者快速上手。
打开智能家居之旅(3):Ai-M61/M62 接入HomeAssistant 实现点灯
上一篇我们介绍了MQTT设备如何接入HomeAssistant,这一篇就给大家讲一下Ai-M61/M62 开发板或者模组怎么通过编程来接入HomeAssistant。这次的帖子会从开发环境搭建开始讲,一直到HomeAssistant 控制Ai-M61-Kit 开发板的蓝灯,会有点长,请耐心看完。
NodeMCU-8266 规格书
NodeMCU-8266 规格书V1.2介绍了由深圳安信可科技有限公司设计的NodeMCU-8266开发板,这是一款基于ESP8266模块的核心开发板。它提供了全面的电气参数、外观尺寸、管脚定义、原理图和设计指导,旨在帮助开发者轻松进行物联网项目的开发和调试。
安信可科技 - 开发板,模组,NODEMCU-8266,ESP8266
【外设移植】基于AI-WB2-32S开发板的SG90舵机控制案例
介绍Ai-WB2模组驱动舵机控制(SG90)的技术要求和方案。
智能家居之旅(7):HomeAssistant开发板的RGB颜色
hello,有谁还记得之前小美的视频?当时做了一个RGB灯,并且说了 RGB的一些开发过程。所以说RGB实体很早之前就已经开发好了,只是一直没有写帖子介绍它的用法。今天就给大家介绍一下 RGB 彩灯怎么上HomeAssistant,然后控制Ai-M61开发板的 RGB 灯的颜色,感觉这个项目用来控制家里的灯条就挺不错的。
针对摄像头黑屏问题,安信可对AiPi-Cam-D200摄像头开发板的硬件、软件、工作模式等各方面进行优化
小安派-Cam-D200摄像头开发板已经发布半年了,随后在使用的过程中,大家将各种各样的问题也陆续反馈到安信可。安信可针对摄像头黑屏问题,对AiPi-Cam-D200摄像头开发板进行了全面升级。
BU03 UWB室内定位测距模块,配套测试说明
安信可推出了BU03定位模组,采用DW3000芯片,体积小巧,可集成至主板。BU03_Kit开发板使用STM32F103主控芯片,支持SPI连接和STM32 ST-LINK Utility烧录。测试时,需至少两个开发板,通过AT指令设置基站和标签,进行测距和定位测试。开发板提供USB和TTL接口,可配合上位机获取位置数据。
电子商城
现货市场
服务
提供7~27寸工控机定制,支持嵌⼊式/ 壁挂式 /桌⾯式/悬挂式等安装方式,采用纯平⾯板IP65防尘防⽔等级,莫⽒7级硬度触摸屏,兼容多种操作系统:组态软件/安卓/XP/win7/8/10/Linux等,支持主板、接⼝、外观、⽀架、刷卡器、⾝份证阅读器、LOGO、⻨克⻛、系统、电池、蓝⽛、4G/5G、摄像头、GPS系统、⼆维码扫描器、指纹等特殊应⽤场景定制
最小起订量: 1台 提交需求>
登录 | 立即注册
提交评论