发作品签到
标准版

16键+旋钮摇杆小键盘-Methane-XVI

工程标签

1.6w
0
0
116

简介

基于STM32的16键小键盘,配有旋钮和摇杆,含改键软件,支持普通键、快捷键、按键组、连点、媒体控制等多种功能。PCB、外壳、STM32程序、QT上位机全开源。

简介:基于STM32的16键小键盘,配有旋钮和摇杆,含改键软件,支持普通键、快捷键、按键组、连点、媒体控制等多种功能。PCB、外壳、STM32程序、QT上位机全开源。

开源协议

GPL 3.0

创建时间:2022-07-27 10:41:48更新时间:2024-08-09 17:16:25

描述

键盘基本信息

输入:16个按键、1个摇杆(PS4摇杆)、1个旋钮(EC11)

灯光:1个RGB灯珠(可调光)、1个蓝色贴片LED灯、5个白色贴片LED灯(键盘灯,统一控制,可调光)

接口:TypeC接口、2*4pin弯排针接口(SW下载口和串口)

硬件方面

PCB尺寸限制在10cm以内了,而且两层板花钱的话也不太贵。

没有做热插拔和定位板,直接把键轴焊PCB上的,主要个人没这个需求,想改可以自行修改。

外壳在C口处的斜槽是为了方便用直角TypeC线,自己用的绿联的线刚好空间够用,用其他线可以考虑把槽再扩大。

为了缩小整体宽度,也为了外壳省料,PCB的一边是和侧面是平齐的,没有把PCB全包住。

螺丝用M2沉头的,16或17mm。螺母用M2、外径3mm、高2mm的嵌入螺母

RGB灯珠一般有磨砂和透明两种,感觉磨砂的发光看起来好一些。

STM32方面

使用STM32F103C6T6,好处是便宜,坏处是内存和程序存储都小,内存在程序里尽量节省了,程序的话需要开O2优化空间才够用。

如果想二次开发感觉空间不够的话可以换C8T6,换的话有些注意事项,写在开源文件里了,

不过如果不考虑二次开发,则直接使用C8T6也没有问题,可以不管注意事项。

可以校正摇杆的中位值,方法也写在开源文件里了。更新:现在支持一键校正中位值

程序采用SW下载,键盘本身的TypeC口不能用于下载,要用3V3、(SW)DIO、(SW)CLK、GND这4个排针连接下载器下载。

关于下载方法,可以在B站搜索“使用ST-LINK烧录STM32的HEX、BIN文件”,有一篇专栏,或者其他地方搜索ST-LINK烧录方法。

如果自行修改为串口下载的话除了要搞对boot电平之外还要注意一件事,那就是串口下载会清空FLASH再写入,而SW不会,

而键盘的配置数据是用芯片本身FLASH的最后1K字节存储的,因此若串口下载后要重新用上位机写入配置。总之不建议串口下载。

当然,第一次下载程序的话无论啥都得用上位机写入配置才能用。

功能方面

B站展示视频: https://www.bilibili.com/video/BV1VT411W78P

设备能存储两套键盘配置四套摇杆旋钮配置,如下图左半部分:

7W3KdYNt5jJYpGgiYxdLyXiIH3HsRbFUOYnAlYU2.png

按键能实现的功能见上图右半部分,更详细的内容(包括摇杆旋钮能实现的功能)见开源文件。

上位机

上位机用QT编写,由于QT对串口的支持比较好,所以将键盘的USB部分除了HID外增加了一个CDC串口,用来配置键盘功能。

一般Win10可以直接识别这个串口,Win7Win8可能需要驱动,所以驱动也放开源文件里了。

更新:现在已改为CustomHID通信,串口通信虽保留,但不支持新加入的功能。

为上位机的使用写了比较详细的说明,在这个说明也可以了解该键盘全部的功能。

2023.8.21更新

鉴于钽电容的选购和使用相对麻烦,将电源芯片由AMS1117改为662K.,使得可以只使用陶瓷电容。

移除了原有的RST按键和并联在晶振上的1M电阻。

将编码器滤波由电容滤波改为阻容滤波。

将蜂鸣器驱动由三极管改为NMOS管。

注意:当前PCB版本为V3.0,要获取旧版可下载PCB_V2.0.zip附件。

2023.12.28更新

大幅修改了STM32固件,将CDC串口通信改为CustomHID通信,整个工程变为CustomHID+HID。

更新了QT上位机,增加了CustomHID通信,同时CDC通信仍保留以兼容旧固件,可自选通信方式。

增加了摇杆中位校正功能,可直接通过上位机命令键盘将当前摇杆位置定为摇杆中位并存入FLASH,

新烧入固件的键盘由于尚未存储该值,一般会使用默认值2048,但建议进行校正。

上位机说明也对应进行了部分更新,见“Methane-XVI上位机说明_V2.0”。

注意:当前STM32固件和QT上位机版本均为V2.0,未标注版本的旧版为V1.0。

2024.8.7更新

更新了STM32固件,加入了对按键的软件滤波(消抖)。

更新了QT上位机,使用新的上位机配合新固件可以设置按键滤波时间参数

修改了上位机在设置切换键和连点键时的操作方法,具体见附件说明。

大幅修改了PCB,由于代码增加了软件滤波,所以移除了原PCB所有按键的滤波阻容,共减少了36个元件;

现在将所有元件全部布局在PCB正面,为使用加热台进行焊接提供了巨大便利。

注意:当前STM32固件和QT上位机版本均为V2.2,PCB版本为V4.0。

2024.8.9更新

更新了STM32固件,修复了V2.2固件因添加软件滤波逻辑而出现的bug,此bug会导致使用自动连点时出现问题。

注意:当前STM32固件版本为V2.3,V2.2已撤下。

设计图

未生成预览图,请在编辑器重新保存一次

BOM

暂无BOM

附件

序号文件名称下载次数
1
3D.zip
1426
2
QT.zip
2264
3
STM32.zip
700
4
Methane-XVI上位机说明.pdf
569
5
PCB_V2.0.zip
140
6
PCB_V3.0.zip
287
7
QT_V2.0.zip
253
8
STM32_V2.0.zip
188
9
Methane-XVI上位机说明_V2.0.pdf
137
10
PCB_V4.0.zip
32
11
QT_V2.2.zip
34
12
Methane-XVI上位机说明_V2.2.pdf
25
13
STM32_V2.3.zip
31
克隆工程
添加到专辑
0
0
分享
侵权投诉

评论

全部评论(1
按时间排序|按热度排序
粉丝0|获赞0
相关工程
暂无相关工程

底部导航