Galgame回车蓝牙键盘手柄 CH582

功能简介
实测零电量充满50分钟,续航36小时。用这个推完了近月2,估计推两部Gal应该没问题。
烧录和充电共用一个C口。我猜应该没人用这种小键盘想连着一根数据线,所以就没实现USB的代码,仅支持蓝牙连接。手机电脑有蓝牙就能用,免驱动。
无手柄尺寸(含键帽):25×25×34mm
手柄
卡槽滑入,螺丝固定:

设置栏电量显示

电量不足通知

指示灯
状态 | PWR红灯 | BLE蓝灯 |
---|---|---|
闪烁 | 充电中 | 广播中 |
常亮 | 电量不足 | x |
熄灭 | 正常/关机 | 正常 |
外壳零件
需要购买:
- M2螺母×4
- M2*4螺丝×5
- M2*6螺丝×4
- 热熔螺母×1:M2*3*Φ3.5
需要3D打印:
- 外壳(shell)
- 底座(base)
- 选配:手柄(handle)
详情参考附件 3Dmodel.zip
,包含solidworks(2023)文件和3mf、step导出文件。
组装
锂电池规格:402020 200mAh,稍微把凸出的边角压一下就能塞进外壳。键盘轴引脚焊完之后修短一些。
安装顺序:键轴线焊接-按键板与外壳螺丝固定-塞入锂电池-主板焊线-底座固定-侧壁嵌入热熔螺母

BOOT-接地进下载模式;TXD-调试用串口。
直接把电池线和键轴引出的线焊在焊盘上,建议先烧录程序再焊线。
代码结构
工程代码见附件GALBoard.zip
。本工程基于沁恒官方CH583EVT例程修改。
如需二次开发:建议使用沁恒官方支持的MounRiver Studio开发,实测即装即用,很好上手。例程请注意参考官方最新版本,否则部分功能可能无法使用,这里踩过坑。
主要文件目录
|
|-- BLE
| |-- HAL
| |-- HID_Keyboard
| | |-- APP:
| | | |-- include: 头文件
| | | |-- bat.c: 锂电池电压定时adc采集
| | | |-- hidkbd_main.c: 主函数文件
| | | |-- hidkbd.c: 蓝牙HID和电量定时上报
| | | |-- mykey.c: 按键定时轮询
| | | |-- myled.c: 蓝牙与电量状态LED显示
| | |-- obj
| | | |-- HID_Keyboard.hex: 烧录文件
| | |-- Profile
| | | |-- battservice.c: 电量GATT服务
| | |-- HID_Keyboard.wvproj: MounRiver Studio工程文件
| |-- LIB
|-- SRC
|
如果只要修改按键值,请找到mykey.c
中的keyBoard_Scanf
函数,在网上查找HID键值表,对应修改0x28,然后用MounRiver Studio重新编译即可。
void keyBoard_Scanf(void)
{
if (keyBoard_GPIO_ReadPin(KEY_PORT, KEY_PIN) == 0) //按键按下
{
buf[2] = 0x28; //Enter:0x28
PRINT("Enter\n");
}
mDelayuS(1);
}
烧录指南
- 从 https://www.wch.cn/downloads/WCHISPTool_Setup_exe.html 下载安装WCHISPTool_Setup.exe
- 从 https://www.wch.cn/downloads/CH372DRV_EXE.html 下载安装CH372DRV.EXE
- 打开
WCHISPTool
,镊子短接BOOT和GND,用USB数据线将板子连接至电脑,此时软件应该已找到CH582设备,松开短接 - IAP程序文件选择
GALBoard\BLE\HID_Keyboard\obj\HID_Keyboard.hex
,点击下载,等待读条结束
资料下载
代码工程:
3D模型: