磁轴键盘,小测了一下。使用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的电容。
想了想,工程还是放gitee吧,DIY磁轴键盘工程。
!注意:请使用浏览器自带下载,迅雷等下载软件可能无法下载到有效资源。
欢迎加入EEWorld参考设计群,也许能碰到搞同一个设计的小伙伴,群聊设计经验和难点。 入群方式:微信搜索“helloeeworld”或者扫描二维码,备注:参考设计,即可被拉入群。 另外,如您在下载此设计遇到问题,也可以微信添加“helloeeworld”及时沟通。
EEWorld Datasheet 技术支持