
2026 年初回顾,去年递归中心成员为街机 RCade 保留 CRT 显示器,作者决定自制 USB 接口的 CRT 显示适配器。过程中历经多种方案尝试,最终选定 STM32 芯片。
项目缘起
2025 年 11 月,朋友 Frank 为递归中心搞到街机 RCade,想用树莓派驱动其 CRT 显示器。但该显示器分辨率特殊,树莓派色彩支持有限,且需用笔记本连接,于是作者决定做 CRT 显示适配器。
显示器要求与 VGA 原理
RCade 的 CRT 显示器有 JAMMA 接口,需 VGA 转 JAMMA 转换器。其分辨率不标准,多数适配器无法支持。VGA 协议对应 CRT 显示器电子枪和同步信号,要实现适配需精确控制 R、G、B、HSYNC 和 VSYNC 信号。
首次尝试:RP2040 的 PIO
作者选用 RP2040 芯片,利用其 PIO 功能编写程序生成 VGA 信号。虽代码有局限性,但验证了 VGA 程序能工作。之后计划编写 Linux 内核模块传输图像,不过发现 GUD 协议更合适。
GUD 协议与问题
GUD 协议支持数据压缩,灵活可调且已并入内核。作者逆向工程开发出 RP2040 小工具实现,但存在色彩深度和帧率问题,RP2040 带宽不足,帧率不到 10 FPS。
最终方案:STM32 芯片
因 RP2040 不支持 USB HS,作者转向支持该功能的 STM32 芯片。发现部分 STM32 芯片的 LTDC 外设可驱动类似 CRT 信号的显示器。圣诞节期间设计出以 STM32H723 为核心的电路板。
编辑观点:自制 CRT 显示适配器过程曲折,从 RP2040 到 STM32,不断解决问题。这不仅是技术探索,也体现对旧设备的情怀,未来或为复古硬件爱好者提供新思路。
947

被折叠的 条评论
为什么被折叠?



