littlebot
Published on 2025-04-15 / 6 Visits
0

【源码】基于嵌入式系统的PS2到Amiga键盘接口适配器(PAKIA)

项目简介

PAKIA(PS/2 to Amiga Keyboard Interface Adapter)是一个将PS/2键盘接口转换为Amiga键盘接口的硬件适配器项目。由于复古计算机和外围设备价值提升,独立的Amiga键盘日益难寻,PAKIA可把常见的PS/2键盘信号转换为Amiga键盘接口信号,让用户用标准PS/2键盘在Amiga计算机上获得良好体验。

项目的主要特性和功能

  1. PS/2到Amiga扫描码转换:实现PS/2键盘扫描码到Amiga键盘扫描码的转换。
  2. 同步丢失处理与恢复:能处理键盘信号同步丢失情况并自动恢复。
  3. 重置组合键支持:支持Amiga的重置组合键(Ctrl + 左Amiga + 右Amiga),并带有两个重置警告。
  4. Caps Lock LED控制:与PS/2键盘交互,控制Caps Lock LED状态。
  5. 菜单键修饰符:利用菜单键修饰符键键入PS/2键盘上被大键占用但Amiga键盘存在的键。
  6. 硬件定时信号:通过硬件定时器生成信号,确保兼容性和性能优化。
  7. PCB设计:提供PCB设计文件,含DIN插座用于AT和PS/2键盘连接,以及针对Amiga连接的电线保护。
  8. 翻译映射表生成工具:提供工具生成翻译映射表,用户可修改源代码生成其他硬编码的LUT。

安装使用步骤

环境要求

  • 操作系统:Linux
  • 工具:avr-gcc(建议版本5.4.0)和 avrdude(建议版本6.3 - 20171130)

编译与部署

  1. 配置编程器:在Makefile中指定avrdude使用的编程器,设置PROGRAMMER变量。
  2. 编译项目:在项目根目录下运行make命令进行编译。
  3. 烧录固件:连接编程器到PCB上的ISP接口,运行make flash命令将固件烧录到ATtiny85微控制器中。

编辑翻译映射表

  1. 生成工具:进入tools目录,运行make命令编译translation-map-generator工具。
  2. 生成映射表:运行以下命令生成新的翻译映射表并覆盖src/translation_map.hh文件: bash (cd tools && make) tools/translation-map-generator > src/translation_map.hh

硬件设计

项目的硬件设计文件位于hardware目录中,使用KiCAD进行设计。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】