站内搜索
发作品签到
标准版

磁轴键盘GH60配列

工程标签

1.2w
0
0
37

简介

磁轴键盘GH60配列,可以支持RT功能,不开灯情况下干扰理想,开灯后干扰变大

简介:磁轴键盘GH60配列,可以支持RT功能,不开灯情况下干扰理想,开灯后干扰变大

开源协议

LGPL 3.0

创建时间:2023-07-20 02:05:41更新时间:2023-09-18 10:01:41

描述

磁轴键盘,小测了一下。使用CH32V307,usb2.0高速模式,采样率跑在8KHz(目前采样一次到发布整个周期要98us)。可以支持RT功能,干扰问题目前还有一点点,触发键程至少在0.3mm可以稳定。不同的磁轴可能要找不同灵敏度的霍尔元件,我的这个霍尔检测佳达隆的磁轴,adc结果在1000~2000左右。如果益谦的磁轴需要选择更高灵敏度的霍尔元件。

 

关于模拟数字地分不分开的问题,我试了一版感觉差别不大,看来上四层板才能降低最后一点干扰了,富哥们可以试试四层板。然后那个基准电压431芯片我试了jlc基础库的CJ431,噪声很大,不知道是什么情况。换成原来用的TL431就没这事儿。好吧,这波想全贴还得多花点钱

 

灯放了但是不太想整动态刷新的程序,目前只搞了开机固定调个颜色的,然后搞好了PWM+DMA刷新LED的程序,动态点灯会有点波动,暂时还不太好搞。注意PCB上灯的丝印小角不是1脚,是对应灯正面的小缺口。

 

然后这个灯功耗有点大,我一开始设置全开最高,5V直接拉到3.6V了(...?)

 

程序附上,调试写的比较简单,毕竟是自己从无到有搭的。然后每个轴有个标定的过程,IDE我用的官方的MounRiver。标定就把key.c的220行的注释改成#if 1,然后swd进入debug界面,静置一段时间后把min_value数组复制到key_top数组里面。然后每个键按到底,再把min_value数组复制到key_bottom数组里面。(若是益谦磁轴等极性相反的轴,就要复制max_value数组,两次都是)再恢复注释就差不多可以运行了,自己设置触发敏感的按键还可能会误触,需要微调一下key_top的值。

 

Day 2023/08/07

 

测试了下动态点灯,发现灯有几根信号线离模拟线路太近了,动态点灯能带来100+的干扰,把线两头全割了然后重新飞线就没有问题了。布线的时候没考虑这也是个高频线,PCB改了,顺带修改了灯的引脚,暂时用PA15脚用PWM+DMA点亮,程序也已经修改。同时考虑到点灯功耗有点大,5V供电加了俩22UF的电容。

 

Day 2023/08/12

 

加入了标定功能,储存在flash里,在flash内没存标定数据或上电前按住C键然后上电的情况下会进入标定模式,第一个灯先蓝色,然后在灯变黄后会检测传感器值域,按下所有键(别同时按FNS),按完后同时按下FNS完成标定。

 

Day 2023/09/15

 

  1. 修改PCB部分设计,注意程序有部分引脚修改和按键映射修改,按照原PCB(915之前)设计的话切换分支到c6ddf252d66a91d3a0aff7b5f83a8407bde8d96f
    2. 修改HID连接逻辑,修复开机或重启设备不连接的问题
    3. 添加boot按键,可以通过wch官方的usb下载isp实现初次下载的boot功能和后续的程序更新

 

想了想,工程还是放gitee吧,DIY磁轴键盘工程

设计图

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

BOM

暂无BOM

3D模型

序号文件名称下载次数
暂无数据

附件

序号文件名称下载次数
暂无数据
克隆工程
添加到专辑
0
0
分享
侵权投诉

工程成员

知识产权声明&复刻说明

本项目为开源硬件项目,其相关的知识产权归创作者所有。创作者在本平台上传该硬件项目仅供平台用户用于学习交流及研究,不包括任何商业性使用,请勿用于商业售卖或其他盈利性的用途;如您认为本项目涉嫌侵犯了您的相关权益,请点击上方“侵权投诉”按钮,我们将按照嘉立创《侵权投诉与申诉规则》进行处理。

请在进行项目复刻时自行验证电路的可行性,并自行辨别该项目是否对您适用。您对复刻项目的任何后果负责,无论何种情况,本平台将不对您在复刻项目时,遇到的任何因开源项目电路设计问题所导致的直接、间接等损害负责。

评论

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

底部导航